diff --git a/Ability_DualWieldSpecialization.png b/Ability_DualWieldSpecialization.png new file mode 100644 index 0000000..6ce5f3c Binary files /dev/null and b/Ability_DualWieldSpecialization.png differ diff --git a/Ability_Rogue_Sprint.png b/Ability_Rogue_Sprint.png new file mode 100644 index 0000000..c5d9453 Binary files /dev/null and b/Ability_Rogue_Sprint.png differ diff --git a/Ability_Warrior_Challange.png b/Ability_Warrior_Challange.png new file mode 100644 index 0000000..ecdb9ff Binary files /dev/null and b/Ability_Warrior_Challange.png differ diff --git a/Ability_Warrior_ImprovedDisciplines.png b/Ability_Warrior_ImprovedDisciplines.png new file mode 100644 index 0000000..9cce4bf Binary files /dev/null and b/Ability_Warrior_ImprovedDisciplines.png differ diff --git a/Ability_Warrior_Revenge.png b/Ability_Warrior_Revenge.png new file mode 100644 index 0000000..17433e4 Binary files /dev/null and b/Ability_Warrior_Revenge.png differ diff --git a/Action.h b/Action.h new file mode 100644 index 0000000..0906005 --- /dev/null +++ b/Action.h @@ -0,0 +1,55 @@ +// +// Action.h +// Pocket Gnome +// +// Created by Jon Drummond on 9/6/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import + +typedef enum ActionType { + ActionType_None = 0, + ActionType_Spell = 1, + ActionType_Item = 2, + ActionType_Macro = 3, + ActionType_Delay = 4, + ActionType_InteractNPC = 5, + ActionType_Jump = 6, + ActionType_SwitchRoute = 7, + ActionType_QuestTurnIn = 8, + ActionType_QuestGrab = 9, + ActionType_Vendor = 10, + ActionType_Mail = 11, + ActionType_Repair = 12, + ActionType_ReverseRoute = 13, + ActionType_CombatProfile = 14, + ActionType_InteractObject = 15, + ActionType_JumpToWaypoint = 16, + ActionType_Max, +} ActionType; + +@class RouteSet; + +@interface Action : NSObject { + ActionType _type; + id _value; + BOOL _enabled; +} + +- (id)initWithType: (ActionType)type value: (id)value; ++ (id)actionWithType: (ActionType)type value: (id)value; ++ (id)action; + +@property (readwrite, assign) ActionType type; +@property (readwrite, copy) id value; + +@property BOOL enabled; + +// in order to play nice with old code +@property (readonly) float delay; +@property (readonly) UInt32 actionID; + +- (RouteSet*)route; + +@end diff --git a/Action.m b/Action.m new file mode 100644 index 0000000..b4423b2 --- /dev/null +++ b/Action.m @@ -0,0 +1,107 @@ +// +// Action.m +// Pocket Gnome +// +// Created by Jon Drummond on 9/6/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "Action.h" +#import "RouteSet.h" +#import "Route.h" +#import "Spell.h" +#import "SpellController.h" + +@implementation Action + +- (id) init { + return [self initWithType: ActionType_None value: nil]; +} + +- (id)initWithType: (ActionType)type value: (id)value { + self = [super init]; + if (self != nil) { + self.type = type; + self.value = value; + self.enabled = YES; + //self.delay = delay; + //self.actionID = actionID; + } + return self; +} + ++ (id)actionWithType: (ActionType)type value: (id)value { + return [[[[self class] alloc] initWithType: type value: value] autorelease]; +} + ++ (id)action { + return [[self class] actionWithType: ActionType_None value: nil]; +} + +- (id)initWithCoder:(NSCoder *)decoder { + self = [super init]; + if(self) { + self.type = [[decoder decodeObjectForKey: @"Type"] unsignedIntValue]; + self.value = ([decoder decodeObjectForKey: @"Value"] ? [decoder decodeObjectForKey: @"Value"] : nil); + self.enabled = [decoder decodeObjectForKey: @"Enabled"] ? [[decoder decodeObjectForKey: @"Enabled"] boolValue] : YES; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder { + [coder encodeObject: [NSNumber numberWithUnsignedInt: self.type] forKey: @"Type"]; + + if(self.type > ActionType_None){ + [coder encodeObject: self.value forKey: @"Value"]; + [coder encodeObject: [NSNumber numberWithBool: self.enabled] forKey: @"Enabled"]; + } +} + +- (id)copyWithZone:(NSZone *)zone { + Action *copy = [[[self class] allocWithZone: zone] initWithType: self.type value: self.value]; + return copy; +} + +- (void) dealloc { + self.value = nil; + [super dealloc]; +} + + +@synthesize type = _type; +@synthesize value = _value; +@synthesize enabled = _enabled; + +- (void)setType: (ActionType)type { + if(type < ActionType_None || (type >= ActionType_Max)) { + type = ActionType_None; + } + + _type = type; +} + +- (float)delay { + if(self.type == ActionType_Delay) { + return [self.value floatValue]; + } + return 0.0f; +} + +- (UInt32)actionID { + + if(self.type == ActionType_Spell || self.type == ActionType_Item || self.type == ActionType_Macro) { + return [self.value unsignedIntValue]; + } + return 0; +} + +- (RouteSet*)route{ + + if ( self.type == ActionType_SwitchRoute ){ + return (RouteSet*)self.value; + } + + return nil; +} + +@end diff --git a/ActionController.h b/ActionController.h new file mode 100644 index 0000000..e49c118 --- /dev/null +++ b/ActionController.h @@ -0,0 +1,32 @@ +// +// ActionController.h +// Pocket Gnome +// +// Created by Josh on 1/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "Action.h" + +@interface ActionController : NSObject { + IBOutlet NSView *view; + IBOutlet id _delegate; + IBOutlet NSButton *disableButton; + BOOL _enabled; +} + ++ (id)actionControllerWithAction: (Action*)action; + +- (NSView*)view; +- (IBAction)validateState: (id)sender; +- (IBAction)disableAction: (id)sender; + +@property (readwrite, assign) id delegate; +@property BOOL enabled; + +- (Action*)action; +- (void)setStateFromAction: (Action*)action; +- (void)removeBindings; + +@end diff --git a/ActionController.m b/ActionController.m new file mode 100644 index 0000000..48dac07 --- /dev/null +++ b/ActionController.m @@ -0,0 +1,129 @@ +// +// ActionController.m +// Pocket Gnome +// +// Created by Josh on 1/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "ActionController.h" +#import "Action.h" + +#import "RepairActionController.h" +#import "SwitchRouteActionController.h" +#import "SpellActionController.h" +#import "ItemActionController.h" +#import "MacroActionController.h" +#import "DelayActionController.h" +#import "JumpActionController.h" +#import "QuestTurnInActionController.h" +#import "QuestGrabActionController.h" +#import "InteractObjectActionController.h" +#import "InteractNPCActionController.h" +#import "CombatProfileActionController.h" +#import "VendorActionController.h" +#import "MailActionController.h" +#import "ReverseRouteActionController.h" +#import "JumpToWaypointActionController.h" + +@implementation ActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.enabled = YES; + } + return self; +} + +- (void) dealloc +{ + [view removeFromSuperview]; + [super dealloc]; +} + ++ (id)actionControllerWithAction: (Action*)action { + ActionController *newController = nil; + + if ( [action type] == ActionType_Repair ) + newController = [[RepairActionController alloc] init]; + else if ( [action type] == ActionType_SwitchRoute ) + newController = [[SwitchRouteActionController alloc] init]; + else if ( [action type] == ActionType_Spell ) + newController = [[SpellActionController alloc] init]; + else if ( [action type] == ActionType_Item ) + newController = [[ItemActionController alloc] init]; + else if ( [action type] == ActionType_Macro ) + newController = [[MacroActionController alloc] init]; + else if ( [action type] == ActionType_Delay ) + newController = [[DelayActionController alloc] init]; + else if ( [action type] == ActionType_Jump ) + newController = [[JumpActionController alloc] init]; + else if ( [action type] == ActionType_QuestTurnIn ) + newController = [[QuestTurnInActionController alloc] init]; + else if ( [action type] == ActionType_QuestGrab ) + newController = [[QuestGrabActionController alloc] init]; + else if ( [action type] == ActionType_InteractNPC ) + newController = [[InteractNPCActionController alloc] init]; + else if ( [action type] == ActionType_InteractObject ) + newController = [[InteractObjectActionController alloc] init]; + else if ( [action type] == ActionType_CombatProfile ) + newController = [[CombatProfileActionController alloc] init]; + else if ( [action type] == ActionType_Vendor ) + newController = [[VendorActionController alloc] init]; + else if ( [action type] == ActionType_Mail ) + newController = [[MailActionController alloc] init]; + else if ( [action type] == ActionType_ReverseRoute ) + newController = [[ReverseRouteActionController alloc] init]; + else if ( [action type] == ActionType_JumpToWaypoint ) + newController = [[JumpToWaypointActionController alloc] init]; + + if(newController) { + [newController setStateFromAction: action]; + return [newController autorelease]; + } + + return [[[ActionController alloc] init] autorelease]; +} + +@synthesize enabled = _enabled; +@synthesize delegate = _delegate; + +- (NSView*)view { + return view; +} + +- (IBAction)validateState: (id)sender { + return; +} + +- (IBAction)disableAction: (id)sender { + for(NSView *aView in [[self view] subviews]) { + if( (aView != sender) && [aView respondsToSelector: @selector(setEnabled:)] ) { + [(NSControl*)aView setEnabled: ![sender state]]; + } + } + + self.enabled = ![sender state]; +} + +- (Action*)action { + return nil; + return [[[Action alloc] init] autorelease]; +} + +- (void)setStateFromAction: (Action*)action { + self.enabled = [action enabled]; + + if(self.enabled) [disableButton setState: NSOffState]; + else [disableButton setState: NSOnState]; + + [self disableAction: disableButton]; +} + +- (void)removeBindings{ + +} + +@end diff --git a/ActionMenusController.h b/ActionMenusController.h new file mode 100644 index 0000000..ef0d2d8 --- /dev/null +++ b/ActionMenusController.h @@ -0,0 +1,40 @@ +// +// ActionMenusController.h +// Pocket Gnome +// +// Created by Jon Drummond on 9/6/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import + +@class Controller; +@class SpellController; +@class InventoryController; +@class MobController; +@class NodeController; +@class MacroController; + +typedef enum ActionMenuTypes { + MenuType_Spell = 1, + MenuType_Inventory = 2, + MenuType_Macro = 3, + MenuType_Interact = 5, + +} ActionMenuType; + +@interface ActionMenusController : NSObject { + + IBOutlet Controller *controller; + IBOutlet SpellController *spellController; + IBOutlet InventoryController *inventoryController; + IBOutlet MobController *mobController; + IBOutlet NodeController *nodeController; + IBOutlet MacroController *macroController; +} + ++ (ActionMenusController *)sharedMenus; + +- (NSMenu*)menuType: (ActionMenuType)type actionID: (UInt32)actionID; + +@end diff --git a/ActionMenusController.m b/ActionMenusController.m new file mode 100644 index 0000000..a56b6ca --- /dev/null +++ b/ActionMenusController.m @@ -0,0 +1,218 @@ +// +// ActionMenusController.m +// Pocket Gnome +// +// Created by Jon Drummond on 9/6/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "ActionMenusController.h" + +#import "Controller.h" +#import "SpellController.h" +#import "InventoryController.h" +#import "MobController.h" +#import "NodeController.h" +#import "MacroController.h" + +#import "Macro.h" +#import "Spell.h" +#import "Item.h" +#import "Node.h" + +@implementation ActionMenusController + +static ActionMenusController *sharedMenus = nil; + ++ (ActionMenusController *)sharedMenus { + if (sharedMenus == nil) + sharedMenus = [[[self class] alloc] init]; + return sharedMenus; +} + +- (id) init { + self = [super init]; + if(sharedMenus) { + [self release]; + self = sharedMenus; + } else if(self != nil) { + sharedMenus = self; + } + return self; +} + + +#pragma mark - + +- (NSMenu*)createMacroMenu { + + // get the player/account macros + NSArray *macros = [macroController playerMacros]; + + NSMutableArray *accountMacros = [NSMutableArray array]; + NSMutableArray *characterMacros = [NSMutableArray array]; + + // "sort" our macros to account/character + for ( Macro *macro in macros ){ + if ( [macro isCharacter] ) + [characterMacros addObject:macro]; + else + [accountMacros addObject:macro]; + } + + // Generate the Macros menu + NSMenu *macroMenu = [[[NSMenu alloc] initWithTitle: @"Macro Menu"] autorelease]; + + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"Account Macros" action: nil keyEquivalent: @""] autorelease]; + [item setAttributedTitle: [[[NSAttributedString alloc] initWithString: @"Account Macros" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [macroMenu addItem: item]; + + if(accountMacros && [accountMacros count]) { + for(Macro *macro in accountMacros) { + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ (%@)", macro.name, macro.number] action: nil keyEquivalent: @""] autorelease]; + [item setTag: [macro.number intValue]]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: macro]; + [macroMenu addItem: item]; + } + } else { + item = [[[NSMenuItem alloc] initWithTitle: @"There are no available macros." action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [macroMenu addItem: item]; + } + [macroMenu addItem: [NSMenuItem separatorItem]]; + + item = [[[NSMenuItem alloc] initWithTitle: @"Character Macros" action: nil keyEquivalent: @""] autorelease]; + [item setAttributedTitle: [[[NSAttributedString alloc] initWithString: @"Character Macros" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [macroMenu addItem: item]; + + if(characterMacros && [characterMacros count]) { + for(Macro *macro in characterMacros) { + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ (%@)", macro.name, macro.number] action: nil keyEquivalent: @""] autorelease]; + [item setTag: [macro.number intValue]]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: macro]; + [macroMenu addItem: item]; + } + } else { + item = [[[NSMenuItem alloc] initWithTitle: @"There are no available macros." action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [macroMenu addItem: item]; + } + + return macroMenu; +} + +- (NSMenu*)createInteractMenu { + + // Generate the Interact menu + NSMenu *interactMenu = [[[NSMenu alloc] initWithTitle: @"Interact Menu"] autorelease]; + + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"Interact with NPC" action: nil keyEquivalent: @""] autorelease]; + [item setAttributedTitle: [[[NSAttributedString alloc] initWithString: @"Interact with NPC" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [item setIndentationLevel: 0]; + [item setTag: 1]; + [interactMenu addItem: item]; + //log(LOG_GENERAL, @"interact menu %@", mobController); + for(Mob *mob in [mobController mobsWithinDistance:8 levelRange:NSMakeRange(0,255) includeElite:YES includeFriendly:YES includeNeutral:YES includeHostile:NO]) { + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@", [mob name]] action: nil keyEquivalent: @""] autorelease]; + [item setTag: [mob entryID]]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: mob]; + [interactMenu addItem: item]; + } + + + item = [[[NSMenuItem alloc] initWithTitle: @"Interact with node" action: nil keyEquivalent: @""] autorelease]; + [item setAttributedTitle: [[[NSAttributedString alloc] initWithString: @"Interact with node" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [item setIndentationLevel: 0]; + [item setTag: 2]; + [interactMenu addItem: item]; + + for(Node *node in [nodeController nodesWithinDistance:8 ofType:AnyNode maxLevel:9000]) { + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@", [node name]] action: nil keyEquivalent: @""] autorelease]; + [item setTag: [node entryID]]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: node]; + [interactMenu addItem: item]; + } + + return interactMenu; +} + +#pragma mark - + + +- (NSMenu*)menuType: (ActionMenuType)type actionID: (UInt32)actionID { + NSMenu *theMenu = nil; + + switch(type) { + case MenuType_Spell: + theMenu = [spellController playerSpellsMenu]; + break; + case MenuType_Inventory: + theMenu = [inventoryController prettyInventoryItemsMenu]; + break; + case MenuType_Macro: + theMenu = [self createMacroMenu]; + break; + case MenuType_Interact: + theMenu = [self createInteractMenu]; + break; + default: + return nil; + break; + } + + if(![theMenu itemWithTag: actionID]) { + // theMenu = nil; + + if(type == MenuType_Spell) { + //theMenu = [[[NSMenu alloc] initWithTitle: @"Spells"] autorelease]; + NSMenuItem *item = nil; + Spell *spell = [spellController spellForID: [NSNumber numberWithInt: actionID]]; + if(spell && [spell name]) { + item = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@: %@", [spell ID], [spell name]] action: nil keyEquivalent: @""]; + } else { + item = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Unknown Spell (%d)", actionID] action: nil keyEquivalent: @""]; + } + [item setTag: actionID]; + [theMenu insertItem: [item autorelease] atIndex: 0]; + //[theMenu addItem: [item autorelease]]; + } + + // create temp item list + if(type == MenuType_Inventory) { + //theMenu = [[[NSMenu alloc] initWithTitle: @"Items"] autorelease]; + NSMenuItem *menuItem = nil; + Item *item = [inventoryController itemForID: [NSNumber numberWithInt: actionID]]; + if(item && [item name]) { + menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%d: %@", [item entryID], [item name]] action: nil keyEquivalent: @""]; + } else { + menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Unknown Item (%d)", actionID] action: nil keyEquivalent: @""]; + } + [menuItem setTag: actionID]; + [theMenu insertItem: [menuItem autorelease] atIndex: 0]; + //[theMenu addItem: [menuItem autorelease]]; + } + + // create temp macro list + if(type == MenuType_Macro) { + //theMenu = [[[NSMenu alloc] initWithTitle: @"Macros"] autorelease]; + NSMenuItem *menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Unknown Macro (%d)", actionID] action: nil keyEquivalent: @""]; + [menuItem setTag: actionID]; + [theMenu insertItem: [menuItem autorelease] atIndex: 0]; + //[theMenu addItem: [menuItem autorelease]]; + } + + // [resultActionDropdown selectItemWithTag: actionID]; + } + + return theMenu; +} + +@end diff --git a/AllianceCrest.gif b/AllianceCrest.gif new file mode 100644 index 0000000..8e15d08 Binary files /dev/null and b/AllianceCrest.gif differ diff --git a/Aura.h b/Aura.h new file mode 100644 index 0000000..d1b5c6d --- /dev/null +++ b/Aura.h @@ -0,0 +1,33 @@ +// +// Aura.h +// Pocket Gnome +// +// Created by Jon Drummond on 10/22/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import + + +@interface Aura : NSObject { + GUID guid; + UInt32 entryID; // spell ID + UInt32 bytes; // [8 unk ] [8 stack count ] [8 unk ] [8 unk ] + UInt32 duration; // milliseconds + UInt32 expiration; // game time +} + ++ (id)auraEntryID: (UInt32)entryID GUID: (GUID)guid bytes: (UInt32)bytes duration: (UInt32)duration expiration: (UInt32)expiration; + +@property (readwrite, assign) GUID guid; +@property (readwrite, assign) UInt32 entryID; +@property (readwrite, assign) UInt32 bytes; +@property (readonly) UInt32 stacks; +@property (readonly) UInt32 level; +@property (readonly) BOOL isDebuff; +@property (readonly) BOOL isActive; +@property (readonly) BOOL isPassive; +@property (readwrite, assign) UInt32 duration; +@property (readwrite, assign) UInt32 expiration; + +@end diff --git a/Aura.m b/Aura.m new file mode 100644 index 0000000..493b129 --- /dev/null +++ b/Aura.m @@ -0,0 +1,60 @@ +// +// Aura.m +// Pocket Gnome +// +// Created by Jon Drummond on 10/22/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "Aura.h" + +@implementation Aura + ++ (id)auraEntryID: (UInt32)entryID GUID: (GUID)guid bytes: (UInt32)bytes duration: (UInt32)duration expiration: (UInt32)expiration { + Aura *aura = [[Aura alloc] init]; + if(aura) { + aura.guid = guid; + aura.entryID = entryID; + aura.bytes = bytes; + aura.duration = duration; + aura.expiration = expiration; + } + return [aura autorelease]; +} + +- (void) dealloc +{ + [super dealloc]; +} + + +@synthesize guid; +@synthesize entryID; +@synthesize bytes; +@synthesize duration; +@synthesize expiration; + +- (UInt32)stacks { + return (([self bytes] >> 16) & 0xFF); +} + +- (UInt32)level { + return (([self bytes] >> 8) & 0xFF); +} + +- (BOOL)isDebuff { + return (([self bytes] >> 7) & 1); +} + +- (BOOL)isActive { + return (([self bytes] >> 5) & 1); +} + +- (BOOL)isPassive { + return (([self bytes] >> 4) & 1) && ![self isActive]; +} + +- (BOOL)isHidden { + return (([self bytes] >> 7) & 1); +} +@end diff --git a/AuraCondition.xib b/AuraCondition.xib new file mode 100644 index 0000000..2318380 --- /dev/null +++ b/AuraCondition.xib @@ -0,0 +1,1663 @@ + + + + 1050 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + AuraConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + -2147483380 + {{407, 14}, {137, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 1 + + + 400 + 75 + + + Magic + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + 4 + + + YES + + OtherViews + + YES + + + + Curse + + 1048576 + 2147483647 + + + _popUpItemAction: + 5 + + + + + Disease + + 1048576 + 2147483647 + + + _popUpItemAction: + 6 + + + + + Poison + + 1048576 + 2147483647 + + + _popUpItemAction: + 7 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{270, 14}, {135, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Buff + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 3 + + + YES + + OtherViews + + YES + + + + Debuff + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + YES + YES + + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Buff of Type + + 1048576 + 2147483647 + + + _popUpItemAction: + 13 + + + + + Debuff of Type + + 1048576 + 2147483647 + + + _popUpItemAction: + 14 + + + + + 1 + YES + YES + 2 + + + + + 266 + {{410, 17}, {30, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{135, 14}, {133, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Has + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 6 + + + YES + + OtherViews + + YES + + + + Does Not Have + + 1048576 + 2147483647 + + + _popUpItemAction: + 7 + + + + + 1 + YES + YES + 2 + + + + + 265 + {{446, 15}, {97, 24}} + + YES + + -2080244224 + 0 + + + + YES + + 45 + Num + Spell ID Number + 1 + YES + 0 + + + 45 + Name + Spell Name + 3 + 0 + + + 1 + + + + + 268 + {{7, 18}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{32, 14}, {101, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Target + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 2 + + + YES + + OtherViews + + YES + + + + Player + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Pet + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + Friendlies + + 2147483647 + + + _popUpItemAction: + 4 + + + + + Enemies + + 2147483647 + + + _popUpItemAction: + 5 + + + + + 1 + YES + YES + 2 + + + + {561, 46} + + NSView + + + + + YES + + + view + + + + 27 + + + + dispelTypePopUp + + + + 99 + + + + comparatorPopUp + + + + 100 + + + + qualityPopUp + + + + 101 + + + + valueText + + + + 102 + + + + typeSegment + + + + 103 + + + + validateState: + + + + 109 + + + + validateState: + + + + 110 + + + + validateState: + + + + 112 + + + + validateState: + + + + 113 + + + + validateState: + + + + 114 + + + + unitPopUp + + + + 124 + + + + disableButton + + + + 125 + + + + disableCondition: + + + + 126 + + + + validateState: + + + + 127 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 15 + + + YES + + + + + + + + + + + + 37 + + + YES + + + + + + 38 + + + YES + + + + + + 39 + + + YES + + + + + + + + + 40 + + + + + 41 + + + + + 42 + + + + + 43 + + + + + 44 + + + YES + + + + + + 45 + + + YES + + + + + + 46 + + + YES + + + + + + + + + + 47 + + + + + 50 + + + + + 75 + + + + + 83 + + + YES + + + + + + 84 + + + YES + + + + + + 85 + + + YES + + + + + + + 86 + + + + + 87 + + + + + 106 + + + + + 108 + + + + + 89 + + + YES + + + + + + 90 + + + + + 70 + + + YES + + + + + + 73 + + + + + 116 + + + YES + + + + + + 117 + + + YES + + + + + + 118 + + + YES + + + + + + 119 + + + YES + + + + + + + + + + 120 + + + + + 121 + + + + + 122 + + + + + 123 + + + + + 128 + + + + + 129 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 106.IBPluginDependency + 108.IBPluginDependency + 116.IBAttributePlaceholdersKey + 116.IBPluginDependency + 117.IBPluginDependency + 118.IBPluginDependency + 119.IBEditorWindowLastContentRect + 119.IBPluginDependency + 119.editorWindowContentRectSynchronizationRect + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 128.IBPluginDependency + 129.IBPluginDependency + 15.IBEditorWindowLastContentRect + 15.IBPluginDependency + 15.WindowOrigin + 15.editorWindowContentRectSynchronizationRect + 37.IBPluginDependency + 38.IBPluginDependency + 39.IBPluginDependency + 39.editorWindowContentRectSynchronizationRect + 40.IBPluginDependency + 41.IBPluginDependency + 42.IBPluginDependency + 43.IBPluginDependency + 44.IBPluginDependency + 45.IBPluginDependency + 46.IBPluginDependency + 46.editorWindowContentRectSynchronizationRect + 47.IBPluginDependency + 50.IBPluginDependency + 70.IBPluginDependency + 73.IBPluginDependency + 75.IBPluginDependency + 83.IBPluginDependency + 84.IBPluginDependency + 85.IBPluginDependency + 85.editorWindowContentRectSynchronizationRect + 86.IBPluginDependency + 87.IBPluginDependency + 89.CustomClassName + 89.IBPluginDependency + 90.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{516, 521}, {132, 103}} + com.apple.InterfaceBuilder.CocoaPlugin + {{141, 423}, {113, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{495, 584}, {561, 46}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{554, 451}, {534, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{749, 312}, {138, 83}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{507, 385}, {170, 93}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{372, 435}, {170, 43}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 129 + + + + YES + + AuraConditionController + ConditionController + + validateState: + id + + + YES + + YES + comparatorPopUp + dispelTypePopUp + qualityPopUp + typeSegment + unitPopUp + valueText + + + YES + NSPopUpButton + NSPopUpButton + NSPopUpButton + BetterSegmentedControl + NSPopUpButton + NSTextField + + + + IBProjectSource + AuraConditionController.h + + + + AuraConditionController + ConditionController + + IBUserSource + + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + ConditionController + NSObject + + IBUserSource + + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/AuraConditionController.h b/AuraConditionController.h new file mode 100644 index 0000000..1b49afe --- /dev/null +++ b/AuraConditionController.h @@ -0,0 +1,27 @@ +// +// AuraRuleController.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface AuraConditionController : ConditionController { + IBOutlet NSPopUpButton *unitPopUp; + IBOutlet NSPopUpButton *qualityPopUp; + IBOutlet NSPopUpButton *comparatorPopUp; + IBOutlet NSPopUpButton *dispelTypePopUp; + + IBOutlet NSTextField *valueText; + + IBOutlet BetterSegmentedControl *typeSegment; +} + +- (IBAction)validateState: (id)sender; + +@end diff --git a/AuraConditionController.m b/AuraConditionController.m new file mode 100644 index 0000000..0ec35ae --- /dev/null +++ b/AuraConditionController.m @@ -0,0 +1,102 @@ +// +// AuraRuleController.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "AuraConditionController.h" +#import "ConditionController.h" +#import "BetterSegmentedControl.h" + + +@implementation AuraConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"AuraCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading AuraCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + // set visibility for dispel/aura components + BOOL showDispel = (([qualityPopUp selectedTag] == QualityBuffType) || ([qualityPopUp selectedTag] == QualityDebuffType)); + [valueText setHidden: showDispel]; + [typeSegment setHidden: showDispel]; + [dispelTypePopUp setHidden: !showDispel]; +} + +- (Condition*)condition { + [self validateState: nil]; + + BOOL showDispel = (([qualityPopUp selectedTag] == QualityBuffType) || ([qualityPopUp selectedTag] == QualityDebuffType)); + + id value = nil; + if(!showDispel) { + if( [typeSegment selectedTag] == TypeValue ) + value = [NSNumber numberWithInt: [valueText intValue]]; + if( [typeSegment selectedTag] == TypeString ) + value = [valueText stringValue]; + } + + Condition *condition = [Condition conditionWithVariety: VarietyAura + unit: [[unitPopUp selectedItem] tag] + quality: [[qualityPopUp selectedItem] tag] + comparator: [[comparatorPopUp selectedItem] tag] + state: [[dispelTypePopUp selectedItem] tag] + type: [typeSegment selectedTag] + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyAura) return; + + //[unitSegment selectSegmentWithTag: [condition unit]]; + + if(![unitPopUp selectItemWithTag: [condition unit]]) { + [unitPopUp selectItemWithTag: UnitPlayer]; + } + + if(![qualityPopUp selectItemWithTag: [condition quality]]) { + [qualityPopUp selectItemWithTag: QualityBuff]; + } + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareExists]; + } + + if(![dispelTypePopUp selectItemWithTag: [condition state]]) { + [dispelTypePopUp selectItemWithTag: StateMagic]; + } + + [typeSegment selectSegmentWithTag: [condition type]]; + + NSString *valueString = nil; + if( [[condition value] isKindOfClass: [NSString class]] ) + valueString = [condition value]; + else + valueString = [[condition value] stringValue]; + + [valueText setStringValue: valueString ? valueString : @""]; + + [self validateState: nil]; + + //if([condition type] == TypeValue) + //else + // [valueText setStringValue: [condition value]]; +} + +@end diff --git a/AuraController.h b/AuraController.h new file mode 100644 index 0000000..b2e0b69 --- /dev/null +++ b/AuraController.h @@ -0,0 +1,71 @@ +// +// AuraController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/26/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import + +@class Unit; +@class PlayerDataController; + +#define BuffGainNotification @"BuffGainNotification" +#define BuffFadeNotification @"BuffFadeNotification" + +#define DispelTypeMagic @"Magic" +#define DispelTypeCurse @"Curse" +#define DispelTypePoison @"Poison" +#define DispelTypeDisease @"Disease" + +@interface AuraController : NSObject { + IBOutlet id controller; + IBOutlet PlayerDataController *playerController; + IBOutlet id spellController; + IBOutlet id mobController; + + BOOL _firstRun; + NSMutableArray *_auras; + + IBOutlet NSPanel *aurasPanel; + IBOutlet NSTableView *aurasPanelTable; + NSMutableArray *_playerAuras; +} ++ (AuraController *)sharedController; + +- (void)showAurasPanel; + +// IDs: NO - returns an array of Auras +// IDs: YES - returns an array of NSNumbers (spell ID) +- (NSArray*)aurasForUnit: (Unit*)unit idsOnly: (BOOL)IDs; + +// hasAura & hasAuraNamed functions return the stack count of the spell (even though it says BOOL) +// auraType functions only return a BOOL +- (BOOL)unit: (Unit*)unit hasAura: (unsigned)spellID; +- (BOOL)unit: (Unit*)unit hasAuraNamed: (NSString*)spellName; +- (BOOL)unit: (Unit*)unit hasAuraType: (NSString*)spellName; + +// return stack count +- (BOOL)unit: (Unit*)unit hasDebuff: (unsigned)spellID; +- (BOOL)unit: (Unit*)unit hasBuff: (unsigned)spellID; + +// return stack count +- (BOOL)unit: (Unit*)unit hasDebuffNamed: (NSString*)spellName; +- (BOOL)unit: (Unit*)unit hasBuffNamed: (NSString*)spellName; + +- (BOOL)unit: (Unit*)unit hasBuffType: (NSString*)type; +- (BOOL)unit: (Unit*)unit hasDebuffType: (NSString*)type; + +//- (BOOL)playerHasBuffNamed: (NSString*)spellName; + +//- (BOOL)unit: (Unit*)unit hasBuff: (unsigned)spellID; +//- (BOOL)unit: (Unit*)unit hasDebuff: (unsigned)spellID; + +//- (BOOL)unit: (Unit*)unit hasBuffNamed: (NSString*)spellName; +//- (BOOL)unit: (Unit*)unit hasDebuffNamed: (NSString*)spellName; + +//- (BOOL)unit: (Unit*)unit hasBuffType: (NSString*)type; +//- (BOOL)unit: (Unit*)unit hasDebuffType: (NSString*)type; + +@end diff --git a/AuraController.m b/AuraController.m new file mode 100644 index 0000000..db67f6c --- /dev/null +++ b/AuraController.m @@ -0,0 +1,820 @@ +// +// AuraController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/26/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "AuraController.h" +#import "Controller.h" +#import "PlayerDataController.h" +#import "SpellController.h" +#import "MobController.h" + +#import "MemoryAccess.h" +#import "Offsets.h" +#import "Spell.h" + +#import "Unit.h" +#import "Aura.h" + + +@implementation AuraController + + +static AuraController* sharedController = nil; + ++ (AuraController *)sharedController { + if (sharedController == nil) + sharedController = [[[self class] alloc] init]; + return sharedController; +} + +- (id) init +{ + if(sharedController) { + [self release]; + self = sharedController; + } else if(self != nil) { + sharedController = self; + + _auras = [[NSMutableArray array] retain]; + _playerAuras = [[NSMutableArray array] retain]; + _firstRun = YES; + + // wow memory access validity notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsInvalid:) + name: PlayerIsInvalidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil]; + } + return self; +} + +- (void) dealloc{ + [_playerAuras release]; + [_auras release]; + [super dealloc]; +} + +- (void)awakeFromNib { + [aurasPanel setCollectionBehavior: NSWindowCollectionBehaviorCanJoinAllSpaces]; +} + +- (void)playerIsValid: (NSNotification*)notification { + [self performSelector: @selector(scanAllBuffs:) withObject: nil afterDelay: 1.0]; +} + +- (void)playerIsInvalid: (NSNotification*)notification { + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + [_auras removeAllObjects]; +} + + +- (void)showAurasPanel { + [aurasPanel makeKeyAndOrderFront: self]; +} + +#pragma mark - + +typedef struct WoWAura { + GUID guid; + UInt32 entryID; + UInt32 bytes; + UInt32 duration; + UInt32 expiration; + UInt32 unk1; + UInt32 unk2; + UInt32 unk3; +} WoWAura; + + + +/* + read +0xDB4 + if -1 then + table is at: + pointer(+0xC4C) + else + table is at +0xC34 + + 0xDB8 is valid count? + + */ + +- (NSArray*)aurasForUnit: (Unit*)unit idsOnly: (BOOL)IDs { + // log(LOG_GENERAL, @"Loading for unit: %@ (0x%X)", unit, [unit baseAddress]); + UInt32 validAuras = 0; + MemoryAccess *wowMemory = [controller wowMemoryAccess]; + if(!unit || !wowMemory || ![playerController playerIsValid:self]) + return nil; + + // get the number of valid aura buckets + [wowMemory readAddress: ([unit baseAddress] + BaseField_Auras_ValidCount) Buffer: (Byte*)&validAuras BufLength: sizeof(validAuras)]; + + // we're overflowing. try the backup. + if ( validAuras == 0xFFFFFFFF) { + [wowMemory readAddress: ([unit baseAddress] + BaseField_Auras_OverflowValidCount) Buffer: (Byte*)&validAuras BufLength: sizeof(validAuras)]; + log(LOG_GENERAL, @"[Auras] Lot of auras! Switching to backup!"); + } + + if ( validAuras <= 0 || validAuras > 500 ) { + log(LOG_GENERAL, @"[Auras] Not a valid aura count %d", validAuras); + return nil; + } + + UInt32 aurasAddress = [unit baseAddress] + BaseField_Auras_Start; + if ( validAuras > 16 ) { + + // aura overflow + UInt32 newAddr = 0; + if([wowMemory loadDataForObject: self atAddress: ([unit baseAddress] + BaseField_Auras_OverflowPtr1) Buffer: (Byte*)&newAddr BufLength: sizeof(newAddr)] && newAddr) { + aurasAddress = newAddr; + } else { + log(LOG_GENERAL, @"[Auras] Error finding aura overflow pointer."); + return nil; + } + } + + //log(LOG_GENERAL, @"[Auras] Address start: 0x%X", aurasAddress); + + + int i; + // GUID unitGUID = [unit GUID]; + // UInt32 currentTime = [playerController currentTime]; + NSMutableArray *auras = [NSMutableArray array]; + for(i=0; i< validAuras; i++) { + WoWAura aura; + if([wowMemory loadDataForObject: self atAddress: (aurasAddress) + i*sizeof(aura) Buffer:(Byte*)&aura BufLength: sizeof(aura)]) { + aura.bytes = CFSwapInt32HostToLittle(aura.bytes); + + //log(LOG_GENERAL, @"[auras] Bytes: %d", aura.bytes); + //log(LOG_GENERAL, @"[Auras] 0x%X Entry ID: %d", (aurasAddress) + i*sizeof(aura), aura.entryID); + + // skip empty buckets + if(aura.entryID == 0) continue; + + // As of 3.1.0 - I don't think expiration is needed, if you remove the buff, it sets that memory space to 0 + // skip expired buffs; they seem to linger until the space is needed for something else + /*if((currentTime > aura.expiration) && (aura.expiration != 0)) { + log(LOG_GENERAL, @"%d is expired (%d).", aura.entryID, aura.expiration); + continue; + }*/ + + // if we get here, the spell ID is valid and the expiration time is good + // the GUID is that of the casting player + // it is 0 for invalid auras, but can also be 0 for environmental auras (world buffs) + + // is the aura ours or something elses? + // i dont think we're going to bother differentiating for the time being + // but there's the damn code + /* + if(aura.guid == unitGUID) { + + } else { + // is it environmental? + if(aura.guid == 0) { + + } + + // is it another player? + if( GUID_HIPART(aura.guid) == HIGHGUID_PLAYER) { + + } + + // is it a mob? + if(GUID_HIPART(aura.guid) == HIGHGUID_UNIT) { + + } + }*/ + + if(IDs) [auras addObject: [NSNumber numberWithUnsignedInt: aura.entryID]]; + else [auras addObject: [Aura auraEntryID: aura.entryID + GUID: aura.guid + bytes: aura.bytes + duration: aura.duration + expiration: aura.expiration]]; + + //log(LOG_GENERAL, @"Found aura %d.", aura.entryID); + } + } + + return auras; +} + +- (BOOL)unit: (Unit*)unit hasAura: (unsigned)spellID { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + if(aura.entryID == spellID) + return aura.stacks ? aura.stacks : YES; + } + return NO; +} + +- (BOOL)unit: (Unit*)unit hasBuff: (unsigned)spellID { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + if((aura.entryID == spellID) && (!aura.isDebuff)) + return aura.stacks ? aura.stacks : YES; + } + return NO; +} + +- (BOOL)unit: (Unit*)unit hasDebuff: (unsigned)spellID { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + if((aura.entryID == spellID) && (aura.isDebuff)) + return aura.stacks ? aura.stacks : YES; + } + return NO; +} + +- (BOOL)unit: (Unit*)unit hasAuraNamed: (NSString*)spellName { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + Spell *spell; + if( (spell = [spellController spellForID: [NSNumber numberWithInt: aura.entryID]]) && [spell name]) { + NSRange range = [[spell name] rangeOfString: spellName + options: NSCaseInsensitiveSearch | NSAnchoredSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound) { + //log(LOG_GENERAL, @"Found player buff '%@' at index %d.", spellName, i); + return aura.stacks ? aura.stacks : YES; + } + } + } + return NO; +} + + +- (BOOL)unit: (Unit*)unit hasBuffNamed: (NSString*)spellName { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + Spell *spell; + if( (!aura.isDebuff) && (spell = [spellController spellForID: [NSNumber numberWithInt: aura.entryID]]) && [spell name]) { + NSRange range = [[spell name] rangeOfString: spellName + options: NSCaseInsensitiveSearch | NSAnchoredSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound) { + //log(LOG_GENERAL, @"Found player buff '%@' at index %d.", spellName, i); + return aura.stacks ? aura.stacks : YES; + } + } + } + return NO; +} + +- (BOOL)unit: (Unit*)unit hasDebuffNamed: (NSString*)spellName { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + Spell *spell; + if( (aura.isDebuff) && (spell = [spellController spellForID: [NSNumber numberWithInt: aura.entryID]]) && [spell name]) { + NSRange range = [[spell name] rangeOfString: spellName + options: NSCaseInsensitiveSearch | NSAnchoredSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound) { + //log(LOG_GENERAL, @"Found player buff '%@' at index %d.", spellName, i); + return aura.stacks ? aura.stacks : YES; + } + } + } + return NO; +} + + +- (BOOL)unit: (Unit*)unit hasAuraType: (NSString*)type { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + Spell *spell; + if( (spell = [spellController spellForID: [NSNumber numberWithInt: aura.entryID]]) && [spell dispelType]) { + if( [type isEqualToString: [spell dispelType]] ) { + return YES; + } + } + } + return NO; +} + +- (BOOL)unit: (Unit*)unit hasBuffType: (NSString*)type { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + Spell *spell; + if( (!aura.isDebuff) && (spell = [spellController spellForID: [NSNumber numberWithInt: aura.entryID]]) && [spell dispelType]) { + if( [type isEqualToString: [spell dispelType]] ) { + return YES; + } + } + } + return NO; +} + +- (BOOL)unit: (Unit*)unit hasDebuffType: (NSString*)type { + for(Aura *aura in [self aurasForUnit: unit idsOnly: NO]) { + Spell *spell; + if( (aura.isDebuff) && (spell = [spellController spellForID: [NSNumber numberWithInt: aura.entryID]]) && [spell dispelType]) { + if( [type isEqualToString: [spell dispelType]] ) { + return YES; + } + } + } + return NO; +} + +/* +- (BOOL)loadAurasFrom: (unsigned) address intoArray: (Byte*)auraArray ofSize: (unsigned)size { + // get WoW memory and player structure + MemoryAccess *wowMemory = [controller wowMemoryAccess]; + if(!wowMemory) return NO; + + if([wowMemory loadDataForObject: self atAddress: address Buffer: (Byte*)auraArray BufLength: sizeof(unsigned)*size]) { + return YES; + } + return NO; +} + +- (UInt8)getStackCountAtAddress: (UInt32)address { + // figure how many applications of this buff there are + UInt8 stacks = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: address Buffer: (Byte*)&stacks BufLength: sizeof(stacks)]) { + if(stacks == 0xFF) stacks = 1; + else stacks++; + } else { + stacks = 1; + } + + return stacks; +}*/ + +/* +- (BOOL)playerHasBuff: (unsigned)spellID { + if(!spellID || ![playerController playerIsValid:self]) return NO; + + unsigned auras[PLAYER_BUFF_SLOTS]; + if([self loadAurasFrom: ([playerController infoAddress] + PLAYER_BUFFS_OFFSET) intoArray: (Byte*)&auras ofSize: PLAYER_BUFF_SLOTS]) { + unsigned i; + for(i=0; i 0) && (aura.entryID <= MaxSpellID) ) { + Spell *spell = [spellController spellForID: [NSNumber numberWithUnsignedInt: aura.entryID]]; + if(spell) { + // log(LOG_GENERAL, @"::: %@ fades from you.", spell); + [[NSNotificationCenter defaultCenter] postNotificationName: BuffFadeNotification + object: self + userInfo: [NSDictionary dictionaryWithObject: spell forKey: @"Spell"]]; + } + } + } + + // then check for buff gains + UInt32 currentTime = [playerController currentTime]; + int order = 0; + for(Aura *aura in newAuras) { + order++; + + // see if it exists + BOOL foundAura = NO; + for(Aura *oldAura in _auras) { + if(oldAura.entryID == aura.entryID) { + foundAura = YES; + break; + } + } + + NSNumber *auraID = [NSNumber numberWithUnsignedInt: [aura entryID]]; + if( !foundAura && ([aura entryID] > 0) && ([aura entryID] <= MaxSpellID) ) { + // check to see if we know of this spell + if( ![spellController spellForID: auraID] ) { + [spellController addSpellAsRecognized: [Spell spellWithID: auraID]]; + } + + // reload the spell name if we dont have it + Spell *spell = [spellController spellForID: auraID]; + if(spell) { + // log(LOG_GENERAL, @"::: You gain %@.", spell); + [[NSNotificationCenter defaultCenter] postNotificationName: BuffGainNotification + object: self + userInfo: [NSDictionary dictionaryWithObject: spell forKey: @"Spell"]]; + + if(spell && (![spell name] || ![[spell name] length])) { + [spell reloadSpellData]; + } + } else { + // log(LOG_GENERAL, @"[Auras] Failed to create valid spell from ID %@.", num); + } + } + + // build our info dict for the auras window + Spell *spell = [[SpellController sharedSpells] spellForID: auraID]; + NSString *name = ([spell name] ? [spell name] : @"(Unknown)"); + + float timeRemaining = [aura expiration] ? ([aura expiration] - currentTime)/1000.0f : INFINITY; + NSDate *expiration = [aura expiration] ? [NSDate dateWithTimeIntervalSinceNow: timeRemaining] : [NSDate distantFuture]; + + int i; + NSString *bytes = [NSString string]; + for(i=31; i>=0; i--) { + bytes = [bytes stringByAppendingString: ((aura.bytes >> i)&0x1) ? @"1" : @"0"]; + if(i == 24 || i == 16 || i == 8) { + bytes = [bytes stringByAppendingString: @" | "]; + } + } + //NSString *bytes = [NSString stringWithFormat: @"[%X] [%X] [%X] [%X]", (aura.bytes >> 24)&0xFF, (aura.bytes >> 16)&0xFF, (aura.bytes >> 8)&0xFF, (aura.bytes >> 0)&0xFF]; + + [_playerAuras addObject: [NSDictionary dictionaryWithObjectsAndKeys: + aura, @"Aura", + [NSNumber numberWithInt: order], @"Order", + auraID, @"ID", + name, @"Name", + [NSNumber numberWithUnsignedInt: aura.stacks], @"Stacks", + [NSNumber numberWithUnsignedInt: aura.level], @"Level", + [NSNumber numberWithFloat: [aura duration]/1000.0f], @"Duration", + expiration, @"Expiration", + [NSNumber numberWithFloat: timeRemaining], @"TimeRemaining", + bytes, @"Bytes", + nil]]; + + } + + // then go and add pet spells + for(NSNumber *num in petAuras) { + // check to see if we know of this spell + if( ![spellController spellForID: num] ) { + [spellController addSpellAsRecognized: [Spell spellWithID: num]]; + } + + // reload the spell name if we dont have it + Spell *spell = [spellController spellForID: num]; + if( spell && (![spell name] || ![[spell name] length])) { + [spell reloadSpellData]; + // log(LOG_GENERAL, @"Loading pet spell %@", num); + } + } + + // then go and add target spells + for(NSNumber *num in tarAuras) { + // check to see if we know of this spell + if( ![spellController spellForID: num] ) { + [spellController addSpellAsRecognized: [Spell spellWithID: num]]; + } + + // reload the spell name if we dont have it + Spell *spell = [spellController spellForID: num]; + if( spell && (![spell name] || ![[spell name] length])) { + [spell reloadSpellData]; + // log(LOG_GENERAL, @"Loading target spell %@", num); + } + } + + // remove all the old buffs and add the new ones + [_auras removeAllObjects]; + [_auras addObjectsFromArray: newAuras]; + + [_playerAuras sortUsingDescriptors: [aurasPanelTable sortDescriptors]]; + [aurasPanelTable reloadData]; + } + + _firstRun = NO; + [self performSelector: @selector(scanAllBuffs:) withObject: nil afterDelay: 1.0]; +} + + +#pragma mark - +#pragma mark Auras Delesource + + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + return [_playerAuras count]; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if(rowIndex == -1 || rowIndex >= [_playerAuras count]) return nil; + + Aura *aura = [[_playerAuras objectAtIndex: rowIndex] objectForKey: @"Aura"]; + if([[aTableColumn identifier] isEqualToString: @"TimeRemaining"]) { + //NSDate *exp = [[_playerAuras objectAtIndex: rowIndex] objectForKey: @"Expiration"]; + //NSCalendarDate *date = [NSCalendarDate calendarDate]; + //date = [date dateByAddingYears: 0 months: 0 days: 0 hours: 0 minutes: 0 seconds: [exp timeIntervalSinceNow]]; + + float secRemaining = [[[_playerAuras objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]] floatValue]; + if(secRemaining < 60.0f) { + return [NSString stringWithFormat: @"%.0f sec", secRemaining]; + } else if(secRemaining < 3600.0f) { + return [NSString stringWithFormat: @"%.0f min", secRemaining/60.0f]; + } else if(secRemaining < 86400.0f) { + return [NSString stringWithFormat: @"%.0f hour", secRemaining/3600.0f]; + } else { + if([aura isPassive]) + return @"Passive"; + else if(![aura isActive]) + return @"Innate"; + return @"Never"; + } + } + + if([[aTableColumn identifier] isEqualToString: @"Name"]) { + NSString *name = [[_playerAuras objectAtIndex: rowIndex] objectForKey: @"Name"]; + NSNumber *stacks = [[_playerAuras objectAtIndex: rowIndex] objectForKey: @"Stacks"]; + return [NSString stringWithFormat: @"[%@] %@", stacks, name]; + } + + return [[_playerAuras objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)rowIndex +{ + if( rowIndex == -1 || rowIndex >= [_playerAuras count]) return; + + Aura *aura = [[_playerAuras objectAtIndex: rowIndex] objectForKey: @"Aura"]; + + if([aura isDebuff]) { + [aCell setTextColor: [NSColor redColor]]; + return; + } + + [aCell setTextColor: [NSColor blackColor]]; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (void)tableView:(NSTableView *)aTableView sortDescriptorsDidChange:(NSArray *)oldDescriptors { + [_playerAuras sortUsingDescriptors: [aurasPanelTable sortDescriptors]]; + [aurasPanelTable reloadData]; +} + +@end diff --git a/AuraStackCondition.xib b/AuraStackCondition.xib new file mode 100644 index 0000000..03a196b --- /dev/null +++ b/AuraStackCondition.xib @@ -0,0 +1,1671 @@ + + + + 1050 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + AuraStackConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{164, 18}, {110, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 1 + + + 400 + 75 + + + More Than + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + Exactly + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + Less Than + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{32, 18}, {100, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Target + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 2 + + + YES + + OtherViews + + YES + + + + Player + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Pet + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + Friendlies + + 2147483647 + + + _popUpItemAction: + 4 + + + + + Enemies + + 2147483647 + + + _popUpItemAction: + 5 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{134, 25}, {28, 17}} + + YES + + 67239488 + 272630784 + has + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 266 + {{485, 20}, {106, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{396, 18}, {84, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Buff + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 3 + + + YES + + OtherViews + + YES + + + + Debuff + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{333, 24}, {61, 17}} + + YES + + 67239488 + 272630784 + stacks of + + + + + + + + + 268 + {{279, 20}, {49, 22}} + + YES + + -1804468671 + -2009070592 + 0 + + + + YES + + YES + allowsFloats + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + . + + , + + + + # + + + + # + + + + + 0 + + YES + + + YES + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 265 + {{597, 18}, {114, 24}} + + YES + + -2080244224 + 0 + + + + YES + + Num + Spell ID Number + 1 + YES + 0 + + + Name + Spell Name + 3 + 0 + + + 1 + + + + + 268 + {{7, 22}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {729, 50} + + NSView + + + + + YES + + + view + + + + 3 + + + + disableCondition: + + + + 76 + + + + unitPopUp + + + + 77 + + + + comparatorPopUp + + + + 78 + + + + qualityPopUp + + + + 79 + + + + stackText + + + + 80 + + + + auraText + + + + 81 + + + + typeSegment + + + + 82 + + + + validateState: + + + + 83 + + + + validateState: + + + + 84 + + + + validateState: + + + + 85 + + + + validateState: + + + + 86 + + + + validateState: + + + + 87 + + + + validateState: + + + + 88 + + + + disableButton + + + + 90 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + + + + 28 + + + YES + + + + + + 29 + + + YES + + + + + + 30 + + + YES + + + + + + + + 31 + + + + + 32 + + + + + 33 + + + + + 42 + + + YES + + + + + + 43 + + + YES + + + + + + 44 + + + YES + + + + + + + + + + 45 + + + + + 46 + + + + + 47 + + + + + 50 + + + YES + + + + + + 51 + + + + + 52 + + + YES + + + + + + 53 + + + YES + + + + + + 54 + + + YES + + + + + + 55 + + + YES + + + + + + 56 + + + YES + + + + + + 57 + + + + + 58 + + + YES + + + + + + 59 + + + YES + + + + + + + 60 + + + + + 61 + + + + + 62 + + + + + 63 + + + YES + + + + + + 64 + + + + + 68 + + + YES + + + + + + 69 + + + + + 89 + + + + + 91 + + + + + 92 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 28.IBPluginDependency + 29.IBPluginDependency + 30.IBPluginDependency + 30.editorWindowContentRectSynchronizationRect + 31.IBAttributePlaceholdersKey + 31.IBPluginDependency + 32.IBAttributePlaceholdersKey + 32.IBPluginDependency + 33.IBAttributePlaceholdersKey + 33.IBPluginDependency + 42.IBPluginDependency + 43.IBPluginDependency + 44.IBEditorWindowLastContentRect + 44.IBPluginDependency + 44.editorWindowContentRectSynchronizationRect + 45.IBPluginDependency + 46.IBPluginDependency + 47.IBPluginDependency + 50.IBPluginDependency + 51.IBPluginDependency + 52.IBPluginDependency + 53.IBPluginDependency + 54.IBPluginDependency + 55.IBPluginDependency + 56.IBPluginDependency + 57.IBPluginDependency + 58.IBPluginDependency + 59.IBPluginDependency + 59.editorWindowContentRectSynchronizationRect + 60.IBPluginDependency + 61.IBPluginDependency + 62.IBPluginDependency + 63.CustomClassName + 63.IBPluginDependency + 64.IBPluginDependency + 64.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 68.IBAttributePlaceholdersKey + 68.IBPluginDependency + 69.IBPluginDependency + 89.IBPluginDependency + 91.IBPluginDependency + 92.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{427, 727}, {729, 50}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{479, 239}, {644, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{618, 206}, {142, 63}} + + ToolTip + + ToolTip + + More Than + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + The same number + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Less Than + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{448, 668}, {132, 103}} + com.apple.InterfaceBuilder.CocoaPlugin + {{500, 206}, {113, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{850, 226}, {115, 43}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 92 + + + + YES + + AuraStackConditionController + ConditionController + + YES + + YES + auraText + comparatorPopUp + qualityPopUp + stackText + typeSegment + unitPopUp + + + YES + NSTextField + NSPopUpButton + NSPopUpButton + NSTextField + BetterSegmentedControl + NSPopUpButton + + + + IBProjectSource + AuraStackConditionController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/AuraStackConditionController.h b/AuraStackConditionController.h new file mode 100644 index 0000000..d0e442a --- /dev/null +++ b/AuraStackConditionController.h @@ -0,0 +1,26 @@ +// +// AuraStackConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 7/1/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface AuraStackConditionController : ConditionController { + IBOutlet NSPopUpButton *unitPopUp; + IBOutlet NSPopUpButton *qualityPopUp; + IBOutlet NSPopUpButton *comparatorPopUp; + + IBOutlet NSTextField *stackText; + IBOutlet NSTextField *auraText; + + IBOutlet BetterSegmentedControl *typeSegment; +} + +@end + diff --git a/AuraStackConditionController.m b/AuraStackConditionController.m new file mode 100644 index 0000000..d3c261e --- /dev/null +++ b/AuraStackConditionController.m @@ -0,0 +1,83 @@ +// +// AuraStackConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 7/1/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "AuraStackConditionController.h" + + +@implementation AuraStackConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"AuraStackCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading AuraStackCondition nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + int stackCount = [stackText intValue]; + + id value = nil; + if( [typeSegment selectedTag] == TypeValue ) + value = [NSNumber numberWithInt: [auraText intValue]]; + if( [typeSegment selectedTag] == TypeString ) + value = [auraText stringValue]; + + Condition *condition = [Condition conditionWithVariety: VarietyAuraStack + unit: [[unitPopUp selectedItem] tag] + quality: [[qualityPopUp selectedItem] tag] + comparator: [[comparatorPopUp selectedItem] tag] + state: stackCount + type: [typeSegment selectedTag] + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyAuraStack) return; + + if(![unitPopUp selectItemWithTag: [condition unit]]) { + [qualityPopUp selectItemWithTag: UnitPlayer]; + } + + if(![qualityPopUp selectItemWithTag: [condition quality]]) { + [qualityPopUp selectItemWithTag: QualityBuff]; + } + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareMore]; + } + + [stackText setStringValue: [NSString stringWithFormat: @"%d", [condition state]]]; + [auraText setStringValue: [NSString stringWithFormat: @"%@", [condition value]]]; + + [typeSegment selectSegmentWithTag: [condition type]]; + + [self validateState: nil]; + + //if([condition type] == TypeValue) + //else + // [valueText setStringValue: [condition value]]; +} + +@end diff --git a/BannerAlliance.png b/BannerAlliance.png new file mode 100644 index 0000000..ea1cd7b Binary files /dev/null and b/BannerAlliance.png differ diff --git a/BannerHorde.png b/BannerHorde.png new file mode 100644 index 0000000..29c27b3 Binary files /dev/null and b/BannerHorde.png differ diff --git a/BannerNeutral.png b/BannerNeutral.png new file mode 100644 index 0000000..5bd6c74 Binary files /dev/null and b/BannerNeutral.png differ diff --git a/Battleground.h b/Battleground.h new file mode 100644 index 0000000..b7ed1fd --- /dev/null +++ b/Battleground.h @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: Battleground.h 325 2010-04-01 22:59:14Z ootoaoo $ + * + */ + +#import + +@class RouteCollection; + +@interface Battleground : NSObject { + + NSString *_name; + int _zone; // what zone is this BG associated with + int _queueID; // what ID should we send in our queue macro! + BOOL _enabled; + + // we'll never actually save this to the disk (it will be part of PvPBehavior, so we have to track this) + BOOL _changed; + + RouteCollection *_routeCollection; +} + +@property (readonly) int zone; +@property (readonly) int queueID; +@property (readonly, retain) NSString *name; +@property (readwrite, assign) BOOL enabled; +@property (readwrite, retain) RouteCollection *routeCollection; +@property (readwrite, assign) BOOL changed; + ++ (id)battlegroundWithName: (NSString*)name andZone: (int)zone andQueueID: (int)queueID; + +- (BOOL)isValid; + +@end diff --git a/Battleground.m b/Battleground.m new file mode 100644 index 0000000..0bc66bf --- /dev/null +++ b/Battleground.m @@ -0,0 +1,147 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: Battleground.m 325 2010-04-01 22:59:14Z ootoaoo $ + * + */ + +#import "Battleground.h" +#import "RouteCollection.h" + +@interface Battleground () +@property (readwrite, retain) NSString *name; +@property (readwrite) int zone; +@end + +@implementation Battleground + +- (id) init{ + self = [super init]; + if ( self != nil ){ + + _name = nil; + _zone = -1; + _queueID = -1; + _enabled = YES; + _routeCollection = nil; + _changed = NO; + } + return self; +} + +- (id)initWithName:(NSString*)name andZone:(int)zone andQueueID:(int)queueID{ + self = [self init]; + if (self != nil) { + _name = [name retain]; + _zone = zone; + _queueID = queueID; + _enabled = YES; + } + return self; +} + + ++ (id)battlegroundWithName: (NSString*)name andZone: (int)zone andQueueID: (int)queueID{ + return [[[Battleground alloc] initWithName: name andZone: zone andQueueID: queueID] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder{ + self = [self init]; + if ( self ) { + _zone = [[decoder decodeObjectForKey: @"Zone"] intValue]; + _queueID = [[decoder decodeObjectForKey: @"QueueID"] intValue]; + _name = [[decoder decodeObjectForKey: @"Name"] retain]; + _enabled = [[decoder decodeObjectForKey: @"Enabled"] boolValue]; + self.routeCollection = [decoder decodeObjectForKey:@"RouteCollection"]; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)coder{ + [coder encodeObject: [NSNumber numberWithInt:self.zone] forKey: @"Zone"]; + [coder encodeObject: [NSNumber numberWithInt:self.queueID] forKey: @"QueueID"]; + [coder encodeObject: self.name forKey: @"Name"]; + [coder encodeObject: [NSNumber numberWithBool:self.enabled] forKey: @"Enabled"]; + [coder encodeObject: self.routeCollection forKey:@"RouteCollection"]; +} + +- (id)copyWithZone:(NSZone *)zone{ + Battleground *copy = [[[self class] allocWithZone: zone] initWithName: self.name andZone:self.zone andQueueID: self.queueID]; + + _enabled = self.enabled; + copy.routeCollection = self.routeCollection; + + return copy; +} + +- (void) dealloc { + self.name = nil; + [super dealloc]; +} + +@synthesize zone = _zone; +@synthesize queueID = _queueID; +@synthesize name = _name; +@synthesize enabled = _enabled; +@synthesize routeCollection = _routeCollection; +@synthesize changed = _changed; + +- (NSString*)description{ + return [NSString stringWithFormat: @"<%@; Addr: 0x%X>", self.name, self]; +} + +#pragma mark Accessors + +- (void)setRouteCollection:(RouteCollection *)rc{ + + // only set changed to yes if it's a different RC! + if ( ![[rc UUID] isEqualToString:[_routeCollection UUID]] ){ + self.changed = YES; + } + + _routeCollection = [rc retain]; +} + +- (void)setName:(NSString*)name{ + _name = [[name copy] retain]; + self.changed = YES; +} + +- (void)setEnabled:(BOOL)enabled{ + _enabled = enabled; + self.changed = YES; +} + +- (void)setChanged:(BOOL)changed{ + _changed = changed; + //PGLog(@"%@ set to %d", self, changed); +} + +#pragma mark - + +- (BOOL)isValid{ + if ( self.routeCollection ){ + return YES; + } + return NO; +} + +@end diff --git a/Behavior.h b/Behavior.h new file mode 100644 index 0000000..cbcbfb2 --- /dev/null +++ b/Behavior.h @@ -0,0 +1,35 @@ +// +// Behavior.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "Procedure.h" +#import "FileObject.h" + +#define PreCombatProcedure @"PreCombatProcedure" +#define CombatProcedure @"CombatProcedure" +#define PostCombatProcedure @"PostCombatProcedure" +#define RegenProcedure @"RegenProcedure" +#define PatrollingProcedure @"PatrollingProcedure" + +@interface Behavior : FileObject { + BOOL _meleeCombat, _usePet, _useStartAttack; + NSMutableDictionary *_procedures; +} + ++ (id)behaviorWithName: (NSString*)name; + +@property (readonly, retain) NSDictionary *procedures; +@property BOOL meleeCombat; +@property BOOL usePet; +@property BOOL useStartAttack; + +- (Procedure*)procedureForKey: (NSString*)key; + +- (NSArray*)allProcedures; + +@end diff --git a/Behavior.m b/Behavior.m new file mode 100644 index 0000000..bc48122 --- /dev/null +++ b/Behavior.m @@ -0,0 +1,177 @@ +// +// Behavior.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Behavior.h" +#import "FileObject.h" + +@interface Behavior () +@property (readwrite, retain) NSDictionary *procedures; +@end + +@interface Behavior (Internal) +- (void)setProcedure: (Procedure*)proc forKey: (NSString*)key; +@end + +@implementation Behavior + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.procedures = [NSDictionary dictionary]; + self.meleeCombat = NO; + self.usePet = NO; + self.useStartAttack = NO; + + _observers = [[NSArray arrayWithObjects: + @"usePet", + @"meleeCombat", + @"useStartAttack", + nil] retain]; + } + return self; +} + +- (id)initWithName: (NSString*)name { + self = [self init]; + + if ( self ){ + self.name = name; + self.procedures = [NSDictionary dictionaryWithObjectsAndKeys: + [Procedure procedureWithName: name], PreCombatProcedure, + [Procedure procedureWithName: name], CombatProcedure, + [Procedure procedureWithName: name], PostCombatProcedure, + [Procedure procedureWithName: name], RegenProcedure, + [Procedure procedureWithName: name], PatrollingProcedure, nil]; + } + + return self; +} + + ++ (id)behaviorWithName: (NSString*)name { + return [[[Behavior alloc] initWithName: name] autorelease]; +} + + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if ( self ) { + self.procedures = [decoder decodeObjectForKey: @"Procedures"] ? [decoder decodeObjectForKey: @"Procedures"] : [NSDictionary dictionary]; + + // make sure we have a procedure object for every type + if( ![self procedureForKey: PreCombatProcedure]) + [self setProcedure: [Procedure procedureWithName: [self name]] forKey: PreCombatProcedure]; + if( ![self procedureForKey: CombatProcedure]) + [self setProcedure: [Procedure procedureWithName: [self name]] forKey: CombatProcedure]; + if( ![self procedureForKey: PostCombatProcedure]) + [self setProcedure: [Procedure procedureWithName: [self name]] forKey: PostCombatProcedure]; + if( ![self procedureForKey: RegenProcedure]) + [self setProcedure: [Procedure procedureWithName: [self name]] forKey: RegenProcedure]; + if( ![self procedureForKey: PatrollingProcedure]) + [self setProcedure: [Procedure procedureWithName: [self name]] forKey: PatrollingProcedure]; + + if([decoder decodeObjectForKey: @"MeleeCombat"]) { + self.meleeCombat = [[decoder decodeObjectForKey: @"MeleeCombat"] boolValue]; + } + + if([decoder decodeObjectForKey: @"UsePet"]) { + self.usePet = [[decoder decodeObjectForKey: @"UsePet"] boolValue]; + } + + if([decoder decodeObjectForKey: @"UseStartAttack"]) { + self.useStartAttack = [[decoder decodeObjectForKey: @"UseStartAttack"] boolValue]; + } + + [super initWithCoder:decoder]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [super encodeWithCoder:coder]; + + [coder encodeObject: self.procedures forKey: @"Procedures"]; + [coder encodeObject: [NSNumber numberWithBool: self.meleeCombat] forKey: @"MeleeCombat"]; + [coder encodeObject: [NSNumber numberWithBool: self.usePet] forKey: @"UsePet"]; + [coder encodeObject: [NSNumber numberWithBool: self.usePet] forKey: @"UseStartAttack"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Behavior *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.procedures = self.procedures; + copy.usePet = self.usePet; + copy.meleeCombat = self.meleeCombat; + copy.useStartAttack = self.useStartAttack; + copy.changed = YES; + + return copy; +} + +- (void) dealloc{ + [_observers release]; + _observers = nil; + [_procedures release]; + _procedures = nil; +// self.procedures = nil; + + [super dealloc]; +} + +#pragma mark - + + +- (NSString*)description { + return [NSString stringWithFormat: @"", [self name]]; +} + +@synthesize procedures = _procedures; +@synthesize meleeCombat = _meleeCombat; +@synthesize usePet = _usePet; +@synthesize useStartAttack = _useStartAttack; +- (Procedure*)procedureForKey: (NSString*)key { + return [_procedures objectForKey: key]; +} + +- (NSArray*)allProcedures{ + NSMutableArray *allProcedures = [NSMutableArray array]; + + if ( [_procedures objectForKey: PreCombatProcedure] ) + [allProcedures addObject:[_procedures objectForKey: PreCombatProcedure]]; + if ( [_procedures objectForKey: CombatProcedure] ) + [allProcedures addObject:[_procedures objectForKey: CombatProcedure]]; + if ( [_procedures objectForKey: PostCombatProcedure] ) + [allProcedures addObject:[_procedures objectForKey: PostCombatProcedure]]; + if ( [_procedures objectForKey: RegenProcedure] ) + [allProcedures addObject:[_procedures objectForKey: RegenProcedure]]; + if ( [_procedures objectForKey: PatrollingProcedure] ) + [allProcedures addObject:[_procedures objectForKey: PatrollingProcedure]]; + + return [[allProcedures retain] autorelease]; +} + +- (void)setProcedure: (Procedure*)proc forKey: (NSString*)key { + if(proc && key) { + [_procedures setObject: proc forKey: key]; + } +} + +- (void)setProcedures: (NSDictionary*)procedureDict { + [_procedures autorelease]; + if(procedureDict) { + _procedures = [[NSMutableDictionary alloc] initWithDictionary: procedureDict copyItems: YES]; + } else { + _procedures = nil; + } +} + +@end diff --git a/Behaviors.xib b/Behaviors.xib new file mode 100644 index 0000000..31342b3 --- /dev/null +++ b/Behaviors.xib @@ -0,0 +1,4007 @@ + + + + 1050 + 10D2094 + 762 + 1038.29 + 460.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 762 + + + YES + + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + ProcedureController + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{22, 47}, {107, 17}} + + YES + + 67239488 + 71304192 + Create Behavior: + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2ODY1AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 266 + {{131, 11}, {526, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 16 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 268 + {{15, 16}, {114, 17}} + + YES + + 67239488 + 71304192 + Select Behavior: + + + + + + + + + 266 + {{134, 44}, {561, 22}} + + YES + + -1804468671 + 268436480 + + + Enter a name and press return to create a new behavior. + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 265 + {{662, 12}, {33, 25}} + + YES + + -2076049856 + 134219776 + + + -2038415105 + 163 + + + 400 + 75 + + + YES + + + 2147483647 + + + _popUpItemAction: + + + YES + + + + YES + + + + YES + 1 + YES + YES + 2 + + + + {{1, 1}, {713, 78}} + + + + {{17, 433}, {715, 80}} + + {0, 0} + + 67239424 + 0 + Behaviors + + LucidaGrande + 11 + 3100 + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 18 + + YES + + + 256 + + YES + + + 292 + {{128, 12}, {102, 19}} + + YES + + -2080244224 + 134217728 + Edit Rule + + LucidaGrande + 12 + 16 + + + -2034482945 + 164 + + NSImage + NSListViewTemplate + + + + 400 + 75 + + + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {675, 234} + + YES + + + 256 + {675, 17} + + + + + + -2147483392 + {{661, 0}, {16, 17}} + + + + YES + + Order + 40 + 40 + 1000 + + 75628096 + 2048 + Order + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 134219776 + Text Cell + + + + 6 + System + controlBackgroundColor + + + + + 2 + YES + + + + Name + 410 + 40 + 1000 + + 75628096 + 2048 + Rule Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + + Action + 216 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Action + + + 6 + System + headerColor + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + 1388314624 + + + 4 + 15 + 0 + NO + 0 + + + {{1, 17}, {675, 234}} + + + + + 4 + + + + -2147483392 + {{661, 17}, {15, 190}} + + + _doScroller: + 1 + 0.68421047925949097 + + + + -2147483392 + {{1, 207}, {660, 15}} + + 1 + + _doScroller: + 0.27540978789329529 + + + + 2304 + + YES + + + {{1, 0}, {675, 17}} + + + + + 4 + + + + {{18, 37}, {677, 252}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 292 + {{18, 12}, {102, 19}} + + YES + + 67239424 + 134217728 + Add Rule + + + -2034482945 + 164 + + NSImage + NSAddTemplate + + + + 400 + 75 + + + + + 289 + {{593, 12}, {102, 19}} + + YES + + -2080244224 + 134217728 + Delete Rule + + + -2034482945 + 164 + + NSImage + NSRemoveTemplate + + + + 400 + 75 + + + + + 268 + {{673, 293}, {25, 25}} + + YES + + 67239424 + 134217728 + + + + -2034482945 + 33 + + + 200 + 25 + + + + + 264 + {{16, 294}, {512, 24}} + + YES + + 67239424 + 32768 + + + + YES + + 97 + Pre-Combat + Pre-combat procedures are performed, if applicable, before combat begins. + 1 + 2 + + + 90 + Combat + Combat procedures are performed, if applicable, during combat with an enemy. + 2 + 0 + + + 106 + Post-Combat + Post-combat procedures are performed, if applicable, when combat has concluded. + 3 + 0 + + + 88 + Regen + Regen procedures are performed after the post-combat procedures have concluded. If any actions are performed, this phase will last 30 seconds to accommodate eating and drinking. + 4 + YES + 0 + + + 121 + Patrolling + These procedures will be performed periodically while patrolling. They are not connected to combat in any way. + 5 + 0 + + + 3 + 1 + + + + + -2147483356 + {{235, 15}, {409, 14}} + + YES + + 68288064 + 272761856 + Combat is now a priority queue! Click the ? above for more info. + + + + + 1 + MSAwIDAAA + + + + + {{1, 1}, {713, 329}} + + + + {{17, 100}, {715, 331}} + + {0, 0} + + 67239424 + 0 + Procedures + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 34 + + YES + + + 256 + + YES + + + 268 + {{16, 32}, {517, 18}} + + YES + + -2080244224 + 0 + Combat requires melee range (move to target if further than 5.0 yards away). + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{16, 12}, {407, 18}} + + YES + + -2080244224 + 0 + Character using this behavior has a pet, and it should attack. + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 52}, {435, 18}} + + YES + + -2080244224 + 0 + Automatically attack using /startattack (recommended for melee) + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {713, 80}} + + + + {{17, 16}, {715, 82}} + + {0, 0} + + 67239424 + 0 + Options + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {749, 523} + + NSView + + + 23 + 2 + {{652, 479}, {457, 405}} + -469761024 + Behavior Help + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 274 + {{17, 17}, {423, 368}} + + YES + + 69336577 + 1346502656 + QSAiYmVoYXZpb3IiIGRlZmluZXMgaG93IHlvdXIgY2hhcmFjdGVyIHdpbGwgYWN0IHdoaWxlIGJvdHRp +bmcuIEV2ZXJ5IGJlaGF2aW9yIGlzIG1hZGUgdXAgb2YgZml2ZSAicHJvY2VkdXJlcywiIG9uZSBmb3Ig +ZWFjaCBwaGFzZSBvZiB0aGUgY29tYmF0IHByb2Nlc3MgYW5kIG9uZSBmb3IgcGF0cm9sbGluZy4gIEVh +Y2ggcHJvY2VkdXJlIGRlZmluZXMgYSBzZXQgb2YgInJ1bGVzIiB3aGljaCBkZXRlcm1pbmUgdGhlIGFj +dGlvbiB0aGF0IHdpbGwgYmUgcGVyZm9ybWVkLgoKVGhlIGZpdmUgcHJvY2VkdXJlcy9waGFzZXMgYXJl +OgoJUHJlLUNvbWJhdDogVGhpcyBwcm9jZWR1cmUgaXMgZXhlY3V0ZWQgb25jZSBpbW1lZGlhdGVseSBi +ZWZvcmUgY29tYmF0IGJlZ2lucy4gIFRoaXMgcGhhc2UgaXMgZGVzaWduZWQgZm9yIHByZS1jb21iYXQg +cHJlcGFyYXRpb24gKGUuZy4sIGRyb3BwaW5nIHRvdGVtcyBmb3IgYSBTaGFtYW4sIG9yIFBvd2VyIFdv +cmQ6IFNoaWVsZCBmb3IgYSBQcmllc3QpLgoJQ29tYmF0OiBUaGlzIHByb2NlZHVyZSBpcyBleGVjdXRl +ZCByZXBlYXRlZGx5IHVudGlsIG5vIGVuZW1pZXMgcmVtYWluIGFsaXZlLiAgRWFjaCBydWxlIGlzIGV4 +ZWN1dGVkIGluIGEgcHJpb3JpdHkgcXVldWUuICBBZnRlciB0aGUgZmlyc3QgaXMgZXhlY3V0ZWQsICBQ +RyBjaGVja3MgdG8gc2VlIGlmIHRoZSBmaXJzdCBzaG91bGQgYmUgZXhlY3V0ZWQgYWdhaW4sIHRoZW4g +bW92ZXMgZG93biB0aGUgbGlzdCB1bnRpbCBubyBydWxlcyByZW1haW4uCglQb3N0LUNvbWJhdDogVGhp +cyBwcm9jZWR1cmUgaXMgZXhlY3V0ZWQgb25jZSBmb2xsb3dpbmcgdGhlIGVuZCBvZiBjb21iYXQuICBJ +dCBpcyBkZXNpZ25lZCBmb3IgYWJpbGl0aWVzIHRoYXQgZW5zdXJlIHlvdSBhcmUgcmVhZHkgdGhlIFJl +Z2VuIHBoYXNlIGFuZCB0aGUgbmV4dCByb3VuZCBvZiBjb21iYXQuICBGb3IgZXhhbXBsZSwgYSBNYWdl +IG1pZ2h0IHJlLWJ1ZmYgQXJjYW5lIEludGVsbGVjdCBhbmQgY29uanVyZSBGb29kL1dhdGVyLgoJUmVn +ZW46IFRoaXMgcHJvY2VkdXJlIGlzIGV4ZWN1dGVkIG9uY2UgZm9sbG93aW5nIHRoZSBQb3N0LUNvbWJh +dCBwcm9jZWR1cmUuICBJZiBhbnkgYWN0aW9uIGlzIHBlcmZvcm1lZCBkdXJpbmcgdGhlIHJlZ2VuIHBo +YXNlLCBhbGwgZnVydGhlciBhY3Rpdml0eSB3aWxsIGJlIGRlbGF5ZWQgZm9yIDMwIHNlY29uZHMgdG8g +YWxsb3cgZm9yIGVhdGluZyBhbmQgZHJpbmtpbmcuCglQYXRyb2xsaW5nOiBUaGlzIHByb2NlZHVyZSBp +cyBleGVjdXRlZCByZXBlYXRlZGx5IHdoaWxlIHBhdHJvbGxpbmcsIGFuZCBzaG91bGQgY29udGFpbiBv +bmx5IGFjdGlvbnMgdGhhdCBoYXZlIG5vdGhpbmcgdG8gZG8gd2l0aCBjb21iYXQgKG1vdW50aW5nLCBz +dGVhbHRoaW5nLCBzaGlmdGluZyBpbnRvIHRyYXZlbCBmb3JtLCBldGMpLiAgWW91IHNob3VsZCBiZSBw +ZWRhbnRpYyB3aXRoIHRoaXMgcnVsZSwgYW5kIGRlZmluZSBleHBsaWNpdGx5IHdoYXQgeW91IHdhbnQg +aXQgdG8gZG8uICBJZiB5b3UgYXJlIG5vdCBleHBsaWNpdCB3aXRoIHlvdXIgY29uZGl0aW9ucywgUG9j +a2V0IEdub21lIG1heSBwYXVzZSByZXBlYXRlZGx5IGFzIHlvdSBwYXRyb2wuA + + + YES + 1 + + + + + + + 268 + {{17, 11}, {423, 14}} + + YES + + 68288064 + 138544128 + Only Combat has changed as of version 1.4.1 + + + + + + + + {457, 405} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + + + YES + + + + + 1048576 + 2147483647 + + NSImage + NSActionTemplate + + + + + + + + + + YES + Current Behavior + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Rename Behavior... + + 1048576 + 2147483647 + + + + + + Duplicate Behavior + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Delete Behavior... + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Import Behavior... + + 1048576 + 2147483647 + + + + + + Export Behavior... + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Show in Finder + + 1048576 + 2147483647 + + + + + YES + + + 23 + 2 + {{196, 448}, {532, 62}} + -1543503872 + Rename + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 268 + {{17, 25}, {117, 17}} + + YES + + 67239488 + 272630784 + Rename Behavior: + + + + + + + + + 268 + {{139, 20}, {281, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + + + + + + 268 + {{422, 14}, {96, 32}} + + YES + + 67239424 + 134217728 + Done + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + {532, 62} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + 31 + 2 + {{815, 665}, {415, 231}} + 1677721600 + Export + NSPanel + + {3.40282e+38, 3.40282e+38} + {415, 231} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {373, 129} + + YES + + + 256 + {{333, 0}, {16, 17}} + + + YES + + 370 + 40 + 1000 + + 75628096 + 2048 + + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + 1321205760 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 1}, {373, 129}} + + + + + 4 + + + + -2147483392 + {{333, 1}, {15, 247}} + + + _doScroller: + 0.99647891521453857 + + + + -2147483392 + {{1, 248}, {332, 15}} + + 1 + + _doScroller: + 0.99699699878692627 + + + {{20, 55}, {375, 131}} + + + 562 + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{17, 194}, {365, 17}} + + YES + + 68288064 + 272630784 + Export selected behaviors as a single "Behavior Set" file... + + + + + + + + + 289 + {{305, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Export + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 289 + {{209, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Cancel + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + + 290 + {{17, 22}, {193, 17}} + + YES + + 68288064 + 272630784 + x behaviors selected. + + + + + + + + {415, 231} + + {{0, 0}, {1920, 1178}} + {415, 247} + {3.40282e+38, 3.40282e+38} + ExportBehaviorsPanel + + + + YES + name + @count + + YES + + YES + YES + YES + YES + YES + + + + + YES + + + view + + + + 43 + + + + addRule: + + + + 122 + + + + tableRowDoubleClicked: + + + + 123 + + + + deleteRule: + + + + 124 + + + + makeKeyAndOrderFront: + + + + 125 + + + + dataSource + + + + 132 + + + + delegate + + + + 133 + + + + procedureEventSegment + + + + 135 + + + + createBehavior: + + + + 138 + + + + loadBehavior: + + + + 139 + + + + setBehaviorEvent: + + + + 141 + + + + content: behaviors + + + + + + content: behaviors + content + behaviors + 2 + + + 145 + + + + contentValues: behaviors.name + + + + + + contentValues: behaviors.name + contentValues + behaviors.name + + 2 + + + 146 + + + + selectedObject: currentBehavior + + + + + + selectedObject: currentBehavior + selectedObject + currentBehavior + + 2 + + + 147 + + + + ruleTable + + + + 152 + + + + enabled: currentProcedure + + + + + + enabled: currentProcedure + enabled + currentProcedure + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSIsNotNil + + + 2 + + + 154 + + + + enabled: validSelection + + + + + + enabled: validSelection + enabled + validSelection + 2 + + + 155 + + + + enabled: validSelection + + + + + + enabled: validSelection + enabled + validSelection + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + + + + + + + + 2 + + + 156 + + + + actionMenu + + + + 174 + + + + importBehavior: + + + + 176 + + + + exportBehavior: + + + + 177 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSIsNotNil + + + 2 + + + 179 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSIsNotNil + + + 2 + + + 181 + + + + removeBehavior: + + + + 182 + + + + value: currentBehavior.name + + + + + + value: currentBehavior.name + value + currentBehavior.name + 2 + + + 198 + + + + renamePanel + + + + 199 + + + + renameBehavior: + + + + 201 + + + + closeRename: + + + + 202 + + + + title: currentBehavior.name + + + + + + title: currentBehavior.name + title + currentBehavior.name + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + No Behavior Selected + No Behavior Selected + No Behavior Selected + No Behavior Selected + + + + 2 + + + 206 + + + + displayPatternTitle1: currentBehavior.name + + + + + + displayPatternTitle1: currentBehavior.name + displayPatternTitle1 + currentBehavior.name + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + Procedures for: %{title1}@ + Procedures + Procedures + Procedures + Procedures + + + + 2 + + + 207 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSIsNotNil + + + 2 + + + 209 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSIsNotNil + + + 2 + + + 220 + + + + value: currentBehavior.meleeCombat + + + + + + value: currentBehavior.meleeCombat + value + currentBehavior.meleeCombat + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 221 + + + + value: currentBehavior.usePet + + + + + + value: currentBehavior.usePet + value + currentBehavior.usePet + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 256 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSIsNotNil + + + 2 + + + 264 + + + + duplicateBehavior: + + + + 277 + + + + menu + + + + 280 + + + + contentArray: behaviors + + + + + + contentArray: behaviors + contentArray + behaviors + 2 + + + 305 + + + + value: arrangedObjects.name + + + + + + value: arrangedObjects.name + value + arrangedObjects.name + 2 + + + 306 + + + + displayPatternValue1: selectedObjects.@count + + + + + + displayPatternValue1: selectedObjects.@count + displayPatternValue1 + selectedObjects.@count + + NSDisplayPattern + %{value1}@ behaviors selected. + + 2 + + + 309 + + + + argument: selectedObjects + + + + + + argument: selectedObjects + argument + selectedObjects + + NSSelectorName + exportBehaviors: + + 2 + + + 314 + + + + target: self + + + + + + target: self + target + self + + NSSelectorName + exportBehaviors: + + + 2 + + + 319 + + + + combatPriorityTextField + + + + 322 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSIsNotNil + + + 2 + + + 328 + + + + showInFinder: + + + + 329 + + + + enabled: currentBehavior + + + + + + enabled: currentBehavior + enabled + currentBehavior + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSIsNotNil + + + 2 + + + 333 + + + + value: currentBehavior.useStartAttack + + + + + + value: currentBehavior.useStartAttack + value + currentBehavior.useStartAttack + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 334 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + 47 + + + YES + + + + Help Window + + + 48 + + + YES + + + + + + + 49 + + + YES + + + + + + 50 + + + + + 74 + + + YES + + + + + + + + + + 75 + + + YES + + + + + + + + + + + + 76 + + + YES + + + + + + 77 + + + YES + + + + + + 78 + + + YES + + + + + + 79 + + + YES + + + + + + 88 + + + + + 89 + + + + + 90 + + + YES + + + + + + 91 + + + YES + + + + + + + + 92 + + + + + 93 + + + + + 94 + + + + + 95 + + + + + 97 + + + YES + + + + + + 98 + + + YES + + + + + + + + + 99 + + + YES + + + + + + 100 + + + YES + + + + + + 101 + + + YES + + + + + + 102 + + + YES + + + + + + 105 + + + + + 106 + + + + + 107 + + + + + 108 + + + + + 109 + + + + + 110 + + + + + 111 + + + YES + + + + + + + + 112 + + + + + 113 + + + YES + + + + + + 114 + + + YES + + + + + + 115 + + + YES + + + + + + 116 + + + + + 117 + + + + + 118 + + + + + 119 + + + + + 168 + + + YES + + + + + + + + + + + + + + + + + 169 + + + + + 170 + + + + + 171 + + + + + 172 + + + + + 173 + + + + + 183 + + + YES + + + + Rename Sheet + + + 184 + + + YES + + + + + + + + 187 + + + YES + + + + + + 188 + + + + + 191 + + + YES + + + + + + 192 + + + + + 193 + + + YES + + + + + + 194 + + + + + 203 + + + + + 204 + + + + + 239 + + + YES + + + + + + + + 212 + + + YES + + + + + + 213 + + + + + 242 + + + YES + + + + + + 243 + + + + + 267 + + + YES + + + + + + 268 + + + YES + + + + + + 269 + + + YES + + + + + + 274 + + + + + 275 + + + + + 276 + + + + + 278 + + + + + 286 + + + YES + + + + Export + + + 287 + + + YES + + + + + + + + + + 288 + + + YES + + + + + + 289 + + + YES + + + + + + 290 + + + YES + + + + + + 291 + + + YES + + + + + + + + 292 + + + YES + + + + + + 293 + + + + + 294 + + + YES + + + + + + 295 + + + + + 296 + + + + + 297 + + + YES + + + + + + 298 + + + + + 299 + + + + + 300 + + + + + 301 + + + + + 304 + + + + + 320 + + + YES + + + + + + 321 + + + + + 323 + + + YES + + + + + + 324 + + + + + 325 + + + + + 326 + + + + + 330 + + + YES + + + + + + 331 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 100.IBPluginDependency + 101.IBAttributePlaceholdersKey + 101.IBPluginDependency + 102.CustomClassName + 102.IBPluginDependency + 102.IBSegmentedControlTracker.RoundRobinState + 102.IBSegmentedControlTracker.WasGrowing + 105.IBPluginDependency + 105.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 106.IBPluginDependency + 107.IBPluginDependency + 108.IBPluginDependency + 109.IBPluginDependency + 110.IBPluginDependency + 111.CustomClassName + 111.IBPluginDependency + 112.IBPluginDependency + 113.IBPluginDependency + 114.IBPluginDependency + 117.IBPluginDependency + 118.IBPluginDependency + 119.IBPluginDependency + 168.IBEditorWindowLastContentRect + 168.IBPluginDependency + 168.editorWindowContentRectSynchronizationRect + 169.IBPluginDependency + 170.IBPluginDependency + 171.IBPluginDependency + 172.IBPluginDependency + 173.IBPluginDependency + 183.IBPluginDependency + 183.IBWindowTemplateEditedContentRect + 183.NSWindowTemplate.visibleAtLaunch + 183.editorWindowContentRectSynchronizationRect + 184.IBPluginDependency + 187.IBPluginDependency + 188.IBPluginDependency + 191.IBPluginDependency + 192.IBPluginDependency + 193.IBPluginDependency + 194.IBPluginDependency + 203.IBPluginDependency + 204.IBPluginDependency + 212.IBAttributePlaceholdersKey + 212.IBPluginDependency + 213.IBPluginDependency + 242.IBAttributePlaceholdersKey + 242.IBPluginDependency + 243.IBPluginDependency + 267.IBPluginDependency + 268.IBPluginDependency + 269.IBEditorWindowLastContentRect + 269.IBPluginDependency + 269.editorWindowContentRectSynchronizationRect + 274.IBPluginDependency + 275.IBPluginDependency + 276.IBPluginDependency + 278.IBPluginDependency + 286.IBEditorWindowLastContentRect + 286.IBPluginDependency + 286.IBWindowTemplateEditedContentRect + 286.NSWindowTemplate.visibleAtLaunch + 286.windowTemplate.hasMinSize + 286.windowTemplate.maxSize + 286.windowTemplate.minSize + 287.IBPluginDependency + 288.IBPluginDependency + 289.IBPluginDependency + 290.IBPluginDependency + 291.IBPluginDependency + 292.IBPluginDependency + 293.IBPluginDependency + 294.IBPluginDependency + 295.IBPluginDependency + 296.IBPluginDependency + 297.IBPluginDependency + 298.IBPluginDependency + 299.IBPluginDependency + 300.IBPluginDependency + 301.IBPluginDependency + 304.IBPluginDependency + 320.IBPluginDependency + 321.IBPluginDependency + 323.IBPluginDependency + 324.IBPluginDependency + 325.IBPluginDependency + 326.IBPluginDependency + 330.IBAttributePlaceholdersKey + 330.IBPluginDependency + 331.IBPluginDependency + 47.IBEditorWindowLastContentRect + 47.IBPluginDependency + 47.IBWindowTemplateEditedContentRect + 47.NSWindowTemplate.visibleAtLaunch + 47.editorWindowContentRectSynchronizationRect + 48.IBPluginDependency + 49.IBPluginDependency + 50.IBPluginDependency + 74.IBPluginDependency + 75.IBPluginDependency + 76.IBPluginDependency + 77.IBPluginDependency + 78.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 88.IBPluginDependency + 89.IBPluginDependency + 90.IBPluginDependency + 91.IBPluginDependency + 92.IBPluginDependency + 93.IBPluginDependency + 94.IBPluginDependency + 95.IBPluginDependency + 97.IBPluginDependency + 98.IBPluginDependency + 99.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{465, 237}, {749, 523}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{353, 328}, {625, 477}} + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Help with Behaviors, Procedures, and Rules. + + + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterTableView + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1099, 699}, {196, 203}} + com.apple.InterfaceBuilder.CocoaPlugin + {{438, 202}, {199, 173}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{353, 378}, {532, 62}} + + {{353, 378}, {532, 62}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + This will make your character run to melee range during combat. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + You are still responsible for summoning, healing, and feeding your pet. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1119, 885}, {86, 23}} + com.apple.InterfaceBuilder.CocoaPlugin + {{489, 462}, {113, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{659, 753}, {415, 231}} + com.apple.InterfaceBuilder.CocoaPlugin + {{659, 753}, {415, 231}} + + + {3.40282e+38, 3.40282e+38} + {415, 231} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + You are still responsible for summoning, healing, and feeding your pet. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{561, 669}, {457, 405}} + com.apple.InterfaceBuilder.CocoaPlugin + {{561, 669}, {457, 405}} + + {{323, 152}, {457, 405}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Type a name and press enter. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 334 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BetterTableView + NSTableView + + IBUserSource + + + + + FileController + NSObject + + IBProjectSource + FileController.h + + + + NSObject + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + showInFinder: + tableRowDoubleClicked: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + fileController + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + FileController + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableHeaderView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTableHeaderView.h + + + + NSTableView + NSControl + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + YES + + YES + NSActionTemplate + NSAddTemplate + NSListViewTemplate + NSMenuCheckmark + NSMenuMixedState + NSRemoveTemplate + NSSwitch + + + YES + {15, 15} + {8, 8} + {11, 10} + {9, 8} + {7, 2} + {8, 8} + {15, 15} + + + + diff --git a/BetterAuthorizationSampleLib.c b/BetterAuthorizationSampleLib.c new file mode 100755 index 0000000..b4001ba --- /dev/null +++ b/BetterAuthorizationSampleLib.c @@ -0,0 +1,2431 @@ +/* + File: BetterAuthorizationSampleLib.c + + Contains: Implementation of reusable code for privileged helper tools. + + Written by: DTS + + Copyright: Copyright (c) 2007 Apple Inc. All Rights Reserved. + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple, Inc. + ("Apple") in consideration of your agreement to the following terms, and your + use, installation, modification or redistribution of this Apple software + constitutes acceptance of these terms. If you do not agree with these terms, + please do not use, install, modify or redistribute this Apple software. + + In consideration of your agreement to abide by the following terms, and subject + to these terms, Apple grants you a personal, non-exclusive license, under Apple's + copyrights in this original Apple software (the "Apple Software"), to use, + reproduce, modify and redistribute the Apple Software, with or without + modifications, in source and/or binary forms; provided that if you redistribute + the Apple Software in its entirety and without modifications, you must retain + this notice and the following text and disclaimers in all such redistributions of + the Apple Software. Neither the name, trademarks, service marks or logos of + Apple, Inc. may be used to endorse or promote products derived from the + Apple Software without specific prior written permission from Apple. Except as + expressly stated in this notice, no other rights or licenses, express or implied, + are granted by Apple herein, including but not limited to any patent rights that + may be infringed by your derivative works or by other works in which the Apple + Software may be incorporated. + + The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO + WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED + WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN + COMBINATION WITH YOUR PRODUCTS. + + IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION + OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT + (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +// Define BAS_PRIVATE so that we pick up our private definitions from +// "BetterAuthorizationSampleLib.h". + +#define BAS_PRIVATE 1 + +#include "BetterAuthorizationSampleLib.h" + +#include +#include +#include +#include +#include +#include +#include + +// At runtime BAS only requires CoreFoundation. However, at build time we need +// CoreServices for the various OSStatus error codes in "MacErrors.h". Thus, by default, +// we include CoreServices at build time. However, you can flip this switch to check +// that you're not accidentally using any other CoreServices things. + +#if 1 + #include +#else + #warning Do not ship this way! + #include + #include "/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacErrors.h" +#endif + +////////////////////////////////////////////////////////////////////////////////// +#pragma mark ***** Constants + +enum { + kIdleTimeoutInSeconds = 120, // if we get no requests in 2 minutes, we quit + kWatchdogTimeoutInSeconds = 65 // any given request must be completely in 65 seconds +}; + +// IMPORTANT: +// These values must be greater than 60 seconds. If a job runs for less than 60 +// seconds, launchd will consider it to have failed. + +// kBASMaxNumberOfKBytes has two uses: +// +// 1. When receiving a dictionary, it is used to limit the size of the incoming +// data. This ensures that a non-privileged client can't exhaust the +// address space of a privileged helper tool. +// +// 2. Because it's less than 4 GB, this limit ensures that the dictionary size +// can be sent as an architecture-neutral uint32_t. + +#define kBASMaxNumberOfKBytes (1024 * 1024) + +// A hard-wired file system path for the UNIX domain socket; %s is the placeholder +// for the bundle ID (in file system representation). + +#define kBASSocketPathFormat "/var/run/%s.socket" + +// The key used to get our describe our socket in the launchd property list file. + +#define kLaunchDSocketDictKey "MasterSocket" + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Common Code + +extern int BASOSStatusToErrno(OSStatus errNum) + // See comment in header. +{ + int retval; + + #define CASE(ident) \ + case k ## ident ## Err: \ + retval = ident; \ + break + switch (errNum) { + case noErr: + retval = 0; + break; + case kENORSRCErr: + retval = ESRCH; // no ENORSRC on Mac OS X, so use ESRCH + break; + case memFullErr: + retval = ENOMEM; + break; + CASE(EDEADLK); + CASE(EAGAIN); + case kEOPNOTSUPPErr: + retval = ENOTSUP; + break; + CASE(EPROTO); + CASE(ETIME); + CASE(ENOSR); + CASE(EBADMSG); + case kECANCELErr: + retval = ECANCELED; // note spelling difference + break; + CASE(ENOSTR); + CASE(ENODATA); + CASE(EINPROGRESS); + CASE(ESRCH); + CASE(ENOMSG); + default: + if ( (errNum <= kEPERMErr) && (errNum >= kENOMSGErr) ) { + retval = (-3200 - errNum) + 1; // OT based error + } else if ( (errNum >= errSecErrnoBase) && (errNum <= (errSecErrnoBase + ELAST)) ) { + retval = (int) errNum - errSecErrnoBase; // POSIX based error + } else { + retval = (int) errNum; // just return the value unmodified + } + } + #undef CASE + return retval; +} + +extern OSStatus BASErrnoToOSStatus(int errNum) + // See comment in header. +{ + OSStatus retval; + + if ( errNum == 0 ) { + retval = noErr; + } else if ( (errNum >= EPERM) && (errNum <= ELAST) ) { + retval = (OSStatus) errNum + errSecErrnoBase; + } else { + retval = (int) errNum; // just return the value unmodified + } + + return retval; +} + +static Boolean BASIsBinaryPropertyListData(const void * plistBuffer, size_t plistSize) + // Make sure that whatever is passed into the buffer that will + // eventually become a plist (and then sequentially a dictionary) + // is NOT in binary format. +{ + static const char kBASBinaryPlistWatermark[6] = "bplist"; + + assert(plistBuffer != NULL); + + return (plistSize >= sizeof(kBASBinaryPlistWatermark)) + && (memcmp(plistBuffer, kBASBinaryPlistWatermark, sizeof(kBASBinaryPlistWatermark)) == 0); +} + +static void NormaliseOSStatusErrorCode(OSStatus *errPtr) + // Normalise the cancelled error code to reduce the number of checks that our clients + // have to do. I made this a function in case I ever want to expand this to handle + // more than just this one case. +{ + assert(errPtr != NULL); + + if ( (*errPtr == errAuthorizationCanceled) || (*errPtr == (errSecErrnoBase + ECANCELED)) ) { + *errPtr = userCanceledErr; + } +} + +static int BASRead(int fd, void *buf, size_t bufSize, size_t *bytesRead) + // A wrapper around that keeps reading until either + // bufSize bytes are read or until EOF is encountered, in which case you get + // EPIPE. + // + // If bytesRead is not NULL, *bytesRead will be set to the number + // of bytes successfully read. On success, this will always be equal to + // bufSize. On error, it indicates how much was read before the error + // occurred (which could be zero). +{ + int err; + char * cursor; + size_t bytesLeft; + ssize_t bytesThisTime; + + // Pre-conditions + + assert(fd >= 0); + assert(buf != NULL); + // bufSize may be 0 + assert(bufSize <= kBASMaxNumberOfKBytes); + // bytesRead may be NULL + + err = 0; + bytesLeft = bufSize; + cursor = (char *) buf; + while ( (err == 0) && (bytesLeft != 0) ) { + bytesThisTime = read(fd, cursor, bytesLeft); + if (bytesThisTime > 0) { + cursor += bytesThisTime; + bytesLeft -= bytesThisTime; + } else if (bytesThisTime == 0) { + err = EPIPE; + } else { + assert(bytesThisTime == -1); + + err = errno; + assert(err != 0); + if (err == EINTR) { + err = 0; // let's loop again + } + } + } + if (bytesRead != NULL) { + *bytesRead = bufSize - bytesLeft; + } + + return err; +} + +static int BASWrite(int fd, const void *buf, size_t bufSize, size_t *bytesWritten) + // A wrapper around that keeps writing until either + // all the data is written or an error occurs, in which case + // you get EPIPE. + // + // If bytesWritten is not NULL, *bytesWritten will be set to the number + // of bytes successfully written. On success, this will always be equal to + // bufSize. On error, it indicates how much was written before the error + // occurred (which could be zero). +{ + int err; + char * cursor; + size_t bytesLeft; + ssize_t bytesThisTime; + + // Pre-conditions + + assert(fd >= 0); + assert(buf != NULL); + // bufSize may be 0 + assert(bufSize <= kBASMaxNumberOfKBytes); + // bytesWritten may be NULL + + // SIGPIPE occurs when you write to pipe or socket + // whose other end has been closed. The default action + // for SIGPIPE is to terminate the process. That's + // probably not what you wanted. So, in the debug build, + // we check that you've set the signal action to SIG_IGN + // (ignore). Of course, you could be building a program + // that needs SIGPIPE to work in some special way, in + // which case you should define BAS_WRITE_CHECK_SIGPIPE + // to 0 to bypass this check. + + #if !defined(BAS_WRITE_CHECK_SIGPIPE) + #define BAS_WRITE_CHECK_SIGPIPE 1 + #endif + #if !defined(NDEBUG) && BAS_WRITE_CHECK_SIGPIPE + { + int junk; + struct stat sb; + struct sigaction currentSignalState; + int val; + socklen_t valLen; + + junk = fstat(fd, &sb); + assert(junk == 0); + + if ( S_ISFIFO(sb.st_mode) || S_ISSOCK(sb.st_mode) ) { + junk = sigaction(SIGPIPE, NULL, ¤tSignalState); + assert(junk == 0); + + valLen = sizeof(val); + junk = getsockopt(fd, SOL_SOCKET, SO_NOSIGPIPE, &val, &valLen); + assert(junk == 0); + assert(valLen == sizeof(val)); + + // If you hit this assertion, you need to either disable SIGPIPE in + // your process or on the specific socket you're writing to. The + // standard code for the former is: + // + // (void) signal(SIGPIPE, SIG_IGN); + // + // You typically add this code to your main function. + // + // The standard code for the latter is: + // + // static const int kOne = 1; + // err = setsockopt(fd, SOL_SOCKET, SO_NOSIGPIPE, &kOne, sizeof(kOne)); + // + // You typically do this just after creating the socket. + + assert( (currentSignalState.sa_handler == SIG_IGN) || (val == 1) ); + } + } + #endif + + err = 0; + bytesLeft = bufSize; + cursor = (char *) buf; + while ( (err == 0) && (bytesLeft != 0) ) { + bytesThisTime = write(fd, cursor, bytesLeft); + if (bytesThisTime > 0) { + cursor += bytesThisTime; + bytesLeft -= bytesThisTime; + } else if (bytesThisTime == 0) { + assert(false); + err = EPIPE; + } else { + assert(bytesThisTime == -1); + + err = errno; + assert(err != 0); + if (err == EINTR) { + err = 0; // let's loop again + } + } + } + if (bytesWritten != NULL) { + *bytesWritten = bufSize - bytesLeft; + } + + return err; +} + +static int BASReadDictionary(int fdIn, CFDictionaryRef *dictPtr) + // Create a CFDictionary by reading the XML data from fdIn. + // It first reads the size of the XML data, then allocates a + // buffer for that data, then reads the data in, and finally + // unflattens the data into a CFDictionary. + // + // On success, the caller is responsible for releasing *dictPtr. + // + // See also the companion routine, BASWriteDictionary, below. +{ + int err = 0; + uint32_t dictSize; + void * dictBuffer; + CFDataRef dictData; + CFPropertyListRef dict; + + // Pre-conditions + + assert(fdIn >= 0); + assert( dictPtr != NULL); + assert(*dictPtr == NULL); + + dictBuffer = NULL; + dictData = NULL; + dict = NULL; + + // Read the data size and allocate a buffer. Always read the length as a big-endian + // uint32_t, so that the app and the helper tool can be different architectures. + + err = BASRead(fdIn, &dictSize, sizeof(dictSize), NULL); + if (err == 0) { + dictSize = OSSwapBigToHostInt32(dictSize); + if (dictSize == 0) { + // According to the C language spec malloc(0) may return NULL (although the Mac OS X + // malloc doesn't ever do this), so we specifically check for and error out in + // that case. + err = EINVAL; + } else if (dictSize > kBASMaxNumberOfKBytes) { + // Abitrary limit to prevent potentially hostile client overwhelming us with data. + err = EINVAL; + } + } + if (err == 0) { + dictBuffer = malloc( (size_t) dictSize); + if (dictBuffer == NULL) { + err = ENOMEM; + } + } + + // Read the data and unflatten. + + if (err == 0) { + err = BASRead(fdIn, dictBuffer, dictSize, NULL); + } + if ( (err == 0) && BASIsBinaryPropertyListData(dictBuffer, dictSize) ) { + err = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + if (err == 0) { + dictData = CFDataCreateWithBytesNoCopy(NULL, dictBuffer, dictSize, kCFAllocatorNull); + if (dictData == NULL) { + err = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + } + if (err == 0) { + dict = CFPropertyListCreateFromXMLData(NULL, dictData, kCFPropertyListImmutable, NULL); + if (dict == NULL) { + err = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + } + if ( (err == 0) && (CFGetTypeID(dict) != CFDictionaryGetTypeID()) ) { + err = EINVAL; // only CFDictionaries need apply + } + // CFShow(dict); + + // Clean up. + + if (err != 0) { + if (dict != NULL) { + CFRelease(dict); + } + dict = NULL; + } + *dictPtr = (CFDictionaryRef) dict; + free(dictBuffer); + if (dictData != NULL) { + CFRelease(dictData); + } + + assert( (err == 0) == (*dictPtr != NULL) ); + + return err; +} + +static int BASWriteDictionary(CFDictionaryRef dict, int fdOut) + // Write a dictionary to a file descriptor by flattening + // it into XML. Send the size of the XML before sending + // the data so that BASReadDictionary knows how much to + // read. + // + // See also the companion routine, BASReadDictionary, above. +{ + int err = 0; + CFDataRef dictData; + uint32_t dictSize; + + // Pre-conditions + + assert(dict != NULL); + assert(fdOut >= 0); + + dictData = NULL; + + // Get the dictionary as XML data. + + dictData = CFPropertyListCreateXMLData(NULL, dict); + if (dictData == NULL) { + err = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + + // Send the length, then send the data. Always send the length as a big-endian + // uint32_t, so that the app and the helper tool can be different architectures. + // + // The MoreAuthSample version of this code erroneously assumed that CFDataGetBytePtr + // can fail and thus allocated an extra buffer to copy the data into. In reality, + // CFDataGetBytePtr can't fail, so this version of the code doesn't do the unnecessary + // allocation. + + if ( (err == 0) && (CFDataGetLength(dictData) > kBASMaxNumberOfKBytes) ) { + err = EINVAL; + } + if (err == 0) { + dictSize = OSSwapHostToBigInt32( CFDataGetLength(dictData) ); + err = BASWrite(fdOut, &dictSize, sizeof(dictSize), NULL); + } + if (err == 0) { + err = BASWrite(fdOut, CFDataGetBytePtr(dictData), CFDataGetLength(dictData), NULL); + } + + if (dictData != NULL) { + CFRelease(dictData); + } + + return err; +} + +// When we pass a descriptor, we have to pass at least one byte +// of data along with it, otherwise the recvmsg call will not +// block if the descriptor hasn't been written to the other end +// of the socket yet. + +static const char kDummyData = 'D'; + +// Due to a kernel bug in Mac OS X 10.4.x and earlier , +// you will run into problems if you write data to a socket while a process is +// trying to receive a descriptor from that socket. A common symptom of this +// problem is that, if you write two descriptors back-to-back, the second one +// just disappears. +// +// To avoid this problem, we explicitly ACK all descriptor transfers. +// After writing a descriptor, the sender reads an ACK byte from the socket. +// After reading a descriptor, the receiver sends an ACK byte (kACKData) +// to unblock the sender. + +static const char kACKData = 'A'; + +static int BASReadDescriptor(int fd, int *fdRead) + // Read a descriptor from fd and place it in *fdRead. + // + // On success, the caller is responsible for closing *fdRead. + // + // See the associated BASWriteDescriptor, below. +{ + int err; + int junk; + struct msghdr msg; + struct iovec iov; + struct { + struct cmsghdr hdr; + int fd; + } control; + char dummyData; + ssize_t bytesReceived; + + // Pre-conditions + + assert(fd >= 0); + assert( fdRead != NULL); + assert(*fdRead == -1); + + iov.iov_base = (char *) &dummyData; + iov.iov_len = sizeof(dummyData); + + msg.msg_name = NULL; + msg.msg_namelen = 0; + msg.msg_iov = &iov; + msg.msg_iovlen = 1; + msg.msg_control = (caddr_t) &control; + msg.msg_controllen = sizeof(control); + msg.msg_flags = MSG_WAITALL; + + do { + bytesReceived = recvmsg(fd, &msg, 0); + if (bytesReceived == sizeof(dummyData)) { + if ( (dummyData != kDummyData) + || (msg.msg_flags != 0) + || (msg.msg_control == NULL) + || (msg.msg_controllen != sizeof(control)) + || (control.hdr.cmsg_len != sizeof(control)) + || (control.hdr.cmsg_level != SOL_SOCKET) + || (control.hdr.cmsg_type != SCM_RIGHTS) + || (control.fd < 0) ) { + err = EINVAL; + } else { + *fdRead = control.fd; + err = 0; + } + } else if (bytesReceived == 0) { + err = EPIPE; + } else { + assert(bytesReceived == -1); + + err = errno; + assert(err != 0); + } + } while (err == EINTR); + + // Send the ACK. If that fails, we have to act like we never got the + // descriptor in our to maintain our post condition. + + if (err == 0) { + err = BASWrite(fd, &kACKData, sizeof(kACKData), NULL); + if (err != 0) { + junk = close(*fdRead); + assert(junk == 0); + *fdRead = -1; + } + } + + assert( (err == 0) == (*fdRead >= 0) ); + + return err; +} + +static int BASWriteDescriptor(int fd, int fdToWrite) + // Write the descriptor fdToWrite to fd. + // + // See the associated BASReadDescriptor, above. +{ + int err; + struct msghdr msg; + struct iovec iov; + struct { + struct cmsghdr hdr; + int fd; + } control; + ssize_t bytesSent; + char ack; + + // Pre-conditions + + assert(fd >= 0); + assert(fdToWrite >= 0); + + control.hdr.cmsg_len = sizeof(control); + control.hdr.cmsg_level = SOL_SOCKET; + control.hdr.cmsg_type = SCM_RIGHTS; + control.fd = fdToWrite; + + iov.iov_base = (char *) &kDummyData; + iov.iov_len = sizeof(kDummyData); + + msg.msg_name = NULL; + msg.msg_namelen = 0; + msg.msg_iov = &iov; + msg.msg_iovlen = 1; + msg.msg_control = (caddr_t) &control; + msg.msg_controllen = control.hdr.cmsg_len; + msg.msg_flags = 0; + do { + bytesSent = sendmsg(fd, &msg, 0); + if (bytesSent == sizeof(kDummyData)) { + err = 0; + } else { + assert(bytesSent == -1); + + err = errno; + assert(err != 0); + } + } while (err == EINTR); + + // After writing the descriptor, try to read an ACK back from the + // recipient. If that fails, or we get the wrong ACK, we've failed. + + if (err == 0) { + err = BASRead(fd, &ack, sizeof(ack), NULL); + if ( (err == 0) && (ack != kACKData) ) { + err = EINVAL; + } + } + + return err; +} + +extern void BASCloseDescriptorArray( + CFArrayRef descArray +) + // See comment in header. +{ + int junk; + CFIndex descCount; + CFIndex descIndex; + + // I decided to allow descArray to be NULL because it makes it + // easier to call this routine using the code. + // + // BASCloseDescriptorArray((CFArrayRef) CFDictionaryGetValue(response, CFSTR(kBASDescriptorArrayKey))); + + if (descArray != NULL) { + if (CFGetTypeID(descArray) == CFArrayGetTypeID()) { + descCount = CFArrayGetCount(descArray); + + for (descIndex = 0; descIndex < descCount; descIndex++) { + CFNumberRef thisDescNum; + int thisDesc; + + thisDescNum = (CFNumberRef) CFArrayGetValueAtIndex(descArray, descIndex); + if ( (thisDescNum == NULL) + || (CFGetTypeID(thisDescNum) != CFNumberGetTypeID()) + || ! CFNumberGetValue(thisDescNum, kCFNumberIntType, &thisDesc) ) { + assert(false); + } else { + assert(thisDesc >= 0); + junk = close(thisDesc); + assert(junk == 0); + } + } + } else { + assert(false); + } + } +} + +static int BASReadDictioanaryTranslatingDescriptors(int fd, CFDictionaryRef *dictPtr) + // Reads a dictionary and its associated descriptors (if any) from fd, + // putting the dictionary (modified to include the translated descriptor + // numbers) in *dictPtr. + // + // On success, the caller is responsible for releasing *dictPtr and for + // closing any descriptors it references (BASCloseDescriptorArray makes + // the second part easy). +{ + int err; + int junk; + CFDictionaryRef dict; + CFArrayRef incomingDescs; + + // Pre-conditions + + assert(fd >= 0); + assert( dictPtr != NULL); + assert(*dictPtr == NULL); + + dict = NULL; + + // Read the dictionary. + + err = BASReadDictionary(fd, &dict); + + // Now read the descriptors, if any. + + if (err == 0) { + incomingDescs = (CFArrayRef) CFDictionaryGetValue(dict, CFSTR(kBASDescriptorArrayKey)); + if (incomingDescs == NULL) { + // No descriptors. Not much to do. Just use dict as the response, + // NULLing it out so that we don't release it at the end. + + *dictPtr = dict; + dict = NULL; + } else { + CFMutableArrayRef translatedDescs; + CFMutableDictionaryRef mutableDict; + CFIndex descCount; + CFIndex descIndex; + + // We have descriptors, so there's lots of stuff to do. Have to + // receive each of the descriptors assemble them into the + // translatedDesc array, then create a mutable dictionary based + // on response (mutableDict) and replace the + // kBASDescriptorArrayKey with translatedDesc. + + translatedDescs = NULL; + mutableDict = NULL; + + // Start by checking incomingDescs. + + if ( CFGetTypeID(incomingDescs) != CFArrayGetTypeID() ) { + err = EINVAL; + } + + // Create our output data. + + if (err == 0) { + translatedDescs = CFArrayCreateMutable(NULL, 0, &kCFTypeArrayCallBacks); + if (translatedDescs == NULL) { + err = coreFoundationUnknownErr; + } + } + if (err == 0) { + mutableDict = CFDictionaryCreateMutableCopy(NULL, 0, dict); + if (mutableDict == NULL) { + err = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + } + + // Now read each incoming descriptor, appending the results + // to translatedDescs as we go. By keeping our working results + // in translatedDescs, we make sure that we can clean up if + // we fail. + + if (err == 0) { + descCount = CFArrayGetCount(incomingDescs); + + // We don't actually depend on the descriptor values in the + // response (that is, the elements of incomingDescs), because + // they only make sense it the context of the sending process. + // All we really care about is the number of elements, which + // tells us how many times to go through this loop. However, + // just to be paranoid, in the debug build I check that the + // incoming array is well formed. + + #if !defined(NDEBUG) + for (descIndex = 0; descIndex < descCount; descIndex++) { + int thisDesc; + CFNumberRef thisDescNum; + + thisDescNum = (CFNumberRef) CFArrayGetValueAtIndex(incomingDescs, descIndex); + assert(thisDescNum != NULL); + assert(CFGetTypeID(thisDescNum) == CFNumberGetTypeID()); + assert(CFNumberGetValue(thisDescNum, kCFNumberIntType, &thisDesc)); + assert(thisDesc >= 0); + } + #endif + + // Here's the real work. For descCount times, read a descriptor + // from fd, wrap it in a CFNumber, and append it to translatedDescs. + // Note that we have to be very careful not to leak a descriptor + // if we get an error here. + + for (descIndex = 0; descIndex < descCount; descIndex++) { + int thisDesc; + CFNumberRef thisDescNum; + + thisDesc = -1; + thisDescNum = NULL; + + err = BASReadDescriptor(fd, &thisDesc); + if (err == 0) { + thisDescNum = CFNumberCreate(NULL, kCFNumberIntType, &thisDesc); + if (thisDescNum == NULL) { + err = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + } + if (err == 0) { + CFArrayAppendValue(translatedDescs, thisDescNum); + // The descriptor is now stashed in translatedDescs, + // so this iteration of the loop is no longer responsible + // for closing it. + thisDesc = -1; + } + + if (thisDescNum != NULL) { + CFRelease(thisDescNum); + } + if (thisDesc != -1) { + junk = close(thisDesc); + assert(junk == 0); + } + + if (err != 0) { + break; + } + } + } + + // Clean up and establish output parameters. + + if (err == 0) { + CFDictionarySetValue(mutableDict, CFSTR(kBASDescriptorArrayKey), translatedDescs); + *dictPtr = mutableDict; + } else { + BASCloseDescriptorArray(translatedDescs); + if (mutableDict != NULL) { + CFRelease(mutableDict); + } + } + if (translatedDescs != NULL) { + CFRelease(translatedDescs); + } + } + } + + if (dict != NULL) { + CFRelease(dict); + } + + assert( (err == 0) == (*dictPtr != NULL) ); + + return err; +} + +static int BASWriteDictionaryAndDescriptors(CFDictionaryRef dict, int fd) + // Writes a dictionary and its associated descriptors to fd. +{ + int err; + CFArrayRef descArray; + CFIndex descCount; + CFIndex descIndex; + + // Pre-conditions + + assert(dict != NULL); + assert(fd >= 0); + + // Write the dictionary. + + err = BASWriteDictionary(dict, fd); + + // Process any descriptors. The descriptors are indicated by + // a special key in the dictionary. If that key is present, + // it's a CFArray of CFNumbers that present the descriptors to be + // passed. + + if (err == 0) { + descArray = (CFArrayRef) CFDictionaryGetValue(dict, CFSTR(kBASDescriptorArrayKey)); + + // We only do the following if the special key is present. + + if (descArray != NULL) { + + // If it's not an array, that's bad. + + if ( CFGetTypeID(descArray) != CFArrayGetTypeID() ) { + err = EINVAL; + } + + // Loop over the array, getting each descriptor and writing it. + + if (err == 0) { + descCount = CFArrayGetCount(descArray); + + for (descIndex = 0; descIndex < descCount; descIndex++) { + CFNumberRef thisDescNum; + int thisDesc; + + thisDescNum = (CFNumberRef) CFArrayGetValueAtIndex(descArray, descIndex); + if ( (thisDescNum == NULL) + || (CFGetTypeID(thisDescNum) != CFNumberGetTypeID()) + || ! CFNumberGetValue(thisDescNum, kCFNumberIntType, &thisDesc) ) { + err = EINVAL; + } + if (err == 0) { + err = BASWriteDescriptor(fd, thisDesc); + } + + if (err != 0) { + break; + } + } + } + } + } + + return err; +} + +static OSStatus FindCommand( + CFDictionaryRef request, + const BASCommandSpec commands[], + size_t * commandIndexPtr +) + // FindCommand is a simple utility routine for checking that the + // command name within a request is valid (that is, matches one of the command + // names in the BASCommandSpec array). + // + // On success, *commandIndexPtr will be the index of the requested command + // in the commands array. On error, the value in *commandIndexPtr is undefined. +{ + OSStatus retval = noErr; + CFStringRef commandStr; + char * command; + UInt32 commandSize = 0; + size_t index = 0; + + // Pre-conditions + + assert(request != NULL); + assert(commands != NULL); + assert(commands[0].commandName != NULL); // there must be at least one command + assert(commandIndexPtr != NULL); + + command = NULL; + + // Get the command as a C string. To prevent untrusted command string from + // trying to run us out of memory, we limit its length to 1024 UTF-16 values. + + commandStr = CFDictionaryGetValue(request, CFSTR(kBASCommandKey)); + if ( (commandStr == NULL) || (CFGetTypeID(commandStr) != CFStringGetTypeID()) ) { + retval = paramErr; + } + commandSize = CFStringGetLength(commandStr); + if ( (retval == noErr) && (commandSize > 1024) ) { + retval = paramErr; + } + if (retval == noErr) { + size_t bufSize; + + bufSize = CFStringGetMaximumSizeForEncoding(CFStringGetLength(commandStr), kCFStringEncodingUTF8) + 1; + command = malloc(bufSize); + + if (command == NULL) { + retval = memFullErr; + } else if ( ! CFStringGetCString(commandStr, command, bufSize, kCFStringEncodingUTF8) ) { + retval = coreFoundationUnknownErr; + } + } + + // Search the commands array for that command. + + if (retval == noErr) { + do { + if ( strcmp(commands[index].commandName, command) == 0 ) { + *commandIndexPtr = index; + break; + } + index += 1; + if (commands[index].commandName == NULL) { + retval = BASErrnoToOSStatus(ENOENT); + break; + } + } while (true); + } + + free(command); + + return retval; +} + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Tool Code + +/* + Watchdog Timer + -------------- + BetterAuthorizationSampleLib's privileged helper tool server is single threaded. Thus, + it's possible for a broken or malicious client to stop progress within the helper + tool simply by sending the tool half a request. The single thread of execution + within the tool will wait forever for the rest of the request and, while it's + waiting, it won't be able to service other requests. Clearly this is not good. + + I contemplated a number of solutions to this problem, but eventually settled + on a very simple solution. When it starts processing a request, the tool + starts a watchdog timer. If the timer expires, the tool dies. The single + request that the tool is blocked on will fail (because our end of the per-connection + socket for that request closed when we died) and subsequent requests will + relaunch the tool on demand, courtesy of launchd. + + I use SIGALRM to implement this functionality. As stated in our header, the + BetterAuthorizationSampleLib code claims this signal and our clients are required not + to use it. Also, the default disposition for SIGALRM is to quit the process, + which is exactly what I want. +*/ + +static void EnableWatchdog(void) + // Start the watchdog timer. If you don't call DisableWatchdog before the + // timer expires, the process will die with a SIGALRM. +{ + (void) alarm(kWatchdogTimeoutInSeconds); +} + +static void DisableWatchdog(void) + // Disable the watchdog timer. +{ + (void) alarm(0); +} + +#if ! defined(NDEBUG) + + static bool CommandArraySizeMatchesCommandProcArraySize( + const BASCommandSpec commands[], + const BASCommandProc commandProcs[] + ) + { + size_t commandCount; + size_t procCount; + + commandCount = 0; + while ( commands[commandCount].commandName != NULL ) { + commandCount += 1; + } + + procCount = 0; + while ( commandProcs[procCount] != NULL ) { + procCount += 1; + } + + return (commandCount == procCount); + } + +#endif + +/* + On-The-'Wire' Protocol + ---------------------- + The on-the-'wire' protocol for a BetterAuthorizationSampleLib connection (from the + perspective of the client) is: + + connect + + send AuthorizationExternalForm (32 byte blob) + send request dictionary length (4 bytes, uint32_t, big endian) + send request dictionary (N bytes, flattened CFPropertyList) + + read response dictionary length (4 bytes, uint32_t, big endian) + read response dictionary (N bytes, flattened CFPropertyList) + for each descriptor in dictionary + read 1 byte ('D') with attached descriptor + write 1 byte ('A') + + close +*/ + +static int HandleConnection( + aslclient asl, + aslmsg aslMsg, + const BASCommandSpec commands[], + const BASCommandProc commandProcs[], + int fd +) + // This routine handles a single connection from a client. This connection, in + // turn, represents a single command (request/response pair). commands is the + // list of valid commands. commandProc is a callback to call to actually + // execute a command. Finally, fd is the file descriptor from which the request + // should be read, and to which the response should be sent. +{ + int retval; + OSStatus junk; + AuthorizationExternalForm extAuth; + AuthorizationRef auth = NULL; + CFDictionaryRef request = NULL; + size_t commandIndex; + CFMutableDictionaryRef response = NULL; + OSStatus commandProcStatus; + + // Pre-conditions + + // asl may be NULL + // aslMsg may be NULL + assert(commands != NULL); + assert(commands[0].commandName != NULL); // there must be at least one command + assert(commandProcs != NULL); + assert( CommandArraySizeMatchesCommandProcArraySize(commands, commandProcs) ); + assert(fd >= 0); + + // Read in the external authorization reference. + retval = BASRead(fd, &extAuth, sizeof(extAuth), NULL); + + // Internalize external authorization reference. + if (retval == 0) { + retval = BASOSStatusToErrno( AuthorizationCreateFromExternalForm(&extAuth, &auth) ); + } + + // Read in CFDictionaryRef request (the command and its arguments). + if (retval == 0) { + retval = BASReadDictionary(fd, &request); + } + + // Create a mutable response dictionary before calling the client. + if (retval == 0) { + response = CFDictionaryCreateMutable(NULL, 0, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks); + if (response == NULL) { + retval = BASOSStatusToErrno( coreFoundationUnknownErr ); + } + } + + // Errors that occur within this block are considered command errors, that is, they're + // reported to the client in the kBASErrorKey value of the response dictionary + // (that is, BASExecuteRequestInHelperTool returns noErr and valid response dictionary with + // an error value in the kBASErrorKey entry of the dictionary). In contrast, other errors + // are considered IPC errors and generally result in a the client getting an error status + // back from BASExecuteRequestInHelperTool. + // + // Notably a request with an unrecognised command string will return an error code + // in the response, as opposed to an IPC error. This means that a client can check + // whether a tool supports a particular command without triggering an IPC teardown. + + if (retval == 0) { + // Get the command name from the request dictionary and check to see whether or + // not the command is valid by comparing with the BASCommandSpec array. Also, + // if the command is valid, return the associated right (if any). + + commandProcStatus = FindCommand(request, commands, &commandIndex); + + // Acquire the associated right for the command. If rightName is NULL, the + // commandProc is required to do its own authorization. + + if ( (commandProcStatus == noErr) && (commands[commandIndex].rightName != NULL) ) { + AuthorizationItem item = { commands[commandIndex].rightName, 0, NULL, 0 }; + AuthorizationRights rights = { 1, &item }; + + commandProcStatus = AuthorizationCopyRights( + auth, + &rights, + kAuthorizationEmptyEnvironment, + kAuthorizationFlagExtendRights | kAuthorizationFlagInteractionAllowed, + NULL + ); + } + + // Call callback to execute command based on the request. + + if (commandProcStatus == noErr) { + commandProcStatus = commandProcs[commandIndex](auth, commands[commandIndex].userData, request, response, asl, aslMsg); + + //int junkInt; + if (commandProcStatus == noErr) { + //junkInt = asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "Command callback succeeded"); + //assert(junkInt == 0); + } else { + //junkInt = asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "Command callback failed: %ld", (long) commandProcStatus); + //assert(junkInt == 0); + } + } + + // If the command didn't insert its own error value, we use its function + // result as the error value. + + if ( ! CFDictionaryContainsKey(response, CFSTR(kBASErrorKey)) ) { + CFNumberRef numRef; + + numRef = CFNumberCreate(NULL, kCFNumberSInt32Type, &commandProcStatus); + if (numRef == NULL) { + retval = BASOSStatusToErrno( coreFoundationUnknownErr ); + } else { + CFDictionaryAddValue(response, CFSTR(kBASErrorKey), numRef); + CFRelease(numRef); + } + } + } + + // Write response back to the client. + if (retval == 0) { + retval = BASWriteDictionaryAndDescriptors(response, fd); + } + + // Clean up. + + if (response != NULL) { + // If there are any descriptors in response, we've now passed them off to the client, + // so we can (and must) close our references to them. + BASCloseDescriptorArray( CFDictionaryGetValue(response, CFSTR(kBASDescriptorArrayKey)) ); + CFRelease(response); + } + if (request != NULL) { + CFRelease(request); + } + if (auth != NULL) { + junk = AuthorizationFree(auth, kAuthorizationFlagDefaults); + assert(junk == noErr); + } + + return retval; +} + +#if !defined(NDEBUG) + + static void WaitForDebugger(aslclient asl, aslmsg aslMsg) + // You can force a debug version of the tool to stop and wait on + // launch using the following Terminal command: + // + // $ sudo launchctl stop com.example.BetterAuthorizationSample + // $ sudo launchctl setenv BASWaitForDebugger 1 + { + int err; + const char *value; + + // asl may be NULL + // aslMsg may be NULL + + value = getenv("BASWaitForDebugger"); + if ( ((value != NULL) && (atoi(value) != 0)) ) { + err = asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "Waiting for debugger"); + assert(err == 0); + (void) pause(); + } + } + +#endif + +static int CheckInWithLaunchd(aslclient asl, aslmsg aslMsg, const char **errStrPtr) + // Checks in with launchd and gets back our listening socket. + // Returns the socket as the function result (or -1 on error). + // Also, on error, set *errStrPtr to a error string suitable + // for logging with ASL. If the message contains a %m, which + // causes ASL to log errno, errno will be set appropriately. +{ + int err; + launch_data_t checkinRequest = NULL; + launch_data_t checkinResponse = NULL; + launch_data_t socketsDict; + launch_data_t fdArray; + launch_data_t fdData; + int fd = -1; + + // Pre-conditions + + // asl may be NULL + // aslMsg may be NULL + assert( errStrPtr != NULL); + assert(*errStrPtr == NULL); + + // Check in with launchd. Create a checkin request, then run it, then + // check if we got an error. + + checkinRequest = launch_data_new_string(LAUNCH_KEY_CHECKIN); + if (checkinRequest == NULL) { + *errStrPtr = "Could not create checkin request: %m"; + goto done; + } + checkinResponse = launch_msg(checkinRequest); + if (checkinResponse == NULL) { + *errStrPtr = "Error checking in: %m"; + goto done; + } + if (launch_data_get_type(checkinResponse) == LAUNCH_DATA_ERRNO) { + errno = launch_data_get_errno(checkinResponse); // set errno so %m picks it up + *errStrPtr = "Checkin failed: %m"; + goto done; + } + + // Retrieve the dictionary of sockets entries from the job. This corresponds to the + // value of the "Sockets" key in our plist file. + + socketsDict = launch_data_dict_lookup(checkinResponse, LAUNCH_JOBKEY_SOCKETS); + if (socketsDict == NULL) { + *errStrPtr = "Could not get socket dictionary from checkin response: %m"; + goto done; + } + if (launch_data_get_type(socketsDict) != LAUNCH_DATA_DICTIONARY) { + *errStrPtr = "Could not get socket dictionary from checkin response: Type mismatch"; + goto done; + } + if (launch_data_dict_get_count(socketsDict) > 1) { + //err = asl_log(asl, aslMsg, ASL_LEVEL_WARNING, "Some sockets in dictionary will be ignored"); + //assert(err == 0); + } + + // Get the dictionary value from the key "MasterSocket", as defined in the launchd + // property list file. + + fdArray = launch_data_dict_lookup(socketsDict, kLaunchDSocketDictKey); + if (fdArray == NULL) { + *errStrPtr = "Could not get file descriptor array: %m"; + goto done; + } + if (launch_data_get_type(fdArray) != LAUNCH_DATA_ARRAY) { + *errStrPtr = "Could not get file descriptor array: Type mismatch"; + goto done; + } + if (launch_data_array_get_count(fdArray) > 1) { + //err = asl_log(asl, aslMsg, ASL_LEVEL_WARNING, "Some sockets in array will be ignored"); + //assert(err == 0); + } + + // Get the socket file descriptor from the array. + + fdData = launch_data_array_get_index(fdArray, 0); + if (fdData == NULL) { + *errStrPtr = "Could not get file descriptor array entry: %m"; + goto done; + } + if (launch_data_get_type(fdData) != LAUNCH_DATA_FD) { + *errStrPtr = "Could not get file descriptor array entry: Type mismatch"; + goto done; + } + fd = launch_data_get_fd(fdData); + assert(fd >= 0); + + // The following was used to debug a problem with launchd . + // I'm going to leave it in, disabled, until that problem is resolved. + + if (false) { + err = asl_log(asl, aslMsg, ASL_LEVEL_INFO, "Listening descriptor is %d", fd); + assert(err == 0); + } + +done: + if (checkinResponse != NULL) { + launch_data_free(checkinResponse); + } + if (checkinRequest != NULL) { + launch_data_free(checkinRequest); + } + + return fd; +} + +static int SetNonBlocking(int fd, Boolean nonBlocking) + // Sets the non-blocking state of fd. +{ + int err; + int flags; + + // Pre-conditions + + assert(fd >= 0); + + // Get the flags. + + err = 0; + flags = fcntl(fd, F_GETFL); + if (flags < 0) { + err = errno; + } + + // If the current state of O_NONBLOCK doesn't match the required + // state, toggle that flag and set it back. + + if ( (err == 0) && (((flags & O_NONBLOCK) != 0) != nonBlocking) ) { + flags ^= O_NONBLOCK; + err = fcntl(fd, F_SETFL, flags); + if (err < 0) { + err = errno; + } + } + + return err; +} + +extern int BASHelperToolMain( + const BASCommandSpec commands[], + const BASCommandProc commandProcs[] +) + // See comment in header. +{ + const char * errStr = NULL; + int err; + aslclient asl = NULL; + aslmsg aslMsg = NULL; + sig_t pipeSet; + int listener; + int kq; + struct kevent initEvent; + + // Pre-conditions + + assert(commands != NULL); + assert(commands[0].commandName != NULL); // there must be at least one command + assert(commandProcs != NULL); + assert( CommandArraySizeMatchesCommandProcArraySize(commands, commandProcs) ); + + // Create a new ASL client object, and a template message for any messages that + // we log. We don't care if these fail because ASL will do the right thing + // if you pass it NULL (that is, nothing). + + asl = asl_open(NULL, "HelperTools", ASL_OPT_STDERR); + assert(asl != NULL); + + aslMsg = asl_new(ASL_TYPE_MSG); + assert(aslMsg != NULL); + + #if !defined(NDEBUG) + //err = asl_log(asl, aslMsg, ASL_LEVEL_INFO, "Starting up"); + //assert(err == 0); + #endif + + #if !defined(NDEBUG) + WaitForDebugger(asl, aslMsg); + #endif + + // Set up the signal handlers we are interested in. + // + // o SIGTERM -- launchd sends us this when it wants us to quit. We don't + // actually need to set up a handler because the default behaviour (process + // termination) is fine. + // + // o SIGALRM -- No need to set it up because the default behaviour (process + // termination) is fine. See the "Watchdog Timer" comment (above) for details. + // + // o SIGPIPE -- We don't want to quit when write to a dead socket, so we + // ignore this signal. + + pipeSet = signal(SIGPIPE, SIG_IGN); + if (pipeSet == SIG_ERR) { + errStr = "Could not ignore SIGPIPE: %m"; + goto done; + } + + // Check in with launchd and get our listening socket. + + listener = CheckInWithLaunchd(asl, aslMsg, &errStr); + if (listener < 0) { + assert(errStr != NULL); + goto done; + } + + // Create a kqueue and wrap the listening socket in it. + + kq = kqueue(); + if (kq < 0) { + errStr = "Could not create kqueue: %m"; + goto done; + } + + EV_SET(&initEvent, listener, EVFILT_READ, EV_ADD, 0, 0, NULL); + err = kevent(kq, &initEvent, 1, NULL, 0, NULL); + if (err < 0) { + errStr = "Could not add listening socket to kqueue: %m"; + goto done; + } + + // Force the listening socket to non-blocking mode. Without this, our timeout + // handling won't work properly. Specifically, we could get stuck in an accept + // if a connection request appears and then disappears. Eventually the watchdog + // would clean up, but that's not a great solution. + + err = SetNonBlocking(listener, true); + if (err != 0) { + errno = err; // for %m + errStr = "Could not check/set socket flags: %m"; + goto done; + } + + // Loop servicing connection requests one at a time. + + while (true) { + int eventCount; + struct kevent thisEvent; + int thisConnection; + int thisConnectionError; + struct sockaddr_storage clientAddr; // we don't need this info, but accept won't let us ignore it + socklen_t clientAddrLen = sizeof(clientAddr); + static const struct timespec kIdleTimeout = { kIdleTimeoutInSeconds , 0 }; + + // Wait on the kqueue for a connection request. + + eventCount = kevent(kq, NULL, 0, &thisEvent, 1, &kIdleTimeout); + if (eventCount == 0) { + // We've hit our idle timer. Just break out of the connection loop. + break; + } else if (eventCount == -1) { + // We got some sort of error from kevent; quit with an error. + errStr = "Unexpected error while listening for connections: %m"; + goto done; + } + + // From this point on, we're running on the watchdog timer. If we get + // stuck anywhere, the watchdog will fire eventually and we'll quit. + + EnableWatchdog(); + + // The accept should never get stuck because this is a non-blocking + // socket. + + thisConnection = accept(thisEvent.ident, (struct sockaddr *) &clientAddr, &clientAddrLen); + if (thisConnection == -1) { + if (errno == EWOULDBLOCK) { + // If the incoming connection just disappeared (perhaps the client + // died before we accepted the connection), don't log that as an error + // and don't quit. +#if !defined(NDEBUG) + err = asl_log(asl, aslMsg, ASL_LEVEL_INFO, "Connection disappeared before we could accept it: %m"); + assert(err == 0); +#endif + } else { + // Other errors mean that we're in a very weird state; we respond by + // failing out with an error. + errStr = "Unexpected error while accepting a connection: %m"; + goto done; + } + } + + // Because the accept can fail in a non-fatal fashion, thisConnection can be + // -1 here. In that case, we just skip the next step. + + if (thisConnection != -1) { + // err = asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "Request started"); + // assert(err == 0); + + // thisConnection inherits its non-blocking setting from listener, but + // we want it to be blocking from here on in, so we switch the status. + // We're now relying on the watchdog to kill us if we get stuck. + + thisConnectionError = BASErrnoToOSStatus( SetNonBlocking(thisConnection, false) ); + + // Entering heavy liftiing. We have a separate routine to actually + // read the request from the connection, call the client, and send + // the reply. + + if (thisConnectionError == noErr) { + thisConnectionError = HandleConnection(asl, aslMsg, commands, commandProcs, thisConnection); + } + + err = close(thisConnection); + assert(err == 0); + +/* + if (thisConnectionError == 0) { + err = asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "Request finished"); + } else { + errno = thisConnectionError; // so it can be picked up by %m + err = asl_log(asl, aslMsg, ASL_LEVEL_ERR, "Request failed: %m"); + } + assert(err == 0); +*/ + + } + + DisableWatchdog(); + } + +done: + // At this point, errStr is either NULL, in which case we're quitting because + // of our idle timer, or non-NULL, in which case we're dying with an error. + + // We expect the caller to immediately quit once we return. Thus, we + // don't bother cleaning up any resources we have allocated here, including + // asl, aslMsg, and kq. + +#if !defined(NDEBUG) + if (errStr != NULL) { + err = asl_log(asl, aslMsg, ASL_LEVEL_ERR, errStr); + assert(err == 0); + } + err = asl_log(asl, aslMsg, ASL_LEVEL_INFO, "Shutting down"); + assert(err == 0); +#endif + + return (errStr == NULL) ? EXIT_SUCCESS : EXIT_FAILURE; +} + +///////////////////////////////////////////////////////////////// +#pragma mark ***** App Code + +extern void BASSetDefaultRules( + AuthorizationRef auth, + const BASCommandSpec commands[], + CFStringRef bundleID, + CFStringRef descriptionStringTableName +) + // See comment in header. +{ + OSStatus err; + CFBundleRef bundle; + size_t commandIndex; + + // Pre-conditions + + assert(auth != NULL); + assert(commands != NULL); + assert(commands[0].commandName != NULL); // there must be at least one command + assert(bundleID != NULL); + // descriptionStringTableName may be NULL + + bundle = CFBundleGetBundleWithIdentifier(bundleID); + assert(bundle != NULL); + + // For each command, set up the default authorization right specification, as + // indicated by the command specification. + + commandIndex = 0; + while (commands[commandIndex].commandName != NULL) { + // Some no-obvious assertions: + + // If you have a right name, you must supply a default rule. + // If you have no right name, you can't supply a default rule. + + assert( (commands[commandIndex].rightName == NULL) == (commands[commandIndex].rightDefaultRule == NULL) ); + + // If you have no right name, you can't supply a right description. + // OTOH, if you have a right name, you may supply a NULL right description + // (in which case you get no custom prompt). + + assert( (commands[commandIndex].rightName != NULL) || (commands[commandIndex].rightDescriptionKey == NULL) ); + + // If there's a right name but no current right specification, set up the + // right specification. + + if (commands[commandIndex].rightName != NULL) { + err = AuthorizationRightGet(commands[commandIndex].rightName, (CFDictionaryRef*) NULL); + if (err == errAuthorizationDenied) { + CFStringRef thisDescription; + CFStringRef thisRule; + + // The right is not already defined. Set up a definition based on + // the fields in the command specification. + + thisRule = CFStringCreateWithCString( + kCFAllocatorDefault, + commands[commandIndex].rightDefaultRule, + kCFStringEncodingUTF8 + ); + assert(thisRule != NULL); + + thisDescription = NULL; + if (commands[commandIndex].rightDescriptionKey != NULL) { + thisDescription = CFStringCreateWithCString ( + kCFAllocatorDefault, + commands[commandIndex].rightDescriptionKey, + kCFStringEncodingUTF8 + ); + assert(thisDescription != NULL); + } + + err = AuthorizationRightSet( + auth, // authRef + commands[commandIndex].rightName, // rightName + thisRule, // rightDefinition + thisDescription, // descriptionKey + bundle, // bundle + descriptionStringTableName // localeTableName + ); // NULL indicates "Localizable.strings" + assert(err == noErr); + + if (thisDescription != NULL) { + CFRelease(thisDescription); + } + if (thisRule != NULL) { + CFRelease(thisRule); + } + } else { + // A right already exists (err == noErr) or any other error occurs, we + // assume that it has been set up in advance by the system administrator or + // this is the second time we've run. Either way, there's nothing more for + // us to do. + } + } + commandIndex += 1; + } +} + +extern OSStatus BASExecuteRequestInHelperTool( + AuthorizationRef auth, + const BASCommandSpec commands[], + CFStringRef bundleID, + CFDictionaryRef request, + CFDictionaryRef * response +) + // See comment in header. +{ + OSStatus retval = noErr; + int junk; + size_t commandIndex; + char bundleIDC[PATH_MAX]; + int fd = -1; + struct sockaddr_un addr; + AuthorizationExternalForm extAuth; + + // Pre-conditions + + assert(auth != NULL); + assert(commands != NULL); + assert(commands[0].commandName != NULL); // there must be at least one command + assert(bundleID != NULL); + assert(request != NULL); + assert( response != NULL); + assert(*response == NULL); + + // For debugging. + + assert(CFDictionaryContainsKey(request, CFSTR(kBASCommandKey))); + assert(CFGetTypeID(CFDictionaryGetValue(request, CFSTR(kBASCommandKey))) == CFStringGetTypeID()); + + // Look up the command and preauthorize. This has the nice side effect that + // the authentication dialog comes up, in the typical case, here, rather than + // in the helper tool. This is good because the helper tool is global /and/ + // single threaded, so if it's waiting for an authentication dialog for user A + // it can't handle requests from user B. + + retval = FindCommand(request, commands, &commandIndex); + + #if !defined(BAS_PREAUTHORIZE) + #define BAS_PREAUTHORIZE 1 + #endif + #if BAS_PREAUTHORIZE + if ( (retval == noErr) && (commands[commandIndex].rightName != NULL) ) { + AuthorizationItem item = { commands[commandIndex].rightName, 0, NULL, 0 }; + AuthorizationRights rights = { 1, &item }; + + retval = AuthorizationCopyRights(auth, &rights, kAuthorizationEmptyEnvironment, kAuthorizationFlagExtendRights | kAuthorizationFlagInteractionAllowed | kAuthorizationFlagPreAuthorize, NULL); + } + #endif + + // Create the socket and tell it to not generate SIGPIPE. + + if (retval == noErr) { + fd = socket(AF_UNIX, SOCK_STREAM, 0); + if (fd == -1) { + retval = BASErrnoToOSStatus(errno); + } + } + if (retval == noErr) { + static const int kOne = 1; + + if ( setsockopt(fd, SOL_SOCKET, SO_NOSIGPIPE, &kOne, sizeof(kOne)) < 0 ) { + retval = BASErrnoToOSStatus(errno); + } + } + + // Form the socket address, including a path based on the bundle ID. + + if (retval == noErr) { + if ( ! CFStringGetFileSystemRepresentation(bundleID, bundleIDC, sizeof(bundleIDC)) ) { + retval = coreFoundationUnknownErr; + } + } + if (retval == noErr) { + int pathLen; + + memset(&addr, 0, sizeof(addr)); + + addr.sun_family = AF_UNIX; + pathLen = snprintf(addr.sun_path, sizeof(addr.sun_path), kBASSocketPathFormat, bundleIDC); + if (pathLen >= sizeof(addr.sun_path)) { + retval = paramErr; // length of bundle pushed us over the UNIX domain socket path length limit + } else { + addr.sun_len = SUN_LEN(&addr); + } + } + + // Attempt to connect. + + if (retval == noErr) { + if (connect(fd, (struct sockaddr *) &addr, sizeof(addr)) == -1) { + retval = BASErrnoToOSStatus(errno); + } + } + + // Send the flattened AuthorizationRef to the tool. + + if (retval == noErr) { + retval = AuthorizationMakeExternalForm(auth, &extAuth); + } + if (retval == noErr) { + retval = BASErrnoToOSStatus( BASWrite(fd, &extAuth, sizeof(extAuth), NULL) ); + } + + // Write the request. + + if (retval == noErr) { + retval = BASErrnoToOSStatus( BASWriteDictionary(request, fd) ); + } + + // Read response, including any descriptors. + + if (retval == noErr) { + retval = BASErrnoToOSStatus( BASReadDictioanaryTranslatingDescriptors(fd, response) ); + } + + // Clean up. + + if (fd != -1) { + junk = close(fd); + assert(junk == 0); + } + NormaliseOSStatusErrorCode(&retval); + + assert( (retval == noErr) == (*response != NULL) ); + + return retval; +} + +extern OSStatus BASGetErrorFromResponse(CFDictionaryRef response) + // See comment in header. +{ + OSStatus err; + CFNumberRef num; + + assert(response != NULL); + + num = (CFNumberRef) CFDictionaryGetValue(response, CFSTR(kBASErrorKey)); + err = noErr; + if ( (num == NULL) || (CFGetTypeID(num) != CFNumberGetTypeID()) ) { + err = coreFoundationUnknownErr; + } + if (err == noErr) { + if ( ! CFNumberGetValue(num, kCFNumberSInt32Type, &err) ) { + err = coreFoundationUnknownErr; + } + } + + NormaliseOSStatusErrorCode(&err); + return err; +} + +extern BASFailCode BASDiagnoseFailure( + AuthorizationRef auth, + CFStringRef bundleID +) + // See comment in header. +{ + BASFailCode retval = kBASFailUnknown; + int err; + int pathLen; + char bundleIDC [ PATH_MAX ]; + char toolPath [ PATH_MAX ]; + char plistPath [ PATH_MAX ]; + + struct stat fileStatus; + int toolErr; + int plistErr; + int fd; + struct sockaddr_un addr; + + // Pre-conditions + + assert(auth != NULL); + assert(bundleID != NULL); + + // Construct paths to the tool and plist. + + if ( CFStringGetFileSystemRepresentation(bundleID, bundleIDC, sizeof(bundleIDC)) ) { + + pathLen = snprintf(toolPath, sizeof(toolPath), kBASToolPathFormat, bundleIDC); + assert(pathLen < PATH_MAX); // snprintf truncated the string; won't crash us, but we want to know + + pathLen = snprintf(plistPath, sizeof(plistPath), kBASPlistPathFormat, bundleIDC); + assert(pathLen < PATH_MAX); // snprintf truncated the string; won't crash us, but we want to know + + // Check if files exist at those paths. + + toolErr = stat(toolPath, &fileStatus); + plistErr = stat(plistPath, &fileStatus); + + if ( (toolErr == 0) && (plistErr == 0) ) { + // If both items are present, try to connect and see what we get. + + fd = socket(AF_UNIX, SOCK_STREAM, 0); + if (fd != -1) { + memset(&addr, 0, sizeof(addr)); + + addr.sun_family = AF_UNIX; + (void) snprintf(addr.sun_path, sizeof(addr.sun_path), kBASSocketPathFormat, bundleIDC); + addr.sun_len = SUN_LEN(&addr); + + // Attempt to connect to the socket. If we get ECONNREFUSED, it means no one is + // listening. + + if ( (connect(fd, (struct sockaddr *) &addr, sizeof(addr)) == -1) && (errno == ECONNREFUSED) ) { + retval = kBASFailDisabled; + } + err = close(fd); + assert(err == 0); + } + } else { + if ( (toolErr == 0) || (plistErr == 0) ) { + retval = kBASFailPartiallyInstalled; + } else { + retval = kBASFailNotInstalled; + } + } + } + + return retval; +} + +// kPlistTemplate is a template for our launchd.plist file. + +static const char * kPlistTemplate = + // The standard plist header. + + "\n" + "\n" + "\n" + "\n" + + // We install the job disabled, then enable it as the last step. + + " Disabled\n" + " \n" + + // Use the bundle identifier as the job label. + + " Label\n" + " %s\n" + + // Use launch on demaind. + + " OnDemand\n" + " \n" + + // There are no program arguments, other that the path to the helper tool itself. + // + // IMPORTANT + // kBASToolPathFormat embeds a %s + + " ProgramArguments\n" + " \n" + " " kBASToolPathFormat "\n" + " \n" + + // The tool is required to check in with launchd. + + " ServiceIPC\n" + " \n" + + // This specifies the UNIX domain socket used to launch the tool, including + // the permissions on the socket (438 is 0666). + // + // IMPORTANT + // kBASSocketPathFormat embeds a %s + + " Sockets\n" + " \n" + " " kLaunchDSocketDictKey "\n" + " \n" + " SockFamily\n" + " Unix\n" + " SockPathMode\n" + " 438\n" + " SockPathName\n" + " " kBASSocketPathFormat "\n" + " SockType\n" + " Stream\n" + " \n" + " \n" + "\n" + "\n" + ; + + +// Installation +// ------------ +// We install by running our "InstallTool" using AuthorizationExecuteWithPrivileges +// (AEWP) and passing the relevant parameters to it through AEWP. +// +// There is an obvious issue with the way we are handling installation as the user +// is executing some non-privileged code by way of AEWP. The scenario could exist +// that the code is malicious (or they have other malicious code running at the +// same time) and it could swap in any other tool that it would want executed as +// EUID == 0. +// +// We decided on this design primarily because the only other option was to run a +// shell via AEWP and pipe a script to it. That would have given us the nice +// properties of not having to have a separate installer on disk and the script +// could be embedded within the executable making it a little more difficult for +// casual hacking. +// +// However, running a shell as root is /not/ a very good paradigm to follow, thus, +// weighing the cost-benefits from a security perspective impelled us to just use +// a separate installer tool. The assumption being that, no matter what, if a user +// has malicious code running on their system the added security of having an +// embedded script is negligible and not worth pulling in an entire shell +// environment as root. +// +// The obvious disadvantages stem from the first advantage of the former, namely, +// it's a little more coding and accounting effort (-: +// +// +// What's This About Zombies? +// -------------------------- +// AuthorizationExecuteWithPrivileges creates a process that runs with privileges. +// This process is a child of our process. Thus, we need to reap the process +// (by calling ). If we don't do this, we create a 'zombie' +// process ( displays its status as "Z") that persists until +// our process quits (at which point the zombie gets reparented to launchd, and +// launchd automatically reaps it). Zombies are generally considered poor form. +// Thus, we want to avoid creating them. +// +// Unfortunately, AEWP doesn't return the process ID of the child process +// , which makes it challenging for us to reap it. We could +// reap all children (by passing -1 to waitpid) but that's not cool for library code +// (we could end up reaping a child process that's completely unrelated to this +// code, perhaps created by some other part of the host application). Thus, we need +// to find the child process's PID. And the only way to do that is for the child +// process to tell us. +// +// So, in the child process (the install tool) we echo the process ID and in the +// parent we look for that in the returned text. *sigh* It's pretty ugly, but +// that's the best I can come up with. We delimit the process ID with some +// pretty distinctive text to make it clear that we've got the right thing. + + +#if !defined(NDEBUG) + + static Boolean gBASLogInteractions = false; + // Set gBASLogInteractions to have BASFixFailure log its interactions with + // the installation tool to stderr. + + static Boolean gBASLogInteractionsInitialised = false; + // This indicates whether we've initialised gBASLogInteractions from the + // environment variable. + +#endif + +static OSStatus RunInstallToolAsRoot( + AuthorizationRef auth, + const char * installToolPath, + const char * command, + ... +) + // Run the specified install tool as root. The arguments to the tool are + // given as a sequence of (char *)s, terminated be a NULL. The tool is + // expected to output special tokens to indicate success or failure. +{ + OSStatus retval; + size_t argCount; + size_t argIndex; + va_list ap; + char ** args; + Boolean success; + FILE * channel; + int junk; + pid_t childPID; + + // Pre-conditions + + assert(auth != NULL); + assert(installToolPath != NULL); + assert(command != NULL); + + channel = NULL; + args = NULL; + childPID = -1; + + // Count the number of arguments. + + argCount = 0; + va_start(ap, command); + while ( va_arg(ap, char *) != NULL ) { + argCount += 1; + } + va_end(ap); + + // Allocate an argument array and populate it, checking each argument along the way. + + retval = noErr; + args = calloc(argCount + 3, sizeof(char *)); // +3 for installToolPath, command and trailing NULL + if (args == NULL) { + retval = memFullErr; + } + if (retval == noErr) { + argIndex = 0; + + args[argIndex] = (char *) installToolPath; // Annoyingly, AEWP (and exec) takes a (char * const *) + argIndex += 1; // argument, implying that it might modify the individual + args[argIndex] = (char *) command; // strings. That means you can't pass a (const char *) to + argIndex += 1; // the routine. However, AEWP never modifies its input + // arguments, so we just cast away the const. + // *sigh* + va_start(ap, command); + do { + args[argIndex] = va_arg(ap, char *); + if (args[argIndex] == NULL) { + break; + } + argIndex += 1; + } while (true); + va_end(ap); + } + + // Go go gadget AEWP! + + if (retval == noErr) { + #if !defined(NDEBUG) + if ( ! gBASLogInteractionsInitialised ) { + const char * value; + + value = getenv("BASLogInteractions"); + gBASLogInteractions = ( ((value != NULL) && (atoi(value) != 0)) ); + + gBASLogInteractionsInitialised = true; + } + + if (gBASLogInteractions) { + argIndex = 0; + while (args[argIndex] != NULL) { + fprintf(stderr, "args[%zd] = %s\n", argIndex, args[argIndex]); + argIndex += 1; + } + } + #endif + retval = AuthorizationExecuteWithPrivileges(auth, args[0], kAuthorizationFlagDefaults, &args[1], &channel); + } + + // Process the tool's output. We read every line of output from the tool until + // we receive either an EOF or the success or failure tokens. + // + // AEWP provides us with no way to get to the tool's stderr or exit status, + // so we rely on the tool to send us this "oK" to indicate successful completion. + + if (retval == noErr) { + char thisLine[1024]; + long tmpLong; + int tmpInt; + + // This loops is a little more complex than you might expect. There are + // a number of reasons for this: + // + // o AEWP does not return us the child PID, so we have to scan the tool's + // output look for a line that contains that information (surrounded + // by special tokens). + // + // o Because we can't be guaranteed to get the child PID, we can't be + // guaranteed to get the child's exit status. Thus, rather than relying + // on the exit status, we have the child explicitly print special tokens + // on success and failure. + // + // o Because we're parsing special tokens anyway, we might as well extract + // the real error code from the failure token. + // + // o A change made to launchctl in Mac OS X 10.4.7 + // causes it to fork a copy of itself. The forked copy then delays + // for 30 seconds before doing some stuff, eventually printing a message + // like "Workaround Bonjour: 0". This causes us two problems. + // + // 1. The second copy of launchd still has our communications channel + // (that is, the other end of "channel") as its stdin/stdout. + // Thus, we don't get an EOF on channel until that copy quits. + // This causes a 30 second delay in installation. + // + // 2. The second copy of launchd prints its status line (that is, + // "Workaround Bonjour: 0") well after the tool prints the success + // token. + // + // I solved these problems by parsing each line for the success or failure + // token and ignoring any output after that. + // + // To minimise the danger of interpreting one of the tool's commands + // output as one of our tokens, I've given them a wacky case (for example, + // "oK", not "ok" or "OK" or "Ok"). + + do { + success = (fgets(thisLine, sizeof(thisLine), channel) != NULL); + if ( ! success ) { + // We hit the end of the output without seeing a success or failure + // token. Note good. errState is an ADSP error code, but it says + // exactly what I want to say and it's not likely to crop up any + // other way. + retval = errState; + break; + } + + // This echo doesn't work properly if the line coming back from the tool + // is longer than the line buffer. However, as the echo is only relevant for + // debugging, and the detection of the "oK" isn't affected by this problem, + // I'm going to leave it as it is. + + #if !defined(NDEBUG) + if (gBASLogInteractions) { + fprintf(stderr, ">%s", thisLine); + } + #endif + + // Look for the success token and terminate with no error in that case. + + if (strcmp(thisLine, kBASInstallToolSuccess "\n") == 0) { + assert(retval == noErr); + break; + } + + // Look for the failure token and extract the error result from that. + + if ( sscanf(thisLine, kBASInstallToolFailure "\n", &tmpInt) == 1 ) { + retval = BASErrnoToOSStatus( tmpInt ); + if (retval == noErr) { + assert(false); + retval = errState; + } + break; + } + + // If we haven't already found a child process ID, look for a line + // that contains it (surrounded by special tokens). For details, see + // the discussion of zombies above. + + if ( (childPID == -1) && (sscanf(thisLine, kBASAntiZombiePIDToken1 "%ld" kBASAntiZombiePIDToken2 "\n", &tmpLong) == 1) ) { + childPID = (pid_t) tmpLong; + } + } while (true); + } + + // If we successfully managed to determine the PID of our child process, reap + // that child. Note that we ignore any errors from this step. If an error + // occurs, we end up creating a zombie, which isn't too big a deal. We also + // junk the status result from the tool, relying exclusively on the presence + // of the "oK" in the output. + + #if !defined(NDEBUG) + if (gBASLogInteractions) { + fprintf(stderr, "childPID=%ld\n", (long) childPID); + } + #endif + if (childPID != -1) { + pid_t waitResult; + int junkStatus; + + do { + waitResult = waitpid(childPID, &junkStatus, 0); + } while ( (waitResult < 0) && (errno == EINTR) ); + } + + // Clean up. + + if (channel != NULL) { + junk = fclose(channel); + assert(junk == 0); + } + free(args); + + NormaliseOSStatusErrorCode(&retval); + return retval; +} + +static OSStatus BASInstall( + AuthorizationRef auth, + const char * bundleID, + const char * installToolPath, + const char * helperToolPath +) + // Do an install from scratch. Get the specified tool from the bundle + // and install it in the "/Library/PrivilegedHelperTools" directory, + // along with a plist in "/Library/LaunchDaemons". +{ + OSStatus retval; + int junk; + char * plistText; + int fd; + char plistPath[PATH_MAX]; + + // Pre-conditions + + assert(auth != NULL); + assert(bundleID != NULL); + assert(installToolPath != NULL); + assert(helperToolPath != NULL); + + // Prepare for failure + + plistText = NULL; + fd = -1; + plistPath[0] = 0; + + // Create the property list from the template, substituting the bundle identifier in + // three different places. I realise that this isn't very robust (if you change + // the template you have to change this code), but it is /very/ easy. + + retval = asprintf(&plistText, kPlistTemplate, bundleID, bundleID, bundleID); + if (retval < 0) { + retval = memFullErr; + } else { + retval = noErr; + } + + // Write the plist to a temporary file. + + if (retval == noErr) { + strlcpy(plistPath, "/tmp/BASTemp-XXXXXXXX.plist", sizeof(plistPath)); + + fd = mkstemps(plistPath, strlen( strrchr(plistPath, '.') ) ); + if (fd < 0) { + retval = BASErrnoToOSStatus( errno ); + } + } + if (retval == noErr) { + retval = BASErrnoToOSStatus( BASWrite(fd, plistText, strlen(plistText), NULL) ); + } + + // Run the tool as root using AuthorizationExecuteWithPrivileges. + + if (retval == noErr) { + retval = RunInstallToolAsRoot(auth, installToolPath, kBASInstallToolInstallCommand, bundleID, helperToolPath, plistPath, NULL); + } + + // Clean up. + + free(plistText); + if (fd != -1) { + junk = close(fd); + assert(junk == 0); + + junk = unlink(plistPath); + assert(junk == 0); + } + + return retval; +} + +static OSStatus GetToolPath(CFStringRef bundleID, CFStringRef toolName, char *toolPath, size_t toolPathSize) + // Given a bundle identifier and the name of a tool embedded within that bundle, + // get a file system path to the tool. +{ + OSStatus err; + CFBundleRef bundle; + Boolean success; + CFURLRef toolURL; + + assert(bundleID != NULL); + assert(toolName != NULL); + assert(toolPath != NULL); + assert(toolPathSize > 0); + + toolURL = NULL; + + err = noErr; + bundle = CFBundleGetBundleWithIdentifier(bundleID); + if (bundle == NULL) { + err = coreFoundationUnknownErr; + } + if (err == noErr) { + toolURL = CFBundleCopyAuxiliaryExecutableURL(bundle, toolName); + if (toolURL == NULL) { + err = coreFoundationUnknownErr; + } + } + if (err == noErr) { + success = CFURLGetFileSystemRepresentation(toolURL, true, (UInt8 *) toolPath, toolPathSize); + if ( ! success ) { + err = coreFoundationUnknownErr; + } + } + + if (toolURL != NULL) { + CFRelease(toolURL); + } + + return err; +} + +extern OSStatus BASFixFailure( + AuthorizationRef auth, + CFStringRef bundleID, + CFStringRef installToolName, + CFStringRef helperToolName, + BASFailCode failCode +) + // See comment in header. +{ + OSStatus retval; + Boolean success; + char bundleIDC[PATH_MAX]; + char installToolPath[PATH_MAX]; + char helperToolPath[PATH_MAX]; + + // Pre-conditions + + assert(auth != NULL); + assert(bundleID != NULL); + assert(installToolName != NULL); + assert(helperToolName != NULL); + + // Get the bundle identifier as a UTF-8 C string. Also, get paths for both of + // the tools. + + retval = noErr; + success = CFStringGetFileSystemRepresentation(bundleID, bundleIDC, sizeof(bundleIDC)); + if ( ! success ) { + retval = coreFoundationUnknownErr; + } + if (retval == noErr) { + retval = GetToolPath(bundleID, installToolName, installToolPath, sizeof(installToolPath)); + } + if (retval == noErr) { + retval = GetToolPath(bundleID, helperToolName, helperToolPath, sizeof(helperToolPath)); + } + + // Depending on the failure code, either run the enable command or the install + // from scratch command. + + if (retval == noErr) { + if (failCode == kBASFailDisabled) { + retval = RunInstallToolAsRoot(auth, installToolPath, kBASInstallToolEnableCommand, bundleIDC, NULL); + } else { + retval = BASInstall(auth, bundleIDC, installToolPath, helperToolPath); + } + } + + return retval; +} diff --git a/BetterAuthorizationSampleLib.h b/BetterAuthorizationSampleLib.h new file mode 100755 index 0000000..867735d --- /dev/null +++ b/BetterAuthorizationSampleLib.h @@ -0,0 +1,783 @@ +/* + File: BetterAuthorizationSampleLib.h + + Contains: Interface to reusable code for privileged helper tools. + + Written by: DTS + + Copyright: Copyright (c) 2007 Apple Inc. All Rights Reserved. + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple, Inc. + ("Apple") in consideration of your agreement to the following terms, and your + use, installation, modification or redistribution of this Apple software + constitutes acceptance of these terms. If you do not agree with these terms, + please do not use, install, modify or redistribute this Apple software. + + In consideration of your agreement to abide by the following terms, and subject + to these terms, Apple grants you a personal, non-exclusive license, under Apple's + copyrights in this original Apple software (the "Apple Software"), to use, + reproduce, modify and redistribute the Apple Software, with or without + modifications, in source and/or binary forms; provided that if you redistribute + the Apple Software in its entirety and without modifications, you must retain + this notice and the following text and disclaimers in all such redistributions of + the Apple Software. Neither the name, trademarks, service marks or logos of + Apple, Inc. may be used to endorse or promote products derived from the + Apple Software without specific prior written permission from Apple. Except as + expressly stated in this notice, no other rights or licenses, express or implied, + are granted by Apple herein, including but not limited to any patent rights that + may be infringed by your derivative works or by other works in which the Apple + Software may be incorporated. + + The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO + WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED + WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN + COMBINATION WITH YOUR PRODUCTS. + + IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION + OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT + (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef _BetterAuthorizationSampleLIB_H +#define _BetterAuthorizationSampleLIB_H + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +///////////////////////////////////////////////////////////////// + +/* + This header has extensive HeaderDoc comments. To see these comments in a more + felicitous form, you can generate HTML from the HeaderDoc comments using the + following command: + + $ headerdoc2html BetterAuthorizationSampleLib.h + $ open BetterAuthorizationSampleLib/index.html +*/ + +/*! + @header BetterAuthorizationSampleLib + + @abstract Reusable library for creating helper tools that perform privileged + operations on behalf of your application. + + @discussion BetterAuthorizationSampleLib allows you to perform privileged operations + in a helper tool. In this model, your application runs with standard + privileges and, when it needs to do a privileged operation, it makes a + request to the helper tool. The helper tool uses Authorization Services + to ensure that the user is authorized to perform that operation. + + BetterAuthorizationSampleLib takes care of all of the mechanics of + installing the helper tool and communicating with it. Specifically, it + has routines that your application can call to: + + 1. send requests to a helper tool (BASExecuteRequestInHelperTool) + + 2. install the helper tool if it's not installed, or fix an installation if + it's broken (BASDiagnoseFailure and BASFixFailure) + + BetterAuthorizationSampleLib also helps you implement the helper tool. + Specifically, you call the routine BASHelperToolMain in the main entry + point for your helper tool, passing it an array of command callbacks (of + type BASCommandProc). BASHelperToolMain will take care of all the details + of communication with the application and only call your callback to + execute the actual command. + + A command consists of request and response CFDictionaries (or, equivalently, + NSDictionaries). BetterAuthorizationSampleLib defines three special keys for + these dictionaries: + + 1. kBASCommandKey -- In the request dictionary, this is the name of the + command. Its value is a string that uniquely identifies the command within + your program. + + 2. kBASErrorKey -- In the response dictionary, this is the error result for + the request. Its value is an OSStatus-style error code. + + 3. kBASDescriptorArrayKey -- In the response dictionary, if present, this is + an array of file descriptors being returned from the helper tool. + + You can use any other key to represent addition parameters (or return values) + for the command. The only constraints that BetterAuthorizationSampleLib applies + to these extra parameters is that they must be serialisable as a CFPropertyList. + + BetterAuthorizationSampleLib requires that you tell it about the list of commands + that you support. Each command is represented by a command specification + (BASCommandSpec). The command specification includes the following information: + + 1. The name of the command. This is the same as the kBASCommandKey value in + the request dictionary. + + 2. The authorization right associated with the command. BetterAuthorizationSampleLib + uses this to ensure that the user is authorized to use the command before + it calls your command callback in the privileged helper tool. + + 3. Information to create the command's authorization right specification in the + policy database. The is used by the BASSetDefaultRules function. + + Finally, BetterAuthorizationSampleLib includes a number of utilities routines to help + wrangle error codes (BASErrnoToOSStatus, BASOSStatusToErrno, and BASGetErrorFromResponse) + and file descriptors (BASCloseDescriptorArray). +*/ + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Command Description + +/*! + @struct BASCommandSpec + + @abstract Describes a privileged operation to BetterAuthorizationSampleLib. + + @discussion Both the application and the tool must tell BetterAuthorizationSampleLib about + the operations (that is, commands) that they support. They do this by passing + in an array of BASCommandSpec structures. Each element describes one command. + The array is terminated by a command whose commandName field is NULL. + + In general the application and tool should use the same array definition. + However, there are cases where these might be out of sync. For example, if you + have an older version of the application talking to a newer version of the tool, + the tool might know about more commands than the application (and thus provide a + longer array), and that's OK. + + @field commandName + A identifier for this command. This can be any string that is unique within + the context of your programs. A NULL value in this field terminates the array. + + The length of the command name must not be greater than 1024 UTF-16 values. + + @field rightName + This is the name of the authorization right associated with the + command. This can be NULL if you don't want any right associated with the + command. If it's not NULL, BetterAuthorizationSampleLib will acquire that right + before allowing the command to execute. + + @field rightDefaultRule + This is the name of an authorization rule that should be used in + the default right specification for the right. To see a full list of these rules, + look at the "rules" dictionary within the policy database (currently + "/etc/authorization"). Common values include "default" (which requires that the user + hold credentials that authenticate them as an admin user) and "allow" (which will let + anyone acquire the right). + + This must be NULL if (and only if) rightName is NULL. + + @field rightDescriptionKey + This is a key used to form a custom prompt for the right. The value of this + string should be a key into a .strings file whose name you supply to + BASSetDefaultRules. When BetterAuthorizationSampleLib creates the right specification, + it uses this key to get all of the localised prompt strings for the right. + + This must be NULL if rightName is NULL. Otherwise, this may be NULL if you + don't want a custom prompt for your right. + + @field userData + This field is is for the benefit of the client; BetterAuthorizationSampleLib + does not use it in any way. +*/ + +struct BASCommandSpec { + const char * commandName; + const char * rightName; + const char * rightDefaultRule; + const char * rightDescriptionKey; + const void * userData; +}; +typedef struct BASCommandSpec BASCommandSpec; + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Request/Response Keys + +// Standard keys for the request dictionary + +/*! + @define kBASCommandKey + + @abstract Key for the command string within the request dictionary. + + @discussion Within a request, this key must reference a string that is the name of the + command to execute. This must match one of the commands in the + BASCommandSpec array. + + The length of a command name must not be greater than 1024 UTF-16 values. +*/ + +#define kBASCommandKey "com.apple.dts.BetterAuthorizationSample.command" // CFString + +// Standard keys for the response dictionary + +/*! + @define kBASErrorKey + + @abstract Key for the error result within the response dictionary. + + @discussion Within a response, this key must reference a number that is the error result + for the response, interpreted as an OSStatus. +*/ + +#define kBASErrorKey "com.apple.dts.BetterAuthorizationSample.error" // CFNumber + +/*! + @define kBASDescriptorArrayKey + + @abstract Key for a file descriptor array within the response dictionary. + + @discussion Within a response, this key, if present, must reference an array + of numbers, which are the file descriptors being returned with + the response. The numbers are interpreted as ints. +*/ + +#define kBASDescriptorArrayKey "com.apple.dts.BetterAuthorizationSample.descriptors" // CFArray of CFNumber + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Helper Tool Routines + +/*! + @functiongroup Helper Tool Routines +*/ + +/*! + @typedef BASCommandProc + + @abstract Command processing callback. + + @discussion When your helper tool calls BASHelperToolMain, it passes in a pointer to an + array of callback functions of this type. When BASHelperToolMain receives a + valid command, it calls one of these function so that your program-specific + code can process the request. BAS guarantees that the effective, save and + real user IDs (EUID, SUID, RUID) will all be zero at this point (that is, + you're "running as root"). + + By the time this callback is called, BASHelperToolMain has already verified that + this is a known command. It also acquires the authorization right associated + with the command, if any. However, it does nothing to validate the other + parameters in the request. These parameters come from a non-privileged source + and you should verify them carefully. + + Your implementation should get any input parameters from the request and place + any output parameters in the response. It can also put an array of file + descriptors into the response using the kBASDescriptorArrayKey key. + + If an error occurs, you should just return an appropriate error code. + BASHelperToolMain will ensure that this gets placed in the response. + + You should attempt to fail before adding any file descriptors to the response, + or remove them once you know that you're going to fail. If you put file + descriptors into the response and then return an error, those descriptors will + still be passed back to the client. It's likely the client isn't expecting this. + + Calls to this function will be serialised; that is, once your callback is + running, BASHelperToolMain won't call you again until you return. Your callback + should avoid blocking for long periods of time. If you block for too long, the + BAS watchdog will kill the entire helper tool process. + + This callback runs in a daemon context; you must avoid doing things that require the + user's context. For example, launching a GUI application would be bad. See + Technote 2083 "Daemons and Agents" for more information about execution contexts. + + @param auth This is a reference to the authorization instance associated with the original + application that made the request. + + This will never be NULL. + + @param userData This is the value from the userData field of the corresponding entry in the + BASCommandSpec array that you passed to BASHelperToolMain. + + @param request This dictionary contains the request. It will have, at a bare minimum, a + kBASCommandKey item whose value matches one of the commands in the + BASCommandSpec array you passed to BASHelperToolMain. It may also have + other, command-specific parameters. + + This will never be NULL. + + @param response This is a dictionary into which you can place the response. It will start out + empty, and you can add any results you please to it. + + If you need to return file descriptors, place them in an array and place that + array in the response using the kBASDescriptorArrayKey key. + + There's no need to set the error result in the response. BASHelperToolMain will + do that for you. However, if you do set a value for the kBASErrorKey key, + that value will take precedence; in this case, the function result is ignored. + + This will never be NULL. + + @param asl A reference to the ASL client handle for logging. + + This may be NULL. However, ASL handles a NULL input, so you don't need to + conditionalise your code. + + @param aslMsg A reference to a ASL message template for logging. + + This may be NULL. However, ASL handles a NULL input, so you don't need to + conditionalise your code. +*/ + +typedef OSStatus (*BASCommandProc)( + AuthorizationRef auth, + const void * userData, + CFDictionaryRef request, + CFMutableDictionaryRef response, + aslclient asl, + aslmsg aslMsg +); + +/*! + @function BASHelperToolMain + + @abstract Entry point for a privileged helper tool. + + @discussion You should call this function from the main function of your helper tool. It takes + care of all of the details of receiving and processing commands. It will call you + back (via one of the commandProcs callbacks) when a valid request arrives. + + This function assumes acts like a replacement for main. Thus, it assumes that + it owns various process-wide resources (like SIGALRM and the disposition of + SIGPIPE). You should not use those resources, either in your main function or + in your callback function. Also, you should not call this function on a thread, + or start any other threads in the process. Finally, this function has a habit of + exiting the entire process if something goes wrong. You should not expect the + function to always return. + + This function does not clean up after itself. When this function returns, you + are expected to exit. If the function result is noErr, the command processing + loop quit in an expected manner (typically because of an idle timeout). Otherwise + it quit because of an error. + + @param commands An array that describes the commands that you implement, and their associated + rights. The array is terminated by a command with a NULL name. There must be + at least one valid command. + + @param commandProcs + An array of callback routines that are called when a valid request arrives. The + array is expected to perform the operation associated with the corresponding + command and set up the response values, if any. The array is terminated by a + NULL pointer. + + IMPORTANT: The array must have exactly the same number of entries as the + commands array. + + @result An integer representing EXIT_SUCCESS or EXIT_FAILURE. +*/ + +extern int BASHelperToolMain( + const BASCommandSpec commands[], + const BASCommandProc commandProcs[] +); + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Application Routines + +/*! + @functiongroup Application Routines +*/ + +/*! + @function BASSetDefaultRules + + @abstract Creates default right specifications in the policy database. + + @discussion This routine ensures that the policy database (currently + "/etc/authorization") contains right specifications for all of the rights + that you use (as specified by the commands array). This has two important + consequences: + + 1. It makes the rights that you use visible to the system administrator. + All they have to do is run your program once and they can see your default + right specifications in the policy database. + + 2. It means that, when the privileged helper tool tries to acquire the right, + it will use your specification of the right (as modified by the system + administrator) rather than the default right specification. + + You must call this function before calling BASExecuteRequestInHelperTool. + Typically you would call it at application startup time, or lazily, immediately + before calling BASExecuteRequestInHelperTool. + + @param auth A reference to your program's authorization instance; you typically get this + by calling AuthorizationCreate. + + This must not be NULL. + + @param commands An array that describes the commands that you implement, and their associated + rights. There must be at least one valid command. + + @param bundleID The bundle identifier for your program. + + This must not be NULL. + + @param descriptionStringTableName + The name of the .strings file from which to fetch the localised custom + prompts for the rights in the commands array (if any). A NULL value is + equivalent to passing "Localizable" (that is, it gets the prompts from + "Localizable.strings"). + + For example, imagine you have a command for which you require a custom prompt. + You should put the custom prompt in a .strings file, let's call it + "AuthPrompts.strings". You should then pass "AuthPrompts" to this parameter + and put the key that gets the prompt into the rightDescriptionKey of the command. +*/ + +extern void BASSetDefaultRules( + AuthorizationRef auth, + const BASCommandSpec commands[], + CFStringRef bundleID, + CFStringRef descriptionStringTableName +); + +/*! + @function BASExecuteRequestInHelperTool + + @abstract Executes a request in the privileged helper tool, returning the response. + + @discussion This routine synchronously executes a request in the privileged helper tool and + returns the response. + + If the function returns an error, the IPC between your application and the helper tool + failed. Unfortunately it's not possible to tell whether this failure occurred while + sending the request or receiving the response, thus it's not possible to know whether + the privileged operation was done or not. + + If the functions returns no error, the IPC between your application and the helper tool + was successful. However, the command may still have failed. You must get the error + value from the response (typically using BASGetErrorFromResponse) to see if the + command succeeded or not. + + On success the response dictionary may contain a value for the kBASDescriptorArrayKey key. + If so, that will be a non-empty CFArray of CFNumbers, each of which can be accessed as an int. + Each value is a descriptor that is being returned to you from the helper tool. You are + responsible for closing these descriptors when you're done with them. + + @param auth A reference to your program's authorization instance; you typically get this + by calling AuthorizationCreate. + + This must not be NULL. + + @param commands An array that describes the commands that you implement, and their associated + rights. There must be at least one valid command. + + @param bundleID The bundle identifier for your program. + + This must not be NULL. + + @param request A dictionary describing the requested operation. This must, at least, contain + a string value for the kBASCommandKey. Furthermore, this string must match + one of the commands in the array. + + The dictionary may also contain other values. These are passed to the helper + tool unintepreted. All values must be serialisable using the CFPropertyList + API. + + This must not be NULL. + + @param response This must not be NULL. On entry, *response must be NULL. On success, *response + will not be NULL. On error, *response will be NULL. + + On success, you are responsible for disposing of *response. You are also + responsible for closing any descriptors returned in the response. + + @result An OSStatus code (see BASErrnoToOSStatus and BASOSStatusToErrno). +*/ + +extern OSStatus BASExecuteRequestInHelperTool( + AuthorizationRef auth, + const BASCommandSpec commands[], + CFStringRef bundleID, + CFDictionaryRef request, + CFDictionaryRef * response +); + +/*! + @enum BASFailCode + + @abstract Indicates why a request failed. + + @discussion If BASExecuteRequestInHelperTool fails with an error (indicating + an IPC failure), you can call BASDiagnoseFailure to determine what + went wrong. BASDiagnoseFailure will return the value of this + type that best describes the failure. + + @constant kBASFailUnknown + Indicates that BASDiagnoseFailure could not accurately determine the cause of the + failure. + + @constant kBASFailDisabled + The request failed because the helper tool is installed but disabled. + + @constant kBASFailPartiallyInstalled + The request failed because the helper tool is only partially installed. + + @constant kBASFailNotInstalled + The request failed because the helper tool is not installed at all. + + @constant kBASFailNeedsUpdate + The request failed because the helper tool is installed but out of date. + BASDiagnoseFailure will never return this value. However, if you detect that + the helper tool is out of date (typically by sending it a "get version" request) + you can pass this value to BASFixFailure to force it to update the tool. +*/ + +enum { + kBASFailUnknown, + kBASFailDisabled, + kBASFailPartiallyInstalled, + kBASFailNotInstalled, + kBASFailNeedsUpdate +}; +typedef uint32_t BASFailCode; + +/*! + @function BASDiagnoseFailure + + @abstract Determines the cause of a failed request. + + @discussion If BASExecuteRequestInHelperTool fails with an error (indicating an + IPC failure), you can call this routine to determine what went wrong. + It returns a BASFailCode value indicating the cause of the failure. + You should use this value to tell the user what's going on and what + you intend to do about it. Once you get the user's consent, you can + call BASFixFailure to fix the problem. + + For example, if this function result is kBASFailDisabled, you could put up the + dialog saying: + + My privileged helper tool is disabled. Would you like to enable it? + This operation may require you to authorize as an admin user. + [Cancel] [[Enable]] + + On the other hand, if this function result is kBASFailNotInstalled, the dialog might be: + + My privileged helper tool is not installed. Would you like to install it? + This operation may require you to authorize as an admin user. + [Cancel] [[Install]] + + BASDiagnoseFailure will never return kBASFailNeedsUpdate. It's your responsibility + to detect version conflicts (a good way to do this is by sending a "get version" request + to the helper tool). However, once you've detected a version conflict, you can pass + kBASFailNeedsUpdate to BASFixFailure to get it to install the latest version of your + helper tool. + + If you call this routine when everything is working properly, you're likely to get + a result of kBASFailUnknown. + + @param auth A reference to your program's authorization instance; you typically get this + by calling AuthorizationCreate. + + This must not be NULL. + + @param bundleID The bundle identifier for your program. + + This must not be NULL. + + @result A BASFailCode value indicating the cause of the failure. This will never be + kBASFailNeedsUpdate. +*/ + +extern BASFailCode BASDiagnoseFailure( + AuthorizationRef auth, + CFStringRef bundleID +); + +/*! + @function BASFixFailure + + @abstract Installs, or reinstalls, the privileged helper tool. + + @discussion This routine installs or reinstalls the privileged helper tool. Typically + you call this in response to an IPC failure talking to the tool. You first + diagnose the failure using BASDiagnoseFailure and then call this routine to + fix the failure by installing (or reinstalling) the tool. + + Because the helper tool is privileged, installing it is a privileged + operation. This routine will do its work by calling + AuthorizationExecuteWithPrivileges, which is likely to prompt the user + for an admin name and password. + + @param auth A reference to your program's authorization instance; you typically get this + by calling AuthorizationCreate. + + This must not be NULL. + + @param bundleID The bundle identifier for your program. + + This must not be NULL. + + @param installToolName + The name of the install tool within your bundle. You should place the tool + in the executable directory within the bundle. Specifically, the tool must be + available by passing this name to CFBundleCopyAuxiliaryExecutableURL. + + This must not be NULL. + + @param helperToolName + The name of the helper tool within your bundle. You should place the tool + in the executable directory within the bundle. Specifically, the tool must be + available by passing this name to CFBundleCopyAuxiliaryExecutableURL. + + This must not be NULL. + + @param failCode A value indicating the type of failure that's occurred. In most cases you get this + value by calling BASDiagnoseFailure. + + @result An OSStatus code (see BASErrnoToOSStatus and BASOSStatusToErrno). +*/ + +extern OSStatus BASFixFailure( + AuthorizationRef auth, + CFStringRef bundleID, + CFStringRef installToolName, + CFStringRef helperToolName, + BASFailCode failCode +); + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Utility Routines + +/*! + @functiongroup Utilities +*/ + +/*! + @function BASErrnoToOSStatus + + @abstract Convert an errno value to an OSStatus value. + + @discussion All errno values have accepted alternatives in the errSecErrnoBase + OSStatus range, and this routine does the conversion. For example, + ENOENT becomes errSecErrnoBase + ENOENT. Any value that's not + recognised just gets passed through unmodified. + + A value of 0 becomes noErr. + + For more information about errSecErrnoBase, see DTS Q&A 1499 + . + + @param errNum The errno value to convert. + + @result An OSStatus code representing the errno equivalent. +*/ + +extern OSStatus BASErrnoToOSStatus(int errNum); + +/*! + @function BASOSStatusToErrno + + @abstract Convert an OSStatus value to an errno value. + + @discussion This function converts some specific OSStatus values (Open Transport and + errSecErrnoBase ranges) to their corresponding errno values. It more-or-less + undoes the conversion done by BASErrnoToOSStatus, including a pass + through for unrecognised values. + + It's worth noting that there are many more defined OSStatus error codes + than errno error codes, so you're more likely to encounter a passed + through value when going in this direction. + + A value of noErr becomes 0. + + For more information about errSecErrnoBase, see DTS Q&A 1499 + . + + @param errNum The OSStatus value to convert. + + @result An integer code representing the OSStatus equivalent. +*/ + +extern int BASOSStatusToErrno(OSStatus errNum); + +/*! + @function BASGetErrorFromResponse + + @abstract Extracts the error status from a helper tool response. + + @discussion This function extracts the error status from a helper tool response. + Specifically, its uses the kBASErrorKey key to get a CFNumber and + it gets the resulting value from that number. + + @param response A helper tool response, typically acquired by calling BASExecuteRequestInHelperTool. + + This must not be NULL + + @result An OSStatus code (see BASErrnoToOSStatus and BASOSStatusToErrno). +*/ + +extern OSStatus BASGetErrorFromResponse(CFDictionaryRef response); + +/*! + @function BASCloseDescriptorArray + + @abstract Closes all of the file descriptors referenced by a CFArray. + + @discussion Given a CFArray of CFNumbers, treat each number as a file descriptor + and close it. + + The most common reason to use this routine is that you've executed, + using BASExecuteRequestInHelperTool, a request that returns a response + with embedded file descriptors, and you want to close those descriptors. + In that case, you typically call this as: + + BASCloseDescriptorArray( CFDictionaryGetValue(response, CFSTR(kBASDescriptorArrayKey)) ); + + @param descArray + The array containing the descriptors to close. + + This may be NULL, in which case the routine does nothing. +*/ + +extern void BASCloseDescriptorArray( + CFArrayRef descArray +); + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Utility Routines + +// The following definitions are exported purely for the convenience of the +// install tool ("BetterAuthorizationSampleLibInstallTool.c"). You must not +// use them in your own code. + +#if !defined(BAS_PRIVATE) + #define BAS_PRIVATE 0 +#endif +#if BAS_PRIVATE + + // Hard-wired file system paths for the launchd property list file and + // the privileged helper tool. In all cases, %s is a placeholder + // for the bundle ID (in file system representation). + + #define kBASPlistPathFormat "/Library/LaunchDaemons/%s.plist" + + #define kBASToolDirPath "/Library/PrivilegedHelperTools" // KEEP IN SYNC! + #define kBASToolPathFormat "/Library/PrivilegedHelperTools/%s" // KEEP IN SYNC! + + // Commands strings for the install tool. + + #define kBASInstallToolInstallCommand "install" + #define kBASInstallToolEnableCommand "enable" + + // Magic values used to bracket the process ID returned by the install tool. + + #define kBASAntiZombiePIDToken1 "cricket<" + #define kBASAntiZombiePIDToken2 ">bat" + + // Magic value used to indicate success or failure from the install tool. + + #define kBASInstallToolSuccess "oK" + #define kBASInstallToolFailure "FailUrE %d" + +#endif + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/BetterAuthorizationSampleLibInstallTool.c b/BetterAuthorizationSampleLibInstallTool.c new file mode 100755 index 0000000..cb6f54e --- /dev/null +++ b/BetterAuthorizationSampleLibInstallTool.c @@ -0,0 +1,472 @@ +/* + File: BetterAuthorizationSampleLibInstallTool.c + + Contains: Tool to install BetterAuthorizationSampleLib-based privileged helper tools. + + Written by: DTS + + Copyright: Copyright (c) 2007 Apple Inc. All Rights Reserved. + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple, Inc. + ("Apple") in consideration of your agreement to the following terms, and your + use, installation, modification or redistribution of this Apple software + constitutes acceptance of these terms. If you do not agree with these terms, + please do not use, install, modify or redistribute this Apple software. + + In consideration of your agreement to abide by the following terms, and subject + to these terms, Apple grants you a personal, non-exclusive license, under Apple's + copyrights in this original Apple software (the "Apple Software"), to use, + reproduce, modify and redistribute the Apple Software, with or without + modifications, in source and/or binary forms; provided that if you redistribute + the Apple Software in its entirety and without modifications, you must retain + this notice and the following text and disclaimers in all such redistributions of + the Apple Software. Neither the name, trademarks, service marks or logos of + Apple, Inc. may be used to endorse or promote products derived from the + Apple Software without specific prior written permission from Apple. Except as + expressly stated in this notice, no other rights or licenses, express or implied, + are granted by Apple herein, including but not limited to any patent rights that + may be infringed by your derivative works or by other works in which the Apple + Software may be incorporated. + + The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO + WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED + WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN + COMBINATION WITH YOUR PRODUCTS. + + IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION + OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT + (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +// Allows access to path information associated with tool and plist installation +// from BetterAuthorizationSampleLib.h +#define BAS_PRIVATE 1 + +#include "BetterAuthorizationSampleLib.h" + +extern char **environ; + +static int RunLaunchCtl( + bool junkStdIO, + const char *command, + const char *plistPath +) + // Handles all the invocations of launchctl by doing the fork() + execve() + // for proper clean-up. Only two commands are really supported by our + // implementation; loading and unloading of a job via the plist pointed at + // (const char *) plistPath. +{ + int err; + const char * args[5]; + pid_t childPID; + pid_t waitResult; + int status; + + // Pre-conditions. + assert(command != NULL); + assert(plistPath != NULL); + + // Make sure we get sensible logging even if we never get to the waitpid. + + status = 0; + + // Set up the launchctl arguments. We run launchctl using StartupItemContext + // because, in future system software, launchctl may decide on the launchd + // to talk to based on your Mach bootstrap namespace rather than your RUID. + + args[0] = "/bin/launchctl"; + args[1] = command; // "load" or "unload" + args[2] = "-w"; + args[3] = plistPath; // path to plist + args[4] = NULL; + + fprintf(stderr, "launchctl %s %s '%s'\n", args[1], args[2], args[3]); + + // Do the standard fork/exec dance. + + childPID = fork(); + switch (childPID) { + case 0: + // child + err = 0; + + // If we've been told to junk the I/O for launchctl, open + // /dev/null and dup that down to stdin, stdout, and stderr. + + if (junkStdIO) { + int fd; + int err2; + + fd = open("/dev/null", O_RDWR); + if (fd < 0) { + err = errno; + } + if (err == 0) { + if ( dup2(fd, STDIN_FILENO) < 0 ) { + err = errno; + } + } + if (err == 0) { + if ( dup2(fd, STDOUT_FILENO) < 0 ) { + err = errno; + } + } + if (err == 0) { + if ( dup2(fd, STDERR_FILENO) < 0 ) { + err = errno; + } + } + err2 = close(fd); + if (err2 < 0) { + err2 = 0; + } + if (err == 0) { + err = err2; + } + } + if (err == 0) { + err = execve(args[0], (char **) args, environ); + } + if (err < 0) { + err = errno; + } + _exit(EXIT_FAILURE); + break; + case -1: + err = errno; + break; + default: + err = 0; + break; + } + + // Only the parent gets here. Wait for the child to complete and get its + // exit status. + + if (err == 0) { + do { + waitResult = waitpid(childPID, &status, 0); + } while ( (waitResult == -1) && (errno == EINTR) ); + + if (waitResult < 0) { + err = errno; + } else { + assert(waitResult == childPID); + + if ( ! WIFEXITED(status) || (WEXITSTATUS(status) != 0) ) { + err = EINVAL; + } + } + } + + fprintf(stderr, "launchctl -> %d %ld 0x%x\n", err, (long) childPID, status); + + return err; +} + +static int CopyFileOverwriting( + const char *sourcePath, + mode_t destMode, + const char *destPath +) + // Our own version of a file copy. This routine will either handle + // the copy of the tool binary or the plist file associated with + // that binary. As the function name suggests, it writes over any + // existing file pointed to by (const char *) destPath. +{ + int err; + int junk; + int sourceFD; + int destFD; + char buf[65536]; + + // Pre-conditions. + assert(sourcePath != NULL); + assert(destPath != NULL); + + (void) unlink(destPath); + + destFD = -1; + + err = 0; + sourceFD = open(sourcePath, O_RDONLY); + if (sourceFD < 0) { + err = errno; + } + + if (err == 0) { + destFD = open(destPath, O_CREAT | O_EXCL | O_WRONLY, destMode); + if (destFD < 0) { + err = errno; + } + } + + if (err == 0) { + ssize_t bytesReadThisTime; + ssize_t bytesWrittenThisTime; + ssize_t bytesWritten; + + do { + bytesReadThisTime = read(sourceFD, buf, sizeof(buf)); + if (bytesReadThisTime < 0) { + err = errno; + } + + bytesWritten = 0; + while ( (err == 0) && (bytesWritten < bytesReadThisTime) ) { + bytesWrittenThisTime = write(destFD, &buf[bytesWritten], bytesReadThisTime - bytesWritten); + if (bytesWrittenThisTime < 0) { + err = errno; + } else { + bytesWritten += bytesWrittenThisTime; + } + } + + } while ( (err == 0) && (bytesReadThisTime != 0) ); + } + + // Clean up. + + if (sourceFD != -1) { + junk = close(sourceFD); + assert(junk == 0); + } + if (destFD != -1) { + junk = close(destFD); + assert(junk == 0); + } + + fprintf(stderr, "copy '%s' %#o '%s' -> %d\n", sourcePath, (int) destMode, destPath, err); + + return err; +} + +static int InstallCommand( + const char * bundleID, + const char * toolSourcePath, + const char * plistSourcePath +) + // Heavy lifting function for handling all the necessary steps to install a + // helper tool in the correct location, with the correct permissions, + // and call launchctl in order to load it as a current job. +{ + int err; + char toolDestPath[PATH_MAX]; + char plistDestPath[PATH_MAX]; + struct stat sb; + static const mode_t kDirectoryMode = ACCESSPERMS & ~(S_IWGRP | S_IWOTH); + static const mode_t kExecutableMode = ACCESSPERMS & ~(S_IWGRP | S_IWOTH); + static const mode_t kFileMode = DEFFILEMODE & ~(S_IWGRP | S_IWOTH); + + // Pre-conditions. + assert(bundleID != NULL); + assert(toolSourcePath != NULL); + assert(plistSourcePath != NULL); + + (void) snprintf(toolDestPath, sizeof(toolDestPath), kBASToolPathFormat, bundleID); + (void) snprintf(plistDestPath, sizeof(plistDestPath), kBASPlistPathFormat, bundleID); + + // Stop the helper tool if it's currently running. + + (void) RunLaunchCtl(true, "unload", plistDestPath); + + // Create the PrivilegedHelperTools directory. The owner will be "root" because + // we're running as root (our EUID is 0). The group will be "admin" because + // it's inherited from "/Library". The permissions will be rwxr-xr-x because + // of kDirectoryMode combined with our umask. + + err = mkdir(kBASToolDirPath, kDirectoryMode); + if (err < 0) { + err = errno; + } + fprintf(stderr, "mkdir '%s' %#o -> %d\n", kBASToolDirPath, kDirectoryMode, err); + if ( (err == 0) || (err == EEXIST) ) { + err = stat(kBASToolDirPath, &sb); + if (err < 0) { + err = errno; + } + } + + // /Library/PrivilegedHelperTools may have come from a number of places: + // + // A. We may have just created it. In this case it will be + // root:admin rwxr-xr-x. + // + // B. It may have been correctly created by someone else. By definition, + // that makes it root:wheel rwxr-xr-x. + // + // C. It may have been created (or moved here) incorrectly (or maliciously) + // by someone else. In that case it will be u:g xxxxxxxxx, where u is + // not root, or root:g xxxxwxxwx (that is, root-owned by writeable by + // someone other than root). + // + // In case A, we want to correct the group. In case B, we want to do + // nothing. In case C, we want to fail. + + if (err == 0) { + if ( (sb.st_uid == 0) && (sb.st_gid == 0) ) { + // case B -- do nothing + } else if ( (sb.st_uid == 0) && (sb.st_gid != 0) && ((sb.st_mode & ALLPERMS) == kDirectoryMode) ) { + // case A -- fix the group ID + // + // This is safe because /Library is sticky and the file is owned + // by root, which means that only root can move it. Also, we + // don't have to worry about malicious files existing within the + // directory because its only writeable by root. + + err = chown(kBASToolDirPath, -1, 0); + if (err < 0) { + err = errno; + } + fprintf(stderr, "chown -1:0 '%s' -> %d\n", kBASToolDirPath, err); + } else { + fprintf(stderr, "bogus perms on '%s' %d:%d %o\n", kBASToolDirPath, (int) sb.st_uid, (int) sb.st_gid, (int) sb.st_mode); + err = EPERM; + } + } + + // Then create the known good copy. The ownership and permissions + // will be set appropriately, as described in the comments for mkdir. + // We don't have to worry about atomicity because this tool won't be + // looked at until our plist is installed. + + if (err == 0) { + err = CopyFileOverwriting(toolSourcePath, kExecutableMode, toolDestPath); + } + + // For the plist, our caller has created the file in /tmp and we just copy it + // into the correct location. This ensures that the file is complete + // and valid before anyone starts looking at it and will also overwrite + // any existing file with this new version. + // + // Since we have to read/write in the file byte by byte to make sure that + // the file is complete we are rolling our own 'copy'. This clearly is + // ignoring atomicity since we do not roll back to the state of 'what was + // previously there' if there is an error; rather, whatever has been + // written up to that point of granular failure /is/ the state of the + // plist file. + + if (err == 0) { + err = CopyFileOverwriting(plistSourcePath, kFileMode, plistDestPath); + } + + // Use launchctl to load our job. The plist file starts out disabled, + // so we pass "-w" to enable it permanently. + + if (err == 0) { + err = RunLaunchCtl(false, "load", plistDestPath); + } + + return err; +} + +static int EnableCommand( + const char *bundleID +) + // Utility function to call through to RunLaunchCtl in order to load a job + // given by the path contructed from the (const char *) bundleID. +{ + int err; + char plistPath[PATH_MAX]; + + // Pre-condition. + assert(bundleID != NULL); + + (void) snprintf(plistPath, sizeof(plistPath), kBASPlistPathFormat, bundleID); + err = RunLaunchCtl(false, "load", plistPath); + + return err; +} + +int main(int argc, char **argv) +{ + int err; + + // Print our PID so that the app can avoid creating zombies. + + fprintf(stdout, kBASAntiZombiePIDToken1 "%ld" kBASAntiZombiePIDToken2 "\n", (long) getpid()); + fflush(stdout); + + // On the client side, AEWP only gives a handle to stdout, so we dup stdout + // downto stderr for the rest of this tool. This ensures that all our output + // makes it to the client. + + err = dup2(STDOUT_FILENO, STDERR_FILENO); + if (err < 0) { + err = errno; + } else { + err = 0; + } + + // Set up the standard umask. The goal here is to be robust in the + // face of common environmental changes, not to resist a malicious attack. + // Also sync the RUID to the 0 because launchctl keys off the RUID (at least + // on 10.4.x). + + if (err == 0) { + (void) umask(S_IWGRP | S_IWOTH); + + err = setuid(0); + if (err < 0) { + fprintf(stderr, "setuid\n"); + err = EINVAL; + } + } + + if ( (err == 0) && (argc < 2) ) { + fprintf(stderr, "usage\n"); + err = EINVAL; + } + + // The first argument is the command. Switch off that and extract the + // remaining arguments and pass them to our command routines. + + if (err == 0) { + if ( strcmp(argv[1], kBASInstallToolInstallCommand) == 0 ) { + if (argc == 5) { + err = InstallCommand(argv[2], argv[3], argv[4]); + } else { + fprintf(stderr, "usage3\n"); + err = EINVAL; + } + } else if ( strcmp(argv[1], kBASInstallToolEnableCommand) == 0 ) { + if (argc == 3) { + err = EnableCommand(argv[2]); + } else { + fprintf(stderr, "usage4\n"); + err = EINVAL; + } + } else { + fprintf(stderr, "usage2\n"); + err = EINVAL; + } + } + + // Write "oK" to stdout and quit. The presence of the "oK" on the last + // line of output is used by the calling code to detect success. + + if (err == 0) { + fprintf(stderr, kBASInstallToolSuccess "\n"); + } else { + fprintf(stderr, kBASInstallToolFailure "\n", err); + } + + return (err == 0) ? EXIT_SUCCESS : EXIT_FAILURE; +} diff --git a/BetterSegmentedControl.h b/BetterSegmentedControl.h new file mode 100644 index 0000000..f68c37e --- /dev/null +++ b/BetterSegmentedControl.h @@ -0,0 +1,18 @@ +// +// BetterSegmentedControl.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + + +@interface BetterSegmentedControl : NSSegmentedControl { + +} +- (int)selectedTag; +- (void)unselectAllSegments; + +@end diff --git a/BetterSegmentedControl.m b/BetterSegmentedControl.m new file mode 100644 index 0000000..8c0e4c4 --- /dev/null +++ b/BetterSegmentedControl.m @@ -0,0 +1,49 @@ +// +// BetterSegmentedControl.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "BetterSegmentedControl.h" + + +@implementation BetterSegmentedControl + +- (int)selectedTag { + if([self selectedSegment] == -1) return 0; + + return [[self cell] tagForSegment: [self selectedSegment]]; +} + +- (void) unselectAllSegments{ + NSSegmentSwitchTracking current; + current = [[self cell] trackingMode]; + + [[self cell] setTrackingMode: NSSegmentSwitchTrackingMomentary]; + + int i; + for (i = 0; i < [self segmentCount]; i++) { + [self setSelected: NO forSegment: i]; + } + + [[self cell] setTrackingMode: current]; + +} // unselectAllSegments + + +// **** sizing infoz **** +// +// size of the SegControl is: [sum of segment widths] + (5 + 1*[number of segments]) +// +// float width = 5; +// for(each segment) { +// width += ([segment width] + 1); +// } +// + +// float widthPerSegment = ([[self parentView] availableWidth] - (5 + [self segmentCount])) / ([self segmentCount]*1.0); + + +@end diff --git a/BetterTableView.h b/BetterTableView.h new file mode 100644 index 0000000..24bc83f --- /dev/null +++ b/BetterTableView.h @@ -0,0 +1,15 @@ + +#import + +@interface NSObject (BetterTableViewAdditions) + +- (BOOL)tableViewCut: (NSTableView*)tableView; +- (BOOL)tableViewCopy: (NSTableView*)tableView; +- (BOOL)tableViewPaste: (NSTableView*)tableView; +- (void)tableView: (NSTableView*)tableView deleteKeyPressedOnRowIndexes: (NSIndexSet*)rowIndexes; +@end + +@interface BetterTableView : NSTableView +{ +} +@end diff --git a/BetterTableView.m b/BetterTableView.m new file mode 100644 index 0000000..992eccf --- /dev/null +++ b/BetterTableView.m @@ -0,0 +1,62 @@ +#import "BetterTableView.h" + +@implementation BetterTableView + +//- (BOOL)canDragRowsWithIndexes:(NSIndexSet *)rowIndexes atPoint:(NSPoint)mouseDownPoint { +// log(LOG_GENERAL, @"canDragRowsWithIndexes"); +// return YES; +//} + +- (void)keyDown:(NSEvent *)theEvent { + NSString* characters; + int character, characterCount, characterIndex; + + characters = [theEvent charactersIgnoringModifiers]; + characterCount = [characters length]; + for (characterIndex = 0; characterIndex < characterCount; characterIndex++) + { + character = [characters characterAtIndex:characterIndex]; + if(character == 127) { // delete + if( [self delegate] && [[self delegate] respondsToSelector: @selector(tableView:deleteKeyPressedOnRowIndexes:)] ) { + [[self delegate] tableView: self deleteKeyPressedOnRowIndexes: [self selectedRowIndexes]]; + return; + } + }/* + if(character == NSUpArrowFunctionKey) { + [self selectRow:[self selectedRow]-1 byExtendingSelection:NO]; + return; + } + if(character == NSDownArrowFunctionKey) { + [self selectRow:[self selectedRow]+1 byExtendingSelection:NO]; + return; + }*/ + } + + [super keyDown:theEvent]; +} + +- (void)copy: (id)sender { + if( ([self selectedRow] != -1) && [self delegate] && [[self delegate] respondsToSelector: @selector(tableViewCopy:)] ) { + // log(LOG_GENERAL, @"Table view copy!"); + if([[self delegate] tableViewCopy: self]) return; + } + NSBeep(); +} + +- (void)paste: (id)sender { + if( [self delegate] && [[self delegate] respondsToSelector: @selector(tableViewPaste:)] ) { + // log(LOG_GENERAL, @"Table view paste!"); + if([[self delegate] tableViewPaste: self]) return; + } + NSBeep(); +} + +- (void)cut: (id)sender { + if( ([self selectedRow] != -1) && [self delegate] && [[self delegate] respondsToSelector: @selector(tableViewCut:)] ) { + // log(LOG_GENERAL, @"Table view copy!"); + if([[self delegate] tableViewCut: self]) return; + } + NSBeep(); +} + +@end diff --git a/BindingsController.h b/BindingsController.h new file mode 100644 index 0000000..e1da8e5 --- /dev/null +++ b/BindingsController.h @@ -0,0 +1,63 @@ +// +// BindingsController.h +// Pocket Gnome +// +// Created by Josh on 1/28/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class BotController; +@class ChatController; +@class OffsetController; + +#define BindingPrimaryHotkey @"MULTIACTIONBAR1BUTTON1" +#define BindingPrimaryHotkeyBackup @"ACTIONBUTTON1" +#define BindingPetAttack @"PETATTACK" +#define BindingInteractMouseover @"INTERACTMOUSEOVER" +#define BindingTargetLast @"TARGETLASTTARGET" +#define BindingTurnLeft @"TURNLEFT" +#define BindingTurnRight @"TURNRIGHT" +#define BindingMoveForward @"MOVEFORWARD" +#define BindingStrafeRight @"STRAFERIGHT" +#define BindingStrafeLeft @"STRAFELEFT" + +@interface BindingsController : NSObject { + + IBOutlet Controller *controller; + IBOutlet ChatController *chatController; + IBOutlet OffsetController *offsetController; + IBOutlet BotController *botController; + + + NSArray *_requiredBindings; + NSArray *_optionalBindings; + + NSMutableDictionary *_bindings; + NSMutableDictionary *_keyCodesWithCommands; + + NSDictionary *_commandToAscii; + + NSMutableDictionary *_bindingsToCodes; // used w/the defines above + + GUID _guid; +} + +// this will send the command to the client (use the above 3 keys - defines) +- (BOOL)executeBindingForKey:(NSString*)key; + +// just tells us if a binding exists! +- (BOOL)bindingForKeyExists:(NSString*)key; + +// only called on bot start +- (void)reloadBindings; + +// returns the bar offset (where the spell should be written to) +- (int)castingBarOffset; + +// validates that all required key bindings exist! returns an error message +- (NSString*)keyBindingsValid; + +@end diff --git a/BindingsController.m b/BindingsController.m new file mode 100644 index 0000000..d6faf84 --- /dev/null +++ b/BindingsController.m @@ -0,0 +1,582 @@ +// +// BindingsController.h +// Pocket Gnome +// +// Created by Josh on 1/28/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "BindingsController.h" + +#import "Controller.h" +#import "PlayerDataController.h" +#import "ChatController.h" +#import "BotController.h" +#import "OffsetController.h" + +#import "Behavior.h" + +#import "MemoryAccess.h" + +#import "Offsets.h" +#import + +@interface BindingsController (Internal) +- (void)getKeyBindings; +- (void)convertToAscii; +- (void)mapBindingsToKeys; +@end + +@implementation BindingsController + +- (id) init{ + self = [super init]; + if (self != nil) { + + _guid = 0x0; + + // required bindings + _requiredBindings = [[NSArray arrayWithObjects: + @"MULTIACTIONBAR1BUTTON1", // lower left action bar + @"INTERACTMOUSEOVER", + @"TARGETLASTTARGET", + @"TURNLEFT", + @"TURNRIGHT", + @"MOVEFORWARD", + @"STRAFERIGHT", + @"STRAFELEFT", + nil] retain]; + + // optional - basically back up in case any of the above are NOT bound + _optionalBindings = [[NSArray arrayWithObjects: + @"ACTIONBUTTON1", + @"PETATTACK", + nil] retain]; + + // might move this to a plist eventually once I have all of them + _commandToAscii = [[NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithInt:kVK_F1] ,@"f1", + [NSNumber numberWithInt:kVK_Shift] ,@"shift", + [NSNumber numberWithInt:kVK_F2] ,@"f2", + [NSNumber numberWithInt:kVK_Space] ,@"space", + [NSNumber numberWithInt:kVK_Control] ,@"ctrl", + [NSNumber numberWithInt:kVK_F3] ,@"f3", + [NSNumber numberWithInt:-1] ,@"button2", + [NSNumber numberWithInt:-1] ,@"insert", + [NSNumber numberWithInt:kVK_F4] ,@"f4", + [NSNumber numberWithInt:-1] ,@"mousewheeldown", + [NSNumber numberWithInt:kVK_F5] ,@"f5", + [NSNumber numberWithInt:kVK_F8] ,@"f8", + [NSNumber numberWithInt:kVK_ANSI_Keypad1] ,@"numpad1", + [NSNumber numberWithInt:kVK_F9] ,@"f9", + [NSNumber numberWithInt:kVK_ANSI_Keypad4] ,@"numpad4", + [NSNumber numberWithInt:kVK_ANSI_Keypad7] ,@"numpad7", + [NSNumber numberWithInt:kVK_F7] ,@"f7", + [NSNumber numberWithInt:kVK_Option] ,@"alt", + [NSNumber numberWithInt:kVK_ANSI_KeypadPlus] ,@"numpadplus", + [NSNumber numberWithInt:-1] ,@"mousewheelup", + [NSNumber numberWithInt:kVK_PageDown] ,@"pagedown", + [NSNumber numberWithInt:kVK_ANSI_KeypadClear] ,@"numlock", + [NSNumber numberWithInt:-1] ,@"button3", + [NSNumber numberWithInt:kUpArrowCharCode] ,@"up", + [NSNumber numberWithInt:kVK_ANSI_Keypad2] ,@"numpad2", + [NSNumber numberWithInt:kVK_ANSI_Keypad5] ,@"numpad5", + [NSNumber numberWithInt:kVK_ANSI_Keypad8] ,@"numpad8", + [NSNumber numberWithInt:kVK_End] ,@"end", + [NSNumber numberWithInt:kVK_Tab] ,@"tab", + [NSNumber numberWithInt:kVK_DownArrow] ,@"down", + [NSNumber numberWithInt:kVK_ANSI_KeypadDivide] ,@"numpaddivide", + [NSNumber numberWithInt:-1] ,@"button1", + [NSNumber numberWithInt:-1] ,@"button4", + [NSNumber numberWithInt:-1] ,@"button5", + [NSNumber numberWithInt:kVK_Delete] ,@"backspace", + [NSNumber numberWithInt:kVK_ForwardDelete] ,@"delete", + [NSNumber numberWithInt:kVK_ANSI_Keypad0] ,@"numpad0", + [NSNumber numberWithInt:kVK_ANSI_Keypad3] ,@"numpad3", + [NSNumber numberWithInt:kVK_Return] ,@"enter", + [NSNumber numberWithInt:kVK_ANSI_Keypad6] ,@"numpad6", + [NSNumber numberWithInt:kVK_ANSI_Keypad9] ,@"numpad9", + [NSNumber numberWithInt:kVK_F6] ,@"f6", + [NSNumber numberWithInt:kVK_PageUp] ,@"pageup", + [NSNumber numberWithInt:kVK_Home] ,@"home", + [NSNumber numberWithInt:kVK_Escape] ,@"escape", + [NSNumber numberWithInt:kVK_ANSI_KeypadMinus] ,@"numpadminus", + [NSNumber numberWithInt:kVK_LeftArrow] ,@"left", + [NSNumber numberWithInt:kVK_F10] ,@"f10", + [NSNumber numberWithInt:kVK_F11] ,@"f11", + [NSNumber numberWithInt:kVK_RightArrow] ,@"right", + [NSNumber numberWithInt:kVK_F12] ,@"f12", + [NSNumber numberWithInt:kVK_F13] ,@"printscreen", + [NSNumber numberWithInt:kVK_F14] ,@"f14", + [NSNumber numberWithInt:kVK_F15] ,@"f15", + [NSNumber numberWithInt:kVK_F16] ,@"f16", + [NSNumber numberWithInt:kVK_F17] ,@"f17", + [NSNumber numberWithInt:kVK_F18] ,@"f18", + [NSNumber numberWithInt:kVK_F19] ,@"f19", + nil] retain]; + + _bindings = [[NSMutableDictionary dictionary] retain]; + _keyCodesWithCommands = [[NSMutableDictionary dictionary] retain]; + _bindingsToCodes = [[NSMutableDictionary dictionary] retain]; + + // Notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsInvalid:) + name: PlayerIsInvalidNotification + object: nil]; + } + return self; +} + +- (void) dealloc{ + [_bindings release]; _bindings = nil; + [_keyCodesWithCommands release]; _keyCodesWithCommands = nil; + [_commandToAscii release]; _commandToAscii = nil; + [_bindingsToCodes release]; _bindingsToCodes = nil; + [_requiredBindings release]; _requiredBindings = nil; + [super dealloc]; +} + +#pragma mark Notifications + +- (void)playerIsValid: (NSNotification*)not { + [self getKeyBindings]; +} + +- (void)playerIsInvalid: (NSNotification*)not { + [_bindings removeAllObjects]; + [_keyCodesWithCommands removeAllObjects]; + [_bindingsToCodes removeAllObjects]; +} + +#pragma mark Key Bindings Scanner + +- (void)reloadBindings{ + [self getKeyBindings]; +} + +typedef struct WoWBinding { + UInt32 nextBinding; // 0x0 + UInt32 unknown1; // 0x4 pointer to a list of something + UInt32 keyPointer; // 0x8 (like BACKSPACE) + UInt32 unknown2; // 0xC usually 0 + UInt32 unknown3; // 0x10 usually 0 + UInt32 unknown4; // 0x14 usually 0 + UInt32 unknown5; // 0x18 usually 0 + UInt32 cmdPointer; // 0x1C (like STRAFELEFT) +} WoWBinding; + +- (void)getKeyBindings{ + + // remove all previous bindings since we're grabbing new ones! + [_bindings removeAllObjects]; + [_keyCodesWithCommands removeAllObjects]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + UInt32 offset = [offsetController offset:@"Lua_GetBindingKey"]; + + UInt32 bindingsManager = 0, structPointer = 0, firstStruct = 0; + WoWBinding bindingStruct; + + // find the address of our key bindings manager + if ( [memory loadDataForObject: self atAddress: offset Buffer: (Byte*)&bindingsManager BufLength: sizeof(bindingsManager)] && bindingsManager ){ + + // load the first struct + [memory loadDataForObject: self atAddress: bindingsManager + 0xC4 Buffer: (Byte*)&firstStruct BufLength: sizeof(firstStruct)]; + + structPointer = firstStruct; + + // loop through all structs! + while ( [memory loadDataForObject: self atAddress: structPointer Buffer: (Byte*)&bindingStruct BufLength: sizeof(bindingStruct)] && bindingStruct.nextBinding > 0x0 && !(bindingStruct.nextBinding & 0x1) ){ + + //log(LOG_BINDINGS, @"[Bindings] Struct found at 0x%X", structPointer); + + // initiate our variables + NSString *key = nil; + NSString *cmd = nil; + char tmpKey[64], tmpCmd[64]; + tmpKey[63] = 0; + tmpCmd[63] = 0; + + if ( [memory loadDataForObject: self atAddress: bindingStruct.keyPointer Buffer: (Byte *)&tmpKey BufLength: sizeof(tmpKey)-1] ){ + key = [NSString stringWithUTF8String: tmpKey]; + //log(LOG_BINDINGS, @"[Bindings] Key %@ found at 0x%X", key, bindingStruct.keyPointer); + } + + if ( [memory loadDataForObject: self atAddress: bindingStruct.cmdPointer Buffer: (Byte *)&tmpCmd BufLength: sizeof(tmpCmd)-1] ){ + cmd = [NSString stringWithUTF8String: tmpCmd]; + //log(LOG_BINDINGS, @"[Bindings] Command %@ found at 0x%X", cmd, bindingStruct.cmdPointer); + } + + // add it + if ( [key length] && [cmd length] ){ + //log(LOG_BINDINGS, @"%@ -> %@", key, cmd); + [_bindings setObject:cmd forKey:key]; + } + + //log(LOG_BINDINGS, @"[Bindings] Code %d for %@", [chatController keyCodeForCharacter:key], key); + + // we already made it through the list! break! + if ( firstStruct == bindingStruct.nextBinding ){ + break; + } + + // load the next one + structPointer = bindingStruct.nextBinding; + } + } + + // now convert! + [self convertToAscii]; + + // find codes for our action bars + [self mapBindingsToKeys]; +} + + +// will convert a single, or a wow-oriented to a code +- (int)toAsciiCode:(NSString*)str{ + + if ( !str || [str length] == 0 ) + return -1; + + // just to be sure + str = [str lowercaseString]; + + // single character + if ( [str length] == 1 ){ + return [chatController keyCodeForCharacter:str]; + } + + // string + else{ + NSNumber *code = [_commandToAscii objectForKey:str]; + + if ( code ){ + return [code intValue]; + } + } + + return -1; +} + +// this function will make me want to kill myself, methinks, is it worth it? /cry +// converts all of our "text" crap that is in the keybindings file to the actual ascii codes +- (void)convertToAscii{ + + NSArray *allKeys = [_bindings allKeys]; + NSMutableArray *allCodes = [NSMutableArray array]; + NSMutableArray *unknownCodes = [NSMutableArray array]; + + for ( NSString *key in allKeys ){ + + // remove the previous commands + [allCodes removeAllObjects]; + + //log(LOG_BINDINGS, @"[Bindings] Command: %@ %@", [_bindings objectForKey:key], key); + + // this will tell us where the "-" is in our string! + int i, splitIndex = -1; + for ( i = 0; i < [key length]; i++ ){ + unichar code = [key characterAtIndex:i]; + + if ( code == '-' ){ + splitIndex = i; + break; + } + } + + NSString *command1 = nil; + NSString *command2 = nil; + NSString *command3 = nil; + + // only one command! + if ( splitIndex == -1 ){ + command1 = [key lowercaseString]; + + /*NSString *binding = [[_bindings objectForKey:key] lowercaseString]; + if ( [binding isEqualToString:[[NSString stringWithFormat:@"MULTIACTIONBAR1BUTTON1"] lowercaseString]] ){ + log(LOG_BINDINGS, @" %@", command1); + }*/ + } + // 2 commands + else{ + command1 = [[key substringToIndex:splitIndex] lowercaseString]; + command2 = [[key substringFromIndex:splitIndex+1] lowercaseString]; + + // make sure it's not just 1 character (i.e. '-') + if ( [command2 length] > 1 ){ + + // 2nd command could have another - in it :( /cry + splitIndex = -1; + for ( i = 0; i < [command2 length]; i++ ){ + unichar code = [command2 characterAtIndex:i]; + + if ( code == '-' ){ + splitIndex = i; + break; + } + } + + // 3 keys! + if ( splitIndex != -1 ){ + NSString *tmp = command2; + command2 = [[tmp substringToIndex:splitIndex] lowercaseString]; + command3 = [[tmp substringFromIndex:splitIndex+1] lowercaseString]; + } + } + } + + // command 1 + if ( command1 && [command1 length] == 1 ){ + [allCodes addObject:[NSNumber numberWithInt:[chatController keyCodeForCharacter:command1]]]; + } + else if ( command1 && [command1 length] > 0 ){ + + int code = [self toAsciiCode:command1]; + if ( code != -1 ){ + [allCodes addObject:[NSNumber numberWithInt:code]]; + } + else{ + [unknownCodes addObject:command1]; + } + } + + // command 2 + if ( command2 && [command2 length] == 1 ){ + [allCodes addObject:[NSNumber numberWithInt:[chatController keyCodeForCharacter:command2]]]; + } + else if ( command2 && [command2 length] > 0 ){ + int code = [self toAsciiCode:command2]; + if ( code != -1 ){ + [allCodes addObject:[NSNumber numberWithInt:code]]; + } + else{ + [unknownCodes addObject:command2]; + } + } + + // command 2 + if ( command3 && [command3 length] == 1 ){ + [allCodes addObject:[NSNumber numberWithInt:[chatController keyCodeForCharacter:command3]]]; + } + else if ( command3 && [command3 length] > 0 ){ + int code = [self toAsciiCode:command3]; + if ( code != -1 ){ + [allCodes addObject:[NSNumber numberWithInt:code]]; + } + else{ + [unknownCodes addObject:command3]; + } + } + + // save the codes + NSString *binding = [[_bindings objectForKey:key] lowercaseString]; + [_keyCodesWithCommands setObject:[allCodes copy] forKey:binding]; + } + + // some error checking pour moi + if ( [unknownCodes count] ){ + for ( NSString *cmd in unknownCodes ){ + if ( ![_commandToAscii objectForKey:cmd] ){ + log(LOG_BINDINGS, @"[Bindings] Unable to find code for %@, report it to Tanaris4!", cmd); + } + //log(LOG_BINDINGS, @" \@\"%@\",", cmd); + } + } +} + +// pass it MULTIACTIONBAR1BUTTON1 +- (NSArray*)bindingForCommand:(NSString*)binding{ + + NSString *lowerCase = [binding lowercaseString]; + NSArray *codes = [_keyCodesWithCommands objectForKey:lowerCase]; + + if ( codes ){ + return codes; + } + + return nil; +} + +// grab the key code only +- (int)codeForBinding:(NSString*)binding{ + + NSArray *codes = [self bindingForCommand:binding]; + + // find our code + for ( NSNumber *tehCode in codes ){ + + int codeVal = [tehCode intValue]; + + if ( codeVal != kVK_Control && codeVal != kVK_Shift && codeVal != kVK_Option ){ + return codeVal; + } + } + + return -1; +} + +// grab modifiers +- (int)modifierForBinding:(NSString*)binding{ + + NSArray *codes = [self bindingForCommand:binding]; + + int modifier = 0; + + // find our code + any modifiers + for ( NSNumber *tehCode in codes ){ + + int codeVal = [tehCode intValue]; + + if ( codeVal == kVK_Control ){ + modifier += NSControlKeyMask; + } + else if ( codeVal == kVK_Shift ){ + modifier += NSShiftKeyMask; + } + else if ( codeVal == kVK_Option ){ + modifier += NSAlternateKeyMask; + } + } + + return modifier; +} + +- (BOOL)bindingForKeyExists:(NSString*)key{ + + NSDictionary *dict = [_bindingsToCodes objectForKey:key]; + + if ( dict && [[dict objectForKey:@"Code"] intValue] >= 0 ){ + return YES; + } + + return NO; +} + +// this will do an "intelligent" scan to find our key bindings! Then store them for use! (reset when player is invalid) +- (void)mapBindingsToKeys{ + + // combine all bindings + NSMutableArray *allBindings = [NSMutableArray arrayWithArray:_requiredBindings]; + [allBindings addObjectsFromArray:_optionalBindings]; + + // lets find all the codes! + for ( NSString *binding in allBindings ){ + + int code = [self codeForBinding:binding]; + int modifier = [self modifierForBinding:binding]; + + // we have a valid binding! + if ( code != -1 ){ + + // add our object! + [_bindingsToCodes setObject:[NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithInt:code], @"Code", + [NSNumber numberWithInt:modifier], @"Modifier", + nil] + forKey:binding]; // key is something like MULTIACTIONBAR1BUTTON1 + } + // no binding /cry + else{ + log(LOG_BINDINGS, @"No valid key binding found for %@", binding); + } + } +} + +- (BOOL)executeBindingForKey:(NSString*)key{ + + log(LOG_BINDINGS, @"Executing %@", key); + + NSDictionary *dict = [_bindingsToCodes objectForKey:key]; + + // special case! Try for a backup! + if ( !dict && [key isEqualToString:BindingPrimaryHotkey] ){ + log(LOG_BINDINGS, @"No code found for %@, searching for %@", key, BindingPrimaryHotkeyBackup); + dict = [_bindingsToCodes objectForKey:BindingPrimaryHotkeyBackup]; + } + + if ( dict ){ + //int offset = [[dict objectForKey:@"Offset"] intValue]; + int code = [[dict objectForKey:@"Code"] intValue]; + int modifier = [[dict objectForKey:@"Modifier"] intValue]; + + // close chat box? + if ( [controller isWoWChatBoxOpen] && code != kVK_F13 && code != kVK_F14 && code != kVK_F15){ + [chatController pressHotkey:kVK_Escape withModifier:0x0]; + usleep(10000); + } + + [chatController pressHotkey:code withModifier:modifier]; + + return YES; + } + else{ + log(LOG_BINDINGS, @"[Bindings] Unable to find binding for %@", key); + } + + return NO; +} + +- (int)castingBarOffset{ + + // primary is valid + if ( [_bindingsToCodes objectForKey:BindingPrimaryHotkey] ){ + return BAR6_OFFSET; + } + else if ( [_bindingsToCodes objectForKey:BindingPrimaryHotkeyBackup] ){ + return BAR1_OFFSET; + } + + return -1; +} + +// if this string isn't nil, then we are sad + the bot won't start :( +- (NSString*)keyBindingsValid{ + + // reload bindings + [self reloadBindings]; + + BOOL bindingsError = NO; + NSMutableString *error = [NSMutableString stringWithFormat:@"You need to bind your keys to something! The following aren't bound:\n"]; + if ( ![self bindingForKeyExists:BindingPrimaryHotkey] && ![self bindingForKeyExists:BindingPrimaryHotkeyBackup] ){ + [error appendString:@"\tLower Left Action Bar 1 (Or Action Bar 1)\n"]; + bindingsError = YES; + } + else if ( ![self bindingForKeyExists:BindingPetAttack] && [botController.theBehavior usePet] ){ + [error appendString:@"\tPet Attack\n"]; + bindingsError = YES; + } + else if ( ![self bindingForKeyExists:BindingInteractMouseover] ){ + [error appendString:@"\tInteract With Mouseover\n"]; + bindingsError = YES; + } + else if ( ![self bindingForKeyExists:BindingTargetLast] ){ + [error appendString:@"\tTarget Last Target\n"]; + bindingsError = YES; + } + else if ( ![self bindingForKeyExists:BindingTurnLeft] ){ + [error appendString:@"\tTurn Left\n"]; + bindingsError = YES; + } + else if ( ![self bindingForKeyExists:BindingTurnRight] ){ + [error appendString:@"\tTurn Right\n"]; + bindingsError = YES; + } + else if ( ![self bindingForKeyExists:BindingMoveForward] ){ + [error appendString:@"\tMove Forward\n"]; + bindingsError = YES; + } + + if ( bindingsError ){ + return error; + } + + return nil; +} + +@end diff --git a/BlacklistController.h b/BlacklistController.h new file mode 100644 index 0000000..c2ee286 --- /dev/null +++ b/BlacklistController.h @@ -0,0 +1,58 @@ +// +// BlacklistController.h +// Pocket Gnome +// +// Created by Josh on 12/13/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +// created a controller for this, as I don't want to implement the exact same versions for Combat and for nodes + +@class WoWObject; +@class Unit; +@class MobController; +@class PlayersController; + +@interface BlacklistController : NSObject { + + IBOutlet MobController *mobController; + IBOutlet PlayersController *playersController; + + NSMutableDictionary *_blacklist; + NSMutableDictionary *_attemptList; + +} + +// reasons to be blacklisted! +enum{ + Reason_None = 0, + Reason_NotInLoS = 1, + Reason_NodeMadeMeFall = 2, + Reason_CantReachObject = 3, + Reason_NotInCombat = 4, + Reason_RecentlyResurrected = 5, + Reason_RecentlyHelpedFriend = 6, + Reason_InvalidTarget = 7, + Reason_OutOfRange = 8, + Reason_RecentlySkinned = 9, + Reason_NodeMadeMeDie = 10, + +}; + +- (void)blacklistObject:(WoWObject *)obj withReason:(int)reason; +- (void)blacklistObject: (WoWObject*)obj; +- (BOOL)isBlacklisted: (WoWObject*)obj; +- (void)removeAllUnits; +- (void)removeUnit: (Unit*)unit; + +// sick of putting more dictionaries in bot controller, will just use this +- (int)attemptsForObject:(WoWObject*)obj; +- (void)incrementAttemptForObject:(WoWObject*)obj; +- (void)clearAttemptsForObject:(WoWObject*)obj; +- (void)clearAttempts; + +- (void)clearAll; + +@end diff --git a/BlacklistController.m b/BlacklistController.m new file mode 100644 index 0000000..65c4f47 --- /dev/null +++ b/BlacklistController.m @@ -0,0 +1,360 @@ +// +// BlacklistController.m +// Pocket Gnome +// +// Created by Josh on 12/13/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "BlacklistController.h" +#import "MobController.h" +#import "PlayersController.h" +#import "CombatController.h" + +#import "WoWObject.h" +#import "Unit.h" +#import "Player.h" +#import "Mob.h" + +// how long should the object remain blacklisted? (fallback) +#define BLACKLIST_TIME 45.0f + +// We got a line of sight error +// #define BLACKLIST_TIME_NOT_IN_LOS 20.0f + +// We got a line of sight error +#define BLACKLIST_TIME_OUT_OF_RANGE 1.0f + +// We got an Invalid Target error +#define BLACKLIST_TIME_INVALID_TARGET 45.0f + +// This should be just long enough to move and not instantly retarget the mob +// #define BLACKLIST_TIME_NOT_IN_COMBAT 3.0f + +// After we res them we don't want to instanty try to res them again +#define BLACKLIST_TIME_RECENTLY_RESURRECTED 10.0f + +// This is meant as a GCD for friends so we don't double buff/heal. It's not applied to tanks/assists +// Basically this should be long enough for the unit to refresh. +#define BLACKLIST_TIME_RECENTLY_HELPED_FRIEND 0.2f + +// Basically this should be long enough for the unit to refresh. +#define BLACKLIST_TIME_RECENTLY_SKINNED 45.0f + + +@interface BlacklistController (Internal) + +@end + +@implementation BlacklistController + +- (id) init{ + self = [super init]; + if (self != nil) { + _blacklist = [[NSMutableDictionary alloc] init]; + _attemptList = [[NSMutableDictionary alloc] init]; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(unitDied:) + name: UnitDiedNotification + object: nil]; + } + return self; +} + +- (void) dealloc{ + [_blacklist release]; + [super dealloc]; +} + +#pragma mark Blacklisting + +- (void)blacklistObject:(WoWObject *)obj withReason:(int)reason { + + log(LOG_BLACKLIST, @"Blacklisting %@ for reason %d with retain count %d", obj, reason, [obj retainCount]); + + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[obj cachedGUID]]; + NSMutableArray *infractions = [_blacklist objectForKey:guid]; + + if ( [infractions count] == 0 ) infractions = [NSMutableArray array]; + + [infractions addObject:[NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithInt:reason], @"Reason", + [NSDate date], @"Date", nil]]; + + [_blacklist setObject:infractions forKey:guid]; +} + +// simply add an object to our blacklist! +- (void)blacklistObject: (WoWObject*)obj{ + + [self blacklistObject:obj withReason:Reason_None]; + +} + +// remove old objects from the blacklist +- (void)refreshBlacklist{ + if ( ![_blacklist count] ) return; + NSArray *allKeys = [_blacklist allKeys]; + + for ( NSNumber *guid in allKeys ) { + + NSArray *infractions = [_blacklist objectForKey:guid]; + NSMutableArray *infractionsToKeep = [NSMutableArray array]; + + // Count the Infractions + for ( NSDictionary *infraction in infractions ){ + + int reason = [[infraction objectForKey:@"Reason"] intValue]; + NSDate *date = [infraction objectForKey:@"Date"]; + float timeSinceBlacklisted = [date timeIntervalSinceNow] * -1.0f; + + // length varies based on reason + if ( reason == Reason_NotInCombat ) { + float BlacklistDurationNotInCombat = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistDurationNotInCombat"] floatValue]; + + if ( timeSinceBlacklisted < BlacklistDurationNotInCombat ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_InvalidTarget ) { + + if ( timeSinceBlacklisted < BLACKLIST_TIME_INVALID_TARGET ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_NotInLoS ) { + + float BlacklistDurationNotInLos = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistDurationNotInLos"] floatValue]; + + if ( timeSinceBlacklisted < BlacklistDurationNotInLos ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_OutOfRange ) { + if ( timeSinceBlacklisted < BLACKLIST_TIME_OUT_OF_RANGE ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_RecentlyResurrected ) { + if ( timeSinceBlacklisted < BLACKLIST_TIME_RECENTLY_RESURRECTED ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_RecentlyHelpedFriend ) { + if ( timeSinceBlacklisted < BLACKLIST_TIME_RECENTLY_HELPED_FRIEND ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_RecentlySkinned ) { + if ( timeSinceBlacklisted < BLACKLIST_TIME_RECENTLY_SKINNED ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + + } else if ( reason == Reason_NodeMadeMeFall ) { + [infractionsToKeep addObject:infraction]; + + } else if ( reason == Reason_NodeMadeMeDie ) { + [infractionsToKeep addObject:infraction]; + + } else if ( reason == Reason_CantReachObject ) { + [infractionsToKeep addObject:infraction]; + + } else { + if ( timeSinceBlacklisted < BLACKLIST_TIME ) [infractionsToKeep addObject:infraction]; + else log(LOG_BLACKLIST, @"Expired: %@", infraction); + } + } + + // Either unblacklist or update the number of infractions + if ([infractionsToKeep count]) { + [_blacklist setObject:infractionsToKeep forKey:guid]; + } else { + log(LOG_BLACKLIST, @"Removing %@", (Unit*)guid); + [_blacklist removeObjectForKey:guid]; + } + } + +} + +- (BOOL)isBlacklisted: (WoWObject*)obj { + + log(LOG_BLACKLIST, @"Checking status for %@", obj); + + // refresh the blacklist (we could do this on a timer to be more "efficient" + [self refreshBlacklist]; + + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[obj cachedGUID]]; + + // get the total infractions for this unit! + NSArray *infractions = [_blacklist objectForKey:guid]; + if ( [infractions count] == 0 ){ + return NO; + } + + // check each infraction, based on the reason we may not care! + // making the assumption that ALL infractions are w/in the time frame since we refreshed above + int totalNone = 0; + int totalFailedToReach = 0; + int totalLos = 0; + for ( NSDictionary *infraction in infractions ){ + + int reason = [[infraction objectForKey:@"Reason"] intValue]; + NSDate *date = [infraction objectForKey:@"Date"]; + float timeSinceBlacklisted = [date timeIntervalSinceNow] * -1.0f; + + if ( reason == Reason_NotInLoS){ + log(LOG_BLACKLIST, @"%@ was blacklisted for not being in LoS.", obj, timeSinceBlacklisted); + totalLos++; + return YES; + } + + if ( reason == Reason_OutOfRange ) { + log(LOG_BLACKLIST, @"%@ was blacklisted for not being in range.", obj, timeSinceBlacklisted); + return YES; + } + + // fucker made me fall and almost die? Yea, psh, your ass is blacklisted + else if ( reason == Reason_NodeMadeMeFall ){ + log(LOG_BLACKLIST, @"%@ was blacklisted for making us fall!", obj); + return YES; + } + + else if ( reason == Reason_NodeMadeMeDie ){ + log(LOG_BLACKLIST, @"%@ was blacklisted for making us die!", obj); + return YES; + } + + else if ( reason == Reason_CantReachObject ){ + totalFailedToReach++; + } + + else if ( reason == Reason_NotInCombat ){ + log(LOG_BLACKLIST, @"%@ was blacklisted for not entering entering combat when I tried to engage.", obj); + return YES; + } + + else if ( reason == Reason_RecentlyResurrected ){ + log(LOG_BLACKLIST, @"%@ was blacklisted because I just resurrected them.", obj); + return YES; + } + + else if ( reason == Reason_RecentlyHelpedFriend ){ + log(LOG_BLACKLIST, @"%@ was blacklisted because I just helped them and I'm allowing their unit to refresh.", obj); + return YES; + } + + else if ( reason == Reason_RecentlySkinned ){ + log(LOG_BLACKLIST, @"%@ was blacklisted because I just skinned it.", obj); + return YES; + } + + else{ + totalNone++; + } + } + + // general blacklisting + if ( totalNone >= 3 ) { + log(LOG_BLACKLIST, @"Unit %@ blacklisted for total count!", obj); + return YES; + } + else if ( totalFailedToReach >= 3 ){ + log(LOG_BLACKLIST, @"%@ was blacklisted because we couldn't reach it!", obj); + return YES; + } + /*else if ( totalLos >= 2 ){ + log(LOG_BLACKLIST, @"[Blacklist] Blacklisted due to LOS"); + return YES; + }*/ + + log(LOG_BLACKLIST, @"Not blacklisted but %d infractions", [infractions count]); + + return NO; +} + +- (void)clearAll{ + [_blacklist removeAllObjects]; + [_attemptList removeAllObjects]; +} + +- (void)removeAllUnits{ + if ( ![_blacklist count] ) return; + + log(LOG_BLACKLIST, @"Removing all units from the blacklist."); + + // only remove objects of type Player/Mob/Unit + NSArray *allKeys = [_blacklist allKeys]; + int removedObjects = 0; + for ( NSNumber *num in allKeys ){ + + Mob *mob = [mobController mobWithGUID:[num unsignedLongLongValue]]; + if ( mob ){ + [_blacklist removeObjectForKey:num]; + continue; + } + + Player *player = [playersController playerWithGUID:[num unsignedLongLongValue]]; + if ( player ){ + [_blacklist removeObjectForKey:num]; + } + } + + log(LOG_BLACKLIST, @"Removed %d units.", removedObjects); +} + +- (void)removeUnit: (Unit*)unit{ + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[unit GUID]]; + + if ( [_blacklist objectForKey:guid] ) { + log(LOG_BLACKLIST, @"Removing %@ from blacklist.", unit); + [_blacklist removeObjectForKey:guid]; + } +} + +#pragma mark Notifications + +- (void)unitDied: (NSNotification*)notification{ + Unit *unit = [notification object]; + + // remove the object from the blacklist! + if ( unit ){ + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[unit GUID]]; + if ( [_blacklist objectForKey:guid] ) { + log(LOG_BLACKLIST, @"%@ died, removing from blacklist.", unit); + [_blacklist removeObjectForKey:guid]; + } + } +} + +#pragma mark Attempts + +- (int)attemptsForObject:(WoWObject*)obj{ + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[obj cachedGUID]]; + NSNumber *count = [_attemptList objectForKey:guid]; + if ( count ){ + return [count intValue]; + } + + return 0; +} + +- (void)incrementAttemptForObject:(WoWObject*)obj{ + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[obj cachedGUID]]; + NSNumber *count = [_attemptList objectForKey:guid]; + + if ( count ){ + + count = [NSNumber numberWithInt:[count intValue] + 1]; + } + else{ + count = [NSNumber numberWithInt:1]; + } + + log(LOG_BLACKLIST, @"Incremented to %@ for %@", count, obj); + [_attemptList setObject:count forKey:guid]; +} + +- (void)clearAttemptsForObject:(WoWObject*)obj{ + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[obj cachedGUID]]; + [_attemptList removeObjectForKey:guid]; +} + +- (void)clearAttempts{ + [_attemptList removeAllObjects]; +} + +@end diff --git a/BloodElf-Female.png b/BloodElf-Female.png new file mode 100644 index 0000000..d981023 Binary files /dev/null and b/BloodElf-Female.png differ diff --git a/BloodElf-Female_Small.gif b/BloodElf-Female_Small.gif new file mode 100644 index 0000000..c9747e9 Binary files /dev/null and b/BloodElf-Female_Small.gif differ diff --git a/BloodElf-Male.png b/BloodElf-Male.png new file mode 100644 index 0000000..84df29b Binary files /dev/null and b/BloodElf-Male.png differ diff --git a/BloodElf-Male_Small.gif b/BloodElf-Male_Small.gif new file mode 100644 index 0000000..ad2c7fd Binary files /dev/null and b/BloodElf-Male_Small.gif differ diff --git a/Bobber.png b/Bobber.png new file mode 100644 index 0000000..3a5b47e Binary files /dev/null and b/Bobber.png differ diff --git a/Bot.xib b/Bot.xib new file mode 100644 index 0000000..61fe281 --- /dev/null +++ b/Bot.xib @@ -0,0 +1,6642 @@ + + + + 1050 + 10F569 + 762 + 1038.29 + 461.00 + + YES + + YES + com.apple.InterfaceBuilder.CocoaPlugin + net.wafflesoftware.ShortcutRecorder.IB.Leopard + + + YES + 762 + 1 + + + + YES + + + + YES + net.wafflesoftware.ShortcutRecorder.IB.Leopard + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + BotController + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 268 + {{18, 155}, {341, 18}} + + YES + + 67239424 + 131072 + Avoid AFK (this will persist if the bot isn't running) + + LucidaGrande + 11 + 3100 + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{119, 12}, {96, 16}} + + YES + + 67239424 + 134479872 + Maltby + + LucidaGrande + 9 + 3614 + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{17, 12}, {96, 16}} + + YES + + 67239424 + 134479872 + Test + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{378, 12}, {147, 16}} + + YES + + -1808662975 + 272761856 + Testing for Tanaris, ignore + + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{221, 12}, {96, 16}} + + YES + + 67239424 + 134479872 + Verify Offsets + + + -2038284033 + 129 + + + 200 + 25 + + + + {{1, 1}, {713, 38}} + + + + {{17, 61}, {715, 40}} + + {0, 0} + + 67239424 + 0 + Testing for Tanaris, ignore + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 265 + {{639, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Start Bot + + LucidaGrande + 13 + 1044 + + + -2038284033 + 129 + + LucidaGrande + 13 + 16 + + + + 200 + 25 + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{15, 10}, {25, 25}} + + YES + + 67239424 + 134217728 + + + + -2038415105 + 33 + + + 200 + 25 + + + + + 268 + {{168, 14}, {172, 22}} + + YES + + 130560 + 0 + + + + + + + + + + + + + + + 268 + {{42, 17}, {121, 17}} + + YES + + 67239488 + 71304192 + Start/Stop Hotkey: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2ODY1AA + + + + 6 + System + controlTextColor + + + + + + + 268 + {{345, 15}, {182, 17}} + + YES + + 67239488 + 272761856 + This can be anything you wish. + + + + + + + + {{1, 1}, {713, 46}} + + + + {{17, 103}, {715, 48}} + + {0, 0} + + 67239424 + 0 + Hotkeys + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 10 + + YES + + + 256 + + YES + + + 266 + {{12, 8}, {799, 14}} + + YES + + 67239488 + 4326400 + Behavior Y (Route X). Attacking valid targets within 30.0y. Mining 375. Herbing (375). Skinning (375). + + + + + 1 + MC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMAA + + + + + {{1, 1}, {749, 30}} + + + + {{0, 310}, {751, 32}} + + {0, 0} + + 67239424 + 0 + Status Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA + + + 1 + MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA + + + + + 12 + + YES + + + 256 + + YES + + + 264 + {{82, 70}, {223, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 12 + {{16, 75}, {63, 18}} + + YES + + -2080244224 + 67108864 + Route: + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 265 + {{308, 69}, {31, 27}} + + YES + + 67239424 + 134217728 + + + + -2030288641 + 130 + + NSImage + NSActionTemplate + + + + 200 + 25 + + + + + 264 + {{82, 40}, {223, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 265 + {{308, 39}, {31, 27}} + + YES + + 67239424 + 134217728 + + + + -2030288641 + 130 + + + + 200 + 25 + + + + + 268 + {{19, 47}, {61, 17}} + + YES + + 67239488 + 71304192 + Behavior: + + + + + + + + + 265 + {{308, 10}, {31, 27}} + + YES + + 67239424 + 134217728 + + + + -2030288641 + 130 + + + + 200 + 25 + + + + + 265 + {{22, 16}, {58, 17}} + + YES + + 67239488 + 71304192 + Profile: + + + + + + + + + 265 + {{82, 10}, {223, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + {{1, 1}, {355, 104}} + + + + {{375, 175}, {357, 120}} + + {0, 0} + + 67239424 + 0 + Regular Mode + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 264 + {{82, 70}, {222, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Item1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + 1 + YES + YES + 2 + + + + + 12 + {{16, 75}, {63, 18}} + + YES + + 67239424 + 67108864 + Route: + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 265 + {{307, 69}, {31, 27}} + + YES + + 67239424 + 134217728 + + + + -2030288641 + 130 + + + + 200 + 25 + + + + + 264 + {{81, 41}, {223, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 265 + {{307, 40}, {31, 27}} + + YES + + 67239424 + 134217728 + + + + -2030288641 + 130 + + + + 200 + 25 + + + + + 268 + {{18, 48}, {61, 17}} + + YES + + 67239488 + 71304192 + Behavior: + + + + + + + + + 265 + {{307, 11}, {31, 27}} + + YES + + 67239424 + 134217728 + + + + -2030288641 + 130 + + + + 200 + 25 + + + + + 265 + {{21, 17}, {58, 17}} + + YES + + 67239488 + 71304192 + Profile: + + + + + + + + + 265 + {{81, 11}, {223, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + {{1, 1}, {354, 104}} + + + + {{17, 175}, {356, 120}} + + {0, 0} + + 67239424 + 0 + Battleground Mode + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 267 + {{17, 20}, {468, 14}} + + YES + + 67239488 + 4326400 + Running for: 00 seconds + + + + + 1 + MC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMAA + + + + + {751, 342} + + NSView + + + YES + + + 17 + 2 + {{196, 113}, {575, 397}} + -469762048 + HotkeyHelp + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 18 + {{13, 40}, {549, 351}} + + + YES + + 1 + + + 256 + + YES + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{17, 117}, {495, 185}} + + YES + + 130560 + 33554432 + + NSImage + InterfaceBars + + 0 + 0 + 0 + NO + + YES + + + + 268 + {{14, 23}, {501, 86}} + + YES + + 67239424 + 272629760 + The first step is to enable the "Bottom Left Bar" from the "ActionBars" section of the standard Interface Options within WoW. If you do not use the standard bars, and instead use a bar mod such as Bartender (among many others), then enable "Bar 6" within the bar mod that you use. + + + + + + + + {{10, 33}, {529, 305}} + + + Step 1 + + + + + 2 + + + 256 + + YES + + + 256 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{16.5306, 198}, {495.469, 104}} + + YES + + 130560 + 33554432 + + NSImage + Keybindings + + 0 + 0 + 0 + YES + + YES + + + + 268 + {{14, 119}, {501, 71}} + + YES + + 67239424 + 272629760 + The second step is to set your key binding within WoW. Open your Key Bindings menu and scroll down until you see the section titled "MultiActionBar Bindings." Here, set a hotkey for "BottomLeft Action Button 1" — this will be your hotkey for Pocket Gnome. You may choose any hotkey you wish. + + + + + + + + + 256 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{234, 17}, {278, 94}} + + YES + + 130560 + 33554432 + + NSImage + Result + + 0 + 3 + 0 + YES + + YES + + + + 268 + {{14, 17}, {215, 94}} + + YES + + 67239424 + 272629760 + When you have completed this process, your WoW interface should look something like this picture. You are now ready to configure Pocket Gnome. + + + + + + + + {{10, 33}, {529, 305}} + + Step 2 + + + + + Item 2 + + + 256 + + YES + + + 256 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{16, 133}, {189, 39}} + + YES + + 130560 + 33554432 + + NSImage + HotkeyFinished + + 0 + 2 + 0 + YES + + YES + + + + 256 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{325, 225}, {187, 39}} + + YES + + 130560 + 33554432 + + NSImage + TypeShortcut + + 0 + 1 + 0 + YES + + YES + + + + 268 + {{89, 234}, {426, 67.8844}} + + YES + + 67239424 + 272629760 + VGhlIGZpbmFsIHN0ZXAgcmVxdWlyZXMgeW91IHRvIGVudGVyIHlvdXIgY2hvc2VuIGhvdGtleSBpbiBQ +b2NrZXQgR25vbWUuIE9wZW4gdGhlICJCb3QiIHNlY3Rpb24gb2YgUG9ja2V0IEdub21lIGFuZCBsb29r +IGZvciB0aGUgSG90a2V5IHNlY3Rpb24gYXQgdGhlIGJvdHRvbS4KCg + + + + + + + + + 256 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{16.1155, 233.116}, {67.7689, 67.7689}} + + YES + + 130560 + 33554432 + + NSImage + Spell_Holy_MindVision + + 0 + 1 + 0 + YES + + YES + + + + 268 + {{15, 186.884}, {500, 39}} + + YES + + 67239424 + 272629760 + Click on the shortcut field so that it says "Type shortcut" — it is now ready to receive your input. Type the same hotkey you used in WoW into this field. + + + + + + + + + 268 + {{211, 127}, {305, 51}} + + YES + + 67239424 + 272629760 + In this example, we used the hotkey "Shift-1", so the final result will resemble the picture on the left. + + + + + + + + + -2147483380 + {{15, 51}, {500, 68}} + + YES + + 67239424 + 272629760 + You can test your hotkey by pressing the "Test" button next to the field. This will simulate the hotkey in WoW, and if you put a spell on the hotbar in slot 1, you can verify that the keystroke is simulated correctly. When you have verified that this hotkey works correctly, you're ready to start Pocket Gnome! + + + + + + + + {{10, 33}, {529, 305}} + + Step 3 + + + + + + + 0 + YES + YES + + YES + + + + + + 268 + {{465, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Done + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 268 + {{465, -38}, {96, 32}} + + YES + + 67239424 + 134217728 + Done 2 + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + {575, 397} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + 1 + 2 + {{196, 335}, {283, 175}} + 1677726720 + Loot Overlay + TransparentWindow + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 274 + {283, 175} + + ScanGridView + + + {283, 175} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + 17 + 2 + {{196, 168}, {539, 342}} + -469762048 + LootHotkeyHelp + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 256 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{20, 136}, {499, 186}} + + YES + + 130560 + 33554432 + + NSImage + InteractWithTarget + + 0 + 0 + 0 + YES + + YES + + + + 268 + {{17, 60}, {505, 68}} + + YES + + 67239424 + 272629760 + Setting the "Interact With Target" hotkey allows Pocket Gnome to loot your kills without the need to scan the screen for a body. It is not necessary to set, but it it HIGHLY recommended. Match the "Loot Hotkey" field with the hotkey you set in WoW. This hotkey is not bound by default, so you must set it yourself! + + + + + + + + + 268 + {{429, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Done + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 268 + {{429, -38}, {96, 32}} + + YES + + 67239424 + 134217728 + Done 2 + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + {539, 342} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + 31 + 2 + {{230, 423}, {409, 118}} + -1535639552 + Move Toward Your Route! + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 268 + {{17, 81}, {375, 17}} + + YES + + 68288064 + 272630784 + You are too far away from your route to start! Move closer! + + + + + + + + + 268 + {{299, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + OK + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 268 + {{190, 12}, {109, 32}} + + YES + + 67239424 + 134217728 + Face Route + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{17, 56}, {103, 17}} + + YES + + 68288064 + 272630784 + 100 yards away + + + + + + + + {409, 118} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + + + YES + + + view + + + + 72 + + + + routePopup + + + + 181 + + + + behaviorPopup + + + + 182 + + + + content: procedureController.behaviors + + + + + + content: procedureController.behaviors + content + procedureController.behaviors + 2 + + + 212 + + + + contentValues: procedureController.behaviors.name + + + + + + contentValues: procedureController.behaviors.name + contentValues + procedureController.behaviors.name + + 2 + + + 213 + + + + selectedValue: values.Behavior + + + + + + selectedValue: values.Behavior + selectedValue + values.Behavior + + 2 + + + 214 + + + + hotkeyHelp: + + + + 348 + + + + hotkeyHelpPanel + + + + 349 + + + + closeHotkeyHelp: + + + + 354 + + + + closeHotkeyHelp: + + + + 355 + + + + overlayWindow + + + + 362 + + + + scanGrid + + + + 363 + + + + updateStatus: + + + + 670 + + + + updateStatus: + + + + 671 + + + + statusText + + + + 672 + + + + startStopBot: + + + + 684 + + + + startStopButton + + + + 685 + + + + delegate + + + + 723 + + + + startstopRecorder + + + + 725 + + + + enabled: playerController.playerIsValid + + + + + + enabled: playerController.playerIsValid + enabled + playerController.playerIsValid + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 732 + + + + updateStatus: + + + + 915 + + + + combatProfilePopup + + + + 919 + + + + enabled: values.IgnoreRoute + + + + + + enabled: values.IgnoreRoute + enabled + values.IgnoreRoute + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + 2 + + + 936 + + + + lootHotkeyHelpPanel + + + + 955 + + + + closeLootHotkeyHelp: + + + + 961 + + + + closeLootHotkeyHelp: + + + + 963 + + + + runningTimer + + + + 1012 + + + + antiAFKButton + + + + 1384 + + + + value: values.AntiAFK + + + + + + value: values.AntiAFK + value + values.AntiAFK + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 1385 + + + + test: + + + + 1396 + + + + maltby: + + + + 1429 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 1434 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 1438 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 1441 + + + + selectedValue: values.Route + + + + + + selectedValue: values.Route + selectedValue + values.Route + + 2 + + + 1442 + + + + updateStatus: + + + + 1470 + + + + value: values.UseRoute + + + + + + value: values.UseRoute + value + values.UseRoute + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 1481 + + + + content: pvpController.behaviors + + + + + + content: pvpController.behaviors + content + pvpController.behaviors + 2 + + + 1501 + + + + contentValues: pvpController.behaviors.name + + + + + + contentValues: pvpController.behaviors.name + contentValues + pvpController.behaviors.name + + 2 + + + 1504 + + + + content: profileController.combatProfiles + + + + + + content: profileController.combatProfiles + content + profileController.combatProfiles + 2 + + + 1535 + + + + contentObjects: profileController.combatProfiles + + + + + + contentObjects: profileController.combatProfiles + contentObjects + profileController.combatProfiles + + 2 + + + 1539 + + + + contentValues: profileController.combatProfiles.name + + + + + + contentValues: profileController.combatProfiles.name + contentValues + profileController.combatProfiles.name + + 2 + + + 1542 + + + + selectedValue: values.CombatProfile + + + + + + selectedValue: values.CombatProfile + selectedValue + values.CombatProfile + + 2 + + + 1543 + + + + value: values.UseRoutePvP + + + + + + value: values.UseRoutePvP + value + values.UseRoutePvP + 2 + + + 1567 + + + + content: procedureController.behaviors + + + + + + content: procedureController.behaviors + content + procedureController.behaviors + 2 + + + 1588 + + + + contentValues: procedureController.behaviors.name + + + + + + contentValues: procedureController.behaviors.name + contentValues + procedureController.behaviors.name + + 2 + + + 1589 + + + + content: profileController.combatProfiles + + + + + + content: profileController.combatProfiles + content + profileController.combatProfiles + 2 + + + 1591 + + + + contentObjects: profileController.combatProfiles + + + + + + contentObjects: profileController.combatProfiles + contentObjects + profileController.combatProfiles + + 2 + + + 1592 + + + + contentValues: profileController.combatProfiles.name + + + + + + contentValues: profileController.combatProfiles.name + contentValues + profileController.combatProfiles.name + + 2 + + + 1593 + + + + updateStatus: + + + + 1597 + + + + updateStatus: + + + + 1598 + + + + behaviorPvPPopup + + + + 1622 + + + + selectedValue: values.BehaviorPvP + + + + + + selectedValue: values.BehaviorPvP + selectedValue + values.BehaviorPvP + + 2 + + + 1624 + + + + selectedValue: values.CombatProfilePvP + + + + + + selectedValue: values.CombatProfilePvP + selectedValue + values.CombatProfilePvP + + 2 + + + 1625 + + + + routePvPPopup + + + + 1628 + + + + combatProfilePvPPopup + + + + 1629 + + + + selectedValue: values.RoutePvP + + + + + + selectedValue: values.RoutePvP + selectedValue + values.RoutePvP + + 2 + + + 1630 + + + + editRoutePvP: + + + + 1632 + + + + editBehaviorPvP: + + + + 1633 + + + + editProfilePvP: + + + + 1634 + + + + editProfile: + + + + 1635 + + + + editBehavior: + + + + 1636 + + + + editRoute: + + + + 1637 + + + + updateStatus: + + + + 1638 + + + + updateStatus: + + + + 1639 + + + + confirmOffsets: + + + + 1646 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + + + 10 + + + YES + + + + + + 29 + + + + + 192 + + + + + 215 + + + YES + + + + + + + + + 298 + + + YES + + + + HotkeyHelp + + + 299 + + + YES + + + + + + + + 300 + + + YES + + + + + + + + 301 + + + YES + + + + + + 302 + + + YES + + + + + + 303 + + + YES + + + + + + + + + 304 + + + YES + + + + + + + 305 + + + YES + + + + + + 306 + + + YES + + + + + + + + + + + + 307 + + + YES + + + + + + 308 + + + + + 309 + + + YES + + + + + + 310 + + + + + 313 + + + YES + + + + + + 314 + + + + + 315 + + + YES + + + + + + 316 + + + + + 317 + + + YES + + + + + + 318 + + + + + 319 + + + YES + + + + + + 320 + + + + + 323 + + + YES + + + + + + 324 + + + + + 325 + + + YES + + + + + + 326 + + + + + 327 + + + YES + + + + + + 328 + + + + + 329 + + + YES + + + + + + 330 + + + + + 338 + + + YES + + + + + + 339 + + + + + 340 + + + YES + + + + + + 341 + + + + + 344 + + + YES + + + + + + 345 + + + + + 346 + + + YES + + + + + + 347 + + + + + 350 + + + YES + + + + + + 351 + + + + + 352 + + + YES + + + + + + 353 + + + + + 359 + + + YES + + + + Overlay + + + 360 + + + YES + + + + + + 361 + + + + + 663 + + + YES + + + + + + 664 + + + YES + + + + + + 665 + + + + + 715 + + + YES + + + + + + 716 + + + + + 917 + + + YES + + + + + + + + + + + + + + 949 + + + YES + + + + LootHotkeyHelp + + + 950 + + + YES + + + + + + + + + 951 + + + YES + + + + + + 952 + + + + + 953 + + + YES + + + + + + 954 + + + + + 957 + + + YES + + + + + + 958 + + + + + 956 + + + YES + + + + + + 959 + + + + + 711 + + + YES + + + + + + 712 + + + + + 719 + + + YES + + + + + + 720 + + + + + 1010 + + + YES + + + + + + 1011 + + + + + 1433 + + + YES + + + + + + + + + 1426 + + + YES + + + + + + 1427 + + + + + 1394 + + + YES + + + + + + 1395 + + + + + 1445 + + + YES + + + + MoveTowardRoute + + + 1446 + + + YES + + + + + + + Move Toward Your Route! + + + 1447 + + + YES + + + + + + 1448 + + + + + 1453 + + + YES + + + + + + 1454 + + + + + 1455 + + + YES + + + + + + 1456 + + + + + 1457 + + + YES + + + + + + 1458 + + + + + 1460 + + + YES + + + + + + 1461 + + + YES + + + + + + 1462 + + + YES + + + + + + 1465 + + + + + 1478 + + + YES + + + + + + 1479 + + + + + 1552 + + + YES + + + + + + 1553 + + + + + 1566 + + + YES + + + + + + + + + + + + + + 910 + + + YES + + + + + + 911 + + + + + 908 + + + YES + + + + + + 909 + + + + + 890 + + + YES + + + + + + 891 + + + YES + + + + + + 892 + + + YES + + + + + + + + 895 + + + + + 894 + + + + + 893 + + + + + 1544 + + + YES + + + + + + 1545 + + + + + 95 + + + YES + + + + + + 102 + + + + + 96 + + + YES + + + + + + 97 + + + YES + + + + + + 98 + + + YES + + + + + + + + 101 + + + + + 100 + + + + + 99 + + + + + 1549 + + + YES + + + + + + 1550 + + + + + 87 + + + YES + + + + + + 88 + + + YES + + + + + + 89 + + + YES + + + + + + + + 92 + + + + + 91 + + + + + 90 + + + + + 924 + + + YES + + + + + + 925 + + + + + 1568 + + + YES + + + + + + 1569 + + + YES + + + + + + 1570 + + + YES + + + + + + 1571 + + + YES + + + + + + 1572 + + + YES + + + + + + 1573 + + + YES + + + + + + 1574 + + + YES + + + + + + 1575 + + + YES + + + + + + + + 1576 + + + + + 1577 + + + + + 1578 + + + + + 1579 + + + + + 1580 + + + + + 1581 + + + + + 1582 + + + + + 1583 + + + YES + + + + + + 1584 + + + YES + + + + + + + + 1585 + + + + + 1586 + + + + + 1587 + + + + + 1380 + + + YES + + + + + + 1381 + + + + + 1641 + + + YES + + + + + + 1642 + + + + + 1643 + + + YES + + + + + + 1644 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 10.IBPluginDependency + 100.IBPluginDependency + 101.IBPluginDependency + 1010.IBPluginDependency + 1011.IBPluginDependency + 102.IBPluginDependency + 1380.IBPluginDependency + 1381.IBPluginDependency + 1394.IBPluginDependency + 1395.IBPluginDependency + 1426.IBPluginDependency + 1427.IBPluginDependency + 1433.IBPluginDependency + 1445.IBEditorWindowLastContentRect + 1445.IBPluginDependency + 1445.IBWindowTemplateEditedContentRect + 1445.NSWindowTemplate.visibleAtLaunch + 1446.IBAttributePlaceholdersKey + 1446.IBPluginDependency + 1447.IBPluginDependency + 1448.IBPluginDependency + 1453.IBPluginDependency + 1454.IBPluginDependency + 1455.IBPluginDependency + 1456.IBPluginDependency + 1457.IBPluginDependency + 1458.IBPluginDependency + 1460.IBPluginDependency + 1461.IBPluginDependency + 1462.IBEditorWindowLastContentRect + 1462.IBPluginDependency + 1462.editorWindowContentRectSynchronizationRect + 1465.IBPluginDependency + 1478.IBAttributePlaceholdersKey + 1478.IBPluginDependency + 1479.IBPluginDependency + 1544.IBAttributePlaceholdersKey + 1544.IBPluginDependency + 1545.IBPluginDependency + 1549.IBAttributePlaceholdersKey + 1549.IBPluginDependency + 1550.IBPluginDependency + 1552.IBAttributePlaceholdersKey + 1552.IBPluginDependency + 1553.IBPluginDependency + 1566.IBPluginDependency + 1568.IBPluginDependency + 1569.IBAttributePlaceholdersKey + 1569.IBPluginDependency + 1570.IBPluginDependency + 1571.IBAttributePlaceholdersKey + 1571.IBPluginDependency + 1572.IBPluginDependency + 1573.IBPluginDependency + 1574.IBPluginDependency + 1575.IBEditorWindowLastContentRect + 1575.IBPluginDependency + 1575.editorWindowContentRectSynchronizationRect + 1576.IBPluginDependency + 1577.IBPluginDependency + 1578.IBPluginDependency + 1579.IBPluginDependency + 1580.IBPluginDependency + 1581.IBPluginDependency + 1582.IBPluginDependency + 1583.IBPluginDependency + 1584.IBPluginDependency + 1584.editorWindowContentRectSynchronizationRect + 1585.IBPluginDependency + 1586.IBPluginDependency + 1587.IBPluginDependency + 1641.IBPluginDependency + 1642.IBPluginDependency + 1643.IBPluginDependency + 1644.IBPluginDependency + 215.IBPluginDependency + 29.IBPluginDependency + 298.IBEditorWindowLastContentRect + 298.IBPluginDependency + 298.IBWindowTemplateEditedContentRect + 298.NSWindowTemplate.visibleAtLaunch + 298.editorWindowContentRectSynchronizationRect + 299.IBPluginDependency + 300.IBAttributePlaceholdersKey + 300.IBPluginDependency + 301.IBPluginDependency + 302.IBPluginDependency + 303.IBPluginDependency + 304.IBPluginDependency + 307.IBPluginDependency + 308.IBPluginDependency + 309.IBPluginDependency + 310.IBPluginDependency + 315.IBPluginDependency + 316.IBPluginDependency + 319.IBPluginDependency + 320.IBPluginDependency + 327.IBPluginDependency + 328.IBPluginDependency + 338.IBPluginDependency + 339.IBPluginDependency + 340.IBPluginDependency + 341.IBPluginDependency + 344.IBPluginDependency + 345.IBPluginDependency + 346.IBAttributePlaceholdersKey + 346.IBPluginDependency + 347.IBPluginDependency + 350.IBPluginDependency + 351.IBPluginDependency + 352.IBPluginDependency + 353.IBPluginDependency + 359.IBEditorWindowLastContentRect + 359.IBPluginDependency + 359.IBWindowTemplateEditedContentRect + 359.NSWindowTemplate.visibleAtLaunch + 359.editorWindowContentRectSynchronizationRect + 360.IBPluginDependency + 361.IBPluginDependency + 663.IBPluginDependency + 664.IBPluginDependency + 665.IBPluginDependency + 711.IBPluginDependency + 712.IBPluginDependency + 715.IBPluginDependency + 719.IBPluginDependency + 720.IBPluginDependency + 87.IBPluginDependency + 88.IBPluginDependency + 89.IBPluginDependency + 89.editorWindowContentRectSynchronizationRect + 890.IBPluginDependency + 891.IBPluginDependency + 892.IBEditorWindowLastContentRect + 892.IBPluginDependency + 892.editorWindowContentRectSynchronizationRect + 893.IBPluginDependency + 894.IBPluginDependency + 895.IBPluginDependency + 90.IBPluginDependency + 908.IBPluginDependency + 909.IBPluginDependency + 91.IBPluginDependency + 910.IBAttributePlaceholdersKey + 910.IBPluginDependency + 911.IBPluginDependency + 92.IBPluginDependency + 924.IBAttributePlaceholdersKey + 924.IBPluginDependency + 925.IBPluginDependency + 949.IBEditorWindowLastContentRect + 949.IBPluginDependency + 949.IBWindowTemplateEditedContentRect + 949.NSWindowTemplate.visibleAtLaunch + 949.windowTemplate.maxSize + 95.IBPluginDependency + 950.IBPluginDependency + 953.IBPluginDependency + 954.IBPluginDependency + 956.IBPluginDependency + 957.IBPluginDependency + 958.IBPluginDependency + 959.IBPluginDependency + 96.IBPluginDependency + 97.IBPluginDependency + 98.IBPluginDependency + 98.editorWindowContentRectSynchronizationRect + 99.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{496, 197}, {751, 342}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{84, 448}, {600, 442}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{830, 349}, {409, 118}} + com.apple.InterfaceBuilder.CocoaPlugin + {{830, 349}, {409, 118}} + + + AccessibilityDescription + + AccessibilityDescription + + Move Toward Your Route! + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{640, 586}, {195, 23}} + com.apple.InterfaceBuilder.CocoaPlugin + {{493, 775}, {193, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + The bot will not run any route. You will be responsible for controlling its movement. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Edit Behavior + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Edit Behavior + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Edit Behavior + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Edit Behavior + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Edit Profile + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1040, 421}, {173, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + {{163, 724}, {193, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{493, 775}, {193, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{395, 150}, {575, 397}} + com.apple.InterfaceBuilder.CocoaPlugin + {{395, 150}, {575, 397}} + + {{657, 140}, {575, 397}} + com.apple.InterfaceBuilder.CocoaPlugin + + InitialTabViewItem + + InitialTabViewItem + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Primary Hotkey Help + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{335, 861}, {283, 175}} + com.apple.InterfaceBuilder.CocoaPlugin + {{335, 861}, {283, 175}} + + {{355, 316}, {283, 175}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + net.wafflesoftware.ShortcutRecorder.IB.Leopard + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{477, 489}, {193, 54}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1040, 421}, {173, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + {{163, 724}, {193, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Edit Profile + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + The bot will not run any route. You will be responsible for controlling its movement. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{-994, 575}, {539, 342}} + com.apple.InterfaceBuilder.CocoaPlugin + {{-994, 575}, {539, 342}} + + {3.40282e+38, 3.40282e+38} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{493, 775}, {193, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 1646 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BindingsController + NSObject + + YES + + YES + botController + chatController + controller + offsetController + + + YES + BotController + ChatController + Controller + OffsetController + + + + IBProjectSource + BindingsController.h + + + + BlacklistController + NSObject + + YES + + YES + mobController + playersController + + + YES + MobController + PlayersController + + + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + closeHotkeyHelp: + closeLootHotkeyHelp: + confirmOffsets: + editBehavior: + editBehaviorPvP: + editProfile: + editProfilePvP: + editRoute: + editRoutePvP: + hotkeyHelp: + login: + lootHotkeyHelp: + maltby: + startBot: + startStopBot: + stopBot: + test2: + test: + testHotkey: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + Route + allChatButton + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + behaviorPopup + behaviorPvPPopup + bindingsController + blacklistController + chatController + chatLogController + combatController + combatProfilePopup + combatProfilePvPPopup + controller + corpseController + databaseManager + fishController + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootController + lootHotkeyHelpPanel + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + mobController + movementController + nodeController + offsetController + overlayWindow + playerController + playersController + procedureController + profileController + pvpController + questController + routePopup + routePvPPopup + runningTimer + scanGrid + spellController + startStopButton + startstopRecorder + statisticsController + statusText + view + wallWalkButton + waypointController + + + YES + Route + NSButton + NSButton + NSButton + id + AuraController + id + id + BindingsController + BlacklistController + ChatController + ChatLogController + CombatController + id + id + Controller + CorpseController + DatabaseManager + FishController + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + MobController + MovementController + NodeController + OffsetController + NSWindow + PlayerDataController + PlayersController + ProcedureController + ProfileController + PvPController + QuestController + id + id + NSTextField + ScanGridView + SpellController + NSButton + SRRecorderControl + StatisticsController + NSTextField + NSView + NSButton + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + chatController + combatPanel + combatTable + controller + macroController + mobController + movementController + playerData + playersController + + + YES + AuraController + BindingsController + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + Controller + NSObject + + YES + + YES + launchWebsite: + pidSelected: + showAbout: + showSettings: + toolbarItemSelected: + + + YES + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + newIdentifierField + newNameField + newSignatureField + nodeController + objectsController + objectsToolbarItem + offsetController + playerData + playerToolbarItem + playersController + prefsToolbarItem + profileController + profilesToolbarItem + pvpController + pvpToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSTextField + NSTextField + NSTextField + NodeController + ObjectsController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + ProfileController + NSToolbarItem + PvPController + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + DatabaseManager + NSObject + + YES + + YES + controller + offsetController + + + YES + Controller + OffsetController + + + + IBProjectSource + DatabaseManager.h + + + + FileController + NSObject + + IBProjectSource + FileController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + ObjectController + + YES + + YES + botController + macroController + memoryViewController + nodeController + objectsController + offsetController + + + YES + BotController + MacroController + MemoryViewController + NodeController + ObjectsController + OffsetController + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + macroController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + MacroController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + menuAction: + offsetSelectAction: + openOffsetPanel: + openPointerPanel: + openSearch: + pointerSelectAction: + saveValues: + selectInstance: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + emulatePPCButton + instanceList + itemController + maskTextField + memoryTable + memoryViewWindow + mobController + nodeController + offsetController + offsetScanPanel + operatorPopUpButton + playersController + pointerScanCancelButton + pointerScanFindButton + pointerScanNumTextField + pointerScanPanel + pointerScanProgressIndicator + pointerScanVariationButton + pointerScanVariationTextField + resultsTextView + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + signatureTextField + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + NSButton + NSPopUpButton + InventoryController + NSTextField + id + id + MobController + NodeController + OffsetController + NSPanel + NSPopUpButton + PlayersController + NSButton + NSButton + NSTextField + NSPanel + NSProgressIndicator + NSButton + NSTextField + NSTextView + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSTextField + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + ObjectController + + updateTracking: + id + + + YES + + YES + additionalList + auraController + botController + combatController + memoryViewController + movementController + objectsController + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + + + YES + NSPopUpButton + id + BotController + id + id + id + ObjectsController + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + combatController + controller + itemController + logOutStuckAttemptsTextField + macroController + mobController + movementTypePopUp + offsetController + playerData + profileController + statisticsController + waypointController + + + YES + AuraController + BindingsController + BlacklistController + BotController + CombatController + Controller + InventoryController + NSTextField + MacroController + MobController + NSPopUpButton + OffsetController + PlayerDataController + ProfileController + StatisticsController + WaypointController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + ObjectController + + YES + + YES + botController + memoryViewController + moveToList + movementController + objectsController + + + YES + id + id + NSPopUpButton + id + ObjectsController + + + + IBProjectSource + NodeController.h + + + + ObjectController + NSObject + + tableDoubleClick: + id + + + YES + + YES + controller + playerData + view + + + YES + Controller + PlayerDataController + NSView + + + + IBProjectSource + ObjectController.h + + + + ObjectsController + NSObject + + YES + + YES + faceObject: + filter: + moveToStart: + moveToStop: + refreshData: + reloadNames: + resetObjects: + targetObject: + updateTracking: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + controller + itemController + itemTable + memoryViewController + mobController + mobTable + moveToMobPopUpButton + moveToNodePopUpButton + movementController + nodeController + nodeTable + playerController + playersController + playersTable + tabView + view + + + YES + Controller + InventoryController + NSTableView + MemoryViewController + MobController + NSTableView + NSPopUpButton + NSPopUpButton + MovementController + NodeController + NSTableView + PlayerDataController + PlayersController + NSTableView + NSTabView + NSView + + + + IBProjectSource + ObjectsController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + bindingsController + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BindingsController + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + ObjectController + + updateTracking: + id + + + YES + + YES + memoryViewController + movementController + objectsController + playerColorByLevel + + + YES + MemoryViewController + MovementController + ObjectsController + NSButton + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + showInFinder: + tableRowDoubleClicked: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + fileController + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + FileController + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + ProfileController + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + createProfile: + deleteIgnoreEntry: + deleteProfile: + duplicateProfile: + exportProfile: + importProfile: + renameProfile: + showInFinder: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + assistPopUpButton + controller + fileController + followPopUpButton + ignoreTable + mobController + playersController + profileOutlineView + profileTabView + profileTitle + profileTypePopUp + tankPopUpButton + view + + + YES + NSPopUpButton + Controller + FileController + NSPopUpButton + NSTableView + MobController + PlayersController + NSOutlineView + NSTabView + NSTextField + NSPopUpButton + NSPopUpButton + NSView + + + + IBProjectSource + ProfileController.h + + + + PvPController + NSObject + + YES + + YES + closeRename: + createBehavior: + deleteBehavior: + duplicateBehavior: + exportBehavior: + importBehavior: + renameBehavior: + saveAllObjects: + showInFinder: + test: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + fileController + renamePanel + view + waypointController + + + YES + FileController + NSPanel + NSView + WaypointController + + + + IBProjectSource + PvPController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + Route + NSObject + + IBProjectSource + Route.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + itemController + macroController + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + InventoryController + MacroController + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + TransparentWindow + NSWindow + + IBProjectSource + TransparentWindow.h + + + + WaypointController + NSObject + + YES + + YES + addRouteCollection: + addRouteSet: + addWaypoint: + closeAutomatorPanel: + closeDescription: + closeHelpPanel: + closeVisualize: + closestWaypoint: + deleteRouteButton: + deleteRouteMenu: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + showInFinder: + startStopAutomator: + startingRouteClicked: + stopMovement: + testWaypointSequence: + visualize: + waypointMenuAction: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + descriptionPanel + fileController + helpPanel + mobController + movementController + playerData + routeTypeSegment + routesTable + scrollWithRoute + shortcutRecorder + startingRouteButton + testingMenu + view + visualizePanel + visualizeView + waypointSectionTitle + waypointTabView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + BotController + CombatController + Controller + NSPanel + FileController + NSPanel + MobController + MovementController + PlayerDataController + id + NSOutlineView + NSButton + SRRecorderControl + NSButton + NSMenu + NSView + NSPanel + RouteVisualizationView + NSTextField + NSTabView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSImageCell.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSOutlineView + NSTableView + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTabViewItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabViewItem.h + + + + NSTableView + NSControl + + + + NSText + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSTextView + NSText + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderCell + NSActionCell + + delegate + id + + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + YES + + YES + HotkeyFinished + InteractWithTarget + InterfaceBars + Keybindings + NSActionTemplate + NSMenuCheckmark + NSMenuMixedState + NSSwitch + Result + Spell_Holy_MindVision + TypeShortcut + + + YES + {189, 39} + {499, 186} + {575, 213} + {489, 104} + {15, 15} + {9, 8} + {7, 2} + {15, 15} + {300, 102} + {67.7747, 67.7747} + {187, 39} + + + + diff --git a/BotController.h b/BotController.h new file mode 100644 index 0000000..79f33cf --- /dev/null +++ b/BotController.h @@ -0,0 +1,473 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id$ + * + */ + +#import + +@class Mob; +@class Unit; +@class Rule; +@class Condition; +@class Behavior; +@class WoWObject; +@class Waypoint; +@class Route; +@class RouteSet; +@class RouteCollection; +@class CombatProfile; +@class PvPBehavior; +@class Position; + +@class PTHotKey; +@class SRRecorderControl; +@class BetterSegmentedControl; + +@class PlayerDataController; +@class PlayersController; +@class InventoryController; +@class AuraController; +@class NodeController; +@class MovementController; +@class CombatController; +@class SpellController; +@class MobController; +@class ChatController; +@class ChatLogController; +@class ChatLogEntry; +@class Controller; +@class WaypointController; +@class ProcedureController; +@class QuestController; +@class CorpseController; +@class LootController; +@class FishController; +@class MacroController; +@class OffsetController; +@class MemoryViewController; +@class BlacklistController; +@class StatisticsController; +@class BindingsController; +@class PvPController; +@class DatabaseManager; +@class ProfileController; + +@class ScanGridView; + +#define ErrorSpellNotReady @"ErrorSpellNotReady" +#define ErrorTargetNotInLOS @"ErrorTargetNotInLOS" +#define ErrorInvalidTarget @"ErrorInvalidTarget" +#define ErrorTargetOutOfRange @"ErrorTargetOutOfRange" +#define ErrorTargetNotInFront @"ErrorTargetNotInFront" +#define ErrorHaveNoTarget @"ErrorHaveNoTarget" +#define ErrorMorePowerfullSpellActive @"ErrorMorePowerfullSpellActive" +#define ErrorCantDoThatWhileStunned @"ErrorCantDoThatWhileStunned" + +#define BotStarted @"BotStarted" + +// Hotkey set flags +#define HotKeyStartStop 0x1 +#define HotKeyInteractMouseover 0x2 +#define HotKeyPrimary 0x4 +#define HotKeyPetAttack 0x8 + +@interface BotController : NSObject { + IBOutlet Controller *controller; + IBOutlet ChatController *chatController; + IBOutlet ChatLogController *chatLogController; + IBOutlet PlayerDataController *playerController; + IBOutlet MobController *mobController; + IBOutlet SpellController *spellController; + IBOutlet CombatController *combatController; + IBOutlet MovementController *movementController; + IBOutlet NodeController *nodeController; + IBOutlet AuraController *auraController; + IBOutlet InventoryController *itemController; + IBOutlet PlayersController *playersController; + IBOutlet LootController *lootController; + IBOutlet FishController *fishController; + IBOutlet MacroController *macroController; + IBOutlet OffsetController *offsetController; + IBOutlet WaypointController *waypointController; + IBOutlet ProcedureController *procedureController; + IBOutlet MemoryViewController *memoryViewController; + IBOutlet BlacklistController *blacklistController; + IBOutlet StatisticsController *statisticsController; + IBOutlet BindingsController *bindingsController; + IBOutlet PvPController *pvpController; + IBOutlet DatabaseManager *databaseManager; + IBOutlet ProfileController *profileController; + + IBOutlet QuestController *questController; + IBOutlet CorpseController *corpseController; + + IBOutlet Route *Route; // is this right? + + IBOutlet NSView *view; + + RouteCollection *_theRouteCollection; + RouteCollection *_theRouteCollectionPvP; + RouteSet *_theRouteSet; + RouteSet *_theRouteSetPvP; + Behavior *theBehavior; + Behavior *theBehaviorPvP; + CombatProfile *theCombatProfile; + PvPBehavior *_pvpBehavior; + //BOOL attackPlayers, attackNeutralNPCs, attackHostileNPCs, _ignoreElite; + //int _currentAttackDistance, _minLevel, _maxLevel, _attackAnyLevel; + + BOOL _useRoute; + BOOL _useRoutePvP; + + int _sleepTimer; + UInt32 _lastSpellCastGameTime; + UInt32 _lastSpellCast; + BOOL _isBotting; + BOOL _didPreCombatProcedure; + NSString *_procedureInProgress; + NSString *_evaluationInProgress; + BOOL _evaluationIsActive; + + NSString *_lastProcedureExecuted; + Mob *_mobToSkin; + Mob *_mobJustSkinned; + Unit *preCombatUnit; + Unit *_castingUnit; // the unit we're casting on! + + NSMutableArray *_mobsToLoot; + int _reviveAttempt; + int _ghostDance; + int _skinAttempt; + NSSize minSectionSize, maxSectionSize; + NSDate *startDate; + int _lastActionErrorCode; + UInt32 _lastActionTime; + int _zoneBeforeHearth; + UInt64 _lastCombatProcedureTarget; + + BOOL _movingToCorpse; + + // healing shit + BOOL _shouldFollow; + Unit *_lastUnitAttemptedToHealed; + BOOL _includeFriendly; + BOOL _includeFriendlyPatrol; + BOOL _includeCorpsesPatrol; + + // improved loot shit + WoWObject *_lastAttemptedUnitToLoot; + NSMutableDictionary *_lootDismountCount; + int _lootMacroAttempt; + WoWObject *_unitToLoot; + NSDate *lootStartTime; + NSDate *skinStartTime; +// BOOL _lootUseItems; + int _movingTowardMobCount; + int _movingTowardNodeCount; + + NSMutableArray *_routesChecked; + + // new flying shit + int _jumpAttempt; + Position *_lastGoodFollowPosition; + + // mount correction (sometimes we can't mount) + int _mountAttempt; + NSDate *_mountLastAttempt; + + // pvp shit + BOOL _isPvPing; + BOOL _isPvpMonitoring; + BOOL _pvpIsInBG; + BOOL _pvpPlayWarning; + NSTimer *_pvpTimer; + BOOL _attackingInStrand; + BOOL _strandDelay; + int _strandDelayTimer; + BOOL _waitingToLeaveBattleground; + BOOL _waitForPvPQueue; + BOOL _waitForPvPPreparation; + BOOL _needToTakeQueue; + + // auto join WG options + NSTimer *_wgTimer; + int _lastNumWGMarks; + NSDate *_dateWGEnded; + + // anti afk options + NSTimer *_afkTimer; + int _afkTimerCounter; + BOOL _lastPressedWasForward; + + // log out options + NSTimer *_logOutTimer; + + // Party + Unit *_tankUnit; + Unit *_assistUnit; + BOOL _leaderBeenWaiting; + int _partyEmoteIdleTimer; + int _partyEmoteTimeSince; + NSString *_lastEmote; + int _lastEmoteShuffled; + + // Follow + Route *_followRoute; + Unit *_followUnit; + BOOL _followSuspended; + BOOL _followLastSeenPosition; + BOOL _followingFlagCarrier; + NSTimer *_followTimer; + int _lootScanIdleTimer; + BOOL _wasLootWindowOpen; + + // ----------------- + // ----------------- + + IBOutlet NSButton *startStopButton; + + IBOutlet id attackWithinText; + IBOutlet id routePopup; + IBOutlet id routePvPPopup; + IBOutlet id behaviorPopup; + IBOutlet id behaviorPvPPopup; + IBOutlet id combatProfilePopup; + IBOutlet id combatProfilePvPPopup; + IBOutlet id minLevelPopup; + IBOutlet id maxLevelPopup; + IBOutlet NSTextField *minLevelText, *maxLevelText; + IBOutlet NSButton *anyLevelCheckbox; + + // Log Out options + IBOutlet NSButton *logOutOnBrokenItemsCheckbox; + IBOutlet NSButton *logOutOnFullInventoryCheckbox; + IBOutlet NSButton *logOutOnTimerExpireCheckbox; + IBOutlet NSButton *logOutAfterStuckCheckbox; + IBOutlet NSButton *logOutUseHearthstoneCheckbox; + IBOutlet NSTextField *logOutDurabilityTextField; + IBOutlet NSTextField *logOutAfterRunningTextField; + +// IBOutlet NSButton *miningCheckbox; +// IBOutlet NSButton *herbalismCheckbox; +// IBOutlet NSButton *netherwingEggCheckbox; +// IBOutlet id miningSkillText; +// IBOutlet id herbalismSkillText; +// IBOutlet NSButton *skinningCheckbox; +// IBOutlet NSButton *ninjaSkinCheckbox; +// IBOutlet id skinningSkillText; +// IBOutlet id gatherDistText; +// IBOutlet NSButton *lootCheckbox; + +// IBOutlet NSTextField *fishingGatherDistanceText; +// IBOutlet NSButton *fishingCheckbox; +// IBOutlet NSButton *fishingApplyLureCheckbox; +// IBOutlet NSButton *fishingOnlySchoolsCheckbox; +// IBOutlet NSButton *fishingRecastCheckbox; +// IBOutlet NSButton *fishingUseContainersCheckbox; +// IBOutlet NSButton *fishingLurePopUpButton; + +// IBOutlet NSButton *autoJoinWG; + IBOutlet NSButton *antiAFKButton; + +// IBOutlet NSButton *combatDisableRelease; + +// IBOutlet NSTextField *nodeIgnoreHostileDistanceText; +// IBOutlet NSTextField *nodeIgnoreFriendlyDistanceText; +// IBOutlet NSTextField *nodeIgnoreMobDistanceText; +// IBOutlet NSButton *nodeIgnoreHostileCheckbox; +// IBOutlet NSButton *nodeIgnoreFriendlyCheckbox; +// IBOutlet NSButton *nodeIgnoreMobCheckbox; + +// IBOutlet NSButton *lootUseItemsCheckbox; + + IBOutlet NSPanel *hotkeyHelpPanel; + IBOutlet NSPanel *lootHotkeyHelpPanel; +// IBOutlet NSPanel *gatheringLootingPanel; + IBOutlet SRRecorderControl *startstopRecorder; + PTHotKey *StartStopBotGlobalHotkey; + + IBOutlet NSTextField *statusText; + IBOutlet NSTextField *runningTimer; + IBOutlet NSWindow *overlayWindow; + IBOutlet ScanGridView *scanGrid; + + IBOutlet NSButton *allChatButton; + IBOutlet NSButton *wallWalkButton; + + UInt32 _oldActionID; + int _oldBarOffset; + +} + +@property (readonly) NSButton *logOutAfterStuckCheckbox; +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property (readwrite, assign) BOOL isBotting; +@property (assign) BOOL isPvPing; +@property (assign) BOOL pvpIsInBG; +@property (retain) NSString *procedureInProgress; +@property (retain) NSString *evaluationInProgress; + +@property (readwrite, retain) RouteCollection *theRouteCollection; +@property (readwrite, retain) RouteCollection *theRouteCollectionPvP; +@property (readwrite, retain) RouteSet *theRouteSet; +@property (readwrite, retain) RouteSet *theRouteSetPvP; + +@property (readonly, retain) Behavior *theBehavior; +@property (readonly, retain) Behavior *theBehaviorPvP; +@property (readonly, retain) PvPBehavior *pvpBehavior; +@property BOOL waitForPvPPreparation; +@property (readonly, assign) BOOL needToTakeQueue; +@property (readwrite, retain) CombatProfile *theCombatProfile; +@property (readonly, retain) Unit *preCombatUnit; +@property (readonly, retain) NSDate *lootStartTime; +@property (readonly, retain) NSDate *skinStartTime; +@property (readonly, retain) Unit *castingUnit; +@property (readonly, retain) Unit *followUnit; +@property (readonly, retain) Unit *assistUnit; +@property (readonly, retain) Unit *tankUnit; +@property (readwrite, assign) BOOL followSuspended; +@property (readonly, retain) Route *followRoute; +@property (readwrite, assign) BOOL wasLootWindowOpen; +@property (readonly, assign) BOOL includeCorpsesPatrol; +@property (readonly, assign) BOOL movingToCorpse; +@property (readonly, assign) BOOL waitForPvPQueue; +@property (readonly, assign) BOOL evaluationIsActive; +// @property (readonly, assign) BOOL nodeIgnoreMob; +// @property (readonly, assign) BOOL nodeIgnoreFriendly; +// @property (readonly, assign) BOOL nodeIgnoreHostile; + +@property (readonly, retain) NSMutableArray *mobsToLoot; + +- (void)testRule: (Rule*)rule; + +- (BOOL)performProcedureUnitCheck: (Unit*)target withState:(NSDictionary*)state; +- (BOOL)lootScan; +- (void)resetLootScanIdleTimer; + +// Input from CombatController +- (void)actOnUnit: (Unit*)unit; + +// Input from MovementController; +- (void)cancelCurrentEvaluation; +- (void)cancelCurrentProcedure; +- (BOOL)combatProcedureValidForUnit: (Unit*)unit; +- (BOOL)evaluateConditionFriendlies: (Condition*)condition; +- (BOOL)evaluateConditionEnemies: (Condition*)condition; +- (void)finishedRoute: (Route*)route; +- (BOOL)evaluateSituation; +- (BOOL)evaluateForPVPQueue; +- (BOOL)evaluateForPVPBattleGround; +- (BOOL)evaluateForGhost; +- (BOOL)evaluateForParty; +- (BOOL)evaluateForFollow; +- (BOOL)evaluateForCombatContinuation; +- (BOOL)evaluateForRegen; +- (BOOL)evaluateForLoot; +- (BOOL)evaluateForCombatStart; +- (BOOL)evaluateForMiningAndHerbalism; +- (BOOL)evaluateForFishing; +- (BOOL)evaluateForPatrol; + +// Party stuff +- (BOOL)establishTankUnit; +- (BOOL)establishAssistUnit; +- (BOOL)isTank:(Unit*)unit; +- (BOOL)leaderWait; +- (void)jumpIfAirMountOnGround; +- (NSString*)randomEmote: (Unit*)emoteUnit; +- (NSString*)emoteGeneral; +- (NSString*)emoteFriend; +- (NSString*)emoteSexy; + +// Follow stuff +- (void)followRouteClear; +- (BOOL)followMountNow; +- (BOOL)followMountCheck; +- (Unit*)whisperCommandUnit:(ChatLogEntry*)entry; +- (BOOL)whisperCommandAllowed: (ChatLogEntry*)entry; +- (BOOL)verifyFollowUnit; +- (void)resetFollowTimer; +- (void)followRouteStartRecord; + +- (IBAction)startBot: (id)sender; +- (IBAction)stopBot: (id)sender; +- (IBAction)startStopBot: (id)sender; +- (IBAction)testHotkey: (id)sender; +- (void)updateRunningTimer; + +- (IBAction)editRoute: (id)sender; +- (IBAction)editRoutePvP: (id)sender; +- (IBAction)editBehavior: (id)sender; +- (IBAction)editBehaviorPvP: (id)sender; +- (IBAction)editProfile: (id)sender; +- (IBAction)editProfilePvP: (id)sender; + +- (IBAction)updateStatus: (id)sender; +- (IBAction)hotkeyHelp: (id)sender; +- (IBAction)closeHotkeyHelp: (id)sender; +- (IBAction)lootHotkeyHelp: (id)sender; +- (IBAction)closeLootHotkeyHelp: (id)sender; +// - (IBAction)gatheringLootingOptions: (id)sender; +// - (IBAction)gatheringLootingSelectAction: (id)sender; + +// Looting +- (BOOL)scaryUnitsNearNode: (WoWObject*)node doMob:(BOOL)doMobCheck doFriendy:(BOOL)doFriendlyCheck doHostile:(BOOL)doHostileCheck; + +// PVP +- (BOOL)pvpIsBattlegroundEnding; +- (void)resetPvpTimer; +- (void)stopBotActions; +- (void)joinBGCheck; + +// test stuff +- (IBAction)confirmOffsets: (id)sender; +- (IBAction)test: (id)sender; +- (IBAction)test2: (id)sender; +- (IBAction)maltby: (id)sender; +- (IBAction)login: (id)sender; + +// Little more flexibility - casts spells! Uses items/macros! +- (BOOL)performAction: (int32_t)actionID; +- (int)errorValue: (NSString*)errorMessage; +- (BOOL)interactWithMouseoverGUID: (UInt64) guid; +- (void)interactWithMob:(UInt32)entryID; +- (void)interactWithNode:(UInt32)entryID; +- (void)logOut; + +- (void)logOutWithMessage:(NSString*)message; + +// for new action/conditions +- (BOOL)evaluateRule: (Rule*)rule withTarget: (Unit*)target asTest: (BOOL)test; +- (void)resetHotBarAction; + +- (void) updateRunningTimer; + +- (UInt8)isHotKeyInvalid; + +// from movement controller (for new WP actions!) +- (void)changeCombatProfile:(CombatProfile*)profile; + +@end diff --git a/BotController.m b/BotController.m new file mode 100644 index 0000000..6128f65 --- /dev/null +++ b/BotController.m @@ -0,0 +1,8707 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id$ + * + */ + +#import "BotController.h" +#import "Controller.h" +#import "ChatController.h" +#import "PlayerDataController.h" +#import "MobController.h" +#import "SpellController.h" +#import "NodeController.h" +#import "CombatController.h" +#import "MovementController.h" +#import "AuraController.h" +#import "WaypointController.h" +#import "ProcedureController.h" +#import "InventoryController.h" +#import "PlayersController.h" +#import "QuestController.h" +#import "CorpseController.h" +#import "LootController.h" +#import "ChatLogController.h" +#import "FishController.h" +#import "MacroController.h" +#import "OffsetController.h" +#import "MemoryViewController.h" +#import "EventController.h" +#import "BlacklistController.h" +#import "StatisticsController.h" +#import "BindingsController.h" +#import "PvPController.h" +#import "ProfileController.h" + +#import "ChatLogEntry.h" +#import "BetterSegmentedControl.h" +#import "Behavior.h" +#import "RouteCollection.h" +#import "RouteSet.h" +#import "Route.h" +#import "Condition.h" +#import "Mob.h" +#import "Unit.h" +#import "Player.h" +#import "Item.h" +#import "Offsets.h" +#import "PTHeader.h" +#import "CGSPrivate.h" +#import "Macro.h" +#import "CombatProfile.h" +#import "Errors.h" +#import "PvPBehavior.h" +#import "Battleground.h" + +#import "ScanGridView.h" +#import "TransparentWindow.h" +#import "DatabaseManager.h" + +#import +#import +#import + +#define DeserterSpellID 26013 +#define HonorlessTargetSpellID 2479 +#define HonorlessTarget2SpellID 46705 +#define IdleSpellID 43680 +#define InactiveSpellID 43681 +#define PreparationSpellID 44521 +#define WaitingToRezSpellID 2584 +#define HearthstoneItemID 6948 +#define HearthStoneSpellID 8690 + +#define RefreshmentTableID 193061 // "Refreshment Table" +#define SoulwellID 193169 // "Soulwell" + + +// For strand of the ancients +#define StrandFlagpole 191311 +#define StrandAllianceBanner 191310 +#define StrandAllianceBannerAura 180100 +#define StrandHordeBanner 191307 +#define StrandeHordeBannerAura 180101 +#define StrandAntipersonnelCannon 27894 +#define StrandBattlegroundDemolisher 28781 +#define StrandPrivateerZierhut 32658 // right boat +#define StrandPrivateerStonemantle 32657 // left boat + +@interface BotController () + +@property (readwrite, retain) Behavior *theBehavior; +@property (readwrite, retain) Behavior *theBehaviorPvP; +@property (readwrite, retain) PvPBehavior *pvpBehavior; +@property (readwrite, retain) NSDate *lootStartTime; +@property (readwrite, retain) NSDate *skinStartTime; + +@property (readwrite, retain) NSDate *startDate; +@property (readwrite, retain) Mob *mobToSkin; +@property (readwrite, retain) Mob *mobJustSkinned; +@property (readwrite, retain) WoWObject *unitToLoot; +@property (readwrite, retain) WoWObject *lastAttemptedUnitToLoot; +@property (readwrite, retain) Unit *preCombatUnit; +// @property (readwrite, retain) Unit *castingUnit; +@property (readwrite, retain) Unit *followUnit; +@property (readwrite, retain) Unit *assistUnit; +@property (readwrite, retain) Unit *tankUnit; + +// @property (readwrite, retain) RouteCollection *theRouteCollection; +// @property (readwrite, retain) RouteCollection *theRouteCollectionPvP; +// @property (readwrite, retain) RouteCollection *theRouteSet; +// @property (readwrite, retain) RouteCollection *theRouteSetPvP; + +@property (readwrite, retain) Route *followRoute; + +// pvp +@property (readwrite, assign) BOOL pvpPlayWarning; + +// @property (readwrite, assign) BOOL doLooting; +// @property (readwrite, assign) float gatherDistance; + +@property (readwrite, assign) BOOL useRoute; +@property (readwrite, assign) BOOL useRoutePvP; + +// @property (readwrite, assign) BOOL evaluationIsActive; + +@end + +@interface BotController (Internal) + +- (void)timeUp: (id)sender; + +- (void)preRegen; +- (void)evaluateRegen: (NSDictionary*)regenDict; + +- (void)performProcedureWithState: (NSDictionary*)state; +- (void)playerHasDied: (NSNotification*)notification; + +// pvp +- (void)pvpGetBGInfo; +- (void)pvpMonitor: (NSTimer*)timer; +- (void)corpseRelease: (NSNumber *)count; + +- (void)followMonitor: (NSTimer*)timer; + +- (void)skinMob: (Mob*)mob; +- (void)skinToFinish; +- (BOOL)unitValidToHeal: (Unit*)unit; +- (void)lootNode: (WoWObject*) unit; +- (void)resetLootScanTimer; + +- (BOOL)mountNow; + +- (BOOL)scaryUnitsNearNode: (WoWObject*)node doMob:(BOOL)doMobCheck doFriendy:(BOOL)doFriendlyCheck doHostile:(BOOL)doHostileCheck; + +- (BOOL)combatProcedureValidForUnit: (Unit*)unit; + +- (void)executeRegen: (BOOL)delay; + +- (NSString*)isRouteSetSound: (RouteSet*)route; + +// new pvp +- (void)pvpQueueOrStart; +- (BOOL)pvpQueueBattleground; +- (BOOL)pvpSetEnvironmentForZone; + +@end + +@implementation BotController + ++ (void)initialize { + + NSDictionary *defaultValues = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool:NO], @"UseRoutePvP", + [NSNumber numberWithBool:YES], @"UseRoute", + [NSNumber numberWithBool: YES], @"AttackAnyLevel", + [NSNumber numberWithFloat: 50.0], @"GatheringDistance", + [NSNumber numberWithInt: NSOnState], @"PvPAddonAutoJoin", + [NSNumber numberWithInt: NSOnState], @"PvPAddonAutoQueue", + [NSNumber numberWithInt: NSOnState], @"PvPAddonAutoRelease", + [NSNumber numberWithInt: NSOnState], @"PvPPlayWarningSound", + [NSNumber numberWithInt: NSOnState], @"PvPLeaveWhenInactive", + [NSNumber numberWithInt:0], @"MovementType", + [NSNumber numberWithInt: NSOffState],@"DoLogOutCheck", + [NSNumber numberWithInt:20], @"LogOutOnBrokenItemsPercentage", + [NSNumber numberWithBool:NO], @"DisableReleasingOnDeath", + nil]; + + [[NSUserDefaults standardUserDefaults] registerDefaults: defaultValues]; + [[NSUserDefaultsController sharedUserDefaultsController] setInitialValues: defaultValues]; +} + +- (id)init { + self = [super init]; + if (self == nil) return self; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerHasDied:) name: PlayerHasDiedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerHasRevived:) name: PlayerHasRevivedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerIsInvalid:) name: PlayerIsInvalidNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(auraGain:) name: BuffGainNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(auraFade:) name: BuffFadeNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(itemsLooted:) name: AllItemsLootedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(itemLooted:) name: ItemLootedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(whisperReceived:) name: WhisperReceived object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(eventZoneChanged:) name: EventZoneChanged object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(eventBattlegroundStatusChange:) name: EventBattlegroundStatusChange object: nil]; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(unitDied:) name: UnitDiedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(invalidTarget:) name: ErrorInvalidTarget object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(haveNoTarget:) name: ErrorHaveNoTarget object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(targetNotInLOS:) name: ErrorTargetNotInLOS object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(morePowerfullSpellActive:) name: ErrorMorePowerfullSpellActive object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(cantDoThatWhileStunned:) name: ErrorCantDoThatWhileStunned object: nil]; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerEnteringCombat:) name: PlayerEnteringCombatNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerLeavingCombat:) name: PlayerLeavingCombatNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(unitEnteredCombat:) name: UnitEnteredCombat object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachedObject:) name: ReachedObjectNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachedFollowUnit:) name: ReachedFollowUnitNotification object: nil]; + + _sleepTimer = 0; + _theRouteCollection = nil; + _theRouteCollectionPvP = nil; + _theRouteSet = nil; + _theRouteSetPvP = nil; + _useRoute = NO; + _useRoutePvP = NO; + _pvpBehavior = nil; + _procedureInProgress = nil; + _evaluationInProgress = nil; + + _evaluationIsActive = NO; + + _lastProcedureExecuted = nil; + _didPreCombatProcedure = NO; + _lastSpellCastGameTime = 0; + self.startDate = nil; + _unitToLoot = nil; + _mobToSkin = nil; + _mobJustSkinned = nil; + _wasLootWindowOpen = NO; + _shouldFollow = YES; + _lastUnitAttemptedToHealed = nil; + _pvpIsInBG = NO; + self.lootStartTime = nil; + self.skinStartTime = nil; + _lootMacroAttempt = 0; + _zoneBeforeHearth = -1; + _attackingInStrand = NO; + _strandDelay = NO; + _strandDelayTimer = 0; + _waitingToLeaveBattleground = NO; + _waitForPvPQueue = NO; + _needToTakeQueue = NO; + _waitForPvPPreparation = NO; + _isPvpMonitoring = NO; + + _jumpAttempt = 0; + _includeFriendly = NO; + _includeFriendlyPatrol = NO; + _includeCorpsesPatrol = NO; + _lastSpellCast = 0; + _mountAttempt = 0; + _movingTowardMobCount = 0; + _movingTowardNodeCount = 0; + _lootDismountCount = [[NSMutableDictionary dictionary] retain]; + _mountLastAttempt = nil; + _castingUnit = nil; + _followUnit = nil; + _assistUnit = nil; + _tankUnit = nil; + + _followRoute = [[Route route] retain]; + _followingFlagCarrier = NO; + _followSuspended = NO; + _followLastSeenPosition = NO; + _leaderBeenWaiting = NO; + + _lastCombatProcedureTarget = 0x0; + _lootScanIdleTimer = 0; +// _lootScanCycles = 0; + + _partyEmoteIdleTimer = 0; + _partyEmoteTimeSince = 0; + _lastEmote = nil; + _lastEmoteShuffled = 0; + + _routesChecked = [[NSMutableArray array] retain]; + _mobsToLoot = [[NSMutableArray array] retain]; + + // wipe pvp options + self.isPvPing = NO; + self.pvpPlayWarning = NO; + + // anti afk + _lastPressedWasForward = NO; + _afkTimerCounter = 0; + + // wg stuff + _lastNumWGMarks = 0; + _dateWGEnded = nil; + + _logOutTimer = nil; + + _movingToCorpse = NO; + + // Every 30 seconds for an anti-afk + _afkTimer = [NSTimer scheduledTimerWithTimeInterval: 30.0f target: self selector: @selector(afkTimer:) userInfo: nil repeats: YES]; + + + [NSBundle loadNibNamed: @"Bot" owner: self]; + + return self; +} + +- (void)dealloc { +// [_theRouteCollection release]; _theRouteCollection = nil; +// [_theRouteCollectionPvP release]; _theRouteCollectionPvP = nil; +// [_theRouteSet release]; _theRouteSet = nil; +// [_theRouteSetPvP release]; _theRouteSetPvP = nil; + [_followRoute release]; + [_followUnit release]; + [_castingUnit release]; + [_tankUnit release]; + [_assistUnit release]; + [_lootDismountCount release]; + [_routesChecked release]; + [_mobsToLoot release]; + + [super dealloc]; +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = [self.view frame].size; + + [startstopRecorder setCanCaptureGlobalHotKeys: YES]; + + // remove old key bindings + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"HotkeyCode"]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"HotkeyFlags"]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"PetAttackCode"]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"PetAttackFlags"]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"MouseOverTargetCode"]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"MouseOverTargetFlags"]; + + KeyCombo combo2 = { NSCommandKeyMask, kSRKeysEscape }; + if([[NSUserDefaults standardUserDefaults] objectForKey: @"StartstopCode"]) + combo2.code = [[[NSUserDefaults standardUserDefaults] objectForKey: @"StartstopCode"] intValue]; + if([[NSUserDefaults standardUserDefaults] objectForKey: @"StartstopFlags"]) + combo2.flags = [[[NSUserDefaults standardUserDefaults] objectForKey: @"StartstopFlags"] intValue]; + + [startstopRecorder setDelegate: self]; + [startstopRecorder setKeyCombo: combo2]; + + // set up overlay window + [overlayWindow setLevel: NSFloatingWindowLevel]; + if([overlayWindow respondsToSelector: @selector(setCollectionBehavior:)]) + [overlayWindow setCollectionBehavior: NSWindowCollectionBehaviorMoveToActiveSpace]; + + //routePvPPopup + + // auto select if we need to + if ( [[NSUserDefaults standardUserDefaults] objectForKey: @"RoutePvP"] == nil ) + if ( [[pvpController behaviors] count] ) [routePvPPopup selectItemAtIndex:0]; + + [self updateStatus: nil]; +} + +@synthesize theRouteCollection = _theRouteCollection; +@synthesize theRouteCollectionPvP = _theRouteCollectionPvP; +@synthesize theRouteSet = _theRouteSet; +@synthesize theRouteSetPvP = _theRouteSetPvP; +@synthesize theBehavior; +@synthesize theBehaviorPvP; +@synthesize pvpBehavior = _pvpBehavior; +@synthesize theCombatProfile; +@synthesize evaluationIsActive = _evaluationIsActive; +@synthesize lootStartTime; +@synthesize skinStartTime; + +@synthesize logOutAfterStuckCheckbox; +@synthesize view; +@synthesize isBotting = _isBotting; +@synthesize isPvPing = _isPvPing; +@synthesize procedureInProgress = _procedureInProgress; +@synthesize evaluationInProgress = _evaluationInProgress; +@synthesize mobToSkin = _mobToSkin; +@synthesize mobJustSkinned = _mobJustSkinned; +@synthesize unitToLoot = _unitToLoot; +@synthesize wasLootWindowOpen = _wasLootWindowOpen; +@synthesize lastAttemptedUnitToLoot = _lastAttemptedUnitToLoot; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize preCombatUnit; +@synthesize castingUnit = _castingUnit; +@synthesize followUnit = _followUnit; +@synthesize assistUnit = _assistUnit; +@synthesize tankUnit = _tankUnit; +@synthesize pvpPlayWarning = _pvpPlayWarning; +@synthesize pvpIsInBG = _pvpIsInBG; +@synthesize waitForPvPQueue = _waitForPvPQueue; +@synthesize waitForPvPPreparation = _waitForPvPPreparation; +@synthesize needToTakeQueue = _needToTakeQueue; +@synthesize startDate; +@synthesize followSuspended = _followSuspended; +@synthesize followRoute = _followRoute; + +@synthesize useRoute = _useRoute; +@synthesize useRoutePvP = _useRoutePvP; + +@synthesize includeCorpsesPatrol = _includeCorpsesPatrol; +@synthesize movingToCorpse = _movingToCorpse; +@synthesize mobsToLoot = _mobsToLoot; + +- (NSString*)sectionTitle { + return @"Start/Stop Bot"; +} + +#pragma mark - + +int DistanceFromPositionCompare(id unit1, id unit2, void *context) { + Position *position = (Position*)context; + float d1 = [position distanceToPosition: [unit1 position]]; + float d2 = [position distanceToPosition: [unit2 position]]; + if (d1 < d2) return NSOrderedAscending; + else if (d1 > d2) return NSOrderedDescending; + else return NSOrderedSame; +} + +#pragma mark - + +#define RULE_EVAL_DELAY_SHORT 0.25f +#define RULE_EVAL_DELAY_NORMAL 0.5f +#define RULE_EVAL_DELAY_LONG 0.5f + +- (void)testRule: (Rule*)rule { + Unit *unit = [mobController playerTarget]; + if(!unit) unit = [playersController playerTarget]; + log(LOG_RULE, @"Testing rule with target: %@", unit); + BOOL result = [self evaluateRule: rule withTarget: unit asTest: YES]; + NSRunAlertPanel(TRUE_FALSE(result), [NSString stringWithFormat: @"%@", rule], @"Okay", NULL, NULL); +} + +- (BOOL)evaluateRule: (Rule*)rule withTarget: (Unit*)target asTest: (BOOL)test { + + // Determine whether or not the given target should have a rule applied + int numMatched = 0, needToMatch = 0; + if ([rule isMatchAll]) for(Condition *condition in [rule conditions]) if ( [condition enabled]) needToMatch++; + + if (needToMatch == 0) needToMatch = 1; + + Player *thePlayer = [playerController player]; + + // target checks + if ( [rule target] != TargetNone ){ + + if ( ([rule target] == TargetFriend || [rule target] == TargetFriendlies || [rule target] == TargetPet ) && ![playerController isFriendlyWithFaction: [target factionTemplate]] ){ + log(LOG_RULE, @"%@ isn't friendly!", target); + return NO; + } + + if ( ([rule target] == TargetEnemy || [rule target] == TargetAdd || [rule target] == TargetPat) && [playerController isFriendlyWithFaction: [target factionTemplate]] ){ + log(LOG_RULE, @"@% isn't an enemy!", target); + return NO; + } + + // set the correct target if it's self + if ( [rule target] == TargetSelf ) { + target = thePlayer; + } + } + + // check to see if we can even cast this spell + if ( [[rule action] type] == ActionType_Spell && ![spellController isUsableAction:[[rule action] actionID]] ){ + log(LOG_RULE, @"Action %d isn't usable!", [[rule action] actionID]); + return NO; + } + + // check to see if the spell is on cooldown, obviously the rule will fail! + if ( [[rule action] type] == ActionType_Spell && [spellController isSpellOnCooldown:[[rule action] actionID]] ){ + log(LOG_RULE, @"%@ Spell is on cooldown.", rule); + return NO; + } + + Unit *aUnit = nil; + + for ( Condition *condition in [rule conditions] ) { + if (![condition enabled]) continue; + BOOL conditionEval = NO; + if ([condition unit] == UnitTarget && !target) goto loopEnd; + if ([condition unit] == UnitFriendlies && !target) goto loopEnd; + if ([condition unit] == UnitNone && + [condition variety] != VarietySpellCooldown && + [condition variety] != VarietyLastSpellCast && + [condition variety] != VarietyPlayerLevel && + [condition variety] != VarietyPlayerZone && + [condition variety] != VarietyQuest && + [condition variety] != VarietyRouteRunCount && + [condition variety] != VarietyRouteRunTime && + [condition variety] != VarietyInventoryFree && + [condition variety] != VarietyDurability && + [condition variety] != VarietyMobsKilled && + [condition variety] != VarietyGate && + [condition variety] != VarietyStrandStatus) + goto loopEnd; + + switch ([condition variety]) { + case VarietyNone:; + log(LOG_ERROR, @"%@ in %@ is of an unknown type.", condition, rule); + break; + + case VarietyPower:; + log(LOG_CONDITION, @"Doing Health/Power condition..."); + + NSArray *units = [NSArray array]; + // testing against multiple units + if ( [condition unit] == UnitFriendlies || [condition unit] == UnitEnemies ){ + if ( [condition unit] == UnitFriendlies ) units = [combatController friendlyUnits]; + if ( [condition unit] == UnitEnemies ) units = [combatController allAdds]; + } + // looking at one unit! + else{ + if ( [condition unit] == UnitPlayer ){ + if( ![playerController playerIsValid:self] || ![thePlayer isValid]) goto loopEnd; + units = [NSArray arrayWithObject:thePlayer]; + } + else if ( [condition unit] == UnitTarget ){ + units = [NSArray arrayWithObject:target]; + } + else if ( [condition unit] == UnitPlayerPet ){ + units = [NSArray arrayWithObject:[playerController pet]]; + } + else{ + PGLog(@"[Condition] Unable to identify a target for VarietyPower"); + goto loopEnd; + } + } + + // loop through targets + for ( target in units ) { + if ( ![target isValid] ) continue; + int qualityValue = [target unitPowerWithQuality:[condition quality] andType:[condition type]]; + + // now we have the value of the quality + if( [condition comparator] == CompareMore) { + conditionEval = ( qualityValue > [[condition value] unsignedIntValue] ) ? YES : NO; + log(LOG_CONDITION, @" %d > %@ is %d", qualityValue, [condition value], conditionEval); + } else if ([condition comparator] == CompareEqual) { + conditionEval = ( qualityValue == [[condition value] unsignedIntValue] ) ? YES : NO; + log(LOG_CONDITION, @" %d = %@ is %d", qualityValue, [condition value], conditionEval); + } else if ([condition comparator] == CompareLess) { + conditionEval = ( qualityValue < [[condition value] unsignedIntValue] ) ? YES : NO; + log(LOG_CONDITION, @" %d > %@ is %d", qualityValue, [condition value], conditionEval); + } else goto loopEnd; + break; + } + break; + + case VarietyStatus:; + log(LOG_CONDITION, @"Doing Status condition..."); + // check alive status + if( [condition state] == StateAlive ) { + if( [condition unit] == UnitPlayer) conditionEval = ( [condition comparator] == CompareIs ) ? ![playerController isDead] : [playerController isDead]; + else if( [condition unit] == UnitTarget ) conditionEval = ( [condition comparator] == CompareIs ) ? ![target isDead] : [target isDead]; + else if( [condition unit] == UnitFriendlies ) conditionEval = [self evaluateConditionFriendlies:condition]; + else if( [condition unit] == UnitEnemies ) conditionEval = [self evaluateConditionEnemies:condition]; + else if( [condition unit] == UnitPlayerPet) { + if (playerController.pet == nil) conditionEval = ([condition comparator] == CompareIs) ? NO : YES; + else conditionEval = ( [condition comparator] == CompareIs ) ? ![playerController.pet isDead] : [playerController.pet isDead]; + } else goto loopEnd; + log(LOG_CONDITION, @" Alive? %d", conditionEval); + } + + // check combat status + if( [condition state] == StateCombat ) { + if( [condition unit] == UnitPlayer) conditionEval = ( [condition comparator] == CompareIs ) ? [combatController inCombat] : ![combatController inCombat]; + else if( [condition unit] == UnitTarget ) conditionEval = ( [condition comparator] == CompareIs ) ? [target isInCombat] : ![target isInCombat]; + else if( [condition unit] == UnitFriendlies ) conditionEval = [self evaluateConditionFriendlies:condition]; + else if( [condition unit] == UnitEnemies ) conditionEval = [self evaluateConditionEnemies:condition]; + else if( [condition unit] == UnitPlayerPet) conditionEval = ( [condition comparator] == CompareIs ) ? [playerController.pet isInCombat] : ![playerController.pet isInCombat]; + else goto loopEnd; + log(LOG_CONDITION, @" Combat? %d", conditionEval); + } + + // check casting status + if( [condition state] == StateCasting ) { + if( [condition unit] == UnitPlayer) conditionEval = ( [condition comparator] == CompareIs ) ? [playerController isCasting] : ![playerController isCasting]; + else if( [condition unit] == UnitTarget ) conditionEval = ( [condition comparator] == CompareIs ) ? [target isCasting] : ![target isCasting]; + else if( [condition unit] == UnitFriendlies ) conditionEval = [self evaluateConditionFriendlies:condition]; + else if( [condition unit] == UnitEnemies ) conditionEval = [self evaluateConditionEnemies:condition]; + else if( [condition unit] == UnitPlayerPet) conditionEval = ( [condition comparator] == CompareIs ) ? [playerController.pet isCasting] : ![playerController.pet isCasting]; + goto loopEnd; + log(LOG_CONDITION, @" Casting? %d", conditionEval); + } + + // check swimming status + if( [condition state] == StateSwimming ) { + if ( [condition unit] == UnitPlayer) conditionEval = ( [condition comparator] == CompareIs ) ? [[playerController player]isSwimming] : ![[playerController player]isSwimming]; + else if( [condition unit] == UnitTarget ) conditionEval = ( [condition comparator] == CompareIs ) ? [target isSwimming] : ![target isSwimming]; + else if( [condition unit] == UnitFriendlies ) conditionEval = [self evaluateConditionFriendlies:condition]; + else if( [condition unit] == UnitEnemies ) conditionEval = [self evaluateConditionEnemies:condition]; + else if( [condition unit] == UnitPlayerPet) conditionEval = ( [condition comparator] == CompareIs ) ? [playerController.pet isSwimming] : ![playerController.pet isSwimming]; + goto loopEnd; + log(LOG_CONDITION, @" Swimming? %d", conditionEval); + } + + // check targeting me status + if( [condition state] == StateTargetingMe ) { + if ( [condition unit] == UnitPlayer) conditionEval = ( [condition comparator] == CompareIs ) ? [[playerController player] isTargetingMe] : ![[playerController player] isTargetingMe]; + else if( [condition unit] == UnitTarget ) conditionEval = ( [condition comparator] == CompareIs ) ? [target isTargetingMe] : ![target isTargetingMe]; + else if( [condition unit] == UnitFriendlies ) conditionEval = [self evaluateConditionFriendlies:condition]; + else if( [condition unit] == UnitEnemies ) conditionEval = [self evaluateConditionEnemies:condition]; + else if( [condition unit] == UnitPlayerPet) conditionEval = ( [condition comparator] == CompareIs ) ? [playerController.pet isTargetingMe] : ![playerController.pet isTargetingMe]; + goto loopEnd; + + log(LOG_CONDITION, @" Targeting me? %d", conditionEval); + } + + // check tank status + if( [condition state] == StateTank ) { + if ( [condition unit] == UnitTarget ) conditionEval = ( [condition comparator] == CompareIs ) ? [self isTank: (Unit*)target] : ![self isTank: (Unit*)target]; + else if( [condition unit] == UnitFriendlies ) conditionEval = [self evaluateConditionFriendlies:condition]; + + goto loopEnd; + + log(LOG_CONDITION, @" Tank? %d", conditionEval); + } + + // IS THE UNIT MOUNTED? + if( [condition state] == StateMounted ) { + if (test) log(LOG_CONDITION, @"Doing State IsMounted condition..."); + if( [condition unit] == UnitFriendlies ) { + conditionEval = [self evaluateConditionFriendlies:condition]; + } else + if( [condition unit] == UnitEnemies ) { + conditionEval = [self evaluateConditionEnemies:condition]; + } else { + Unit *aUnit = nil; + if( [condition unit] == UnitPlayer) aUnit = thePlayer; + else if( [condition unit] == UnitTarget || [condition unit] == UnitFriendlies ) aUnit = target; + else if( [condition unit] == UnitPlayerPet) aUnit = playerController.pet; + if (test) log(LOG_CONDITION, @" --> Testing unit %@", aUnit); + + if ([aUnit isValid]) { + conditionEval = ( [condition comparator] == CompareIs ) ? [aUnit isMounted] : ![aUnit isMounted]; + if (test) log(LOG_CONDITION, @" --> Unit is mounted? %@", YES_NO(conditionEval)); + } else { + if (test) log(LOG_CONDITION, @" --> Unit is invalid."); + } + } + } + + break; + + case VarietyAura:; + log(LOG_CONDITION, @"-- Checking aura condition --"); + unsigned spellID = 0; + NSString *dispelType = nil; + BOOL doDispelCheck = ([condition quality] == QualityBuffType) || ([condition quality] == QualityDebuffType); + // sanity checks + if(!doDispelCheck) { + if( [condition type] == TypeValue) spellID = [[condition value] unsignedIntValue]; + + if( ([condition type] == TypeValue) && !spellID) { + // invalid spell ID + goto loopEnd; + } else if( [condition type] == TypeString && (![condition value] || ![[condition value] length])) { + // invalid spell name + goto loopEnd; + } + } else { + if( ([condition state] < StateMagic) || ([condition state] > StatePoison)) { + // invalid dispel type + goto loopEnd; + } else { + if([condition state] == StateMagic) dispelType = DispelTypeMagic; + if([condition state] == StateCurse) dispelType = DispelTypeCurse; + if([condition state] == StatePoison) dispelType = DispelTypePoison; + if([condition state] == StateDisease) dispelType = DispelTypeDisease; + } + } + + log(LOG_CONDITION, @" Searching for spell '%@'", [condition value]); + + if( [condition unit] == UnitFriendlies ) { + conditionEval = [self evaluateConditionFriendlies:condition]; + } else + if( [condition unit] == UnitEnemies ) { + conditionEval = [self evaluateConditionEnemies:condition]; + } else { + if( [condition unit] == UnitPlayer ) { + if( ![playerController playerIsValid:self]) goto loopEnd; + aUnit = thePlayer; + } else { + aUnit = ([condition unit] == UnitTarget || [condition unit] == UnitFriendlies) ? target : [playerController pet]; + } + + if( [aUnit isValid]) { + if( [condition quality] == QualityBuff ) { + if([condition type] == TypeValue) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: aUnit hasBuff: spellID] : ![auraController unit: aUnit hasBuff: spellID]; + if([condition type] == TypeString) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: aUnit hasBuffNamed: [condition value]] : ![auraController unit: aUnit hasBuffNamed: [condition value]]; + } else if([condition quality] == QualityDebuff) { + if([condition type] == TypeValue) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: aUnit hasDebuff: spellID] : ![auraController unit: aUnit hasDebuff: spellID]; + if([condition type] == TypeString) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: aUnit hasDebuffNamed: [condition value]] : ![auraController unit: aUnit hasDebuffNamed: [condition value]]; + } else if([condition quality] == QualityBuffType) { + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: aUnit hasBuffType: dispelType] : ![auraController unit: aUnit hasBuffType: dispelType]; + } else if([condition quality] == QualityDebuffType) { + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: aUnit hasDebuffType: dispelType] : ![auraController unit: aUnit hasDebuffType: dispelType]; + } + } + + } + + break; + + case VarietyAuraStack:; + spellID = 0; + dispelType = nil; + log(LOG_CONDITION, @"Doing Aura Stack condition..."); + // sanity checks + if(([condition type] != TypeValue) && ([condition type] != TypeString)) { + if(test) log(LOG_CONDITION, @" --> Invalid condition type."); + goto loopEnd; + } + if( [condition type] == TypeValue) { + spellID = [[condition value] unsignedIntValue]; + if(spellID == 0) { // invalid spell ID + if(test) log(LOG_CONDITION, @" --> Invalid spell number"); + goto loopEnd; + } else { + if(test) log(LOG_CONDITION, @" --> Scanning for aura %u", spellID); + } + } + if( [condition type] == TypeString) { + if( ![[condition value] isKindOfClass: [NSString class]] || ![[condition value] length] ) { + if(test) log(LOG_CONDITION, @" --> Invalid or blank Spell name."); + goto loopEnd; + } else { + if(test) log(LOG_CONDITION, @" --> Scanning for aura \"%@\"", [condition value]); + } + } + + + if( [condition unit] == UnitFriendlies ) { + conditionEval = [self evaluateConditionFriendlies:condition]; + } else + if( [condition unit] == UnitEnemies ) { + conditionEval = [self evaluateConditionEnemies:condition]; + } else { + + aUnit = nil; + if( [condition unit] == UnitPlayer ) { + if( ![playerController playerIsValid:self]) goto loopEnd; + aUnit = thePlayer; + } else { + aUnit = ([condition unit] == UnitTarget || [condition unit] == UnitFriendlies) ? target : [playerController pet]; + } + + if( [aUnit isValid]) { + log(LOG_CONDITION, @"Testing unit %@ for %d", aUnit, spellID); + int stackCount = 0; + if( [condition quality] == QualityBuff ) { + if([condition type] == TypeValue) stackCount = [auraController unit: aUnit hasBuff: spellID]; + if([condition type] == TypeString) stackCount = [auraController unit: aUnit hasBuffNamed: [condition value]]; + } else if([condition quality] == QualityDebuff) { + if([condition type] == TypeValue) stackCount = [auraController unit: aUnit hasDebuff: spellID]; + if([condition type] == TypeString) stackCount = [auraController unit: aUnit hasDebuffNamed: [condition value]]; + } + + if([condition comparator] == CompareMore) conditionEval = (stackCount > [condition state]); + if([condition comparator] == CompareEqual) conditionEval = (stackCount == [condition state]); + if([condition comparator] == CompareLess) conditionEval = (stackCount < [condition state]); + if(test) log(LOG_CONDITION, @" --> Found %d stacks for result %@", stackCount, (conditionEval ? @"TRUE" : @"FALSE")); + // conditionEval = ([condition comparator] == CompareMore) ? (stackCount > [condition state]) : (([condition comparator] == CompareEqual) ? (stackCount == [condition state]) : (stackCount < [condition state])); + } + } + + break; + + case VarietyDistance:; + if( [condition unit] == UnitTarget && [condition quality] == QualityDistance && target) { + float distanceToTarget = [[(PlayerDataController*)playerController position] distanceToPosition: [target position]]; + log(LOG_CONDITION, @"-- Checking distance condition --"); + + if( [condition comparator] == CompareMore) { + conditionEval = ( distanceToTarget > [[condition value] floatValue] ) ? YES : NO; + log(LOG_CONDITION, @" %f > %@ is %d", distanceToTarget, [condition value], conditionEval); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( distanceToTarget == [[condition value] floatValue] ) ? YES : NO; + log(LOG_CONDITION, @" %f = %@ is %d", distanceToTarget, [condition value], conditionEval); + } else if([condition comparator] == CompareLess) { + conditionEval = ( distanceToTarget < [[condition value] floatValue] ) ? YES : NO; + log(LOG_CONDITION, @" %f < %@ is %d", distanceToTarget, [condition value], conditionEval); + } else goto loopEnd; + } + + break; + + case VarietyInventory:; + if( [condition unit] == UnitPlayer && [condition quality] == QualityInventory) { + log(LOG_CONDITION, @"-- Checking inventory condition --"); + Item *item = ([condition type] == TypeValue) ? [itemController itemForID: [condition value]] : [itemController itemForName: [condition value]]; + int totalCount = [itemController collectiveCountForItemInBags: item]; + if( [condition comparator] == CompareMore) conditionEval = (totalCount > [condition state]) ? YES : NO; + if( [condition comparator] == CompareEqual) conditionEval = (totalCount == [condition state]) ? YES : NO; + if( [condition comparator] == CompareLess) conditionEval = (totalCount < [condition state]) ? YES : NO; + } + break; + + case VarietyComboPoints:; + log(LOG_CONDITION, @"Doing Combo Points condition..."); + UInt32 class = [thePlayer unitClass]; + if( (class != UnitClass_Rogue) && (class != UnitClass_Druid) ) { + log(LOG_CONDITION, @" --> You are not a rogue or druid, noob."); + goto loopEnd; + } + if( ([condition unit] == UnitPlayer) && ([condition quality] == QualityComboPoints) && target) { + // either we have no CP target, or our CP target matched our current target + UInt64 cpUID = [playerController comboPointUID]; + if( (cpUID == 0) || ([target cachedGUID] == cpUID)) { + int comboPoints = [playerController comboPoints]; + log(LOG_CONDITION, @" --> Found %d combo points.", comboPoints); + if( [condition comparator] == CompareMore) { + conditionEval = ( comboPoints > [[condition value] intValue] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d > %@ is %@.", comboPoints, [condition value], TRUE_FALSE(conditionEval)); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( comboPoints == [[condition value] intValue] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d = %@ is %@.", comboPoints, [condition value], TRUE_FALSE(conditionEval)); + } else if([condition comparator] == CompareLess) { + conditionEval = ( comboPoints < [[condition value] intValue] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d < %@ is %@.", comboPoints, [condition value], TRUE_FALSE(conditionEval)); + } else goto loopEnd; + } + } + break; + + case VarietyTotem:; + log(LOG_CONDITION, @"Doing Totem condition..."); + if( ![condition value] || ![[condition value] length] || ![[condition value] isKindOfClass: [NSString class]] ) { + if(test) log(LOG_CONDITION, @" --> Invalid totem name."); + goto loopEnd; + } + if( ([condition unit] != UnitPlayer) || ([condition quality] != QualityTotem)) { + log(LOG_CONDITION, @" --> Invalid condition parameters."); + goto loopEnd; + } + if( [thePlayer unitClass] != UnitClass_Shaman ) { + log(LOG_CONDITION, @" --> You are not a shaman, noob."); + goto loopEnd; + } + + // we need to rescan the mob list before we check for active totems + // [mobController enumerateAllMobs]; + BOOL foundTotem = NO; + for(Mob* mob in [mobController allMobs]) { + if( [mob isTotem] && ([mob createdBy] == [[playerController player] cachedGUID]) ) { + NSRange range = [[mob name] rangeOfString: [condition value] options: NSCaseInsensitiveSearch | NSAnchoredSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound) { + foundTotem = YES; + log(LOG_CONDITION, @" --> Found totem %@ matching \"%@\".", mob, [condition value]); + break; + } + } + } + if(!foundTotem && test) log(LOG_CONDITION, @" --> No totem found with name \"%@\"", [condition value]); + conditionEval = ([condition comparator] == CompareExists) ? foundTotem : !foundTotem; + break; + + case VarietyTempEnchant:; + log(LOG_CONDITION, @"Doing Temp Enchant condition..."); + Item *item = [itemController itemForGUID: [thePlayer itemGUIDinSlot: ([condition quality] == QualityMainhand) ? SLOT_MAIN_HAND : SLOT_OFF_HAND]]; + log(LOG_CONDITION, @" --> Got item %@.", item); + BOOL hadEnchant = [item hasTempEnchantment]; + conditionEval = ([condition comparator] == CompareExists) ? hadEnchant : !hadEnchant; + log(LOG_CONDITION, @" --> Had enchant? %@. Result is %@.", YES_NO(hadEnchant), TRUE_FALSE(conditionEval)); + break; + + case VarietyTargetType:; + log(LOG_CONDITION, @"Doing Target Type condition..."); + if([condition quality] == QualityNPC) { + conditionEval = [target isNPC]; + log(LOG_CONDITION, @" --> Is NPC? %@", YES_NO(conditionEval)); + } + if([condition quality] == QualityPlayer) { + conditionEval = [target isPlayer]; + log(LOG_CONDITION, @" --> Is Player? %@", YES_NO(conditionEval)); + } + break; + + case VarietyTargetClass:; + log(LOG_CONDITION, @"Doing Target Class condition..."); + if([condition quality] == QualityNPC) { + conditionEval = ( [condition comparator] == CompareIs ) ? ( [target creatureType] == [condition state]) : ([target creatureType] != [condition state]); +// conditionEval = ([target creatureType] == [condition state]); + log(LOG_CONDITION, @" --> Unit Creature Type %d == %d? %@", [condition state], [target creatureType], YES_NO(conditionEval)); + } + if([condition quality] == QualityPlayer) { + conditionEval = ( [condition comparator] == CompareIs ) ? ( [target unitClass] == [condition state] ) : ([target unitClass] != [condition state]); +// conditionEval = ([target unitClass] == [condition state]); + log(LOG_CONDITION, @" --> Unit Class %d == %d? %@", [condition state], [target unitClass], YES_NO(conditionEval)); + } + break; + + case VarietyCombatCount:; + log(LOG_CONDITION, @"Doing Combat Count condition..."); + int unitsAttackingMe = [[combatController combatList] count]; + log(LOG_CONDITION, @" --> Found %d units attacking me.", unitsAttackingMe); + if( [condition comparator] == CompareMore) { + conditionEval = ( unitsAttackingMe > [condition state] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d > %d is %@.", unitsAttackingMe, [condition state], TRUE_FALSE(conditionEval)); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( unitsAttackingMe == [condition state] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d = %d is %@.", unitsAttackingMe, [condition state], TRUE_FALSE(conditionEval)); + } else if([condition comparator] == CompareLess) { + conditionEval = ( unitsAttackingMe < [condition state] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d < %d is %@.", unitsAttackingMe, [condition state], TRUE_FALSE(conditionEval)); + } else goto loopEnd; + break; + + case VarietyProximityCount:; + log(LOG_CONDITION, @"Doing Proximity Count condition..."); + float distance = [[condition value] floatValue]; + // get list of all possible targets + NSArray *allTargets = [combatController enemiesWithinRange:distance]; + int inRangeCount = [allTargets count]; + log(LOG_CONDITION, @" --> Found %d total units.", [allTargets count]); + // compare with specified number of units + if( [condition comparator] == CompareMore) { + conditionEval = ( inRangeCount > [condition state] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d > %d is %@.", inRangeCount, [condition state], TRUE_FALSE(conditionEval)); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( inRangeCount == [condition state] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d = %d is %@.", inRangeCount, [condition state], TRUE_FALSE(conditionEval)); + } else if([condition comparator] == CompareLess) { + conditionEval = ( inRangeCount < [condition state] ) ? YES : NO; + log(LOG_CONDITION, @" --> %d < %d is %@.", inRangeCount, [condition state], TRUE_FALSE(conditionEval)); + } else goto loopEnd; + break; + + case VarietySpellCooldown:; + log(LOG_CONDITION, @"Doing Spell Cooldown condition..."); + BOOL onCD = NO; + + // checking by spell ID + if ( [condition type] == TypeValue ){ + unsigned spellID = [[condition value] unsignedIntValue]; + if ( !spellID ) goto loopEnd; + // check + onCD = [spellController isSpellOnCooldown:spellID]; + conditionEval = ( [condition comparator] == CompareIs ) ? onCD : !onCD; + log(LOG_CONDITION, @" Spell %d is (not? %d) on cooldown? %d", spellID, [condition comparator] == CompareIsNot, onCD); + } + // checking by spell ID + else if ( [condition type] == TypeString ){ + // sanity check + if ( ![condition value] || ![[condition value] length] ) goto loopEnd; + Spell *spell = [spellController spellForName:[condition value]]; + if ( spell && [spell ID] ){ + onCD = [spellController isSpellOnCooldown:[[spell ID] unsignedIntValue]]; + conditionEval = ( [condition comparator] == CompareIs ) ? onCD : !onCD; + log(LOG_CONDITION, @" Spell %@ is (not? %d) on cooldown? %d", spell, [condition comparator] == CompareIsNot, conditionEval); + } + } + break; + + case VarietyLastSpellCast:; + // checking by spell ID + if ( [condition type] == TypeValue ){ + unsigned spellID = [[condition value] unsignedIntValue]; + if ( !spellID ) goto loopEnd; + + // check + BOOL spellCast = (_lastSpellCast == spellID); + conditionEval = ( [condition comparator] == CompareIs ) ? spellCast : !spellCast; + log(LOG_CONDITION, @" Spell %d was%@ the last spell cast. (%d was)", spellID, (([condition comparator] == CompareIs ) ? @"" : @" not"), _lastSpellCast); + } + // checking by spell ID + else if ( [condition type] == TypeString ){ + // sanity check + if ( ![condition value] || ![[condition value] length] ) goto loopEnd; + Spell *spell = [spellController spellForName:[condition value]]; + if ( spell && [spell ID] ){ + BOOL spellCast = (_lastSpellCast == [[spell ID] unsignedIntValue]); + conditionEval = ( [condition comparator] == CompareIs ) ? spellCast : !spellCast; + log(LOG_CONDITION, @" Spell %d was%@ the last spell cast. (%d was)", [[spell ID] unsignedIntValue], (([condition comparator] == CompareIs ) ? @"" : @" not"), _lastSpellCast); + } + } + break; + + case VarietyRune:; + if(test) log(LOG_GENERAL, @"Doing Rune condition..."); + // get our rune type + int runeType = RuneType_Blood; + if ( [condition quality] == QualityRuneUnholy ) runeType = RuneType_Unholy; + else if ( [condition quality] == QualityRuneFrost ) runeType = RuneType_Frost; + else if ( [condition quality] == QualityRuneDeath ) runeType = RuneType_Death; + + // quality value + int runesAvailable = [playerController runesAvailable:runeType]; + // now we have the value of the quality + if( [condition comparator] == CompareMore) { + conditionEval = ( runesAvailable > [[condition value] unsignedIntValue] ) ? YES : NO; + //log(LOG_GENERAL, @" %d > %@ is %d", runesAvailable, [condition value], conditionEval); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( runesAvailable == [[condition value] unsignedIntValue] ) ? YES : NO; + //log(LOG_GENERAL, @" %d = %@ is %d", runesAvailable, [condition value], conditionEval); + } else if([condition comparator] == CompareLess) { + conditionEval = ( runesAvailable < [[condition value] unsignedIntValue] ) ? YES : NO; + //log(LOG_GENERAL, @" %d < %@ is %d", runesAvailable, [condition value], conditionEval); + } else goto loopEnd; + if (test) log(LOG_GENERAL, @" Checking type %d - is %d equal to %@", runeType, [playerController runesAvailable:runeType], [condition value]); + break; + + case VarietyPlayerLevel:; + if(test) log(LOG_GENERAL, @"Doing Player level condition..."); + int level = [[condition value] intValue]; + int playerLevel = [playerController level]; + + // check level + if( [condition comparator] == CompareMore) { + conditionEval = ( playerLevel > level ) ? YES : NO; + //log(LOG_GENERAL, @" %d > %d is %d", playerLevel, level, conditionEval); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( playerLevel == level ) ? YES : NO; + //log(LOG_GENERAL, @" %d = %d is %d", playerLevel, level, conditionEval); + } else if([condition comparator] == CompareLess) { + conditionEval = ( playerLevel < level ) ? YES : NO; + //log(LOG_GENERAL, @" %d < %d is %d", playerLevel, level, conditionEval); + } else goto loopEnd; + break; + + case VarietyPlayerZone:; + if(test) log(LOG_GENERAL, @"Doing Player zone condition..."); + int zone = [[condition value] intValue]; + int playerZone = [playerController zone]; + // check zone + if( [condition comparator] == CompareIs) { + conditionEval = ( zone == playerZone ) ? YES : NO; + log(LOG_GENERAL, @" %d = %d is %d", zone, playerZone, conditionEval); + } else if([condition comparator] == CompareIsNot) { + conditionEval = ( zone != playerZone ) ? YES : NO; + log(LOG_GENERAL, @" %d != %d is %d", zone, playerZone, conditionEval); + } else goto loopEnd; + break; + + case VarietyInventoryFree:; + if(test) log(LOG_GENERAL, @"Doing free inventory condition..."); + int freeSpaces = [[condition value] intValue]; + int totalFree = [itemController bagSpacesAvailable]; + + // check free spaces + if( [condition comparator] == CompareMore) { + conditionEval = ( totalFree > freeSpaces ) ? YES : NO; + //log(LOG_GENERAL, @" %d > %d is %d", totalFree, freeSpaces, conditionEval); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( totalFree == freeSpaces ) ? YES : NO; + //log(LOG_GENERAL, @" %d = %d is %d", totalFree, freeSpaces, conditionEval); + } else if([condition comparator] == CompareLess) { + conditionEval = ( totalFree < freeSpaces ) ? YES : NO; + //log(LOG_GENERAL, @" %d < %d is %d", totalFree, freeSpaces, conditionEval); + } else goto loopEnd; + + break; + + case VarietyDurability:; + log(LOG_CONDITION, @"Doing durability condition..."); + float averageDurability = [itemController averageWearableDurability]; + float durabilityPercentage = [[condition value] floatValue]; + log(LOG_CONDITION, @"%0.2f %0.2f", averageDurability, durabilityPercentage); + // generally means we haven't updated our arrays yet in inventoryController + if ( averageDurability == 0 ) goto loopEnd; + // check free spaces + if( [condition comparator] == CompareMore) { + conditionEval = ( averageDurability > durabilityPercentage ) ? YES : NO; + log(LOG_CONDITION, @" %0.2f > %0.2f is %d", averageDurability, durabilityPercentage, conditionEval); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( averageDurability == durabilityPercentage ) ? YES : NO; + log(LOG_CONDITION, @" %0.2f = %0.2f is %d", averageDurability, durabilityPercentage, conditionEval); + } else if([condition comparator] == CompareLess) { + conditionEval = ( averageDurability < durabilityPercentage ) ? YES : NO; + log(LOG_CONDITION, @" %0.2f < %0.2f is %d", averageDurability, durabilityPercentage, conditionEval); + } else goto loopEnd; + break; + + case VarietyMobsKilled:; + log(LOG_CONDITION, @"Doing mobs killed condition..."); + int entryID = [[condition value] intValue]; + int killCount = [condition state]; + int realKillCount = [statisticsController killCountForEntryID:entryID]; + // check free spaces + if( [condition comparator] == CompareMore) { + conditionEval = ( realKillCount > killCount ) ? YES : NO; + log(LOG_CONDITION, @" %d > %d is %d", realKillCount, killCount, conditionEval); + } else if([condition comparator] == CompareEqual) { + conditionEval = ( realKillCount == killCount ) ? YES : NO; + log(LOG_CONDITION, @" %d = %d is %d", realKillCount, killCount, conditionEval); + } else if([condition comparator] == CompareLess) { + conditionEval = ( realKillCount < killCount ) ? YES : NO; + log(LOG_CONDITION, @" %d < %d is %d", realKillCount, killCount, conditionEval); + } else goto loopEnd; + + break; + + case VarietyGate:; + log(LOG_CONDITION, @"Doing gate condition..."); + // grab our gate ID + int quality = [condition quality]; + int gateEntryID = 0; + if ( quality == QualityBlueGate ) gateEntryID = StrandGateOfTheBlueSapphire; + else if ( quality == QualityGreenGate ) gateEntryID = StrandGateOfTheGreenEmerald; + else if ( quality == QualityPurpleGate ) gateEntryID = StrandGateOfThePurpleAmethyst; + else if ( quality == QualityRedGate ) gateEntryID = StrandGateOfTheRedSun; + else if ( quality == QualityYellowGate) gateEntryID = StrandGateOfTheYellowMoon; + else if ( quality == QualityChamber) gateEntryID = StrandChamberOfAncientRelics; + Node *gate = [nodeController nodeWithEntryID:gateEntryID]; + if ( !gate ) goto loopEnd; + BOOL destroyed = ([gate objectHealth] == 0) ? YES : NO; + if ( [condition comparator] == CompareIs ) { + conditionEval = destroyed; + log(LOG_CONDITION, @" %d is destroyed? %d", gateEntryID, conditionEval); + } else if ( [condition comparator] == CompareIsNot ) { + conditionEval = !destroyed; + log(LOG_CONDITION, @" %d is not destroyed? %d", gateEntryID, conditionEval); + } else goto loopEnd; + break; + + case VarietyStrandStatus:; + log(LOG_CONDITION, @"Doing battleground status condition..."); + if ( [condition quality] == QualityAttacking ){ + conditionEval = _attackingInStrand; + log(LOG_CONDITION, @" checking if we're attacking in strand? %d", conditionEval); + } else if ( [condition quality] == QualityDefending ){ + conditionEval = !_attackingInStrand; + log(LOG_CONDITION, @" checking if we're defending in strand? %d", conditionEval); + } else goto loopEnd; + break; + + default:; + log(LOG_CONDITION, @"checking for %d", [condition variety]); + break; + } + + loopEnd: + if(conditionEval) numMatched++; + // shortcut bail if we can + if ([rule isMatchAll]) { + if(!conditionEval) return NO; + } else { + if(conditionEval) return YES; + } + } + + if(numMatched >= needToMatch) return YES; + return NO; +} + +- (BOOL)evaluateConditionFriendlies: (Condition*)condition { + + BOOL conditionEval = NO; + Unit *target = nil; + NSArray *friends = nil; + + switch ( [condition variety] ) { + + case VarietyStatus:; + log(LOG_CONDITION, @"Doing Status condition for friendlies..."); + + if (!friends) friends = [combatController friendlyUnits]; + + // Let's loop through friends to find a target + for ( target in friends ) { + + // check alive status + if( [condition state] == StateAlive ) { + conditionEval = ( [condition comparator] == CompareIs ) ? ![target isDead] : [target isDead]; + log(LOG_CONDITION, @" Alive? %d", conditionEval); + } + + // check combat status + if( [condition state] == StateCombat ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isInCombat] : ![target isInCombat]; + log(LOG_CONDITION, @" Combat? %d", conditionEval); + } + + // check casting status + if( [condition state] == StateCasting ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isCasting] : ![target isCasting]; + log(LOG_CONDITION, @" Casting? %d", conditionEval); + } + + // check swimming status + if( [condition state] == StateSwimming ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isSwimming] : ![target isSwimming]; + log(LOG_CONDITION, @" Swimming? %d", conditionEval); + } + + // check targeting me status + if( [condition state] == StateTargetingMe ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isTargetingMe] : ![target isTargetingMe]; + log(LOG_CONDITION, @" Targeting me? %d", conditionEval); + } + + // check tank status + if( [condition state] == StateTank ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [self isTank: (Unit*)target] : ![self isTank: (Unit*)target]; + log(LOG_CONDITION, @" Tank? %d", conditionEval); + } + + // IS THE UNIT MOUNTED? + if( [condition state] == StateMounted ) { + log(LOG_CONDITION, @"Doing State IsMounted condition..."); + conditionEval = ( [condition comparator] == CompareIs ) ? [target isMounted] : ![target isMounted]; + } + } + + break; + + case VarietyAura:; + + log(LOG_CONDITION, @"-- Checking aura condition --"); + unsigned spellID = 0; + NSString *dispelType = nil; + BOOL doDispelCheck = ([condition quality] == QualityBuffType) || ([condition quality] == QualityDebuffType); + + // sanity checks + if(!doDispelCheck) { + if( [condition type] == TypeValue) spellID = [[condition value] unsignedIntValue]; + + if( ([condition type] == TypeValue) && !spellID) { + // invalid spell ID + goto loopEnd; + } else if( [condition type] == TypeString && (![condition value] || ![[condition value] length])) { + // invalid spell name + goto loopEnd; + } + } else { + if( ([condition state] < StateMagic) || ([condition state] > StatePoison)) { + // invalid dispel type + goto loopEnd; + } else { + if([condition state] == StateMagic) dispelType = DispelTypeMagic; + if([condition state] == StateCurse) dispelType = DispelTypeCurse; + if([condition state] == StatePoison) dispelType = DispelTypePoison; + if([condition state] == StateDisease) dispelType = DispelTypeDisease; + } + } + + log(LOG_CONDITION, @" Searching for spell '%@'", [condition value]); + + if (!friends) friends = [combatController friendlyUnits]; + + // Let's loop through friends to find a target + for ( target in friends ) { + + if( [condition quality] == QualityBuff ) { + if([condition type] == TypeValue) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasBuff: spellID] : ![auraController unit: target hasBuff: spellID]; + if([condition type] == TypeString) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasBuffNamed: [condition value]] : ![auraController unit: target hasBuffNamed: [condition value]]; + } else + + if([condition quality] == QualityDebuff) { + if([condition type] == TypeValue) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasDebuff: spellID] : ![auraController unit: target hasDebuff: spellID]; + if([condition type] == TypeString) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasDebuffNamed: [condition value]] : ![auraController unit: target hasDebuffNamed: [condition value]]; + } else + + if([condition quality] == QualityBuffType) { + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasBuffType: dispelType] : ![auraController unit: target hasBuffType: dispelType]; + } else + + if([condition quality] == QualityDebuffType) { + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasDebuffType: dispelType] : ![auraController unit: target hasDebuffType: dispelType]; + } + + } + + break; + + case VarietyAuraStack:; + spellID = 0; + dispelType = nil; + log(LOG_CONDITION, @"Doing Aura Stack condition..."); + // sanity checks + if(([condition type] != TypeValue) && ([condition type] != TypeString)) { + log(LOG_CONDITION, @" --> Invalid condition type."); + goto loopEnd; + } + if( [condition type] == TypeValue) { + spellID = [[condition value] unsignedIntValue]; + if(spellID == 0) { // invalid spell ID + log(LOG_CONDITION, @" --> Invalid spell number"); + goto loopEnd; + } else { + log(LOG_CONDITION, @" --> Scanning for aura %u", spellID); + } + } + if( [condition type] == TypeString) { + if( ![[condition value] isKindOfClass: [NSString class]] || ![[condition value] length] ) { + log(LOG_CONDITION, @" --> Invalid or blank Spell name."); + goto loopEnd; + } else { + log(LOG_CONDITION, @" --> Scanning for aura \"%@\"", [condition value]); + } + } + + log(LOG_CONDITION, @"Testing for %d", spellID); + + if (!friends) friends = [combatController friendlyUnits]; + + // Let's loop through friends to find a target + for ( target in friends ) { + + int stackCount = 0; + if( [condition quality] == QualityBuff ) { + if([condition type] == TypeValue) stackCount = [auraController unit: target hasBuff: spellID]; + if([condition type] == TypeString) stackCount = [auraController unit: target hasBuffNamed: [condition value]]; + } else if([condition quality] == QualityDebuff) { + if([condition type] == TypeValue) stackCount = [auraController unit: target hasDebuff: spellID]; + if([condition type] == TypeString) stackCount = [auraController unit: target hasDebuffNamed: [condition value]]; + } + + if([condition comparator] == CompareMore) conditionEval = (stackCount > [condition state]); + if([condition comparator] == CompareEqual) conditionEval = (stackCount == [condition state]); + if([condition comparator] == CompareLess) conditionEval = (stackCount < [condition state]); + log(LOG_CONDITION, @" --> Found %d stacks for result %@", stackCount, (conditionEval ? @"TRUE" : @"FALSE")); + } + + break; + + default:; + if (conditionEval) return YES; + break; + + loopEnd: + if (conditionEval) return YES; + + } + + if (conditionEval) return YES; + return NO; +} + +- (BOOL)evaluateConditionEnemies: (Condition*)condition { + + BOOL conditionEval = NO; + Unit *target = nil; + NSArray *enemies = nil; + + switch ( [condition variety] ) { + + case VarietyStatus:; + log(LOG_CONDITION, @"Doing Status condition for friendlies..."); + + if (!enemies) enemies = [combatController allAdds]; + + // Let's loop through friends to find a target + for ( target in enemies ) { + + // check alive status + if( [condition state] == StateAlive ) { + conditionEval = ( [condition comparator] == CompareIs ) ? ![target isDead] : [target isDead]; + log(LOG_CONDITION, @" Alive? %d", conditionEval); + } + + // check combat status + if( [condition state] == StateCombat ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isInCombat] : ![target isInCombat]; + log(LOG_CONDITION, @" Combat? %d", conditionEval); + } + + // check casting status + if( [condition state] == StateCasting ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isCasting] : ![target isCasting]; + log(LOG_CONDITION, @" Casting? %d", conditionEval); + } + + // check swimming status + if( [condition state] == StateSwimming ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isSwimming] : ![target isSwimming]; + log(LOG_CONDITION, @" Swimming? %d", conditionEval); + } + + // check targeting me status + if( [condition state] == StateTargetingMe ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [target isTargetingMe] : ![target isTargetingMe]; + log(LOG_CONDITION, @" Targeting me? %d", conditionEval); + } + + // check tank status + if( [condition state] == StateTank ) { + conditionEval = ( [condition comparator] == CompareIs ) ? [self isTank: (Unit*)target] : ![self isTank: (Unit*)target]; + log(LOG_CONDITION, @" Tank? %d", conditionEval); + } + + // IS THE UNIT MOUNTED? + if( [condition state] == StateMounted ) { + log(LOG_CONDITION, @"Doing State IsMounted condition..."); + conditionEval = ( [condition comparator] == CompareIs ) ? [target isMounted] : ![target isMounted]; + } + } + + break; + + case VarietyAura:; + + log(LOG_CONDITION, @"-- Checking aura condition --"); + unsigned spellID = 0; + NSString *dispelType = nil; + BOOL doDispelCheck = ([condition quality] == QualityBuffType) || ([condition quality] == QualityDebuffType); + + // sanity checks + if(!doDispelCheck) { + if( [condition type] == TypeValue) spellID = [[condition value] unsignedIntValue]; + + if( ([condition type] == TypeValue) && !spellID) { + // invalid spell ID + goto loopEnd; + } else if( [condition type] == TypeString && (![condition value] || ![[condition value] length])) { + // invalid spell name + goto loopEnd; + } + } else { + if( ([condition state] < StateMagic) || ([condition state] > StatePoison)) { + // invalid dispel type + goto loopEnd; + } else { + if([condition state] == StateMagic) dispelType = DispelTypeMagic; + if([condition state] == StateCurse) dispelType = DispelTypeCurse; + if([condition state] == StatePoison) dispelType = DispelTypePoison; + if([condition state] == StateDisease) dispelType = DispelTypeDisease; + } + } + + log(LOG_CONDITION, @" Searching for spell '%@'", [condition value]); + + if (!enemies) enemies = [combatController allAdds]; + + // Let's loop through friends to find a target + for ( target in enemies ) { + + if( [condition quality] == QualityBuff ) { + if([condition type] == TypeValue) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasBuff: spellID] : ![auraController unit: target hasBuff: spellID]; + if([condition type] == TypeString) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasBuffNamed: [condition value]] : ![auraController unit: target hasBuffNamed: [condition value]]; + } else + + if([condition quality] == QualityDebuff) { + if([condition type] == TypeValue) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasDebuff: spellID] : ![auraController unit: target hasDebuff: spellID]; + if([condition type] == TypeString) + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasDebuffNamed: [condition value]] : ![auraController unit: target hasDebuffNamed: [condition value]]; + } else + + if([condition quality] == QualityBuffType) { + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasBuffType: dispelType] : ![auraController unit: target hasBuffType: dispelType]; + } else + + if([condition quality] == QualityDebuffType) { + conditionEval = ([condition comparator] == CompareExists) ? [auraController unit: target hasDebuffType: dispelType] : ![auraController unit: target hasDebuffType: dispelType]; + } + + } + + break; + + case VarietyAuraStack:; + spellID = 0; + dispelType = nil; + log(LOG_CONDITION, @"Doing Aura Stack condition..."); + // sanity checks + if(([condition type] != TypeValue) && ([condition type] != TypeString)) { + log(LOG_CONDITION, @" --> Invalid condition type."); + goto loopEnd; + } + if( [condition type] == TypeValue) { + spellID = [[condition value] unsignedIntValue]; + if(spellID == 0) { // invalid spell ID + log(LOG_CONDITION, @" --> Invalid spell number"); + goto loopEnd; + } else { + log(LOG_CONDITION, @" --> Scanning for aura %u", spellID); + } + } + if( [condition type] == TypeString) { + if( ![[condition value] isKindOfClass: [NSString class]] || ![[condition value] length] ) { + log(LOG_CONDITION, @" --> Invalid or blank Spell name."); + goto loopEnd; + } else { + log(LOG_CONDITION, @" --> Scanning for aura \"%@\"", [condition value]); + } + } + + log(LOG_CONDITION, @"Testing for %d", spellID); + + if (!enemies) enemies = [combatController allAdds]; + + // Let's loop through friends to find a target + for ( target in enemies ) { + + int stackCount = 0; + if( [condition quality] == QualityBuff ) { + if([condition type] == TypeValue) stackCount = [auraController unit: target hasBuff: spellID]; + if([condition type] == TypeString) stackCount = [auraController unit: target hasBuffNamed: [condition value]]; + } else if([condition quality] == QualityDebuff) { + if([condition type] == TypeValue) stackCount = [auraController unit: target hasDebuff: spellID]; + if([condition type] == TypeString) stackCount = [auraController unit: target hasDebuffNamed: [condition value]]; + } + + if([condition comparator] == CompareMore) conditionEval = (stackCount > [condition state]); + if([condition comparator] == CompareEqual) conditionEval = (stackCount == [condition state]); + if([condition comparator] == CompareLess) conditionEval = (stackCount < [condition state]); + log(LOG_CONDITION, @" --> Found %d stacks for result %@", stackCount, (conditionEval ? @"TRUE" : @"FALSE")); + } + + break; + + default:; + if (conditionEval) return YES; + break; + + loopEnd: + if (conditionEval) return YES; + + } + + if (conditionEval) return YES; + return NO; +} + +- (void)cancelCurrentEvaluation { + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateSituation) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForGhost) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForPVPQueue) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForPVPBattleGround) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForParty) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForFollow) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForCombatContinuation) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForCombatStart) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForRegen) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForLoot) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForPartyEmotes) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForFishing) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForMiningAndHerbalism) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(evaluateForPatrol) object: nil]; + + _evaluationIsActive = NO; + self.evaluationInProgress = nil; +} + +- (void)cancelCurrentProcedure { + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + [_lastProcedureExecuted release]; _lastProcedureExecuted = nil; + [_castingUnit release]; _castingUnit = nil; + [combatController cancelAllCombat]; + + if ( self.procedureInProgress ) _lastProcedureExecuted = [NSString stringWithString:self.procedureInProgress]; + + [self setProcedureInProgress: nil]; + +} + +- (void)finishCurrentProcedure: (NSDictionary*)state { + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + if ( !self.isBotting ) return; + [_castingUnit release]; _castingUnit = nil; + + // Make sure we're done casting before we end the procedure + if ( [playerController isCasting] ) { + log(LOG_DEV, @"Player is casting, waiting."); + [self performSelector: @selector(finishCurrentProcedure:) withObject: state afterDelay: 0.25f]; + return; + } + + // Finish Regen. + if ( [[state objectForKey: @"Procedure"] isEqualToString: RegenProcedure] ) { + if ( [[state objectForKey: @"ActionsPerformed"] intValue] > 0 ) { + self.evaluationInProgress = @"Regen"; + log(LOG_REGEN, @"Starting regen!"); + [self performSelector: @selector(monitorRegen:) withObject: [[NSDate date] retain] afterDelay: 0.25f]; + return; + } else { + // or if we didn't regen, go back to evaluate + log(LOG_PROCEDURE, @"No regen, back to evaluate"); + [controller setCurrentStatus: @"Bot: Enabled"]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [self evaluateSituation]; + return; + } + } + + // Finish Patrolling. + if([[state objectForKey: @"Procedure"] isEqualToString: PatrollingProcedure]) { + + // Raise up a little bit + if ( [[playerController player] isFlyingMounted] && ![[playerController player] isSwimming] ) [movementController raiseUpAfterAirMount]; + [controller setCurrentStatus: @"Bot: Enabled"]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [self evaluateSituation]; + return; + } + + [self cancelCurrentEvaluation]; + + log(LOG_PROCEDURE, @"Finishing Procedure: %@", [state objectForKey: @"Procedure"]); + + // Finish PreCombat. + if ( [[state objectForKey: @"Procedure"] isEqualToString: PreCombatProcedure] ) { + log(LOG_DEV, @"[Eval] After PreCombat"); + Unit *target = [state objectForKey: @"Target"]; + // start the combat procedure + [self performProcedureWithState: [NSDictionary dictionaryWithObjectsAndKeys: + CombatProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", + target, @"Target", nil]]; + + return; + } + + // Finish PostCombat. + if ( [[state objectForKey: @"Procedure"] isEqualToString: PostCombatProcedure]) { + log(LOG_DEV, @"[Eval] After PostCombat"); + [controller setCurrentStatus: @"Bot: Enabled"]; + [self cancelCurrentProcedure]; + [self evaluateSituation]; + return; + } + + // Finish Combat. + if ( [[state objectForKey: @"Procedure"] isEqualToString: CombatProcedure] ) { + + //Call back the pet if needed + if ( [self.theBehavior usePet] && [playerController pet] && ![[playerController pet] isDead] ) [macroController useMacroOrSendCmd:@"PetFollow"]; + + if ( [combatController inCombat] ) [combatController cancelCombatAction]; + + // If we're still in combat then return to evaluation + if ( [combatController inCombat] ) { + [controller setCurrentStatus: @"Bot: Enabled"]; + [self cancelCurrentProcedure]; + [self evaluateSituation]; + return; + } else { + // Start PostCombat + log(LOG_PROCEDURE, @"Combat completed, moving to PostCombat."); + [self performSelector: @selector(performProcedureWithState:) + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + PostCombatProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", nil]]; + return; + } + } +} + +- (void)performProcedureWithState: (NSDictionary*)state { + if ( !self.isBotting ) return; + + log(LOG_FUNCTION, @"performProcedureWithState called"); + + // Set some variables we'll need + Unit *target = [state objectForKey: @"Target"]; // This value may get changed + Unit *originalTarget = target; // Preserve the original target + + // if there's another procedure running, we gotta stop it + if( self.procedureInProgress && ![self.procedureInProgress isEqualToString: [state objectForKey: @"Procedure"]]) { + log(LOG_DEV, @"Cancelling %@ to begin %@.", self.procedureInProgress, [state objectForKey: @"Procedure"]); + [self cancelCurrentProcedure]; + } + + if ( !self.procedureInProgress ) { + + [self setProcedureInProgress: [state objectForKey: @"Procedure"]]; + + log(LOG_DEV, @"No Procedure in progress, setting it to: %@", self.procedureInProgress); + + if ( ![[self procedureInProgress] isEqualToString: CombatProcedure] ) { + if( [[self procedureInProgress] isEqualToString: PreCombatProcedure]) { + [controller setCurrentStatus: @"Bot: Pre-Combat Phase"]; + } else + if ( [[self procedureInProgress] isEqualToString: PostCombatProcedure]) { + [controller setCurrentStatus: @"Bot: Post-Combat Phase"]; + } else + if( [[self procedureInProgress] isEqualToString: RegenProcedure]) { + [controller setCurrentStatus: @"Bot: Regen Phase"]; + self.evaluationInProgress = @"Regen"; + } else + if( [[self procedureInProgress] isEqualToString: PatrollingProcedure]) { + [controller setCurrentStatus: @"Bot: Patrolling Phase"]; + self.evaluationInProgress = @"Patrol"; + } + } + } + + // Check the unit to make sure we don't need to bail. + if ( ![self performProcedureUnitCheck: target withState:state] ) return; + + // See if we need to record our follow units route +// [self followRouteStartRecord]; + + // Delay until we can cast + if ( [playerController isCasting] ) { + // We'll do this, just in case our spell is interrupted + log(LOG_DEV, @"Player is casting, waiting."); + [self performSelector: @selector(performProcedureWithState:) withObject: state afterDelay: 0.25f]; + return; + } + + // Wait if our GCD is active! + if ( [spellController isGCDActive] ) { + log(LOG_DEV, @"GCD is active, waiting..."); + [self performSelector: @selector(performProcedureWithState:) withObject: state afterDelay: 0.1f]; + return; + } + + // If this is a continuation of regen from a bot start durring regen + if ([[self procedureInProgress] isEqualToString: RegenProcedure] ) { + + // Only do this if we currently have an eating or drinking buff + if ([auraController unit: [playerController player] hasBuffNamed: @"Food"] || [auraController unit: [playerController player] hasBuffNamed: @"Drink"]) { + BOOL eatClear = NO; + // check health + if ( [playerController health] == [playerController maxHealth] ) eatClear = YES; + // no buff for eating anyways + else if ( ![auraController unit: [playerController player] hasBuffNamed: @"Food"] ) eatClear = YES; + + BOOL drinkClear = NO; + // check mana + if ( [playerController mana] == [playerController maxMana] ) drinkClear = YES; + // no buff for drinking anyways + else if ( ![auraController unit: [playerController player] hasBuffNamed: @"Drink"] ) drinkClear = YES; + + // we're not done eating/drinking + if ( !eatClear || !drinkClear ) { + + if ( [playerController targetID] != [[playerController player] cachedGUID] ) { + log(LOG_PROCEDURE, @"Targeting self."); + [playerController targetGuid:[[playerController player] cachedGUID]]; + } + + self.evaluationInProgress = @"Regen"; + [self finishCurrentProcedure: state]; + return; + } + } + } + + // Setting more variables + Procedure *procedure = [self.theBehavior procedureForKey: [state objectForKey: @"Procedure"]]; + int completed = [[state objectForKey: @"CompletedRules"] intValue]; + int attempts = [[state objectForKey: @"RuleAttempts"] intValue]; + int actionsPerformed = [[state objectForKey: @"ActionsPerformed"] intValue]; + int inCombatNoAttack = [[state objectForKey: @"InCombatNoAttack"] intValue]; + int ruleCount = [procedure ruleCount]; + + // Create a dictionary to track our tried rules + NSMutableDictionary *rulesTried = [state objectForKey: @"RulesTried"]; + if ( rulesTried == nil ) rulesTried = [[[NSMutableDictionary dictionary] retain] autorelease]; + + + if ( [[self procedureInProgress] isEqualToString: CombatProcedure]) { + log(LOG_DEV, @"Requested procedure is %@", self.procedureInProgress); + NSArray *combatList = [combatController combatList]; + int count = [combatList count]; + if (count == 1) [controller setCurrentStatus: [NSString stringWithFormat: @"Bot: Player in Combat (%d unit)", count]]; + else [controller setCurrentStatus: [NSString stringWithFormat: @"Bot: Player in Combat (%d units)", count]]; + log(LOG_DEV, @"CombatProcedure called for: %@", target ); + } + + // Bail if there is no procedure + if ( !procedure ) { + [self finishCurrentProcedure: state]; + return; + } + + // have we exceeded our maximum attempts on this rule? + if ( attempts > 3 ) { + log(LOG_PROCEDURE, @"Exceeding (%d) attempts on action %@ for %@.", attempts, [spellController spellForID: [NSNumber numberWithUnsignedInt: _lastSpellCast]], _castingUnit ); + + if ( ![_castingUnit isInCombat] ) { + log(LOG_PROCEDURE, @"Unit not in combat, blacklisting (using LoS settings)."); + [blacklistController blacklistObject:_castingUnit withReason:Reason_NotInLoS]; + [self performSelector: @selector(finishCurrentProcedure:) withObject: state afterDelay: 0.25f]; + return; + } + + [self performSelector: _cmd withObject: [NSDictionary dictionaryWithObjectsAndKeys: + [state objectForKey: @"Procedure"], @"Procedure", + [NSNumber numberWithInt: completed+1], @"CompletedRules", + [NSNumber numberWithInt: inCombatNoAttack], @"InCombatNoAttack", + originalTarget, @"Target", nil] afterDelay: 0.25f]; + return; + + } + + // See if we need to target a new hostile + if ( [[self procedureInProgress] isEqualToString: CombatProcedure] && !_castingUnit && completed == 0 && ![playerController isFriendlyWithFaction: [target factionTemplate]] ) { + [movementController turnTowardObject: target]; +// usleep([controller refreshDelay]*2); + [movementController establishPlayerPosition]; // This helps up refresh + } + /* + * Starting rule/target selection. + * + * Priority system is Rule based, 1st rule to match gets the action. + * This sets the initial target priority as well. + */ + + Rule *rule; + int i; + BOOL matchFound = NO; + BOOL wasResurrected = NO; + + float vertOffset = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistVerticalOffset"] floatValue]; + float attackRange = ( theCombatProfile.attackRange > theCombatProfile.engageRange ) ? theCombatProfile.attackRange : theCombatProfile.engageRange; + + NSArray *adds = nil; + NSArray *pats = nil; + NSArray *friendlies = nil; + + Player *player=[playerController player]; + Position *playerPosition = [player position]; + BOOL onTheGround = [playerController isOnGround]; + BOOL isMoving = [movementController isMoving]; + + UInt64 playerTargetID = [playerController targetID]; + int32_t actionID; + + for ( i = 0; i < ruleCount; i++ ) { + rule = [procedure ruleAtIndex: i]; + + log(LOG_RULE, @"Evaluating rule %@", rule); + + // make sure our rule hasn't continuously failed! + NSString *triedRuleKey = [NSString stringWithFormat:@"%d_0x%qX", i, [target cachedGUID]]; + NSNumber *tries = [rulesTried objectForKey:triedRuleKey]; + actionID = [rule actionID]; + + if ( tries ) { + if ( [tries intValue] > 3 ){ + log(LOG_RULE, @"Rule %d failed after %@ attempts!", i, tries); + continue; + } + } + + // General checks that apply to all rules + if ( [rule resultType] == ActionType_Spell ) { + + // If we're moving, if so we only try rules for instant spells + Spell *spell = [spellController spellForID: [NSNumber numberWithUnsignedInt: actionID]]; + + if ( ![spell isInstant] && isMoving ) { + log(LOG_RULE, @"Skipping we're moving and the rule is non instant (%d).", actionID); + continue; + } + + if ( ![spell isInstant] && !onTheGround ) { + log(LOG_RULE, @"Skipping since we're in the air and the rule is non instant (%d).", actionID); + continue; + } + + if ( [spellController isSpellOnCooldown: actionID] ) { + log(LOG_RULE, @"Spell is on cooldown (%d).", actionID); + continue; + } + + // check to see if we can even cast this spell + if ( ![spellController isUsableAction: actionID] ){ + log(LOG_RULE, @"Spell isn't usable (%d).", actionID); + continue; + } + + } else + + if ( [rule resultType] == ActionType_Item ) { + + // If we're moving, if so we only try rules for instant spells + if ( [spellController isSpellOnCooldown: actionID] ) { + log(LOG_RULE, @"Item is on cooldown (%d).", actionID); + continue; + } +/* + This one doesn't seem to work + // check to see if we can even cast this spell + if ( ![spellController isUsableAction: actionID] ){ + log(LOG_RULE, @"Item isn't usable (%d).", actionID); + continue; + } + */ + } + + // Ourself + if ( [rule target] == TargetSelf ) { + target = (Unit*)player; + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + // do something + log(LOG_RULE, @"Self match for %@.", rule); + matchFound = YES; + break; + } + } + + // No Target + else if ( [rule target] == TargetNone ) { + if ( [self evaluateRule: rule withTarget: nil asTest: NO] ) { + // do something + log(LOG_RULE, @"Match for %@ (Target None)", rule); + matchFound = YES; + break; + } + } + + // Pet + else if ( [rule target] == TargetPet ) { + target = (Unit*)[playerController pet]; + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + // do something + log(LOG_RULE, @"Pet match for %@ %@", rule, target); + matchFound = YES; + break; + } + } + + // Enemy + else if ( [rule target] == TargetEnemy ) { + + // If our procedure target is a friendly lets skip this + if ( [playerController isFriendlyWithFaction: [target factionTemplate]] ) continue; + + if ([self evaluateRule: rule withTarget: target asTest: NO] ) { + log(LOG_RULE, @"Enemy match for %@ %@", rule, target); + matchFound = YES; + break; + } + } + + // Friend + else if ( [rule target] == TargetFriend ) { + + // If our procedure target is not friendly lets skip this + if ( ![playerController isFriendlyWithFaction: [target factionTemplate]] ) continue; + + if ([self evaluateRule: rule withTarget: target asTest: NO] ) { + log(LOG_RULE, @"Friend match for %@ %@", rule, target); + matchFound = YES; + break; + } + } + + /* + * From here down it's checks that may potentially change your target. + */ + + // Friendlies + else if ( [rule target] == TargetFriendlies ) { + + if (!friendlies) friendlies = [combatController friendlyUnits]; + Unit *bestUnit = nil; + int highestWeight = -1000; + + // Let's loop through friends to find a target + for ( target in friendlies ) { + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + + if ( !matchFound ) { + matchFound = YES; + bestUnit = target; + } + + int weight = [combatController weight: target PlayerPosition:playerPosition]; + if ( weight > highestWeight ) { + highestWeight = weight; + bestUnit = target; + } + } + + } + + if ( matchFound ) { + // do something + target = bestUnit; + log(LOG_RULE, @"Friendlies match for %@ with %@", rule, target); + break; + } + } + + // Add + else if ( [rule target] == TargetAdd ) { + + if (!adds) adds = [combatController allAdds]; + Unit *bestUnit = nil; + int highestWeight = -1000; + + for ( target in adds ) { + + // Only do this check for non primary targets + if ( [target cachedGUID] == [originalTarget cachedGUID] ) continue; + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + + if ( !matchFound ) { + matchFound = YES; + bestUnit = target; + } + + int weight = [combatController weight: target PlayerPosition:playerPosition]; + if ( weight > highestWeight ) { + highestWeight = weight; + bestUnit = target; + } + } + } + + if ( matchFound ) { + // do something + target = bestUnit; + log(LOG_RULE, @"Match for %@ with add %@", rule, target); + break; + } + } + + // Pat + else if ( [rule target] == TargetPat ) { + + if (!pats) pats = [combatController enemiesWithinRange:attackRange]; + Unit *bestUnit = nil; + int highestWeight = -1000; + + for ( target in pats ){ + + // Only do this check for non primary targets + if ( [target cachedGUID] == [originalTarget cachedGUID] ) continue; + + // If it's in combat it's an add, not a pat + if ( [target isInCombat] ) continue; + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + + if ( !matchFound ) { + matchFound = YES; + bestUnit = target; + } + + int weight = [combatController weight: target PlayerPosition:playerPosition]; + if ( weight > highestWeight ) { + highestWeight = weight; + bestUnit = target; + } + } + } + + if ( matchFound ) { + // do something + target = bestUnit; + log(LOG_RULE, @"Match for %@ with pat %@", rule, target); + break; + } + } + + if ( matchFound ) break; + + // Reset the target + if ( [target cachedGUID] != [originalTarget cachedGUID] ) target = originalTarget; + } + + // Raise the dead? + if ( !matchFound && theCombatProfile.healingEnabled && _includeCorpsesPatrol) { + NSMutableArray *units = [NSMutableArray array]; + [units addObjectsFromArray: [combatController friendlyCorpses]]; + + for ( target in units ) { + if ( ![target isPlayer] || ![target isDead] ) continue; + + if ( [blacklistController isBlacklisted: target] ) continue; + + if ( [playerPosition distanceToPosition:[target position]] > theCombatProfile.healingRange ) continue; + + if ( [playerPosition verticalDistanceToPosition: [target position]] > vertOffset) continue; + + // player: make sure they're not a ghost + NSArray *auras = [auraController aurasForUnit: target idsOnly: YES]; + if ( [auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || + [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]] ) continue; + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + log(LOG_RULE, @"Found match for resurrection in patrolling with rule %@", rule); + matchFound = YES; + wasResurrected = YES; + break; + } + } + } + + // take the action here + if ( matchFound && rule ) { + + // Dismount if mounted. + if ( [player isMounted] ) [movementController dismount]; + + // Set the castingUnit + if ( target && [rule target] != TargetNone ) { + + if ( !_castingUnit || _castingUnit == nil ) { + _castingUnit = [(Unit*)target retain]; + } else + if ( [(Unit*)target cachedGUID] != [_castingUnit cachedGUID] ) { + [_castingUnit release]; _castingUnit = nil; + _castingUnit = [(Unit*)target retain]; + } + } + + // Just in case, we need something to throw to notifications. + if ( !_castingUnit || _castingUnit == nil ) _castingUnit = [(Unit*)player retain]; + + NSString *resultType = @"No Action"; + if( rule.action.type == ActionType_Spell) resultType = @"Cast Spell"; + if( rule.action.type == ActionType_Item) resultType = @"Use Item"; + if( rule.action.type == ActionType_Macro) resultType = @"Use Macro"; + + if ( [rule resultType] > 0 ) { + int32_t actionID = [rule actionID]; + + if ( actionID > 0 ) { + BOOL canPerformAction = YES; + // if we are using an item or macro, apply a mask to the item number + switch([rule resultType]) { + case ActionType_Item: + actionID = (USE_ITEM_MASK + actionID); + break; + case ActionType_Macro: + actionID = (USE_MACRO_MASK + actionID); + break; + case ActionType_Spell: + canPerformAction = ![spellController isSpellOnCooldown: actionID]; + break; + default: + break; + } + + // lets do the action + if ( canPerformAction ) { + + // Target and begin monitoring from the combatController if needed! + if ( [rule target] == TargetNone ) { + [combatController stayWithUnit:_castingUnit withType: TargetNone]; + } else + + // Target and begin monitoring from the combatController if needed! + if ( [rule target] == TargetSelf ) { + if ( !playerTargetID || playerTargetID != [player cachedGUID] ) { + log(LOG_DEV, @"Targeting self."); + [playerController targetGuid:[[playerController player] cachedGUID]]; + } + [combatController stayWithUnit:_castingUnit withType: TargetSelf]; + } else + + if ( [rule target] == TargetEnemy ) { + if ( !playerTargetID || playerTargetID != [_castingUnit cachedGUID] ) { + log(LOG_DEV, @"Targeting Enemy."); + [playerController targetGuid:[_castingUnit cachedGUID]]; + } + [combatController stayWithUnit:_castingUnit withType: TargetEnemy]; + } else + + if ( [rule target] == TargetFriend ) { + if ( !playerTargetID || playerTargetID != [_castingUnit cachedGUID] ) { + log(LOG_DEV, @"Targeting friend."); + [playerController targetGuid:[_castingUnit cachedGUID]]; + } + [combatController stayWithUnit:_castingUnit withType: TargetFriend]; + } else + + if ( [rule target] == TargetAdd ) { + if ( !playerTargetID || playerTargetID != [_castingUnit cachedGUID] ) { + log(LOG_DEV, @"Targeting Add."); + [playerController targetGuid:[_castingUnit cachedGUID]]; + + } + [combatController stayWithUnit:_castingUnit withType: TargetAdd]; + } else + + if ( [rule target] == TargetPet ) { + if ( !playerTargetID || playerTargetID != [_castingUnit cachedGUID] ) { + log(LOG_DEV, @"Targeting Pat."); + [playerController targetGuid:[_castingUnit cachedGUID]]; + } + [combatController stayWithUnit:_castingUnit withType: TargetPet]; + } else + + if ( [rule target] == TargetFriendlies ) { + if ( !playerTargetID || playerTargetID != [_castingUnit cachedGUID] ) { + log(LOG_DEV, @"Targeting friend."); + [playerController targetGuid:[_castingUnit cachedGUID]]; + } + [combatController stayWithUnit:target withType: TargetFriendlies]; + } + + if ( [rule target] == TargetPat ) { + if ( !playerTargetID || playerTargetID != [_castingUnit cachedGUID] ) { + log(LOG_DEV, @"Targeting Pat."); + [playerController targetGuid:[_castingUnit cachedGUID]]; + } + [combatController stayWithUnit:_castingUnit withType: TargetPat]; + } + + // See if we need to send the pet in + if ( [[self procedureInProgress] isEqualToString: CombatProcedure] && + completed == 0 && // First loop only + ![playerController isFriendlyWithFaction: [target factionTemplate]] // It's a hostile target + ) { + if ( theBehavior.useStartAttack ) { + [macroController useMacroOrSendCmd:@"StartAttack"]; + usleep( [controller refreshDelay] ); + } + if ( theBehavior.usePet && + [playerController pet] && ![[playerController pet] isDead] && + [[playerController pet] targetID] != [_castingUnit cachedGUID] // Your pet is not already targeting this target + ) { + log(LOG_PROCEDURE, @"Sending the pet in!"); + [bindingsController executeBindingForKey:BindingPetAttack]; + usleep( [controller refreshDelay] ); + } + } + + NSString *ruleFormatted = [NSString stringWithFormat: @"\"%@\" %@ (%@)>", [rule name], resultType, rule.action.value]; + + if ( [rule target] == TargetNone || [rule target] == TargetSelf) { + log(LOG_PROCEDURE, @"%@ %@ %@", [combatController unitHealthBar:player], player, ruleFormatted ); + } else { + log(LOG_COMBAT, @"%@ %@ %@", [combatController unitHealthBar:_castingUnit], _castingUnit, ruleFormatted ); + } + + // If this is a new action we reset the attempts + if ( _lastSpellCast != actionID ) attempts = 1; + else attempts++; + + // do it! + int lastErrorMessage = [self performAction:actionID]; + log(LOG_DEV, @"Action %u taken with result: %d", actionID, lastErrorMessage); + + // error of some kind :/ + if ( lastErrorMessage != ErrNone ) { + + BOOL resetCastingUnit = NO; + + // On some errors we bail as notifications will restart evaluation. + if ( lastErrorMessage == ErrTargetNotInLOS ) resetCastingUnit = YES; + else if ( lastErrorMessage == ErrInvalidTarget ) resetCastingUnit = YES; + else if ( lastErrorMessage == ErrHaveNoTarget ) resetCastingUnit = YES; + else if ( lastErrorMessage == ErrTargetOutRange ) resetCastingUnit = YES; + else if ( lastErrorMessage == ErrTargetDead ) resetCastingUnit = YES; + else if ( lastErrorMessage == ErrMorePowerfullSpellActive ) resetCastingUnit = YES; + else if ( lastErrorMessage == ErrCantDoThatWhileStunned || lastErrorMessage == ErrCantDoThatWhileSilenced || ErrCantDoThatWhileIncapacitated ) resetCastingUnit = YES; + + if ( resetCastingUnit ) return; + + log(LOG_DEV, @"Attempted to do %u on %@ %d %d times", actionID, target, attempts, completed); + + NSString *triedRuleKey = [NSString stringWithFormat:@"%d_0x%qX", i, [target cachedGUID]]; + log(LOG_DEV, @"Looking for key %@", triedRuleKey); + + NSNumber *tries = [rulesTried objectForKey:triedRuleKey]; + + if ( tries ) { + int t = [tries intValue]; + tries = [NSNumber numberWithInt:t+1]; + } else { + tries = [NSNumber numberWithInt:1]; + } + + log(LOG_DEV, @"Setting tried %@ with value %@", triedRuleKey, tries); + [rulesTried setObject:tries forKey:triedRuleKey]; + } else { + + // success! + completed++; + actionsPerformed++; + } + + } else { + log(LOG_PROCEDURE, @"Unable to perform action %d", actionID); + } + } else { + log(LOG_PROCEDURE, @"No action to take"); + } + } else { + log(LOG_PROCEDURE, @"No result type"); + } + + // If we resurected them lets give them a moment to repop before we assess them again + if (wasResurrected && [playerController isFriendlyWithFaction: [target factionTemplate]] && [target isValid]) { + log(LOG_DEV, @"Adding resurrection CD to %@", target); + [blacklistController blacklistObject:target withReason:Reason_RecentlyResurrected]; + } + + // Mount in Patrolling + if( [[state objectForKey: @"Procedure"] isEqualToString: PatrollingProcedure] ) { + + NSString *mountPlain = @"mount"; + NSString *mountAtStart = @"mount *"; + + NSPredicate *predicateMountPlain = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", mountPlain]; + NSPredicate *predicateMountAtStart = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", mountAtStart]; + + if ( [predicateMountPlain evaluateWithObject: [rule name]] || [predicateMountAtStart evaluateWithObject: [rule name]]) { + log(LOG_PROCEDURE, @"Player has mounted."); + [self performSelector: @selector(finishCurrentProcedure:) withObject: state afterDelay: 2.0f]; + return; + } + } + + log(LOG_DEV, @"Rule executed, trying more rules."); + + // if we found a match, try again until we can't anymore! + [self performSelector: _cmd + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + [state objectForKey: @"Procedure"], @"Procedure", + [NSNumber numberWithInt: completed], @"CompletedRules", + [NSNumber numberWithInt: attempts], @"RuleAttempts", + rulesTried, @"RulesTried", // track how many times we've tried each rule + [NSNumber numberWithInt:actionsPerformed], @"ActionsPerformed", + originalTarget, @"Target", nil] + afterDelay: 0.3f]; + return; + } + + // If we can't perform any rules, but we're still in combat with a hostile we do not break procedure. + if ( _castingUnit && [_castingUnit isValid] && ![playerController isFriendlyWithFaction: [_castingUnit factionTemplate]] ) { + if ( ![self performProcedureUnitCheck: _castingUnit withState:state] ) return; + [self performSelector: _cmd + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + CombatProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", + _castingUnit, @"Target", nil] + + afterDelay: 0.3f]; + return; + } + + log(LOG_DEV, @"Done with Procedure!"); + [self finishCurrentProcedure: state]; +} + +// This is a pre cast check for targets. +- (BOOL)performProcedureUnitCheck: (Unit*)target withState:(NSDictionary*)state { + log(LOG_DEV, @"performProcedureUnitCheck: %@", target); + + if ( [playerController isDead] || [[playerController player] percentHealth] == 0 ) { + log(LOG_PROCEDURE, @"Player is dead! Aborting!"); + [self cancelCurrentProcedure]; + return NO; + } + + // If targeting ourselves then return. + if ( [target cachedGUID] == [[playerController player] cachedGUID] ) return YES; + + // If targeting none then return. + if ( !target || target == nil ) return YES; + + if ( [blacklistController isBlacklisted: target] ) { + log(LOG_PROCEDURE, @"unitCheck: Target blacklisted!"); + [self finishCurrentProcedure: state]; + return NO; + } + + if ( ![target isValid] ) { + log(LOG_PROCEDURE, @"unitCheck: Target not valid!"); + [combatController cancelAllCombat]; + [self finishCurrentProcedure: state]; + return NO; + } + + if ( ![[self procedureInProgress] isEqualToString: PatrollingProcedure] && [target isPlayer] ) { + NSArray *auras = [auraController aurasForUnit: target idsOnly: YES]; + if ( [auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]] ) { + + // If they're friendly + if ( [playerController isFriendlyWithFaction: [target factionTemplate]] ) { + log(LOG_PROCEDURE, @"unitCheck: Target is a Ghost!"); + [self finishCurrentProcedure: state]; + return NO; + } else { + // Hostile + log(LOG_PROCEDURE, @"unitCheck: Target is a Ghost, must have killed player."); + [self finishCurrentProcedure: state]; + return NO; + } + } + } + + if ( [target isDead] || [target percentHealth] <= 0 ) { + log(LOG_PROCEDURE, @"unitCheck: Target dead!"); + [self finishCurrentProcedure: state]; + return NO; + } + + // Range Checks + float distanceToTarget = [[playerController position] distanceToPosition: [target position]]; + float range = 0.0f; + + // PreCombat checks (if we're not in combat yet we disengage faster, we also do NOT finishProcedure) + if ( [[self procedureInProgress] isEqualToString: PreCombatProcedure] ) { + + // Friendly + if ( [playerController isFriendlyWithFaction: [target factionTemplate]] ) { + + if ( theCombatProfile.attackRange > theCombatProfile.healingRange) range = theCombatProfile.attackRange; + else range = theCombatProfile.healingRange; + + if ( distanceToTarget > range ) { + log(LOG_PROCEDURE, @"unitCheck: Friendly target (%0.2f) out of range (%0.2f) in precombat!", distanceToTarget, range); + [self cancelCurrentProcedure]; + [self performSelector:@selector(evaluateSituation) withObject:nil afterDelay: 0.25f]; + return NO; + } + } else { + // Hostile + range = theCombatProfile.attackRange; + if ( distanceToTarget > range ) { + log(LOG_PROCEDURE, @"unitCheck: Hostile target (%0.2f) out of range (%0.2f) in precombat!", distanceToTarget, range); + [self cancelCurrentProcedure]; + [self performSelector:@selector(evaluateSituation) withObject:nil afterDelay: 0.25f]; + return NO; + } + } + + } + + // Patrolling checks (if we're not in combat we disengage faster) + if ( [[self procedureInProgress] isEqualToString: PatrollingProcedure] ) { + + // Friendly + if ( [playerController isFriendlyWithFaction: [target factionTemplate]] ) { + if ( theCombatProfile.attackRange > theCombatProfile.healingRange) range = theCombatProfile.attackRange; + else range = theCombatProfile.healingRange; + + if ( distanceToTarget > range ) { + log(LOG_PROCEDURE, @"unitCheck: Friendly target (%0.2f) out of range (%0.2f) in patrolling phase!", distanceToTarget, range); + [self cancelCurrentProcedure]; + [self performSelector:@selector(evaluateSituation) withObject:nil afterDelay: 0.25f]; + return NO; + } + } + } + + return YES; +} + +- (BOOL)performAction: (int32_t) actionID{ + MemoryAccess *memory = [controller wowMemoryAccess]; + + if ( !memory ) return NO; + + int barOffset = [bindingsController castingBarOffset]; + if ( barOffset == -1 ){ + log(LOG_ERROR, @"Unable to execute spells! Ahhhhh! Issue with bindings!"); + return NO; + } + + UInt32 oldActionID = 0; + + // save the old spell + write the new one + [memory loadDataForObject: self atAddress: ([offsetController offset:@"HOTBAR_BASE_STATIC"] + barOffset) Buffer: (Byte *)&oldActionID BufLength: sizeof(oldActionID)]; + [memory saveDataForAddress: ([offsetController offset:@"HOTBAR_BASE_STATIC"] + barOffset) Buffer: (Byte *)&actionID BufLength: sizeof(actionID)]; + + // write gibberish to the error location + char string[3] = {'_', '_', '\0'}; + [[controller wowMemoryAccess] saveDataForAddress: [offsetController offset:@"LAST_RED_ERROR_MESSAGE"] Buffer: (Byte *)&string BufLength:sizeof(string)]; + + // wow needs time to process the spell change + usleep( [controller refreshDelay] ); + + // send the key command + [bindingsController executeBindingForKey:BindingPrimaryHotkey]; + _lastSpellCastGameTime = [playerController currentTime]; + + // make sure it was a spell and not an item/macro + if ( !((USE_ITEM_MASK & actionID) || (USE_MACRO_MASK & actionID)) ){ + _lastSpellCast = actionID; + } else { + _lastSpellCast = 0; + } + + // wow needs time to process the spell change + usleep( [controller refreshDelay] *2 ); + + // then save our old action back + // Use a delay to set off the reset + _oldActionID = oldActionID; + _oldBarOffset = barOffset; + + // We don't want to check lastAttemptedActionID if it's not a spell! + BOOL wasSpellCast = YES; + if ( (USE_ITEM_MASK & actionID) || (USE_MACRO_MASK & actionID) ) { + wasSpellCast = NO; + } + + _lastActionTime = [playerController currentTime]; + NSString *lastErrorMessageString = [[playerController lastErrorMessage] retain]; + int lastErrorMessage = [self errorValue:lastErrorMessageString]; + + [self performSelector: @selector(resetHotBarAction) withObject: nil afterDelay: 0.1f]; + + BOOL errorFound = NO; + + if ( ![lastErrorMessageString isEqualToString: @"__"] && lastErrorMessage != ErrYouAreTooFarAway ) { + errorFound = YES; + } + + // check for an error +// if ( ( wasSpellCast && [spellController lastAttemptedActionID] == actionID ) || errorFound ) { +// if ( errorFound ) { + if ( wasSpellCast && errorFound ) { + + _lastActionErrorCode = lastErrorMessage; + log(LOG_PROCEDURE, @"%@ %@ Spell %d didn't cast: %@", [combatController unitHealthBar: _castingUnit], _castingUnit, actionID, lastErrorMessageString ); + + // do something? +/* + nothing actually uses this notification so I'm uncommenting for now + if ( lastErrorMessage == ErrSpellNot_Ready) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorSpellNotReady object: [[_castingUnit retain] autorelease]]; + } + else + */ + if ( lastErrorMessage == ErrTargetNotInLOS ) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorTargetNotInLOS object: [[_castingUnit retain] autorelease]]; + } + else if ( lastErrorMessage == ErrInvalidTarget ) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorInvalidTarget object: [[_castingUnit retain] autorelease]]; + } + else if ( lastErrorMessage == ErrHaveNoTarget ) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorHaveNoTarget object: [[_castingUnit retain] autorelease]]; + } + else if ( lastErrorMessage == ErrTargetOutRange ){ + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorTargetOutOfRange object: [[_castingUnit retain] autorelease]]; + } + else if ( lastErrorMessage == ErrTargetNotInFrnt || lastErrorMessage == ErrWrng_Way ) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorTargetNotInFront object: [[_castingUnit retain] autorelease]]; + } +// Let the combat controller monitor handle this one... +// else if ( lastErrorMessage == ErrTargetDead ) { +// [[NSNotificationCenter defaultCenter] postNotificationName: UnitDiedNotification object: [[_castingUnit retain] autorelease]]; +// } + else if ( lastErrorMessage == ErrMorePowerfullSpellActive ) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorMorePowerfullSpellActive object: [[_castingUnit retain] autorelease]]; + } + else if ( lastErrorMessage == ErrCantDoThatWhileStunned || lastErrorMessage == ErrCantDoThatWhileSilenced || ErrCantDoThatWhileIncapacitated ) { + [[NSNotificationCenter defaultCenter] postNotificationName: ErrorCantDoThatWhileStunned object: [[_castingUnit retain] autorelease]]; + } + else if ( lastErrorMessage == ErrCantAttackMounted || lastErrorMessage == ErrYouAreMounted ) { + if ( [playerController isOnGround] ) [movementController dismount]; + } + // do we need to log out? + else if ( lastErrorMessage == ErrInventoryFull ) { + if ( [logOutOnFullInventoryCheckbox state] ) + [self logOutWithMessage:@"Inventory full, closing game"]; + } + + log(LOG_DEV, @"Action taken with error! Result: %d", lastErrorMessage); + [lastErrorMessageString release]; + return lastErrorMessage; + } + + log(LOG_DEV, @"Action taken successfully."); + [lastErrorMessageString release]; + return ErrNone; +} + +-(void)resetHotBarAction { + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) return; + + // Save our old action back + [memory saveDataForAddress: ([offsetController offset:@"HOTBAR_BASE_STATIC"] + _oldBarOffset) Buffer: (Byte *)&_oldActionID BufLength: sizeof(_oldActionID)]; +} + +- (void)monitorRegen: (NSDate*)start { + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + log(LOG_FUNCTION, @"monitorRegen"); + + Unit *player = [playerController player]; + BOOL eatClear = NO, drinkClear = NO; + + // check health + if ( [playerController health] == [playerController maxHealth] ) eatClear = YES; + // no buff for eating anyways + else if ( ![auraController unit: player hasBuffNamed: @"Food"] ) eatClear = YES; + + // check mana + if ( [playerController mana] == [playerController maxMana] ) drinkClear = YES; + // no buff for drinking anyways + else if ( ![auraController unit: player hasBuffNamed: @"Drink"] ) drinkClear = YES; + + float timeSinceStart = [[NSDate date] timeIntervalSinceDate: start]; + + // we're done eating/drinking! continue + if ( eatClear && drinkClear ) { + log(LOG_REGEN, @"Finished after %0.2f seconds.", timeSinceStart); + if ([[playerController player] isSitting]) [movementController establishPlayerPosition]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [controller setCurrentStatus: @"Bot: Enabled"]; + [self performSelector:@selector(evaluateSituation) withObject:nil afterDelay: 0.25f]; + return; + } else + // should we be done? + if ( timeSinceStart > 30.0f ) { + log(LOG_REGEN, @"Ran for 30, done, regen too long!?"); + if ([[playerController player] isSitting]) [movementController establishPlayerPosition]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [self resetLootScanIdleTimer]; + [controller setCurrentStatus: @"Bot: Enabled"]; + [self performSelector:@selector(evaluateSituation) withObject:nil afterDelay: 0.25f]; + return; + } + // Check to see if we neet to start recording + [self followRouteStartRecord]; + [self performSelector: @selector(monitorRegen:) withObject: start afterDelay: 0.5f]; +} + +#pragma mark - +#pragma mark [Input] MovementController + +- (void)reachedFollowUnit: (NSNotification*)notification { + + [self followRouteClear]; + + if ( !self.isBotting ) return; + if ( [playerController isDead] ) return; + + log(LOG_FUNCTION, @"botController: reachedFollowUnit"); + + // Reset the movement controller. Do we need to switch back to a normal route ? + + // Reset the party emotes idle + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer = 0; + + log(LOG_FOLLOW, @"Stopping Follow, reached our target."); + + [controller setCurrentStatus: @"Bot: Enabled"]; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; +} + +- (void)reachedObject: (NSNotification*)notification { + + if ( !self.isBotting ) return; + + if ( self.evaluationInProgress == @"Follow" ) self.evaluationInProgress = nil; + + _movingToCorpse = NO; + + if ( ![notification object] ) { + log(LOG_FUNCTION, @"Reached object called for reach position."); + // Back to evaluation + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return; + } + + WoWObject *object = [notification object]; + + log(LOG_FUNCTION, @"Reached object called for %@", object); + + // if it's a player, or a non-dead NPC, we must be doing melee combat + if ( [object isPlayer] || ([object isNPC] && ![(Unit*)object isDead]) ) log(LOG_DEV, @"Reached melee range with %@", object); + + // Reset the party emotes idle + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer = 0; + + // Back to evaluation + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay: 0.25f]; +} + +// should the notification be here? or in movementcontroller? +- (void)finishedRoute: (Route*)route { + + if( !self.isBotting ) return; + + if ( !self.theRouteSet || self.pvpIsInBG ) return; + + if ( route != [self.theRouteSet routeForKey: CorpseRunRoute] ) return; + + log(LOG_GHOST, @"Finished Corpse Run. Begin search for body..."); + [controller setCurrentStatus: @"Bot: Searching for body..."]; +} + +#pragma mark [Input] CombatController + +- (void)unitEnteredCombat: (NSNotification*)notification { + + if ( !self.isBotting ) return; + if ( [playerController isDead] ) return; + + Unit *unit = [notification object]; + + log(LOG_DEV, @"%@ %@ entered combat!", [combatController unitHealthBar:unit], unit); + + // If we're supposed to ignore combat while flying + if (self.theCombatProfile.ignoreFlying && [[playerController player] isFlyingMounted]) { + log(LOG_DEV, @"Ignoring combat with %@ since we're set to ignore combat while flying.", unit); + return; + } + + // If we're in follow mode let's keep cruisin till we catch up to the leader. + if ( self.evaluationInProgress == @"Follow" ) { + log(LOG_DEV, @"Ignoring combat with %@ since we're trying to get to our leader.", unit); + return; + } + + // If we're in follow mode let's keep cruisin till we catch up to the leader. + if ( !theCombatProfile.combatEnabled ) { + log(LOG_DEV, @"Ignoring combat with %@ since we're not set to attack.", unit); + return; + } + + // start a combat procedure if we're not in one! + if ( self.procedureInProgress != @"CombatProcedure" && self.procedureInProgress != @"PreCombatProcedure" ) { + + // If it's a player attacking us lets attack the player! + if ( [unit isPlayer] ) { + log(LOG_COMBAT, @"%@ %@ has jumped me, Targeting Player!", [combatController unitHealthBar:unit], unit); + } else { + log(LOG_COMBAT, @"%@ %@ has ambushed me, taking action!", [combatController unitHealthBar:unit], unit); + } + + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController cancelCombatAction]; + + if ( [movementController isActive] ) [movementController resetMovementState]; + + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return; + } + + // We are already in combat + + // If it's a player attacking us and we're on a mob then lets attack the player! + if ( ( [[combatController castingUnit] isKindOfClass: [Mob class]] || [[combatController castingUnit] isPet] ) && + [combatController combatEnabled] && + !theCombatProfile.healingEnabled && + [unit isPlayer] ) { + + // Just to make testing obvious... + if ( [unit isPlayer] && [playerController isFriendlyWithFaction: [unit factionTemplate]] ) + log(LOG_ERROR, @"Are we about to attack a friendly!?"); + + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController cancelCombatAction]; + if ( [movementController isActive] ) [movementController resetMovementState]; + + + log(LOG_COMBAT, @"%@ %@ has jumped me while killing a mob, Targeting Player!", [combatController unitHealthBar:unit], unit); + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return; + } + + // Check player vs player weight to see if we need to change targets + if ( [unit isPlayer] ) { + Position *playerPosition = [playerController position]; + int weightNewTarget = [combatController weight: unit PlayerPosition:playerPosition]; + int weightCurrentTarget = [combatController weight: self.castingUnit PlayerPosition:playerPosition]; + if ( weightNewTarget > weightCurrentTarget ) { + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController cancelCombatAction]; + if ( [movementController isActive] ) [movementController resetMovementState]; + log(LOG_COMBAT, @"%@ %@ has jumped me while killing a player, Targeting Player with higher weight!", [combatController unitHealthBar:unit], unit); + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return; + } + } + + if ( [unit isPlayer] && [self castingUnit] && [playerController isFriendlyWithFaction: [[self castingUnit] factionTemplate]] ) { + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController cancelCombatAction]; + if ( [movementController isActive] ) [movementController resetMovementState]; + log(LOG_COMBAT, @"%@ %@ has jumped me while healing a player, Targeting Hostile Player!", [combatController unitHealthBar:unit], unit); + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return; + } + + log(LOG_DEV, @"Already in combat procedure! Not acting on unit"); +} + +- (void)playerEnteringCombat: (NSNotification*)notification { + + if ( !self.isBotting ) return; + if ( [playerController isDead] || [playerController percentHealth] == 0 ) return; + + log(LOG_DEV, @"Entering combat"); + [blacklistController clearAttempts]; + + // If we're supposed to ignore combat while flying + if ( self.theCombatProfile.ignoreFlying && [[playerController player] isFlyingMounted] ) { + log(LOG_DEV, @"Ignoring combat since we're set to ignore combat while flying."); + return; + } + + // If we're in follow mode let's keep cruisin till we catch up to the leader. + if ( [[playerController player] isMounted] && self.evaluationInProgress == @"Follow" ) { + log(LOG_DEV, @"Ignoring combat since we're trying to get to our leader."); + return; + } + + // If we're not running combat then let's stop what we're doing and get to it! + if ( self.procedureInProgress != @"CombatProcedure" && self.procedureInProgress != @"PreCombatProcedure" ) { + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + if ( [movementController isActive] ) [movementController resetMovementState]; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + } +} + +- (void)playerLeavingCombat: (NSNotification*)notification { + + if ( !self.isBotting ) return; + + _didPreCombatProcedure = NO; + + if ( [playerController isDead] ) return; + + [self resetLootScanIdleTimer]; + + log(LOG_COMBAT, @"Left combat! Current procedure: %@ Last executed: %@", self.procedureInProgress, _lastProcedureExecuted); + + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + +} + +#pragma mark [Input] PlayerData + +- (void)playerHasRevived: (NSNotification*)notification { + + if ( !self.isBotting ) return; + + log(LOG_GENERAL, @"---- Player has revived ----"); + [controller setCurrentStatus: @"Bot: Player has Revived"]; + + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + if ( [movementController isActive] ) [movementController resetMovementState]; + + _ghostDance = 0; + if ( [self pvpSetEnvironmentForZone] ) { + log(LOG_PVP, @"Environment Set."); + } + + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; +} + +- (void)playerHasDied: (NSNotification*)notification { + + if( !self.isBotting ) return; + + log(LOG_GHOST, @"---- Player has died ----"); + [controller setCurrentStatus: @"Bot: Player has Died"]; + + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [self followRouteClear]; + if ( _followUnit ) [_followUnit release]; _followUnit = nil; + + if ( [_mobsToLoot count] ) [_mobsToLoot removeAllObjects]; + [movementController resetMovementState]; + + // If we're following a flag carrier lets make sure they still have the buff + if ( _followingFlagCarrier ) { + _followingFlagCarrier = NO; + [_followUnit release]; _followUnit = nil; + } + + if ( ![playerController playerIsValid:self] ) return; + + // Check to see if we need to blacklist a node for making us die + if ( theCombatProfile.resurrectWithSpiritHealer && + self.lastAttemptedUnitToLoot && + _movingTowardNodeCount > 0 && + [self.lastAttemptedUnitToLoot isValid] + ) { + log(LOG_NODE, @"%@ made me die, blacklisting.", self.lastAttemptedUnitToLoot); + [blacklistController blacklistObject: self.lastAttemptedUnitToLoot withReason:Reason_NodeMadeMeDie]; + } + + // send notification to Growl + if( [controller sendGrowlNotifications] && [GrowlApplicationBridge isGrowlInstalled] && [GrowlApplicationBridge isGrowlRunning]) { + [GrowlApplicationBridge notifyWithTitle: @"Player Has Died!" + description: @"Sorry :(" + notificationName: @"PlayerDied" + iconData: [[NSImage imageNamed: @"Ability_Warrior_Revenge"] TIFFRepresentation] + priority: 0 + isSticky: NO + clickContext: nil]; + } + + // Try to res in a second! (give the addon time to release if they're using one!) - they can disable release in the settings if they need + [self performSelector: @selector(corpseRelease:) withObject: [NSNumber numberWithInt:0] afterDelay: 0.25f]; + + // Play an alarm after we die? + if ( [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmOnDeath"] boolValue] ){ + [[NSSound soundNamed: @"alarm"] play]; + log(LOG_GHOST, @"Playing alarm, you have died!"); + } +} + +- (void)moveAfterRepop { + + if ( !self.isBotting ) return; + + // don't move if we're in a BG + if ( self.pvpIsInBG ) return; + + if ( [playerController isDead] && [playerController isGhost] ) { + log(LOG_DEV, @"We're dead, evaluating."); + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + } +} + +- (void)corpseRelease: (NSNumber *)count { + + if ( !self.isBotting ) return; + if ( ![playerController playerIsValid:self] ) return; + + if ( theCombatProfile.disableRelease ) { + log(LOG_GHOST, @"Ignoring release due to a combat setting"); + return; + } + + // We need to repop! + if ( ![playerController isGhost] && [playerController isDead] ) { + + // Reset the loot scan idle timer + if ( theCombatProfile.ShouldLoot ) [self resetLootScanIdleTimer]; + + int try = [count intValue]; + + // ONLY stop bot if we're not in PvP (we'll auto res in PvP!) + if (++try > 25 && !self.isPvPing && !self.pvpIsInBG ) { + log(LOG_GHOST, @"Repop failed after 10 tries. Stopping bot."); + [self stopBot: nil]; + [controller setCurrentStatus: @"Bot: Failed to Release. Stopped."]; + return; + } + + if ( try != 1 ) { + log(LOG_GHOST, @"Releasing (%d attempts).", try); + } else { + log(LOG_GHOST, @"Releasing."); + } + + [macroController useMacroOrSendCmd:@"ReleaseCorpse"]; + + // Try again every few seconds + [self performSelector: @selector(corpseRelease:) withObject: [NSNumber numberWithInt:try] afterDelay: 1.0]; + return; + } + + [self moveAfterRepop]; +} + +- (void)playerIsInvalid: (NSNotification*)not { + + if ( !self.isBotting ) return; + log(LOG_GENERAL, @"Player is no longer valid."); + + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + +} + +#pragma mark [Input] BotController + +- (void)unitDied: (NSNotification*)notification { + if ( !self.isBotting ) return; + if ( [playerController isDead] ) return; + + Unit *unit = [notification object]; + + log(LOG_COMBAT, @"Unit %@ killed (%@).", unit, [unit class]); + + if ( [unit isPlayer] ) { + if ( !theCombatProfile.ShouldLoot ) return; + log(LOG_DEV, @"Player killed, flags: %d %d", [(Mob*)unit isTappedByMe], [(Mob*)unit isLootable] ); + } + + if ( [unit isNPC] ) log(LOG_DEV, @"NPC killed, flags: %d %d", [(Mob*)unit isTappedByMe], [(Mob*)unit isLootable] ); + + if ( theCombatProfile.ShouldLoot && [unit isNPC] ) { + + // Reset the loot scan idle timer + [self resetLootScanIdleTimer]; + + if ( ( [(Mob*)unit isTappedByMe] || [(Mob*)unit isLootable] ) && ![unit isPet] ) { + log(LOG_LOOT, @"Adding %@ to loot list.", unit); + if ( ![_mobsToLoot containsObject: unit]) [_mobsToLoot addObject: (Mob*)unit]; + + if ( ![[combatController unitsAttackingMe] count] && [_mobsToLoot count] == 1 ) { + + if ( ![movementController isMoving] && [[playerController position] distanceToPosition:[unit position]] > 4.0f) { + [movementController moveToObject: unit]; + return; + } + if ( [_mobsToLoot count] == 0 ) [self lootScan]; + } + } + } + +} + +// invalid target +- (void)invalidTarget: (NSNotification*)notification { + if ( !self.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] Invalid Target (botController): %@", unit); + + // reset! + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + + //Call back the pet if needed + if ( [self.theBehavior usePet] && [playerController pet] && ![[playerController pet] isDead] ) [macroController useMacroOrSendCmd:@"PetFollow"]; + + log(LOG_DEV, @"Targeting self."); + [playerController targetGuid:[[playerController player] cachedGUID]]; + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +// have no target +- (void)haveNoTarget: (NSNotification*)notification { + if ( !self.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] No Target (botController): %@", unit); + + // reset! + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + + //Call back the pet if needed + if ( [self.theBehavior usePet] && [playerController pet] && ![[playerController pet] isDead] ) [macroController useMacroOrSendCmd:@"PetFollow"]; + + log(LOG_DEV, @"Targeting self."); + [playerController targetGuid:[[playerController player] cachedGUID]]; + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +// not in LoS +- (void)targetNotInLOS: (NSNotification*)notification { + if ( !self.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] Not in LoS (botController): %@", unit); + + // reset! + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + + //Call back the pet if needed + if ( [self.theBehavior usePet] && [playerController pet] && ![[playerController pet] isDead] ) [macroController useMacroOrSendCmd:@"PetFollow"]; + + log(LOG_DEV, @"Targeting self."); + [playerController targetGuid:[[playerController player] cachedGUID]]; + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +- (void)morePowerfullSpellActive: (NSNotification*)notification { + if ( !self.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] More powerful spell active (botController): %@", unit); + + log(LOG_ERROR, @"You need to adjust your behavior so the previous spell doesn't cast if the player has a more powerfull buff!"); + + // reset! + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + + log(LOG_DEV, @"Targeting self."); + [playerController targetGuid:[[playerController player] cachedGUID]]; + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +- (void)cantDoThatWhileStunned: (NSNotification*)notification { + if ( !self.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] Cant do that while stunned (botController): %@", unit); + + // reset! + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +#pragma mark - +#pragma mark Combat + +- (BOOL)includeFriendlyInCombat { + + // should we include friendly units? + if ( self.theCombatProfile.healingEnabled ) return YES; + + // if we have friendly spells in our Combat Behavior lets return true + Procedure *procedure = [self.theBehavior procedureForKey: CombatProcedure]; + int i; + for ( i = 0; i < [procedure ruleCount]; i++ ) { + Rule *rule = [procedure ruleAtIndex: i]; + if ( [rule target] == TargetFriend || [rule target] == TargetFriendlies ) return YES; + } + return NO; +} + +- (BOOL)includeFriendlyInPatrol { + + // should we include friendly units? + + // if we have friendly spells in our Patrol Behavior lets return true + Procedure *procedure = [self.theBehavior procedureForKey: PatrollingProcedure]; + int i; + for ( i = 0; i < [procedure ruleCount]; i++ ) { + Rule *rule = [procedure ruleAtIndex: i]; + if ( [rule target] == TargetFriend || [rule target] == TargetFriendlies ) return YES; + } + return NO; +} + +- (BOOL)includeCorpsesInPatrol { + + // should we include friendly units? + + // if we have friendly spells in our Patrol Behavior lets return true + Procedure *procedure = [self.theBehavior procedureForKey: PatrollingProcedure]; + int i; + for ( i = 0; i < [procedure ruleCount]; i++ ) { + Rule *rule = [procedure ruleAtIndex: i]; + if ( [rule target] == TargetFriend || [rule target] == TargetFriendlies ) { + // Go through the conditions to see if we have an isDead status + for ( Condition *condition in [rule conditions] ) { + + if ( [condition variety] == VarietyStatus && + [condition state] == StateAlive && + [condition comparator] == CompareIsNot ) + return YES; + } + } + } + return NO; +} + +- (BOOL)combatProcedureValidForUnit: (Unit*)unit { + + log(LOG_DEV, @"combatProcedureValidForUnit called."); + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] || [playerController percentHealth] == 0 ) return NO; + if ( !unit || unit == nil || [unit isDead] || [unit percentHealth] == 0 ) return NO; + if ( [[combatController unitsDied] containsObject: unit] ) return NO; + + BOOL isFriendly = NO; + if ( [playerController isFriendlyWithFaction: [unit factionTemplate]] ) isFriendly = YES; + + if ( isFriendly && !theCombatProfile.healingEnabled ) { + log(LOG_DEV, @"combatProcedureValidForUnit: target is friendly, but healing is not enabled."); + return NO; + } + + // Range Checks + float distanceToTarget = [[playerController position] distanceToPosition: [unit position]]; + float range = 0.0f; + + // Friendly + if ( isFriendly ) { + + if ( theCombatProfile.attackRange > theCombatProfile.healingRange) range = theCombatProfile.attackRange; + else range = theCombatProfile.healingRange; + + if ( distanceToTarget > range ) { + log(LOG_DEV, @"combatProcedureValidForUnit: Friendly target (%0.2f) out of range (%0.2f) in precombat!", distanceToTarget, range); + return NO; + } + } else { + // Hostile + range = theCombatProfile.attackRange; + if ( distanceToTarget > range ) { + log(LOG_DEV, @"combatProcedureValidForUnit: Hostile target (%0.2f) out of range (%0.2f) in precombat!", distanceToTarget, range); + return NO; + } + } + + Procedure *procedure = [self.theBehavior procedureForKey: CombatProcedure]; + int ruleCount = [procedure ruleCount]; + if ( !procedure || ruleCount == 0 ) return NO; + + Rule *rule = nil; + int i; + BOOL matchFound = NO; + for ( i = 0; i < ruleCount; i++ ) { + rule = [procedure ruleAtIndex: i]; + + if ( [rule target] != TargetNone ) { + if ( isFriendly ) { + if ( [rule target] != TargetFriend && [rule target] != TargetFriendlies ) continue; + } else { + if ( [rule target] != TargetEnemy && [rule target] != TargetAdd && [rule target] != TargetPat ) continue; + } + } + + if ( [self evaluateRule: rule withTarget: unit asTest: NO] ) { + log(LOG_RULE, @"Match found for rule %@ on %@", rule, unit); + matchFound = YES; + break; + } + } + return matchFound; +} + +// this function will actually fire off our combat procedure if needed! +- (void)actOnUnit: (Unit*)unit { + + if ( !self.isBotting ) return; + if ( [playerController isDead] ) return; + + // in theory we should never be here + if ( [blacklistController isBlacklisted:unit] ) { + float distance = [[playerController position] distanceToPosition2D: [unit position]]; + log(LOG_BLACKLIST, @"Ambushed by a blacklisted unit?? Ignoring %@ at %0.2f away", unit, distance); + return; + } + + log(LOG_DEV, @"Acting on unit %@", unit); + log(LOG_COMBAT, @"%@ Engaging %@", [combatController unitHealthBar: unit], unit ); + + // cancel current procedure + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + if ( [movementController isActive] ) [movementController resetMovementState]; + + // I notice that readyToAttack is set here, but not used?? hmmm (older revisions are the same) + BOOL readyToAttack = NO; + + // check to see if we are supposed to be in melee range + if ( self.theBehavior.meleeCombat) { + + float distance = [[playerController position] distanceToPosition2D: [unit position]]; + + // not in range, continue moving! + if ( distance > 5.0f ) { + log(LOG_DEV, @"Still %0.2f away, moving to %@", distance, unit); + [movementController moveToObject:unit]; + } else { + // we're in range + log(LOG_DEV, @"In range, attacking!"); + readyToAttack = YES; + } + } else { +/* + // If they're a hostile out of casting range + if ( ![playerController isFriendlyWithFaction: [unit factionTemplate]] ) { + float distanceToTarget = [[[playerController player] position] distanceToPosition: [unit position]]; + if ( distanceToTarget > theCombatProfile.attackRange && distanceToTarget < 41.f ) { + if ( [movementController jumpTowardsPosition: [unit position]] ) readyToAttack = YES; + } + } +*/ + readyToAttack = YES; + } + + log(LOG_DEV, @"Starting combat procedure (current: %@) for target %@", [self procedureInProgress], unit); + + // start the combat procedure + [self performProcedureWithState: [NSDictionary dictionaryWithObjectsAndKeys: + CombatProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", + unit, @"Target", nil]]; +} + +#pragma mark - +#pragma mark Loot Helpers + +- (void)resetLootScanIdleTimer { + if ( !theCombatProfile.ShouldLoot ) return; + _lootScanIdleTimer = 0; +} + +- (Mob*)mobToLoot { + + if ( !theCombatProfile.ShouldLoot ) return nil; + + // if our loot list is empty scan for missed mobs + if ( ![_mobsToLoot count] ) return nil; + + [self lootScan]; + + Mob *mobToLoot = nil; + // sort the loot list by distance + [_mobsToLoot sortUsingFunction: DistanceFromPositionCompare context: [playerController position]]; + + // find a valid mob to loot + for ( mobToLoot in _mobsToLoot ) { + if ( mobToLoot && [mobToLoot isValid] ) { + if ( ![blacklistController isBlacklisted:mobToLoot] ) { + return mobToLoot; + } else { + [_mobsToLoot removeObject: mobToLoot]; + log(LOG_BLACKLIST, @"Found unit to loot but it's blacklisted, removing %@", mobToLoot); + } + } + } + return nil; +} + +- (BOOL)lootScan { + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + if ( !theCombatProfile.ShouldLoot ) return NO; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + log(LOG_DEV, @"[LootScan] Scanning for missed mobs to loot."); + + NSArray *mobs = [mobController mobsWithinDistance: theCombatProfile.GatheringDistance MobIDs:nil position:[playerController position] aliveOnly:NO]; + + for (Mob *mob in mobs) { + + if ( theCombatProfile.DoSkinning && theCombatProfile.DoNinjaSkin && [mob isSkinnable] && mob != self.mobToSkin && ![_mobsToLoot containsObject: mob] && ![blacklistController isBlacklisted:mob]) { + log(LOG_LOOT, @"[NinjaSkin] Adding %@ to skinning list.", mob); + [_mobsToLoot addObject: mob]; + return YES; + } + + if ([mob isLootable] && ![mob isSkinnable] && [mob isDead] && ![_mobsToLoot containsObject: mob] && ![blacklistController isBlacklisted:mob]) { + log(LOG_LOOT, @"[LootScan] Adding %@ to loot list.", mob); + [_mobsToLoot addObject: mob]; + return YES; + } + + if ( [_mobsToLoot containsObject: mob] && [blacklistController isBlacklisted:mob]) { + log(LOG_LOOT, @"[LootScan] Removing blacklisted object %@ from the loot list.", mob); + [_mobsToLoot removeObject: mob]; + return YES; + } + + } + return NO; +} + +- (void)lootUnit: (WoWObject*) unit { + + if ( [movementController isMoving] ) [movementController resetMovementState]; + + // are we still in the air? shit we can't loot yet! + if ( ![[playerController player] isOnGround] ) { + + float delay = 0.25f; + // once the macro failed, so dismount if we need to + if ( [[playerController player] isMounted] ) { + + [movementController dismount]; + delay = 0.25f; + } + + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[unit cachedGUID]]; + NSNumber *count = [_lootDismountCount objectForKey:guid]; + + if ( !count ) count = [NSNumber numberWithInt:1]; else count = [NSNumber numberWithInt:[count intValue] + 1]; + [_lootDismountCount setObject:count forKey:guid]; + + log(LOG_DEV, @"Player is still in the air, waiting to loot. Attempt %@", count); + + [self performSelector:@selector(lootUnit:) withObject:unit afterDelay:delay]; + return; + } + + if ( [movementController isMoving] ) [movementController resetMovementState]; + + BOOL isNode = [unit isKindOfClass: [Node class]]; + + self.wasLootWindowOpen = NO; + + // looting? + Position *playerPosition = [playerController position]; + float distanceToUnit = [playerController isOnGround] ? [playerPosition distanceToPosition2D: [unit position]] : [playerPosition distanceToPosition: [unit position]]; +// [movementController turnTowardObject: unit]; +// usleep([controller refreshDelay]*2); + + self.lastAttemptedUnitToLoot = unit; + + if ( ![unit isValid] || ( distanceToUnit > 5.0f ) ) { + log(LOG_LOOT, @"Unit not within 5 yards (%d) or is invalid (%d), unable to loot - removing %@ from list", distanceToUnit > 5.0f, ![unit isValid], unit ); + // remove from list + if ( ![unit isKindOfClass: [Node class]] ) [_mobsToLoot removeObject: unit]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return; + } + + if ( [[playerController player] isMounted] ) [movementController dismount]; + + self.lootStartTime = [NSDate date]; + self.unitToLoot = unit; + self.mobToSkin = (Mob*)unit; + + [blacklistController incrementAttemptForObject:unit]; + + if ( !isNode && theCombatProfile.DoSkinning) { + + if ( self.mobToSkin && [self.mobToSkin isSkinnable] ) { + log(LOG_LOOT, @"Using Skin instead of loot : %@m", unit); + [self skinToFinish]; + return; + } + } + + // Lets do this instead of the loot hotkey! + [self interactWithMouseoverGUID: [unit cachedGUID]]; + + // If we do skinning and it may become skinnable + if (!theCombatProfile.DoSkinning || ![self.mobToSkin isKindOfClass: [Mob class]] || ![self.mobToSkin isNPC]) self.mobToSkin = nil; + + + // verify delays + float delayTime = 2.5f; + if (isNode) delayTime = 4.5f; + + log(LOG_LOOT, @"Looting : %@m", unit); + + // In the off chance that no items are actually looted + [self performSelector: @selector(verifyLootSuccess) withObject: nil afterDelay: delayTime]; +} + +- (void)skinToFinish { + // self.evaluationInProgress = @"Loot"; + + // Up to skinning 100, you can find out the highest level mob you can skin by: ((Skinning skill)/10)+10. + // From skinning level 100 and up the formula is simply: (Skinning skill)/5. + int canSkinUpToLevel = 0; + if (theCombatProfile.SkinningLevel <= 100) canSkinUpToLevel = (theCombatProfile.SkinningLevel/10)+10; else canSkinUpToLevel = (theCombatProfile.SkinningLevel/5); + + if ( canSkinUpToLevel >= [self.mobToSkin level] ) { + _skinAttempt = 0; + [self skinMob:self.mobToSkin]; + return; + } else { + [blacklistController blacklistObject: self.mobToSkin]; + log(LOG_LOOT, @"The mob is above your max %@ level (%d).", ((theCombatProfile.DoSkinning) ? @"skinning" : @"herbalism"), canSkinUpToLevel); + [[NSNotificationCenter defaultCenter] postNotificationName: AllItemsLootedNotification object: [NSNumber numberWithInt:0]]; + } + +} + +// It actually takes 1.2 - 2.0 seconds for [mob isSkinnable] to change to the correct status, this makes me very sad as a human, seconds wasted! +- (void)skinMob: (Mob*)mob { + float distanceToUnit = [[playerController position] distanceToPosition2D: [mob position]]; + + // We tried for 2.0 seconds, lets bail + if ( _skinAttempt++ > 20 ) { + log(LOG_LOOT, @"[Skinning] Mob is not valid (%d), not skinnable (%d) or is too far away (%d)", ![mob isValid], ![mob isSkinnable], distanceToUnit > 5.0f ); + + // We'll give this a blacklist + [blacklistController blacklistObject: mob withReason:Reason_RecentlySkinned]; + + [_mobsToLoot removeObject: mob]; + self.mobToSkin = nil; + self.unitToLoot = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return; + } + + // Set to null so our loot notifier realizes we shouldn't try to skin again :P + self.mobJustSkinned = self.mobToSkin; + self.mobToSkin = nil; + self.skinStartTime = [NSDate date]; + + // Not able to skin :/ + if( ![mob isValid] || ![mob isSkinnable] || distanceToUnit > 5.0f ) { + log(LOG_LOOT, @"[Skinning] Mob is not valid (%d), not skinnable (%d) or is too far away (%d)", ![mob isValid], ![mob isSkinnable], distanceToUnit > 5.0f ); + + // We'll give this a blacklist + [blacklistController blacklistObject: mob withReason:Reason_RecentlySkinned]; + + [_mobsToLoot removeObject: mob]; + + self.mobToSkin = nil; + self.unitToLoot = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return; + } + + [controller setCurrentStatus: @"Bot: Skinning"]; + + log(LOG_LOOT, @"Skinning!"); + + // Lets interact w/the mob! + [self interactWithMouseoverGUID: [mob cachedGUID]]; + + // In the off chance that no items are actually looted + [self performSelector: @selector(verifyLootSuccess) withObject: nil afterDelay: 5.0f]; + +} + +// Sometimes there isn't an item to loot! So we'll use this to fire off the notification +- (void)verifyLootSuccess { + // self.evaluationInProgress = @"Loot"; + + // Check if the player is casting still (herbalism/mining/skinning) + if ( [playerController isCasting] ) { + float delayTime = (([playerController castTimeRemaining]/2.0f)+0.1f); + log(LOG_LOOT, @"Player is casting, waiting %.2f seconds.", delayTime); + [self performSelector: @selector(verifyLootSuccess) withObject: nil afterDelay: delayTime]; + return; + } + + log(LOG_DEV, @"Verifying loot succes..."); + + // Is the loot window stuck being open? + if ( [lootController isLootWindowOpen] && _lootMacroAttempt < 3 ) { + self.wasLootWindowOpen = YES; + log(LOG_LOOT, @"Loot window open? ZOMG lets close it!"); + _lootMacroAttempt++; + [lootController acceptLoot]; + [self performSelector: @selector(verifyLootSuccess) withObject: nil afterDelay: 1.0f]; + return; + } else + if ( _lootMacroAttempt >= 3 ) { + log(LOG_LOOT, @"Attempted to loot %d times, moving on...", _lootMacroAttempt); + } + + // fire off notification (sometimes needed if the mob only had $$, or the loot failed) + log(LOG_DEV, @"Firing off loot success"); + + [[NSNotificationCenter defaultCenter] postNotificationName: AllItemsLootedNotification object: [NSNumber numberWithInt:0]]; +} + +// This is called when all items have actually been looted (the loot window will NOT be open at this point) +- (void)itemsLooted: (NSNotification*)notification { + + if ( !self.isBotting ) return; + + BOOL wasNode = NO; + BOOL wasSkin = NO; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + // If this event fired, we don't need to verifyLootSuccess! We ONLY need verifyLootSuccess when a body has nothing to loot! + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(verifyLootSuccess) object: nil]; + _movingTowardNodeCount = 0; + + // This lets us know that the LAST loot was just from us looting a corpse (vs. via skinning or herbalism) + if ( self.unitToLoot ) { + NSDate *currentTime = [NSDate date]; + + int attempts = [blacklistController attemptsForObject:self.unitToLoot]; + + // Unit was looted, remove from list! + if ( [self.unitToLoot isKindOfClass: [Node class]] ){ + log(LOG_DEV, @"Node looted in %0.2f seconds after %d attempt%@", [currentTime timeIntervalSinceDate: self.lootStartTime], attempts, attempts == 1 ? @"" : @"s"); + // Allow the node to fade + wasNode =YES; + } else { + log(LOG_DEV, @"Mob looted in %0.2f seconds after %d attempt%@. %d mobs to loot remain", [currentTime timeIntervalSinceDate: self.lootStartTime], attempts, attempts == 1 ? @"" : @"s", [_mobsToLoot count]); + } + + } + + // Here from looting, but need to skin! + if ( self.unitToLoot && self.mobToSkin ) { + self.wasLootWindowOpen = NO; + + // Pause for a moment for the unit to become skinnable + [self performSelector: @selector(skinToFinish) withObject: nil afterDelay: 1.0f]; + return; + } + + // Here from skinning! + if ( self.mobJustSkinned ) { + + NSDate *currentTime = [NSDate date]; + + log(LOG_LOOT, @"Skinning completed in %0.2f seconds", [currentTime timeIntervalSinceDate: self.skinStartTime]); + + // We'll give this a blacklist so we don't try to reskin due to ninja skin + if ( theCombatProfile.DoNinjaSkin ) [blacklistController blacklistObject: self.mobJustSkinned withReason:Reason_RecentlySkinned]; + + [_mobsToLoot removeObject: self.mobJustSkinned]; + self.mobJustSkinned = nil; + wasSkin = YES; + + } + + if ( self.unitToLoot ) { + [_mobsToLoot removeObject: self.unitToLoot]; + self.unitToLoot = nil; + } + + if (!self.unitToLoot && !self.mobToSkin) { + // We're done! + NSDate *currentTime = [NSDate date]; + if ( self.evaluationInProgress != @"Fishing") log(LOG_LOOT, @"All looting completed in %0.2f seconds", [currentTime timeIntervalSinceDate: self.lootStartTime]); + + // Reset our attempt variables! + _lootMacroAttempt = 0; + } + + float delay = 0.8f; + // Allow the lute to fade + if ( wasNode || wasSkin ) delay = 1.2f; + + self.wasLootWindowOpen = NO; + + self.lastAttemptedUnitToLoot = nil; + + // Reset the loot scan idle timer + [self resetLootScanIdleTimer]; + + // Retarget ourselves + [playerController targetGuid:[[playerController player] cachedGUID]]; + +// if ( self.evaluationInProgress != @"Fishing") [movementController establishPlayerPosition]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: delay]; +} + +// called when ONE item is looted +- (void)itemLooted: (NSNotification*)notification { + + if ( !self.isBotting ) return; + + log(LOG_DEV, @"Looted %@", [notification object]); + + // should we try to use the item? + if ( theCombatProfile.GatherUseCrystallized ){ + int itemID = [[notification object] intValue]; + + // crystallized or mote of + if ( ( itemID >= 37700 && itemID <= 37705 ) || ( itemID >= 22572 && itemID <= 22578 ) ) { + log(LOG_DEV, @"Useable item looted, checking to see if we have > 10 of %d", itemID); + Item *item = [itemController itemForID:[notification object]]; + if ( item ) { + int collectiveCount = [itemController collectiveCountForItem:item]; + if ( collectiveCount >= 10 ) { + log(LOG_LOOT, @"We have more than 10 of %@, using!", item); + [self performAction:itemID + USE_ITEM_MASK]; + } + } + } + } +} + +#pragma mark - +#pragma mark Follow + +// Records the route your follow target +-(void)followRouteStartRecord { + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + if ( !self.isBotting || !theCombatProfile.followEnabled ) return; + + // If we're already recording we can skip this + if ( _followTimer ) return; + + // If we can't verify our unit don't start to record + if ( ![self verifyFollowUnit] ) return; + + Position *positionFollowUnit = [_followUnit position]; + float distanceToFollowUnit = [[playerController position] distanceToPosition: positionFollowUnit]; + + // If we're not out of range then let's reset the route + if ( distanceToFollowUnit <= theCombatProfile.followDistanceToMove ) { + log(LOG_DEV, @"Follow unit is not out of range."); + return; + } + + // Having passed all tests we can start the recording timer + _followTimer = [NSTimer scheduledTimerWithTimeInterval: 0.3f target: self selector: @selector(followMonitor:) userInfo: nil repeats: YES]; +} + +-(void)followRouteClear { + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + if ( !theCombatProfile.followEnabled ) return; + + [self resetFollowTimer]; + _followLastSeenPosition = NO; + + [_followRoute release]; + _followRoute = [[Route route] retain]; + + log(LOG_DEV, @"[Follow] Route cleared with count: %d waypoints in array.", [_followRoute waypointCount]); + +} + +-(BOOL)followMountCheck { + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + log(LOG_FUNCTION, @"followMountCheck"); + + if ( !theCombatProfile.mountEnabled ) return NO; + + if ( !_followUnit ) return NO; + + if ( ![_followUnit isValid] ) return NO; + + // Get off the ground if leader is in the air + if ( ![_followUnit isOnGround] && [[playerController player] isFlyingMounted] ) { + [self jumpIfAirMountOnGround]; + return NO; + } + + // Dismount if we're not on an air mount we're supposed to be! + if ( [_followUnit isFlyingMounted] && ![[playerController player] isFlyingMounted] && [[playerController player] isMounted] ) { + log(LOG_PARTY, @"[Follow] Looks like I'm supposed to be on an air mount, dismounting."); + [movementController dismount]; + return NO; + } + + Position *positionFollowUnit = [_followUnit position]; + float distance = [[[playerController player] position] distanceToPosition: positionFollowUnit]; + + // If we're on the ground and the leader isn't mounted then dismount + if ( distance <= theCombatProfile.followDistanceToMove && ![_followUnit isMounted] && + [[playerController player] isMounted] && [[playerController player] isOnGround] ) { + log(LOG_PARTY, @"[Follow] Leader dismounted, so am I."); + [movementController dismount]; + return NO; + } + + // If we're technically in the air, but still close to the dismoutned leader, dismount + if ( distance < 15.0f && ![_followUnit isMounted] && [[playerController player] isMounted] && [_followUnit isOnGround] ) { + log(LOG_PARTY, @"[Follow] Leader dismounted, so am I."); + [movementController dismount]; + return NO; + } + + if ( [playerController isInCombat] ) return NO; + if ( [[playerController player] isSwimming] ) return NO; + + // Do we need to mount? + if ( ![_followUnit isMounted] || [[playerController player] isMounted] ) return NO; + + // Check to make sure our mount spell will fire + // check to see if we can even cast this spell + + int theMountType = 1; // ground + if ( [_followUnit isFlyingMounted] ) theMountType = 2; // air + + Spell *mount = [spellController mountSpell:theMountType andFast:YES]; + + if ( mount == nil ) { + + // should we load any mounts + if ( [playerController mounts] > 0 && [spellController mountsLoaded] == 0 ) { + log(LOG_MOUNT, @"Attempting to load mounts..."); + [spellController reloadPlayerSpells]; + } + + return NO; + } + + if ( ![spellController isUsableAction: [[mount ID] intValue]] ) { + log(LOG_MOUNT, @"Action isn't usable right now (%d).", mount); + return NO; + } + + return YES; +} + +-(BOOL)followMountNow{ + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + if ( !_followUnit ) return NO; + + if ( ![_followUnit isValid] ) return NO; + + log(LOG_DEV, @"followMountNow has been called."); + + // some error checking + if ( _mountAttempt > 8 ) { + float timeUntilRetry = 5.0f - (-1.0f * [_mountLastAttempt timeIntervalSinceNow]); + + if ( timeUntilRetry > 0.0f ) { + log(LOG_MOUNT, @"Will not mount for another %0.2f seconds", timeUntilRetry ); + return NO; + } else { + _mountAttempt = 0; + } + } + + _mountAttempt++; + + int theMountType = 1; // ground + if ( [_followUnit isFlyingMounted] ) theMountType = 2; // air + + + Spell *mount = [spellController mountSpell:theMountType andFast:YES]; + + // record our last attempt + [_mountLastAttempt release]; _mountLastAttempt = nil; + _mountLastAttempt = [[NSDate date] retain]; + + if ( mount != nil ) { + + // stop moving if we need to! +// if ( [movementController isMoving] ) { + [movementController resetMovementState]; + usleep(10000); +// } + + // Time to cast! + int errID = [self performAction:[[mount ID] intValue]]; + if ( errID == ErrNone ){ + log(LOG_MOUNT, @"Mounting started! No errors!"); + _mountAttempt = 0; + usleep(1800000); + } else { + log(LOG_MOUNT, @"Mounting failed! Error: %d", errID); + } + + log(LOG_MOUNT, @"Mounted!"); + return YES; + } else { + log(LOG_PARTY, @"No mounts found! PG will try to load them, you can do it manually on your spells tab 'Load All'"); + + // should we load any mounts + if ( [playerController mounts] > 0 && [spellController mountsLoaded] == 0 ) { + log(LOG_MOUNT, @"Attempting to load mounts..."); + [spellController reloadPlayerSpells]; + } + } + + return NO; +} + +#define SilverwingFlagSpellID 23335 +#define WarsongFlagSpellID 23333 +#define NetherstormFlagSpellID 34976 + +// Find the designated follow unit +-(BOOL)findFollowUnit { + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + if ( !theCombatProfile.followEnabled ) return NO; + + log(LOG_DEV, @"Checking for our primary follow unit."); + + Player *followTarget = nil; + float distance = 0.0; + float vertOffset = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistVerticalOffset"] floatValue]; + Position *playerPosition = [[playerController player] position]; + + // Look for the actual follow unit + if ( theCombatProfile.followUnit && theCombatProfile.followUnitGUID > 0x0 ) { + followTarget = [playersController playerWithGUID:theCombatProfile.followUnitGUID]; + if ( followTarget ) { + if ( [followTarget isValid] ) { + distance = [playerPosition distanceToPosition: [followTarget position]]; + + if ( theCombatProfile.followDoNotAssignLeader && distance > theCombatProfile.followDoNotAssignLeaderRange ) { + log(LOG_DEV, @"Leader is out of range so we're not assigning."); + } else + + if ( [[followTarget position] verticalDistanceToPosition: playerPosition] > vertOffset ) { + log(LOG_DEV, @"Leader is out of vertical range so we're not assigning."); + } else + + if (distance < INFINITY) { + if ( _followUnit ) { + [_followUnit release]; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + } + + _followUnit = [(Unit*)followTarget retain]; + log(LOG_FOLLOW, @"Leader found: %@", _followUnit); + [self followRouteStartRecord]; + return YES; + } + } + } + } + + if ( !_followUnit && theCombatProfile.partyEnabled && theCombatProfile.tankUnit && _tankUnit ) { + if ( [_tankUnit isValid] ) { + distance = [playerPosition distanceToPosition: [_tankUnit position]]; + + if ( theCombatProfile.followDoNotAssignLeader && distance > theCombatProfile.followDoNotAssignLeaderRange ) { + log(LOG_DEV, @"Tank is out of range so we're not assigning."); + } else + + if ( [[_tankUnit position] verticalDistanceToPosition: playerPosition] > vertOffset ) { + log(LOG_DEV, @"Leader is out of vertical range so we're not assigning."); + } else + + if (distance < INFINITY) { + log(LOG_FOLLOW, @"Leader found (following tank): %@", _tankUnit); + + if ( _followUnit ) { + [_followUnit release]; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + } + _followUnit = [_tankUnit retain]; + + [self followRouteStartRecord]; + return YES; + } + } + } + + if ( !_followUnit && theCombatProfile.partyEnabled && theCombatProfile.assistUnit && _assistUnit ) { + if ( [_assistUnit isValid] ) { + distance = [playerPosition distanceToPosition: [_assistUnit position]]; + + if ( theCombatProfile.followDoNotAssignLeader && distance > theCombatProfile.followDoNotAssignLeaderRange ) { + log(LOG_DEV, @"Assist is out of range so we're not assigning."); + } else + + if ( [[_assistUnit position] verticalDistanceToPosition: playerPosition] > vertOffset ) { + log(LOG_DEV, @"Leader is out of vertical range so we're not assigning."); + } else + + if (distance < INFINITY) { + log(LOG_FOLLOW, @"Leader found (following assist): %@", _assistUnit); + if ( _followUnit ) { + [_followUnit release]; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + } + _followUnit = [_assistUnit retain]; + + [self followRouteStartRecord]; + return YES; + } + } + } + + // Check for flag carriers + if ( !_followUnit && self.pvpIsInBG ) { + if ( theCombatProfile.followEnemyFlagCarriers || theCombatProfile.followFriendlyFlagCarriers ) { + NSArray *players = [playersController allPlayers]; + + for ( Player *player in players ) { + + if ( ![auraController unit: (Unit*)player hasAura: SilverwingFlagSpellID] && + ![auraController unit: (Unit*)player hasAura: WarsongFlagSpellID] && + ![auraController unit: (Unit*)player hasAura: NetherstormFlagSpellID] ) continue; + + distance = [playerPosition distanceToPosition: [(Unit*)player position]]; + if ( theCombatProfile.followDoNotAssignLeader && distance > theCombatProfile.followDoNotAssignLeaderRange ) continue; + if ( distance > 100.0f ) continue; // Just in case + if ( [[(Unit*)player position] verticalDistanceToPosition: playerPosition] > vertOffset ) continue; + + if ( [playerController isFriendlyWithFaction: [player factionTemplate]] ) { + if ( theCombatProfile.followFriendlyFlagCarriers ) { + _followUnit = [(Unit*)player retain]; + log(LOG_FOLLOW, @"Leader found (following friendly flag carrier): %@", player); + if ( [movementController isFollowing] ) [movementController resetMovementState]; + _followingFlagCarrier = YES; + return YES; + } + } else { + if ( theCombatProfile.followEnemyFlagCarriers ) { + if ( _followUnit ) { + [_followUnit release]; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + } + _followUnit = [(Unit*)player retain]; + + log(LOG_FOLLOW, @"Leader found (following enemy flag carrier): %@", player); + _followingFlagCarrier = YES; + [self followRouteStartRecord]; + return YES; + } + } + } + } + } + + if ( !_followUnit ) { + log(LOG_DEV, @"No leader found to follow!"); + return NO; + } + + return YES; +} + +-(BOOL)verifyFollowUnit { + + if ( ![_followUnit isValid] || [_followUnit isDead] ) { + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + return NO; + } + + Position *positionFollowUnit = [_followUnit position]; + float distanceToFollowUnit = [[playerController position] distanceToPosition: positionFollowUnit]; + + if ( theCombatProfile.followStopFollowingOOR && distanceToFollowUnit > theCombatProfile.followStopFollowingRange ) { + log(LOG_FOLLOW, @"Leader is out of range and stop following is enabled, disengaging follow."); + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + return NO; + } + + // just in case! + if ( distanceToFollowUnit > 400.0f ) { + log(LOG_FOLLOW, @"Leader is out of range and stop following is enabled."); + [_followUnit release]; _followUnit = nil; + return NO; + } + + return YES; +} + +- (void)followMonitor: (NSTimer*)timer { + if ( !self.isBotting || !theCombatProfile.followEnabled ) return; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + + if ( ( !_followUnit || ![_followUnit isValid] ) && [self findFollowUnit] ) + log(LOG_FOLLOW, @"Found the follow unit again!"); + + float waypointSpacing = [playerController speedMax] / 2.0f; + + // Validate the current unit + if ( !self.pvpIsInBG && _followRoute && [_followRoute waypointCount] > 0 && ( !_followUnit || ![_followUnit isValid] ) && !_followLastSeenPosition ) { + + // Let's set one more way point to push us into a zone just in case + _followLastSeenPosition = YES; + + NSArray *waypoints = [_followRoute waypoints]; + + if ( [waypoints count] < 2) { + // We need at least 2 waypoints to actually do this + log(LOG_FOLLOW, @"Not enough waypoints to create one for zone in count: %d", _followRoute.waypoints.count); + return; + } + + Waypoint *lastWaypoint = [waypoints objectAtIndex: ([waypoints count]-1)]; + Position *lastPosition = [lastWaypoint position]; + + Waypoint *nextToLastWaypoint = [waypoints objectAtIndex: ([waypoints count]-1)]; + Position *nextToLastPosition = [nextToLastWaypoint position]; + + float newX = 0.0; + // If it's north of the next to last position + if ( [lastPosition xPosition] > [nextToLastPosition xPosition]) newX = [lastPosition xPosition]+waypointSpacing; + else newX = [lastPosition xPosition]-waypointSpacing; + + float newY = 0.0; + // If it's west of the next to last position + if ( [lastPosition yPosition] > [nextToLastPosition yPosition]) newY = [lastPosition yPosition]+waypointSpacing; + else newY = [lastPosition yPosition]-waypointSpacing; + + float newZ = [lastPosition zPosition]; + + Position *zoneInPosition = [[Position alloc] initWithX:newX Y:newY Z:newZ]; + Waypoint *zoneInWaypoint = [Waypoint waypointWithPosition: zoneInPosition]; + + log(LOG_FOLLOW, @"Cannot see leader, adding zone in waypoint: %@", zoneInWaypoint); + + [_followRoute addWaypoint: zoneInWaypoint]; + + return; + } + + // If we can't see the unit we can't record it + if ( !_followUnit || ![_followUnit isValid]) return; + + Position *positionPlayer = [playerController position]; + Position *positionFollowUnit = [_followUnit position]; + + float distanceToFollowUnit = [[playerController position] distanceToPosition: positionFollowUnit]; + + // If we're not out of range then let's reset the route + if ( distanceToFollowUnit <= theCombatProfile.followDistanceToMove ) { + if ( !movementController.isFollowing ) [self followRouteClear]; + return; + } + + if ( theCombatProfile.followStopFollowingOOR && distanceToFollowUnit > theCombatProfile.followStopFollowingRange ) { + log(LOG_FOLLOW, @"Leader is out of range and stop following is enabled, disengaging follow."); + [_followUnit release]; _followUnit = nil; + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedFollowUnitNotification object: nil]; + return; + } + + if ( [_followRoute waypointCount] ) { + // If we already have waypoints on the route + log(LOG_DEV, @"Looks like we have a follow route started already."); + + NSArray *waypoints = [_followRoute waypoints]; + + log(LOG_DEV, @"Getting the last waypoint"); + Waypoint *lastWaypoint = [waypoints objectAtIndex: ([waypoints count]-1)]; + + float distanceMoved = [[lastWaypoint position] distanceToPosition: positionFollowUnit]; + + // If our follow unit hasn't moved far enough we return + if (distanceMoved < waypointSpacing) return; + + Waypoint *newWaypoint = [Waypoint waypointWithPosition: positionFollowUnit]; + + log(LOG_DEV, @"[Follow] Adding waypoint: %@ count: %d", newWaypoint, [_followRoute waypointCount]); + + // Add the waypoint to the route + [_followRoute addWaypoint: newWaypoint]; + } else { + // No Route so start it + + Waypoint *newWaypoint; + if ( distanceToFollowUnit > theCombatProfile.yardsBehindTargetStart ) { + Position *newPosition = [positionPlayer positionAtDistance: (distanceToFollowUnit-3.0f) withDestination:positionFollowUnit]; + newWaypoint = [Waypoint waypointWithPosition: newPosition]; + } else { + newWaypoint = [Waypoint waypointWithPosition: positionFollowUnit]; + } + [_followRoute addWaypoint: newWaypoint]; + + log(LOG_DEV, @"[Follow] Starting route with waypoint: %@ count: %d", newWaypoint, [_followRoute waypointCount] ); + + } +} + +-(void)resetFollowTimer{ + if ( _followTimer ) { + [_followTimer invalidate]; + _followTimer = nil; + } +} + +#pragma mark - +#pragma mark Party + +// Sets the tankUnit. +-(BOOL)establishTankUnit { + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + if ( !theCombatProfile.partyEnabled || !theCombatProfile.tankUnit || theCombatProfile.tankUnitGUID <= 0x0 ) { + if ( _tankUnit ) [_tankUnit release]; _tankUnit = nil; + return NO; + } + + // If we've already found a tank and it's valid just return true + if ( _tankUnit && [_tankUnit isValid] ) return NO; + + // Let's see if we can set the tankUnit + Unit *tankPlayer = [playersController playerWithGUID: theCombatProfile.tankUnitGUID]; + if ( tankPlayer && [tankPlayer isValid] ) { + _tankUnit = [tankPlayer retain]; + log(LOG_PARTY, @"Found the tank: %@", _tankUnit ); + return YES; + } else { + [_tankUnit release]; _tankUnit = nil; + log(LOG_DEV, @"Tank not found! GUID: 0x%qX", theCombatProfile.tankUnitGUID); + } + + return NO; +} + +// Sets the assistUnit. +-(BOOL)establishAssistUnit { + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + if ( !theCombatProfile.partyEnabled || !theCombatProfile.assistUnit || theCombatProfile.assistUnitGUID <= 0x0 ) { + if ( _assistUnit ) [_assistUnit release]; _assistUnit = nil; + return NO; + } + + // If we've already found a assist and it's valid just return true + if ( _assistUnit && [_assistUnit isValid] ) return NO; + + // Let's see if we can set the assistUnit + Unit *assistPlayer = [playersController playerWithGUID: theCombatProfile.assistUnitGUID]; + if ( assistPlayer && [assistPlayer isValid] ) { + _assistUnit = [assistPlayer retain]; + log(LOG_PARTY, @"Found the assist: %@", _assistUnit ); + return YES; + } else { + [_assistUnit release]; _assistUnit = nil; + log(LOG_DEV, @"Assist not found! GUID: 0x%qX", theCombatProfile.assistUnitGUID); + } + + return NO; +} + +-(BOOL)isTank:(Unit*)unit { + + if ( !self.tankUnit ) return NO; + + if ( self.tankUnit == unit ) return YES; + + return NO; +} + +-(BOOL)leaderWait { + + if ( !self.isBotting ) return NO; + if ( [playerController isDead] ) return NO; + + if ( !theCombatProfile.partyEnabled || !theCombatProfile.partyLeaderWait ) return NO; + + UInt64 playerID; + Player *player; + + BOOL needToWait = NO; + + int i; + for (i=1;i<6;i++) { + + // If there are no more party members + playerID = [playerController PartyMember: i]; + if ( playerID <= 0x0) break; + + player = [playersController playerWithGUID: playerID]; + + if ( !player || ![player isValid] ) { + if ( !_leaderBeenWaiting ) log(LOG_PARTY, @"[LeaderWait] Cannot see: %@", player); + needToWait = YES; + break; + } + + if ( [player isInCombat] ) { + if ( !_leaderBeenWaiting ) log(LOG_PARTY, @"[LeaderWait] still in combat: %@", player); + needToWait = YES; + break; + } + + if ( [auraController unit: player hasBuffNamed: @"Food"] || [auraController unit: player hasBuffNamed: @"Drink"] ) { + if ( !_leaderBeenWaiting ) log(LOG_PARTY, @"[LeaderWait] still eating or drinking: %@", player); + needToWait = YES; + break; + } + + float playerDistance = [[playerController position] distanceToPosition: [player position]]; + + if ( playerDistance > theCombatProfile.partyLeaderWaitRange ) { + if ( !_leaderBeenWaiting ) log(LOG_PARTY, @"[LeaderWait] not close enough yet: %@ (%0.2f yards)", player, playerDistance); + needToWait = YES; + break; + } + + } + + return needToWait; +} + +- (void)jumpIfAirMountOnGround { + + if ( !self.isBotting ) return; + if ( [playerController isDead] ) return; + + // Is the player air mounted, and on the ground? Me no likey - lets jump! + UInt32 movementFlags = [playerController movementFlags]; + if ( (movementFlags & 0x1000000) == 0x1000000 && (movementFlags & 0x3000000) != 0x3000000 ){ + if ( _jumpAttempt == 0 && ![controller isWoWChatBoxOpen] ){ + log(LOG_MOVEMENT, @"Player on ground while air mounted, jumping!"); + [movementController raiseUpAfterAirMount]; + } + if ( _jumpAttempt++ > 3 ) _jumpAttempt = 0; + } +} + +- (NSString*)randomEmote:(Unit*)emoteUnit { + + NSString *emote = _lastEmote; + + // Targeting nothing or ourselves + if ( !emoteUnit || [playerController targetID] == [[playerController player] cachedGUID]) { + emote = [self emoteGeneral]; + // Find something besides the last one + while ( emote == _lastEmote) emote = [self emoteGeneral]; + _lastEmote=emote; + return emote; + } + + if ( [(Player*)emoteUnit gender] != [[playerController player] gender]) { + // Targeting someone sexy + emote = [self emoteSexy]; + while ( emote == _lastEmote) emote = [self emoteSexy]; + _lastEmote=emote; + return emote; + } + + // Targeting a friend + emote = [self emoteFriend]; + while ( emote == _lastEmote) emote = [self emoteFriend]; + _lastEmote=emote; + return emote; + +} + +- (NSString*)emoteGeneral { + // What would be the smartest thing here is to make an array, randomize it then go through it, rinse and repeat (perfect randomization). + int r = SSRandomIntBetween(0,10); + if (r == 0) return @"/tired"; + if (r == 1) return @"/burp"; + if (r == 2) return @"/bored"; + if (r == 3) return @"/cat"; + if (r == 4) return @"/cry"; + if (r == 5) return @"/chicken"; + if (r == 6) return @"/confused"; + if (r == 7) return @"/sob"; + if (r == 8) return @"/drool"; + if (r == 9) return @"/eye"; + if (r == 10) return @"/fidget"; + return nil; +} + +- (NSString*)emoteFriend { + int r = SSRandomIntBetween(0,10); + if (r == 0) return @"/yes"; + if (r == 1) return @"/rasp"; + if (r == 2) return @"/lol"; + if (r == 3) return @"/rofl"; + if (r == 4) return @"/grin"; + if (r == 5) return @"/impatient"; + if (r == 6) return @"/moon"; + if (r == 7) return @"/party"; + if (r == 8) return @"/bravo"; + if (r == 9) return @"/cackle"; + if (r == 10) return @"/blink"; + return nil; +} + +- (NSString*)emoteSexy { + int r = SSRandomIntBetween(0,10); + if (r == 0) return @"/bashful"; + if (r == 1) return @"/blow"; + if (r == 2) return @"/blush"; + if (r == 3) return @"/cuddle"; + if (r == 4) return @"/grin"; + if (r == 5) return @"/flirt"; + if (r == 6) return @"/kiss"; + if (r == 7) return @"/party"; + if (r == 8) return @"/lick"; + if (r == 9) return @"/massage"; + if (r == 10) return @"/love"; + return nil; +} + +#pragma mark - +#pragma mark Evaluation Tasks + +-(BOOL)evaluateForGhost { + + // Spooky stories go here + if ( ![playerController isGhost] && ![playerController isDead] ) return NO; + + if ( !self.isBotting ) return NO; + + if ( movementController.moveToObject ) return NO; + + log(LOG_EVALUATE, @"Evaluating for Ghost"); + + if ( !self.evaluationInProgress ) { + log(LOG_GHOST, @"Player is dead."); + self.evaluationInProgress = @"Ghost"; + [controller setCurrentStatus: @"Bot: Player is Dead"]; + } + + if ( self.pvpIsInBG ) { + log(LOG_GHOST, @"Player is dead in a BG, stoping evaluation until we revive."); + return YES; + } + + if ( theCombatProfile.resurrectWithSpiritHealer ) { + // Resurrect with the Spirit Healer + + if ( theCombatProfile.checkForCampers ) { + log(LOG_GHOST, @"Checking for campers."); + // Check for Campers + BOOL nearbyCampers = [playersController playerWithinRangeOfUnit: theCombatProfile.checkForCampersRange Unit:[playerController player] includeFriendly:NO includeHostile:YES]; + if ( nearbyCampers ) { + log(LOG_GHOST, @"Looks like I'm being camped, going to hold of on resurrecting."); + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 5.0f]; + return YES; + } + log(LOG_GHOST, @"No campers."); + } + + // Find the Spirit Healer + NSMutableArray *mobs = [NSMutableArray array]; + [mobs addObjectsFromArray: [mobController mobsWithinDistance: 30.0f MobIDs:nil position:[[playerController player]position] aliveOnly:YES]]; + + if ( ![mobs count]) { + log(LOG_GHOST, @"Cannot find the Spirit Healer, is it in range?"); + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 1.0f]; + return YES; + } + + Mob *spiritHealer; + + log(LOG_DEV, @"Looking for the Spirit Healer..."); + + for ( spiritHealer in mobs ) { + log(LOG_DEV, @"Checking %@...", spiritHealer.name); + + if ( [[spiritHealer name] isEqualToString: @"Spirit Healer"] ) { + log(LOG_GHOST, @"Found %@...", spiritHealer); + break; + } else { + spiritHealer = nil; + } + } + + if ( !spiritHealer ) { + log(LOG_GHOST, @"Cannot find the Spirit Healer in the mobs list, is it in range?"); + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 1.0f]; + return YES; + } else { + // Found the Spirit Healer + log(LOG_DEV, @"Found Spirit Healer!"); + Position *playerPosition = [playerController position]; + Position *spiritHealerPosition = [spiritHealer position]; + log(LOG_DEV, @"Checking distance..."); + + float distanceToSpiritHealer = [playerPosition distanceToPosition: spiritHealerPosition]; + + if ( distanceToSpiritHealer > 3.0f ) { + log(LOG_DEV, @"Moving to the Spirit Healer."); + // Face the target + [movementController turnTowardObject: spiritHealer]; + usleep([controller refreshDelay]*2); + [movementController moveToObject: spiritHealer]; + // [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.0f]; + // [self performSelector: _cmd withObject: nil afterDelay: 0.5f]; + return YES; + } + + log(LOG_GHOST, @"Resurrecting with the Spirit Healer."); + // Now we do the actual interaction + [self interactWithMouseoverGUID:[spiritHealer cachedGUID]]; + usleep(10000); + [macroController useMacroOrSendCmd:@"ClickFirstButton"]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.5f]; + return YES; + } + } + + if( ![playerController corpsePosition] ) { + log(LOG_DEV, @"Still not near the corpse."); + + // Make sure the movement controller has the right route + if ( self.theRouteSet && movementController.currentRouteSet != self.theRouteSet ) + [movementController setPatrolRouteSet:self.theRouteSet]; + + [movementController resumeMovement]; + return NO; + } + + Position *playerPosition = [playerController position]; + Position *corpsePosition = [playerController corpsePosition]; + float distanceToCorpse = [playerPosition distanceToPosition: corpsePosition]; + + if ( [movementController isMoving] ) { + log(LOG_DEV, @"Player is moving us."); + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + + // If we see the corpse and it's close enough, let's move to it + if ( _ghostDance == 0 && distanceToCorpse > 6.0f && distanceToCorpse <= theCombatProfile.moveToCorpseRange) { + if ( [movementController isActive] ) [movementController resetMovementState]; + _movingToCorpse = YES; + [movementController moveToPosition: corpsePosition]; + log(LOG_GHOST, @"Moving to the corpse now."); + return YES; + } else + + // If we're not close to the corpse let's keep moving + if( _ghostDance == 0 && distanceToCorpse > 6.0f ) { + + // Make sure the movement controller has the right route + if ( self.theRouteSet && movementController.currentRouteSet != self.theRouteSet ) + [movementController setPatrolRouteSet:self.theRouteSet]; + + log(LOG_DEV, @"Still not near the corpse."); + [movementController resumeMovement]; + return NO; + } + + // we found our corpse + [controller setCurrentStatus: @"Bot: Waiting to Resurrect"]; + + if ( theCombatProfile.checkForCampers ) { + log(LOG_GHOST, @"Checking for campers."); + // Check for Campers + BOOL nearbyCampers = [playersController playerWithinRangeOfUnit: theCombatProfile.checkForCampersRange Unit:[playerController player] includeFriendly:NO includeHostile:YES]; + if ( nearbyCampers ) { + log(LOG_GHOST, @"Looks like I'm being camped, going to hold of on resurrecting."); + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 5.0f]; + return YES; + } + log(LOG_GHOST, @"No campers."); + } + + if (theCombatProfile.avoidMobsWhenResurrecting) { + if (_ghostDance <= 3) { + NSMutableArray *mobs = [NSMutableArray array]; + [mobs addObjectsFromArray: [mobController mobsWithinDistance: 20.0f MobIDs:nil position:[[playerController player]position] aliveOnly:YES]]; + // Do a little dance to make sure we're clear of mobs + if ([mobs count]) { + log(LOG_GHOST, @"Mobs near the corpse, finding a safe spot."); + [mobs sortUsingFunction: DistanceFromPositionCompare context: playerPosition]; + Unit *mob = nil; + for ( mob in mobs ) { + // This is very basic, but it's a good place to start =] + log(LOG_DEV, @"Face and Reverse..."); + + // Face the target + [movementController turnTowardObject: mob]; + usleep([controller refreshDelay]*2); + [movementController moveBackwardStart]; + usleep(1600000); + [movementController moveBackwardStop]; + _ghostDance++; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + } + } + + // Ghost was dancin a lil too much + if ( _ghostDance > 3 && distanceToCorpse > 26.0 ) { + log(LOG_GHOST, @"Ghost dance didnt help, moving back to the corpse."); + [movementController moveToPosition: corpsePosition]; + return YES; + } + } + + log(LOG_DEV, @"Clicking the Resurrect button...."); + + [macroController useMacroOrSendCmd:@"Resurrect"]; // get corpse + + // Try once every second until you're back in + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 1.0f]; + return YES; +} + +- (BOOL)evaluateForPVPWG { + log(LOG_EVALUATE, @"Evaluating for PvPWG."); + + // Check our WG status and start the timer if needed + if ( theCombatProfile.pvpStayInWintergrasp && [playerController zone] == 4197 && !_wgTimer ) { + log(LOG_PVP, @"We're in Wintergrasp, starting the timer."); + _wgTimer = [NSTimer scheduledTimerWithTimeInterval: 5.0f target: self selector: @selector(wgTimer:) userInfo: nil repeats: YES]; + } + + if ( _wgTimer ) { + if ( !theCombatProfile.pvpStayInWintergrasp || ![playerController zone] == 4197 ) { + log(LOG_PVP, @"Stoping the Wintergrasp timer."); + [_wgTimer invalidate]; _wgTimer = nil; + } + } + + return NO; +} + +- (BOOL)evaluateForPVPQueue { + log(LOG_EVALUATE, @"Evaluating for PvP Queue since we are not in a BG."); + + // Out of BG Resets + if ( self.pvpIsInBG ) [self pvpSetEnvironmentForZone]; + + // If we're in combat don't check any further + if ( [playerController isInCombat] ) return NO; + + // If we've been waiting to take our Q + if ( _needToTakeQueue ) { + if ( [movementController isActive] ) [movementController stopMovement]; + [self joinBGCheck]; + return YES; + } + + // Check for Queueing + if ( _waitForPvPQueue ) { + if ( ![[controller currentStatus] isEqualToString: @"PvP: Waiting in queue for Battleground."] ) + [controller setCurrentStatus: @"PvP: Waiting in queue for Battleground."]; + return NO; + } + + if ( [playerController battlegroundStatus] == BGQueued ) { + log(LOG_PVP, @"Waiting In queue for Battleground."); + _waitForPvPQueue = YES; + [controller setCurrentStatus: @"PvP: Waiting in queue for Battleground."]; + return NO; + } + + // Beyond this point we only do checks if we're set to + if ( !theCombatProfile.pvpQueueForRandomBattlegrounds && !theCombatProfile.pvpLeaveIfInactive ) return NO; + + // Check to see if we have the Deserter buff + if ( [auraController unit: [playerController player] hasAura: DeserterSpellID] ) { + if ( [controller currentStatus] != @"PvP: Waiting for deserter to fade." ) [controller setCurrentStatus: @"PvP: Waiting for deserter to fade."]; + log(LOG_DEV, @"Waiting for deserter to fade."); + + if( [controller sendGrowlNotifications] && [GrowlApplicationBridge isGrowlInstalled] && [GrowlApplicationBridge isGrowlRunning]) { + // [GrowlApplicationBridge setGrowlDelegate: @""]; + [GrowlApplicationBridge notifyWithTitle: [NSString stringWithFormat: @"Battleground Entered"] + description: [NSString stringWithFormat: @"Starting bot in 5 seconds."] + notificationName: @"BattlegroundEnter" + iconData: (([controller reactMaskForFaction: [[playerController player] factionTemplate]] & 0x2) ? [[NSImage imageNamed: @"BannerAlliance"] TIFFRepresentation] : [[NSImage imageNamed: @"BannerHorde"] TIFFRepresentation]) + priority: 0 + isSticky: NO + clickContext: nil]; + } + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 1.0f]; + return YES; + } + + if ( !theCombatProfile.pvpQueueForRandomBattlegrounds ) return NO; + + if ( [self pvpQueueBattleground] ) { + + [controller setCurrentStatus: @"PvP: Waiting in queue for Battleground."]; + log(LOG_PVP, @"Queued for Battle Ground!"); + _waitForPvPQueue = YES; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } else { + [controller setCurrentStatus: @"PvP: Battleground queue failed, waiting for retry."]; + log(LOG_PVP, @"Queueing failed, will try again in second."); + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 1.0f]; + return YES; + } + + return NO; +} + +- (BOOL)evaluateForPVPBattleGround { + + log(LOG_EVALUATE, @"Evaluating for PvP Battleground"); + + // Battleground has ended, we've been waiting to leave + if ( _waitingToLeaveBattleground ) { + // Actually leave + log(LOG_PVP, @"Leaving battleground."); + [controller setCurrentStatus: @"Leaving Battleground."]; + [macroController useMacroOrSendCmd:@"LeaveBattlefield"]; + _waitingToLeaveBattleground = NO; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 5.0f]; + return YES; + } + + _waitForPvPQueue = NO; + if ( !_pvpIsInBG ) { + if ( [self pvpSetEnvironmentForZone] ) { + log(LOG_DEV, @"PvP environment is set!"); + } + } + + if ( !_pvpTimer ) + _pvpTimer = [NSTimer scheduledTimerWithTimeInterval: 1.0f target: self selector: @selector(pvpMonitor:) userInfo: nil repeats: YES]; + + Player *player = [playerController player]; + + if ( self.pvpPlayWarning || theCombatProfile.pvpLeaveIfInactive ) { + // Play warning if we're marked idle. + if( [auraController unit: player hasAura: IdleSpellID] || [auraController unit: player hasAura: InactiveSpellID]) { + log(LOG_PVP, @"Idle/Inactive debuff detected!"); + if ( self.pvpPlayWarning ) [[NSSound soundNamed: @"alarm"] play]; + log( LOG_PVP, @"Inactive debuff detected!"); + + if ( theCombatProfile.pvpLeaveIfInactive ) { + // leave the battleground + log( LOG_PVP, @"Leaving battleground due to Inactive debuff."); + [macroController useMacroOrSendCmd:@"LeaveBattlefield"]; + } + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 1.0f]; + return YES; + } + } + + // See if we are waiting for preparation + if ( [auraController unit: player hasAura: PreparationSpellID] ) { + if ( !_waitForPvPPreparation ) { + if ( ![[controller currentStatus] isEqualToString: @"PvP: Waiting for preparation buff to fade."] ) + [controller setCurrentStatus: @"PvP: Waiting for preparation buff to fade."]; + _waitForPvPPreparation = YES; + } + return NO; + } else + + // We do not have the buff so... + if ( _waitForPvPPreparation ) { + + // If we're performing a delay action ( most likely for preparation ) then let's reset + if ( movementController.performingActions ) [movementController resetMovementState]; + _waitForPvPPreparation = NO; + + // Only checking for the delay! + if ( [playerController zone] == ZoneStrandOfTheAncients && [playerController isOnBoatInStrand] ) { + _attackingInStrand = YES; + _strandDelay = YES; + } else { + _strandDelay = NO; + _attackingInStrand = NO; + } + } + + if ( _strandDelay ) { + + // We're still waiting + if ( _strandDelayTimer++ < 100 ) { + if ( [controller currentStatus] != @"PvP: Waiting for boat to arrive." ) + [controller setCurrentStatus: @"PvP: Waiting for boat to arrive..."]; + return NO; + } + + // We've arrived! + _strandDelayTimer = 0; + _strandDelay = NO; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + + if ( !self.isPvPing ) return NO; + + // We're being called while moving to position or following + if ( [movementController isActive] ) return NO; + + if ( [playerController zone] == ZoneStrandOfTheAncients && [playerController isOnBoatInStrand] ) { + + // walk off boat + [controller setCurrentStatus: @"PvP: Walking off the boat..."]; + BOOL onLeftBoat = [playerController isOnLeftBoatInStrand]; + Position *pos = nil; + // Does not work!?? bot goes the wrong way on horde + if ( onLeftBoat ) { + log(LOG_PVP, @"Moving off of left boat!"); + pos = [Position positionWithX:6.23f Y:20.94f Z:4.97f]; + } else { + log(LOG_PVP, @"Moving off of right boat!"); + pos = [Position positionWithX:5.88f Y:-25.1f Z:5.3f]; + } + + [movementController moveToPosition:pos]; + return YES; + } + + return NO; +} + +- (BOOL)evaluateForParty { + + if ( [playerController isDead] ) return NO; + + log(LOG_FUNCTION, @"evaluateForParty"); + + // Return no if this isn't turned on + if ( !theCombatProfile.partyEnabled ) return NO; + + // Skip this if we are already in evaluation + if ( self.evaluationInProgress && self.evaluationInProgress != @"Party") return NO; + + log(LOG_EVALUATE, @"Evaluating for Party"); + + if ( [self establishTankUnit] ) { +// [movementController resetMovementState]; + + // Loop again to evaluate after setting tank unit + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + + if ( [self establishAssistUnit] ) { +// [movementController resetMovementState]; + + // Loop again to evaluate after setting assist unit + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + + if ( [self leaderWait] ) { + + // Looks like we need to wait! + self.evaluationInProgress = @"Party"; + + if ( !_leaderBeenWaiting ) [movementController resetMovementState]; + + _leaderBeenWaiting = YES; + + // Loop again to wait + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 3.0f]; + return YES; + } else + if ( _leaderBeenWaiting ) { + if ( [movementController isActive] ) [movementController resetMovementState]; + + _leaderBeenWaiting = NO; + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + + if ( self.evaluationInProgress ) { + if ( [movementController isActive] ) [movementController resetMovementState]; + + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } else { + return NO; + } +} + +- (BOOL)evaluateForFollow { + + log(LOG_FUNCTION, @"evaluateForFollow"); + +// if ( self.followSuspended && self.followUnit ) self.followUnit = nil; + + if ( !theCombatProfile.followEnabled || self.followSuspended ) return NO; + + log(LOG_EVALUATE, @"Evaluating for Follow"); + // If we're following a flag carrier lets make sure they still have the buff + if ( _followingFlagCarrier ) { + if ( ![auraController unit: _followUnit hasAura: SilverwingFlagSpellID] && + ![auraController unit: _followUnit hasAura: WarsongFlagSpellID] && + ![auraController unit: _followUnit hasAura: NetherstormFlagSpellID] ) { + log(LOG_FOLLOW, @"Flag carrier no longer has buff, stopping follow."); + _followingFlagCarrier = NO; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + if ( self.evaluationInProgress == @"Follow" ) self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + + if ( !_followUnit || ![_followUnit isValid]) { + log(LOG_FOLLOW, @"Flag carrier no longer valid, stopping follow."); + _followingFlagCarrier = NO; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + if ( self.evaluationInProgress == @"Follow" ) self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + float distanceToLeader = [[playerController position] distanceToPosition: [_followUnit position]]; + if ( distanceToLeader > 80.0f ) { + log(LOG_FOLLOW, @"Flag carrier out of range, stopping follow."); + _followingFlagCarrier = NO; + if ( [movementController isFollowing] ) [movementController resetMovementState]; + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + if ( self.evaluationInProgress == @"Follow" ) self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } + } + + [self followRouteStartRecord]; + + // isValid causes a crash when the unit is no longer in the same zone! + // perhaps instead of using Unit for follow I should try using GUID hmm. + + // Find someone to follow if we've lost our target. + if ( !_followUnit || ![_followUnit isValid] ) { + log(LOG_DEV, @"No follow unit, calling for findFollowUnit"); + if ( ![self findFollowUnit] ) return NO; + } + + // If we're doing something, lets record the route of our follow target + if ( self.evaluationInProgress && self.evaluationInProgress != @"Follow") return NO; + + log(LOG_DEV, @"Checking to see if we're not following the primary follow unit."); + // If we're following the tank lets see if our primary follow unit is in range + if ( theCombatProfile.followUnit && theCombatProfile.followUnitGUID > 0x0 && [_followUnit cachedGUID] != theCombatProfile.followUnitGUID ) { + log(LOG_DEV, @"Following the tank unit, calling for findFollowUnit"); + if ( ![self findFollowUnit] ) return NO; + } + + // If we're already following + if ( movementController.isFollowing ) return NO; + + // If we need to mount lets return + if ( [self followMountCheck] ) { + if ( [movementController isMoving] || [movementController isActive] ) [movementController resetMovementState]; + + log(LOG_DEV, @"Need to mount..."); + self.evaluationInProgress = @"Follow"; + + if ( [self followMountNow] ) { + log(LOG_DEV, @"Mounting ok, calling evaluation"); + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return NO; + } else { + log(LOG_DEV, @"Mountingfailed!?"); + return NO; + } + } + + float distanceToLeader = [[playerController position] distanceToPosition: [_followUnit position]]; + + if ( distanceToLeader <= theCombatProfile.followDistanceToMove ) { + log(LOG_DEV, @"Leader is not out of range."); + // If we're in range don't worry about it, make sure the route had been cleared + [self followRouteClear]; + return NO; + } + + if ( !_followTimer ) { + _followTimer = [NSTimer scheduledTimerWithTimeInterval: 0.25f target: self selector: @selector(followMonitor:) userInfo: nil repeats: YES]; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + } + + // If we've recorded no route yet + if ( ![_followRoute waypointCount] ) { + log(LOG_DEV, @"No follow route yet, skipping follow."); + return NO; + } + + // If we cannot verify our unit + if ( ![self verifyFollowUnit] ) { + log(LOG_DEV, @"Cannot verify the unit, skipping follow."); + return NO; + } + + // If we're mounted let's wait until they're 2 waypoints away + if ( [[playerController player] isMounted] && distanceToLeader < 20.0f && [_followRoute waypointCount] == 0 ) { + log(LOG_DEV, @"Waiting until our leader is at least 2 way points away since we're mounted."); + return NO; + } + + log(LOG_FOLLOW, @"Leader is %0.2f away, following.", distanceToLeader); + + [controller setCurrentStatus: @"Bot: Following"]; + self.evaluationInProgress = @"Follow"; + + [movementController startFollow]; + return YES; +} + +- (BOOL)evaluateForCombatContinuation { + + if ( [playerController isDead] || [playerController percentHealth] == 0 ) return NO; + + if ( _waitForPvPQueue && !self.useRoute) { + log(LOG_EVALUATE, @"[CombatContinuation] skipping since we're in queue with no route set."); + return NO; + } + + if ( _waitForPvPPreparation ) { + log(LOG_EVALUATE, @"[CombatContinuation] skipping since we're in prepatation."); + return NO; + } + + log(LOG_FUNCTION, @"evaluateForCombatContinuation"); + + if (self.theCombatProfile.ignoreFlying && [[playerController player] isFlyingMounted]) { + PGLog(@"wut?"); + return NO; + } + + // Skip this if we're doing something already + if ( self.evaluationInProgress == @"Follow" && [[playerController player] isMounted] ) { + PGLog(@"I DONT BELIEVE IT"); + return NO; + } + + if ( !self.pvpIsInBG && !theCombatProfile.partyEnabled && ![playerController isInCombat] ) return NO; + + log(LOG_EVALUATE, @"Evaluating for Combat Continuation"); + + Unit *bestUnit; + + if ( self.isPvPing || self.pvpIsInBG ) bestUnit = [combatController findUnitWithFriendly:_includeFriendly onlyHostilesInCombat:NO]; + else bestUnit = [combatController findUnitWithFriendly:_includeFriendly onlyHostilesInCombat:YES]; + + if ( !bestUnit || bestUnit == nil ) return NO; + log(LOG_DEV, @"[CombatContinuation] Found %@ to act on!", bestUnit); + + // Reset the party emotes idle + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer = 0; + + if ( [movementController isActive] ) [movementController resetMovementState]; + + [self actOnUnit:bestUnit]; + return YES; +} + +- (BOOL)evaluateForCombatStart { + log(LOG_FUNCTION, @"evaluateForCombatStart"); + + if ( [playerController isDead] || [playerController percentHealth] == 0 ) return NO; + + if ( _waitForPvPPreparation ) { + log(LOG_EVALUATE, @"[CombatStart] skipping since we're in queue(%d) or in preparation(%d).", _waitForPvPQueue, _waitForPvPPreparation); + return NO; + } + + if ( _waitForPvPQueue && !self.useRoute ) { + log(LOG_EVALUATE, @"[CombatStart] skipping since we're in queue with no normal route set."); + return NO; + } + + // Skip this if we are already in evaluation + if ( self.evaluationInProgress ) { + if ( self.evaluationInProgress == @"Follow" && !_followingFlagCarrier ) { + return NO; + } else + if ( self.evaluationInProgress != @"Follow" ) { + return NO; + } + } + + // If combat isn't enabled + if ( !theCombatProfile.combatEnabled && !theCombatProfile.healingEnabled ) return NO; + + // If we're supposed to ignore combat while flying + if ( self.theCombatProfile.ignoreFlying && [[playerController player] isFlyingMounted] ) return NO; + + // If we're set to only attack when attacked or set not to initiate combat in party. + if ( ( theCombatProfile.partyEnabled && theCombatProfile.partyDoNotInitiate ) || theCombatProfile.onlyRespond ) return NO; + + log(LOG_EVALUATE, @"Evaluating for Combat Start"); + + Position *playerPosition = [playerController position]; + + // Look for a new target + if ( theCombatProfile.combatEnabled ) { + Unit *unitToActOn = [combatController findUnitWithFriendlyToEngage:_includeFriendly onlyHostilesInCombat:NO]; + + if ( unitToActOn && [unitToActOn isValid] ) { + float unitToActOnDist = unitToActOn ? [[unitToActOn position] distanceToPosition: playerPosition] : INFINITY; + if ( unitToActOnDist < INFINITY ) { + + log(LOG_DEV, @"[Combat Start] Valid unit to act on: %@", unitToActOn); + + if ( [movementController isActive] ) [movementController resetMovementState]; + + // hostile only + if ( ![playerController isFriendlyWithFaction: [unitToActOn factionTemplate]] ) { + // should we do pre-combat? + if ( ![playerController isInCombat] && ![combatController inCombat] && !_didPreCombatProcedure ) { + // Reset the party emotes idle + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer = 0; + + _didPreCombatProcedure = YES; + self.preCombatUnit = unitToActOn; + log(LOG_COMBAT, @"%@ Pre-Combat procedure underway.", [combatController unitHealthBar:[playerController player]]); + [self performProcedureWithState: [NSDictionary dictionaryWithObjectsAndKeys: + PreCombatProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", + unitToActOn, @"Target", nil]]; + return YES; + } + if ( unitToActOn != self.preCombatUnit ) log(LOG_DEV, @"[Combat Start] Attacking unit other than pre-combat unit."); + self.preCombatUnit = nil; + log(LOG_DEV, @"%@ Found %@ trying to attack.", [combatController unitHealthBar: unitToActOn], unitToActOn); + } + + [self actOnUnit: unitToActOn]; + return YES; + } + } + } + + // Check friendlies if healing is enabled + if ( theCombatProfile.healingEnabled ) { + NSArray *validUnits = [NSArray arrayWithArray:[combatController validUnitsWithFriendly:_includeFriendly onlyHostilesInCombat:NO]]; + if ( [validUnits count] ) { + for ( Unit *unit in validUnits ) { + if ( ![playerController isFriendlyWithFaction: [unit factionTemplate]] ) continue; + if ([ playerPosition distanceToPosition:[unit position]] > theCombatProfile.healingRange ) continue; + if ( ![self combatProcedureValidForUnit:unit] ) continue; + log(LOG_HEAL, @"%@ helping %@", [combatController unitHealthBar: unit], unit); + // Reset the party emotes idle + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer = 0; + if ( [movementController isActive] ) [movementController resetMovementState]; + [self actOnUnit: unit]; + return YES; + } + } + } + + return NO; +} + +-(BOOL) evaluateForRegen { + + if ( [playerController isDead] ) return NO; + + // If we're mounted then let's not do anything that would cause us to dismount + if ( [[playerController player] isMounted] ) return NO; + + if ( [playerController isInCombat] ) { + log(LOG_EVALUATE, @"Skipping Regen since we're still in combat."); + if ( self.evaluationInProgress ) self.evaluationInProgress = nil; + if ( self.pvpIsInBG ) return NO; + + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } + +// if ( self.evaluationInProgress && self.evaluationInProgress != @"Regen") return NO; + + log(LOG_EVALUATE, @"Evaluating for Regen"); + + // Check to continue regen if the bot was started during regen + BOOL eatClear = NO, drinkClear = NO; + Unit *player = [playerController player]; + + // check health + if ( [playerController health] == [playerController maxHealth] ) eatClear = YES; + // no buff for eating anyways + else if ( ![auraController unit: player hasBuffNamed: @"Food"] ) eatClear = YES; + + // check mana + if ( [playerController mana] == [playerController maxMana] ) drinkClear = YES; + // no buff for drinking anyways + else if ( ![auraController unit: player hasBuffNamed: @"Drink"] ) drinkClear = YES; + + // we're not done eating/drinking + if ( !eatClear || !drinkClear ) { + log(LOG_EVALUATE, @"Looks like we weren't done drinking or eating."); + self.evaluationInProgress = @"Regen"; + [self performSelector: @selector(performProcedureWithState:) + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + RegenProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", nil] + afterDelay: 0.25]; + return YES; + } + + BOOL performRegen = NO; + + // See if we need to perform regen + for(Rule* rule in [[self.theBehavior procedureForKey: RegenProcedure] rules]) { + if ( [rule resultType] == ActionType_None ) continue; + if ([ rule actionID] < 0 ) continue; + + if( [self evaluateRule: rule withTarget: nil asTest: NO] ) { + log(LOG_DEV, @"Found a regen match with target none."); + performRegen = YES; + break; + } + + if ( [rule target] == TargetSelf && [self evaluateRule: rule withTarget: player asTest: NO] ) { + log(LOG_DEV, @"Found a regen match with target self."); + performRegen = YES; + break; + } + } + + if (!performRegen) { + + // If there is no regen to perform. + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } + return NO; + } + + if ( [playerController isInCombat] ) { + log(LOG_EVALUATE, @"Waiting on regen since we're still in combat."); + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + } else { + return NO; + } + } + + self.evaluationInProgress = @"Regen"; + + // Reset the party emotes idle + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer = 0; + + // check if all used abilities are instant + BOOL needToPause = NO; + for(Rule* rule in [[self.theBehavior procedureForKey: RegenProcedure] rules]) { + if( ([rule resultType] == ActionType_Spell)) { + Spell *spell = [spellController spellForID: [NSNumber numberWithUnsignedInt: [rule actionID]]]; + if ([spell isInstant]) continue; + } + if([rule resultType] == ActionType_None) continue; + needToPause = YES; + break; + } + + // only pause if we are performing something non instant + if ( needToPause && ( [movementController isMoving] || [movementController isActive] ) ) [movementController resetMovementState]; + + [self performSelector: @selector(performProcedureWithState:) + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + RegenProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", nil] + afterDelay: 0.25]; + return YES; +} + +- (BOOL)evaluateForLoot { + + if ( !theCombatProfile.ShouldLoot ) return NO; + + if ( [playerController isDead] ) { + log(LOG_EVALUATE, @"Skipping Loot Evaluation since playerController.isDead"); + return NO; + } + + // Skip this if we are already in evaluation + if ( self.evaluationInProgress && self.evaluationInProgress != @"Loot") return NO; + + // Skip this if we're supposed to be in combat + if ( combatController.unitsAttackingMe.count ) { + log(LOG_EVALUATE, @"Skipping Loot Evaluation since combatController.inCombat"); + return NO; + } + + // If we're mounted and in the air lets just skip loot scans + if ( ![playerController isOnGround] && [[playerController player] isMounted]) { + log(LOG_EVALUATE, @"Skipping Loot Evaluation since we're in the air on a mount."); + if ( [_mobsToLoot count] ) [_mobsToLoot removeAllObjects]; + return NO; + } + + // If we're supposed to be following then follow! + if ( theCombatProfile.partyEnabled && theCombatProfile.followUnit && [[playerController player] isMounted] ) { + log(LOG_EVALUATE, @"Skipping Loot Evaluation since we're following."); + if ( [_mobsToLoot count] ) [_mobsToLoot removeAllObjects]; + return NO; + } + + // If we're moving to the mob let's wait till we get there to do anything + if ( [movementController moveToObject] ) { + log(LOG_EVALUATE, @"Skipping Loot Evaluation since we're moving to an object."); + return NO; + } + + log(LOG_EVALUATE, @"Evaluating for Loot"); + + // get potential units and their distances + Mob *mobToLoot = [self mobToLoot]; + + if ( !mobToLoot ) { + + // Enforce the loot scan idle + if (_lootScanIdleTimer >= 300) { + + if ( [_mobsToLoot count] ) [_mobsToLoot removeAllObjects]; + if ( self.evaluationInProgress ) self.evaluationInProgress = nil; + return NO; + } + + [self lootScan]; + + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } + } + + if ( ![mobToLoot isValid] ) { + + if ( [_mobsToLoot count] ) [_mobsToLoot removeAllObjects]; + + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } + } + + Unit *unitToCheck = [self mobToLoot]; + // If it's a node then we'll leave it to the mining evaluation + if ( [unitToCheck isKindOfClass: [Node class]] ) return NO; + + Position *playerPosition = [playerController position]; + float mobToLootDist = mobToLoot ? [[mobToLoot position] distanceToPosition: playerPosition] : INFINITY; + + Unit *unitToActOn = [combatController findUnitWithFriendly:_includeFriendly onlyHostilesInCombat:YES]; + float unitToActOnDist = unitToActOn ? [[unitToActOn position] distanceToPosition: playerPosition] : INFINITY; + + // if theres a unit that needs our attention that's closer than the lute. + if ( mobToLootDist > unitToActOnDist && [playerController isHostileWithFaction: [unitToActOn factionTemplate]]) { + log(LOG_LOOT, @"Mob is too close to loot: %0.2f > %0.2f", mobToLootDist, unitToActOnDist); + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } + } + + self.evaluationInProgress = @"Loot"; + + // Close enough to loot it + if ( mobToLootDist <= 5.0 ) { + _movingTowardMobCount = 0; + // Looting failed :/ I doubt this will ever actually happen, probably more an issue with nodes, but just in case! + int attempts = [blacklistController attemptsForObject:mobToLoot]; + + if ( self.lastAttemptedUnitToLoot == mobToLoot && attempts >= 3 ){ + log(LOG_LOOT, @"Unable to loot %@ after %d attempts, removing from loot list", self.lastAttemptedUnitToLoot, attempts); + [_mobsToLoot removeObject: self.unitToLoot]; + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } + + [controller setCurrentStatus: @"Bot: Looting"]; + self.evaluationInProgress = @"Loot"; +// [self lootUnit:mobToLoot]; + [self performSelector: @selector(lootUnit:) withObject: mobToLoot afterDelay: 0.25f]; + return YES; + } + + // Move to it + if ( self.evaluationInProgress != @"Loot") { + log(LOG_DEV, @"Found mob to loot: %@ at dist %.2f", mobToLoot, mobToLootDist); + } else { + _movingTowardMobCount++; + } + + self.evaluationInProgress = @"Loot"; +/* + // have we exceeded the amount of attempts to move to the unit? + // attempts... no longer seconds + if ( _movingTowardMobCount > 4 ){ + _movingTowardMobCount = 0; + log(LOG_LOOT, @"Unable to reach %@, removing from loot list", mobToLoot); + [movementController resetMoveToObject]; + self.evaluationInProgress = nil; + [blacklistController blacklistObject:mobToLoot]; + [_mobsToLoot removeObject:mobToLoot]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return YES; + } +*/ + + if ( [movementController isActive] ) [movementController resetMovementState]; + [controller setCurrentStatus: @"Bot: Moving to Loot"]; + + if ( ![movementController moveToObject: mobToLoot] ) { + // In the off chance that we're unable to move to it + log(LOG_LOOT, @"Unable to move to %@ !!?? Restarting evaluation", mobToLoot); + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + } + + return YES; +} + +- (BOOL)evaluateForMiningAndHerbalism { + + if (!theCombatProfile.DoMining && !theCombatProfile.DoHerbalism && !theCombatProfile.DoNetherwingEggs ) return NO; + + if ( [playerController isDead] ) return NO; + + // If we're already mounted in party mode then + if ( theCombatProfile.partyEnabled && [self followUnit] && [[playerController player] isMounted]) return NO; + + // Skip this if we are already in evaluation + if ( self.evaluationInProgress && self.evaluationInProgress != @"MiningAndHerbalism" ) return NO; + + // If we're moving to the node let's wait till we get there to do anything else + if ( [movementController moveToObject] ) return NO; + + log(LOG_EVALUATE, @"Evaluating for Mining and Herbalism"); + + Position *playerPosition = [playerController position]; + + // check for mining and herbalism + NSMutableArray *nodes = [NSMutableArray array]; + if( theCombatProfile.DoMining) [nodes addObjectsFromArray: [nodeController nodesWithinDistance: theCombatProfile.GatheringDistance ofType: MiningNode maxLevel: theCombatProfile.MiningLevel]]; + if( theCombatProfile.DoHerbalism) [nodes addObjectsFromArray: [nodeController nodesWithinDistance: theCombatProfile.GatheringDistance ofType: HerbalismNode maxLevel: theCombatProfile.HerbalismLevel]]; + if( theCombatProfile.DoNetherwingEggs) [nodes addObjectsFromArray: [nodeController nodesWithinDistance: theCombatProfile.GatheringDistance EntryID: 185915 position:[playerController position]]]; + + [nodes sortUsingFunction: DistanceFromPositionCompare context: playerPosition]; + + // If we've no node then skip this + if ( ![nodes count] ) { + [blacklistController clearAttempts]; + self.wasLootWindowOpen = NO; + + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + if ( [movementController moveToObject] ) [movementController resetMovementState]; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } + } + + // find a valid node to loot + Node *thisNode = nil; + Node *nodeToLoot = nil; + float nodeDist = INFINITY; + + int blacklistTriggerNodeMadeMeFall = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistTriggerNodeMadeMeFall"] intValue]; + + for(thisNode in nodes) { + + if ( ![thisNode validToLoot] ) { + log(LOG_NODE, @"%@ is not valid to loot, ignoring...", thisNode); + continue; + } + + NSNumber *guid = [NSNumber numberWithUnsignedLongLong:[thisNode cachedGUID]]; + NSNumber *count = [_lootDismountCount objectForKey:guid]; + + if ( count ) { + + // took .5 seconds or longer to fall! + if ( [count intValue] > 4 && [count intValue] >= blacklistTriggerNodeMadeMeFall ) { + log(LOG_NODE, @"%@ made me fall after %d attempts, ignoring...", thisNode, blacklistTriggerNodeMadeMeFall); + [blacklistController blacklistObject:thisNode withReason:Reason_NodeMadeMeFall]; + continue; + } + } + + if ( [theCombatProfile unitShouldBeIgnored: (Unit*)thisNode] ) { + log(LOG_DEV, @"%@ is on the ignore list, ignoring.", thisNode); + continue; + } + + if ( [blacklistController isBlacklisted:thisNode] ) { + log(LOG_DEV, @"%@ is blacklisted, ignoring.", thisNode); + continue; + } + + if ( thisNode && [thisNode isValid] ) { + + nodeDist = [playerPosition distanceToPosition: [thisNode position]]; + + // If we're not supposed to loot this node due to proximity rules + BOOL nearbyScaryUnits = [self scaryUnitsNearNode:thisNode doMob: theCombatProfile.GatherNodesMobNear doFriendy: theCombatProfile.GatherNodesFriendlyPlayerNear doHostile: theCombatProfile.GatherNodesHostilePlayerNear]; + + if ( nearbyScaryUnits ) { + log(LOG_NODE, @"Skipping node due to proximity count"); + continue; + } + + if ( nodeDist != INFINITY ) { + nodeToLoot = thisNode; + break; + } + } + + } + + // No valid nodes found + if ( !nodeToLoot ) { + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + if ( [movementController moveToObject] ) [movementController resetMovementState]; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } + } + + if ( !self.evaluationInProgress ) { + log(LOG_NODE, @"Found node to loot: %@ at dist %.2f", nodeToLoot, nodeDist); + self.evaluationInProgress = @"MiningAndHerbalism"; + } + + // Close enough to loot it + float closeEnough = 5.0; + float horizontalDistanceToNode = [[playerController position] distanceToPosition2D: [nodeToLoot position]]; + if ( ![playerController isOnGround] && [[playerController player] isMounted] && horizontalDistanceToNode < 3.0f && [[playerController position] xPosition] >= [[nodeToLoot position] xPosition] ) closeEnough = 10.0; + + if ( nodeDist <= closeEnough ) { + + int attempts = [blacklistController attemptsForObject:nodeToLoot]; + + int blacklistTriggerNodeFailedToLoot = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistTriggerNodeFailedToLoot"] intValue]; + + if ( self.lastAttemptedUnitToLoot == nodeToLoot && attempts >= blacklistTriggerNodeFailedToLoot ) { + + log(LOG_NODE, @"Unable to loot %@ after %d attempts, blacklisting.", self.lastAttemptedUnitToLoot, blacklistTriggerNodeFailedToLoot); + [blacklistController blacklistObject:nodeToLoot]; + + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } + } + + [controller setCurrentStatus: @"Bot: Working node"]; + [self lootUnit:nodeToLoot]; + return YES; + } + + // if it's potentially unreachable or at a distance lets make sure we're mounted + // We're putting this here so we can run this check prior to the patrol evaluation + // This allows us to disregard the mounting if it's not in our behavior (low levels or what ever) + if ( nodeDist > 9.0f && ![[playerController player] isMounted ] ) { + // see if we would be performing anything in the patrol procedure + BOOL performPatrolProc = NO; + Rule *ruleToCheck; + for(Rule* rule in [[self.theBehavior procedureForKey: PatrollingProcedure] rules]) { + if( ([rule resultType] != ActionType_None) && ([rule actionID] > 0) && [self evaluateRule: rule withTarget: nil asTest: NO] ) { + ruleToCheck = rule; + performPatrolProc = YES; + break; + } + } + + if (performPatrolProc) { + // lets just unset evaluation and return so patrol triggers next + self.evaluationInProgress = @"Patrol"; + return NO; + } + } + + self.evaluationInProgress = @"MiningAndHerbalism"; + [controller setCurrentStatus: @"Bot: Moving to node"]; + + // Set this so we can blacklist it if we die at the node + self.lastAttemptedUnitToLoot = nodeToLoot; + + // Safe to move to the node! + if ( ![movementController moveToObject: nodeToLoot] ) + // If for some reason we're un able to move to the node lets evaluate + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + + return YES; +} + +- (BOOL)evaluateForFishing { + + // Skip this if we are already in evaluation + if ( self.evaluationInProgress && self.evaluationInProgress != @"Fishing" ) return NO; + + if ( movementController.moveToObject ) return NO; + + if ( !theCombatProfile.DoFishing ) return NO; + + if ( [playerController isDead] ) return NO; + + // If we're supposed to be following then follow! + if ( theCombatProfile.partyEnabled && [self followUnit] && [[playerController player] isMounted]) return NO; + + log(LOG_EVALUATE, @"Evaluating for Fishing."); + + Position *playerPosition = [playerController position]; + + // fishing only in schools! (probably have a route we're following) + if ( theCombatProfile.FishingOnlySchools ) { + NSMutableArray *nodes = [NSMutableArray array]; + [nodes addObjectsFromArray:[nodeController nodesWithinDistance: theCombatProfile.FishingGatherDistance ofType: FishingSchool maxLevel: 1]]; + [nodes sortUsingFunction: DistanceFromPositionCompare context: playerPosition]; + + // are we close enough to start fishing? + if ( [nodes count] ){ + // lets find a node + Node *nodeToFish = nil; + float nodeDist = INFINITY; + for (nodeToFish in nodes) { + if ( [blacklistController isBlacklisted:nodeToFish] ){ + log(LOG_FISHING, @"Node %@ blacklisted, ignoring", nodeToFish); + continue; + } + if ( [nodeToFish isValid] ) { + nodeDist = [playerPosition distanceToPosition: [nodeToFish position]]; + break; + } + } + + BOOL nearbyScaryUnits = [self scaryUnitsNearNode:nodeToFish doMob:theCombatProfile.GatherNodesMobNear doFriendy:theCombatProfile.GatherNodesFriendlyPlayerNear doHostile:theCombatProfile.GatherNodesHostilePlayerNear]; + + // we have a valid node! + if ( nodeDist != INFINITY && !nearbyScaryUnits ) { + + self.evaluationInProgress = @"Fishing"; + if ( [movementController isActive] ) [movementController resetMovementState]; + + log(LOG_FISHING, @"Found closest school %@ at dist %.2f", nodeToFish, nodeDist); + + if (nodeDist <= NODE_DISTANCE_UNTIL_FISH) { + [movementController turnTowardObject:nodeToFish]; + usleep([controller refreshDelay]*2); + log(LOG_FISHING, @"We are near %@, time to fish!", nodeToFish); + if ( [[playerController player] isMounted] ) { + log(LOG_FISHING, @"Dismounting..."); + [movementController dismount]; + } + + if ( ![fishController isFishing] ){ + [fishController fish: theCombatProfile.FishingApplyLure + withRecast: theCombatProfile.FishingRecast + withUse: theCombatProfile.FishingUseContainers + withLure: theCombatProfile.FishingLureID + withSchool: nodeToFish]; + } + + return YES; + } else { + log(LOG_FISHING, @"Node distance beyond setting %.2f", NODE_DISTANCE_UNTIL_FISH); + } + } + } + + self.evaluationInProgress = nil; + + log(LOG_DEV, @"Didn't find a node, so we're doing nothing..."); + + } else { + // fish where we are + if ( !self.evaluationInProgress ) log(LOG_FISHING, @"Just fishing from here."); + self.evaluationInProgress = @"Fishing"; + [fishController fish: theCombatProfile.FishingApplyLure + withRecast:NO + withUse: theCombatProfile.FishingUseContainers + withLure: theCombatProfile.FishingLureID + withSchool:nil]; + return YES; + } + + // if we get here, we shouldn't be fishing, stop if we are + if ( [fishController isFishing] ) [fishController stopFishing]; + + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } else { + return NO; + } +} + +- (BOOL)evaluateForPatrol { + + if ( [playerController isDead] ) return NO; + + if ( movementController.moveToObject ) return NO; + + // If we have looting to do we skip this + if ( theCombatProfile.ShouldLoot && [_mobsToLoot count] ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } + + // If we're already evaluating let's skip this. + if ( self.evaluationInProgress && self.evaluationInProgress != @"Patrol") return NO; + + // If we're already mounted then let's not do anything that would cause us to dismount + if ( [[playerController player] isMounted] ) { + if ( [playerController isInBG:[playerController zone]] ) { + if ( [movementController isMoving] ) return NO; + } else { + return NO; + } + } + + // Skip this if we're supposed to be in combat + if ( [playerController isInCombat] ) return NO; + + // If we might have mobs to loot lets recycle evaluation + if ( theCombatProfile.ShouldLoot && _lootScanIdleTimer < 3) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } + + log(LOG_EVALUATE, @"Evaluating for Patrol"); + + // see if we would be performing anything in the patrol procedure + BOOL performPatrolProc = NO; + Rule *ruleToCheck; + Unit *target; + Player *player = [playerController player]; + target = player; + + for(Rule* rule in [[self.theBehavior procedureForKey: PatrollingProcedure] rules]) { + + if( [rule resultType] == ActionType_None || [rule actionID] < 0 ) continue; + + if ( [rule target] == TargetNone ) { + + if( [self evaluateRule: rule withTarget: nil asTest: NO] ) { + log(LOG_RULE, @"[Patrol] Match for %@ with (Target None).", rule); + ruleToCheck = rule; + performPatrolProc = YES; + break; + } + + } else { + + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + log(LOG_RULE, @"[Patrol] Match for %@ with (Target Self).", rule); + ruleToCheck = rule; + performPatrolProc = YES; + break; + } + } + } + + // Return if we're only evaluating against ourself + if (!performPatrolProc && !_includeFriendlyPatrol && !_includeCorpsesPatrol ) { + self.evaluationInProgress = nil; + return NO; + } + + // If we're waiting in PvP Q with no normal route selected lets only buff party members + if ( !performPatrolProc && _waitForPvPQueue && !self.useRoute ) { + + if ( _includeFriendlyPatrol && theCombatProfile.partyEnabled ) { + + UInt64 playerID; + Player *player; + int i; + for(Rule* rule in [[self.theBehavior procedureForKey: PatrollingProcedure] rules] ) { + + if ( [rule target] != TargetFriend && [rule target] != TargetFriendlies ) continue; + + log(LOG_RULE, @"[Patrol] Evaluating rule %@", rule); + + //Let go through the party targets + for (i=1;i<6;i++) { + + // If there are no more party members + playerID = [playerController PartyMember: i]; + if ( playerID <= 0x0) break; + player = [playersController playerWithGUID: playerID]; + + if ( !player || ![player isValid] ) continue; + + target = player; + + if (![playerController isFriendlyWithFaction: [target factionTemplate]] ) continue; + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + // do something + log(LOG_RULE, @"[Patrol] Match for %@ with %@", rule, target); + ruleToCheck = rule; + performPatrolProc = YES; + break; + } + } + + if ( performPatrolProc ) break; + } + } + + if ( !performPatrolProc ) { + self.evaluationInProgress = nil; + return NO; + } + } + + // Look to see if there are friendlies to be checked in our patrol routine, buffing others? + if ( !performPatrolProc && _includeFriendlyPatrol ) { + + log(LOG_DEV, @"[Patrol] Looking for friendlies"); + + NSArray *friendlyUnits = [combatController friendlyUnits]; + for(Rule* rule in [[self.theBehavior procedureForKey: PatrollingProcedure] rules]) { + + if ( [rule target] != TargetFriend && [rule target] != TargetFriendlies ) continue; + + log(LOG_RULE, @"[Patrol] Evaluating rule %@", rule); + + //Let go through the friendly targets + for ( target in friendlyUnits ) { + if ( ![playerController isFriendlyWithFaction: [target factionTemplate]] ) continue; + if ( [self evaluateRule: rule withTarget: target asTest: NO] ) { + // do something + log(LOG_RULE, @"[Patrol] Match for %@ with %@", rule, target); + ruleToCheck = rule; + performPatrolProc = YES; + break; + } + } + + if ( performPatrolProc ) break; + } + } + + // Look for corpses - resurrection + if ( !performPatrolProc && _includeCorpsesPatrol) { + log(LOG_DEV, @"[Patrol] Looking for corpses"); + + NSMutableArray *allPotentialUnits = [NSMutableArray array]; + [allPotentialUnits addObjectsFromArray: [combatController friendlyCorpses]]; + + if ( [allPotentialUnits count] ){ + log(LOG_DEV, @"[CorpseScan] in evaluation..."); + + float vertOffset = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistVerticalOffset"] floatValue]; + for ( target in allPotentialUnits ){ + log(LOG_DEV, @"[CorpseScan] looking for corpses: %@", target); + + if ( ![target isPlayer] || ![target isDead] ) continue; + if ( [[target position] verticalDistanceToPosition: [playerController position]] > vertOffset ) continue; + if ( [[playerController position] distanceToPosition:[target position]] > theCombatProfile.healingRange ) continue; + + if ( [blacklistController isBlacklisted:target] ) { + log(LOG_DEV, @":[CorpseScan] Ignoring blacklisted unit: %@", target); + continue; + } + + // player: make sure they're not a ghost + NSArray *auras = [auraController aurasForUnit: target idsOnly: YES]; + if ( [auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]] ) { + continue; + } + + log(LOG_DEV, @"Found a corpse in evaluation!"); + + performPatrolProc = YES; + break; + } + } + } + + if (!performPatrolProc) { + + if ( self.evaluationInProgress ) { + self.evaluationInProgress = nil; + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; + } + return NO; + } + + // Perform the procedure. + log(LOG_EVALUATE, @"[Patrol] Entering Patrolling Phase."); + self.evaluationInProgress = @"Patrol"; + + // check if all used abilities are instant + BOOL needToPause = NO; + + if( ([ruleToCheck resultType] == ActionType_Spell)) { + Spell *spell = [spellController spellForID: [NSNumber numberWithUnsignedInt: [ruleToCheck actionID]]]; + if (![spell isInstant]) needToPause = YES; + } else if ([ruleToCheck resultType] != ActionType_None) needToPause = YES; + + // only pause if we are performing something non instant + if ( needToPause && ( [movementController isMoving] || [movementController isActive] ) ) [movementController resetMovementState]; + + [self performSelector: @selector(performProcedureWithState:) + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + PatrollingProcedure, @"Procedure", + [NSNumber numberWithInt: 0], @"CompletedRules", + target, @"Target", nil] + afterDelay: 0.1f]; + + return YES; +} + +- (BOOL)evaluateForPartyEmotes { + + if ( !theCombatProfile.partyEmotes ) return NO; + + if ( [playerController isDead] ) return NO; + + if ( [movementController isMoving] ) return NO; + + if ( [playerController isInCombat] ) return NO; + + // Skip this if we are already in evaluation + if ( self.evaluationInProgress ) return NO; + + log(LOG_EVALUATE, @"Evaluating for PartyEmotes"); + + // Enforce the emote idle threshhold + int secondsPassed = _partyEmoteIdleTimer/10; + if (secondsPassed < theCombatProfile.partyEmotesIdleTime) return NO; + + if (_partyEmoteTimeSince > 0) { + // Not just yet + _partyEmoteTimeSince--; + return NO; + } else { + // We're good to go, let's set our countdown + int randomToAdd = SSRandomIntBetween(0,(theCombatProfile.partyEmotesInterval/4)); + _partyEmoteTimeSince = ((theCombatProfile.partyEmotesInterval*10)+(randomToAdd*10)); + log(LOG_DEV, @"Setting emote timer to %d seconds", (_partyEmoteTimeSince/10)); + } + + + /* + * Doing Emote + */ + + // Find a random party member to target + int i; + for (i=1;i<6;i++) { + if ( [playerController PartyMember: i] <= 0x0) { + i--; + break; + } + } + + Unit *emoteUnit = nil; + + // We have party members + if (i > 0) { + int randomNumer = SSRandomIntBetween(1, i); + Player *randomPartyMember = [playersController playerWithGUID: [playerController PartyMember: randomNumer]]; + if ( [randomPartyMember isValid]) emoteUnit = (Unit*)randomPartyMember; + } + + // Target our follow unit + if ( !emoteUnit && _followUnit && [_followUnit isValid] ) emoteUnit = _followUnit; + + // Target the Unit + [playerController targetGuid:[emoteUnit cachedGUID]]; + + if ( ![movementController isMoving] && ![movementController isActive] ) { + [movementController turnTowardObject: emoteUnit]; + usleep([controller refreshDelay]*2); + + // Actually move a tad + [movementController establishPlayerPosition]; + } +// usleep(300000); + + NSString *emote = [self randomEmote:emoteUnit]; + + if ( [playerController targetID] ) { + log(LOG_PARTY, @"Emote: %@ on %@", emote, [playersController playerNameWithGUID: [playerController targetID]]); + } else { + log(LOG_PARTY, @"Emote: %@", emote); + } + + [chatController sendKeySequence: [NSString stringWithFormat: @"%c%@%c", '\n', emote, '\n']]; + + [self performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + return YES; +} + +- (BOOL)evaluateSituation { + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + if ( !self.isBotting ) { + [self stopBotActions]; + return NO; + } + + if ( [self evaluationInProgress] ) { + log(LOG_EVALUATE, @"Evaluating Situation with %@ in progress", [self evaluationInProgress]); + } else { + log(LOG_EVALUATE, @"Evaluating Situation"); + } + _evaluationIsActive = YES; + + UInt32 offset = [offsetController offset:@"WorldState"]; + UInt32 worldState = 0; + if ( [[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&worldState BufLength: sizeof(worldState)] ) { + if ( worldState == 10 ) { + + log(LOG_GENERAL, @"Game is loading, waiting..."); + if ( self.procedureInProgress ) + [self cancelCurrentProcedure]; + if ( self.evaluationInProgress ) + self.evaluationInProgress = nil; + if ( [movementController isActive] ) + [movementController resetMovementState]; + + [self performSelector: _cmd withObject: nil afterDelay: 1.0f]; + return NO; + } + } + + if ( ![playerController playerIsValid:self] ) { + log(LOG_GENERAL, @"Player is invalid, waiting..."); + if ( self.procedureInProgress ) + [self cancelCurrentProcedure]; + if ( self.evaluationInProgress ) + self.evaluationInProgress = nil; + if ( [movementController isActive] ) + [movementController resetMovementState]; + [self performSelector: _cmd withObject: nil afterDelay: 1.0]; + return NO; + } + + // Skip this if there is a procedure going (sometimes a notification can recall evaluation when we don't want it to) + if ( self.procedureInProgress ) { + log(LOG_EVALUATE, @"%@ is in progress so we're canceling evaluation.", self.procedureInProgress); + [self cancelCurrentEvaluation]; + return NO; + } + + // If we've been asked to evaluate and we're channeled then let's not interupt (could be manual user) + if ( [playerController isCasting] ) { + log(LOG_DEV, @"Player is casting, waiting."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + return NO; + } + + // Order of operations is established here + + if ( [playerController isDead] || [playerController isGhost] ) return [self evaluateForGhost]; + + if ( [self evaluateForPVPWG] ) return YES; + + if ( [playerController isInBG:[playerController zone]] ) { + if ( [self evaluateForPVPBattleGround] ) { + _evaluationIsActive = NO; + return YES; + } + } else { + if ( [self evaluateForPVPQueue] ) { + _evaluationIsActive = NO; + return YES; + } + } + + [self followRouteStartRecord]; + + if ( [self evaluateForLoot] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( [self evaluateForCombatContinuation] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( [self evaluateForRegen] ) { + _evaluationIsActive = NO; + return YES; + } + + // Increment the party emote timer + if ( theCombatProfile.partyEnabled && theCombatProfile.partyEmotes && ![playerController isInCombat] ) if (_partyEmoteIdleTimer <= (theCombatProfile.partyEmotesIdleTime*10)) _partyEmoteIdleTimer++; + + if ( [self evaluateForMiningAndHerbalism] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( [self evaluateForFollow] ) { + _evaluationIsActive = NO; + return YES; + } + + // Increment the loot scan idle timer if it's not already past it's cut off + if ( theCombatProfile.ShouldLoot ) if (_lootScanIdleTimer <= 300) _lootScanIdleTimer++; + + if ( [self evaluateForPartyEmotes] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( [self evaluateForFishing] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( [self evaluateForPatrol] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( [self evaluateForParty] ) { + _evaluationIsActive = NO; + return YES; + } + + if ( _needToTakeQueue ) { + log(LOG_EVALUATE, @"Waiting to get out of combat so we can take our PvP Queue."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + if ( [self evaluateForCombatStart] ) { + _evaluationIsActive = NO; + return YES; + } + + // If we're waiting for PvP Preparation and we're not supposed to move + if ( _waitForPvPPreparation && theCombatProfile.pvpDontMoveWithPreparation ) { + log(LOG_EVALUATE, @"Waiting for PvP Preparation, looping."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + // If we're waiting for PvP Preparation in Strand + if ( _waitForPvPPreparation && _attackingInStrand ) { + log(LOG_EVALUATE, @"Waiting for PvP Preparation in strand, looping."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + // On the boat in strand waiting for it to arrive + if ( _strandDelay ) { + log(LOG_EVALUATE, @"Waiting for boat to arrive in strand, looping."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + // If we're just performing a check while we're in route we can return here + if ( movementController.performingActions ) { + log(LOG_EVALUATE, @"Evaluation was called from the movemetController while performing a delay action, looping evaluation."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + // If we're just performing a check while we're in route we can return here + if ( movementController.isFollowing && [movementController isActive] ) { + log(LOG_EVALUATE, @"Evaluation was called while following, nothing to do."); + _evaluationIsActive = NO; + return NO; + } + + if ( movementController.moveToObject ) { + log(LOG_EVALUATE, @"Moving to an object so we're not processing movement."); + _evaluationIsActive = NO; + return NO; + } + + // If we're just performing a check while we're in route we can return here + if ( [movementController isPatrolling] ) { + log(LOG_EVALUATE, @"Evaluation was called while patrolling, nothing to do."); + _evaluationIsActive = NO; + return NO; + } + + if ( movementController.isActive ) { + log(LOG_EVALUATE, @"Movement controller is active so we're not processing movement."); + _evaluationIsActive = NO; + return NO; + } + + if ( [movementController isMoving] ) { + log(LOG_EVALUATE, @"Player is moving so we're not processing movement."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + if ( self.followUnit && !self.followSuspended && [self verifyFollowUnit] ) { + log(LOG_EVALUATE, @"In follow mode so we're not processing movement."); + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + // If we're evaluating lets cycle again + if ( self.evaluationInProgress ) { + log(LOG_EVALUATE, @"Evaluation in progress so we're looping without movement."); + if ( theCombatProfile.partyEmotes ) _partyEmoteIdleTimer =0; + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + + // If we have looting to do we loop + if ( [_mobsToLoot count] ) { + log(LOG_EVALUATE, @"We have looting to do so we're looping evaluation."); + [self performSelector: _cmd withObject: nil afterDelay: 0.3f]; + return NO; + } + + // If we have combat to do we loop +// if ( !self.pvpIsInBG && [combatController.unitsAttackingMe count] && ![playerController isAirMounted] ) { + // This is intended to help us not continue a route when our behavior has broken or we've ran out of mana. +// log(LOG_EVALUATE, @"We have combat to do so we're looping evaluation."); +// [combatController doCombatSearch]; +// [self performSelector: _cmd withObject: nil afterDelay: 0.3f]; +// return NO; +// } + + // If we get here it should be safe to reset this list + if ( combatController.unitsDied && combatController.unitsDied.count ) [combatController resetUnitsDied]; + + /* + * Evaluation Checks Complete, lets see if we're supposed to do a route. + * At this point we are not moving. + */ + + // In a BG with a Route + if ( self.pvpIsInBG && self.useRoutePvP ) { + + // See if we need to set the route for the BG + if ( !self.theRouteSetPvP || !movementController.currentRouteSet || movementController.currentRouteSet != self.theRouteSetPvP ) { + + if ( [self pvpSetEnvironmentForZone] ) { + if (self.theRouteSetPvP) { + log(LOG_DEV, @"Setting our PvP route set in the movementController."); + // set the route set + [movementController setPatrolRouteSet:self.theRouteSetPvP]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return YES; + } else { + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; + } + } + } + + // Update the status if we need to + if ( ![[controller currentStatus] isEqualToString: @"Bot: Patrolling"] ) { + [controller setCurrentStatus: @"Bot: Patrolling"]; + log(LOG_GENERAL, @"Going on Patrol."); + } + + // If there is a starting route selected we traverse the waypoints strictly. + if ( [_theRouteCollection startingRoute] ) { + log(LOG_GENERAL, @"Resuming Movement (PvP)."); + [movementController resumeMovement]; + } else { + log(LOG_GENERAL, @"Resuming Movement to the closest waypoint (PvP)."); + [movementController resumeMovementToClosestWaypoint]; + } + _evaluationIsActive = NO; + return NO; + } + + // In a BG with a Route + if ( !self.pvpIsInBG && self.useRoute ) { + + if ( self.theBehavior != [[behaviorPopup selectedItem] representedObject] ) self.theBehavior = [[behaviorPopup selectedItem] representedObject]; + if ( self.theCombatProfile != [[combatProfilePopup selectedItem] representedObject] ) self.theCombatProfile = [[combatProfilePopup selectedItem] representedObject]; + + if ( !self.theRouteCollection || self.theRouteCollection != [[routePopup selectedItem] representedObject] ) { + log(LOG_GENERAL, @"Resetting our Route before moving."); + self.theRouteCollection = [[routePopup selectedItem] representedObject]; + self.theRouteSet = [_theRouteCollection startingRoute]; + + if( !self.theRouteSet ) { + // Try the 1st routeSet + if ( self.theRouteCollection.routes.count ) { + log(LOG_GENERAL, @"You don't have a starting route selected, setting it to the first route."); + self.theRouteSet = [[_theRouteCollection routes ] objectAtIndex:0]; + } + } + } + + // Make sure the movement controller has the right route + if ( !movementController.currentRouteSet || movementController.currentRouteSet != self.theRouteSet ) { + log(LOG_GENERAL, @"Updating the movementControllers Route."); + [movementController setPatrolRouteSet:self.theRouteSet]; + } + + // Update the status if we need to + if ( ![[controller currentStatus] isEqualToString: @"Bot: Patrolling"] ) { + [controller setCurrentStatus: @"Bot: Patrolling"]; + log(LOG_GENERAL, @"Going on Patrol."); + } + + // If there is a starting route selected we traverse the waypoints strictly. + if ( [_theRouteCollection startingRoute] ) { + log(LOG_GENERAL, @"Resuming Movement."); + [movementController resumeMovement]; + } else { + log(LOG_GENERAL, @"Resuming Movement to the closest waypoint."); + [movementController resumeMovementToClosestWaypoint]; + } + + _evaluationIsActive = NO; + return NO; + } + + // Update the status if we need to + if ( !_waitForPvPQueue && ![[controller currentStatus] isEqualToString: @"Bot: Enabled"] ) + [controller setCurrentStatus: @"Bot: Enabled"]; + + // If we're sittin idle with no route we'll loop evaluation + [self performSelector: _cmd withObject: nil afterDelay: 0.25f]; + _evaluationIsActive = NO; + return NO; +} + +#pragma mark IBActions + +- (IBAction)editRoute: (id)sender { + + /* + // This doesn't fail, but it doesn't work entirely as it only pulls up the route and doesn't do the rest of the stuff the interface needs to do. + + RouteCollection *selectedRouteCollection; + RouteSet *selectedRouteSet; + + selectedRouteCollection = [[routePopup selectedItem] representedObject]; + if ( selectedRouteCollection ) selectedRouteSet = [selectedRouteCollection startingRoute]; + + if ( selectedRouteSet && selectedRouteSet != nil ) [waypointController setCurrentRouteSet: selectedRouteSet]; + */ + [controller selectRouteTab]; +} + +- (IBAction)editRoutePvP: (id)sender { + // - (void)setCurrentBehavior: (PvPBehavior*)behavior; + + // The object type is not a route, but this is what groups the PvP routes (hopefully we can move PvP options to a tab in the Combat Profile) + PvPBehavior *selectedPvPBehavior; + selectedPvPBehavior = [[routePvPPopup selectedItem] representedObject]; + + if ( selectedPvPBehavior && selectedPvPBehavior != nil ) [pvpController setCurrentBehavior: selectedPvPBehavior]; + + [controller selectPvPRouteTab]; +} + +- (IBAction)editBehavior: (id)sender { + + // Let's be intuitive and pull up the currently selected behavior if there is one + Behavior *selectedBehavior; + selectedBehavior = [[behaviorPopup selectedItem] representedObject]; + + if ( selectedBehavior && selectedBehavior != nil ) [procedureController setCurrentBehavior: selectedBehavior]; + + [controller selectBehaviorTab]; +} + +- (IBAction)editBehaviorPvP: (id)sender { + + // Let's be intuitive and pull up the currently selected behavior if there is one + Behavior *selectedBehavior; + selectedBehavior = [[behaviorPvPPopup selectedItem] representedObject]; + if ( selectedBehavior && selectedBehavior != nil ) [procedureController setCurrentBehavior: selectedBehavior]; + + [controller selectBehaviorTab]; +} + +- (IBAction)editProfile: (id)sender { + // Let's be intuitive and pull up the currently selected behavior if there is one + Profile *selectedProfile; + selectedProfile = [[combatProfilePopup selectedItem] representedObject]; + + // setProfile should use the same naming convention as setCurrentBehavior or the old naming convention needs deprecated. + // If we can keep this consistent in all of the GUI controllers it'll make it easier to add features like this :) + if ( selectedProfile && selectedProfile != nil ) [profileController setProfile: selectedProfile]; + + [controller selectCombatProfileTab]; +} + +- (IBAction)editProfilePvP: (id)sender { + // Let's be intuitive and pull up the currently selected behavior if there is one + Profile *selectedProfile; + selectedProfile = [[combatProfilePvPPopup selectedItem] representedObject]; + + // setProfile should use the same naming convention as setCurrentBehavior or the old naming convention needs deprecated. + // If we can keep this consistent in all of the GUI controllers it'll make it easier to add features like this :) + if ( selectedProfile && selectedProfile != nil ) [profileController setProfile: selectedProfile]; + + [controller selectCombatProfileTab]; +} + +- (IBAction)updateStatus: (id)sender { + +/* + * To do, just noticed that this sets options when changed... need to update this for all of the new combat profile options? + */ + + CombatProfile *profile; + NSString *status; + NSString *behaviorName; + NSString *routeName; + + // Is this the right way to get the values for these here? + _useRoute = [[[NSUserDefaults standardUserDefaults] objectForKey: @"UseRoute"] boolValue]; + _useRoutePvP = [[[NSUserDefaults standardUserDefaults] objectForKey: @"UseRoutePvP"] boolValue]; + + if ( self.pvpIsInBG ) { + + profile = [[combatProfilePvPPopup selectedItem] representedObject]; + behaviorName = [[[behaviorPvPPopup selectedItem] representedObject] name]; + + if ( _useRoutePvP ) routeName = [[[routePvPPopup selectedItem] representedObject] name]; + else routeName = @"Easy Mode"; + + } else { + + profile = [[combatProfilePopup selectedItem] representedObject]; + behaviorName = [[[behaviorPopup selectedItem] representedObject] name]; + + if ( _useRoute ) routeName = [[[routePopup selectedItem] representedObject] name]; + else routeName = @"Easy Mode"; + } + + status = [NSString stringWithFormat: @"%@ (%@). ", behaviorName, routeName]; + + + NSString *bleh = nil; + if (!profile || !profile.combatEnabled) { + bleh = @"Combat disabled."; + } else { + if(profile.onlyRespond) { + bleh = @"Only attacking back."; + } + else if ( profile.assistUnit ) { + + bleh = [NSString stringWithFormat:@"Only assisting %@", @""]; + } + else{ + NSString *levels = profile.attackAnyLevel ? @"any levels" : [NSString stringWithFormat: @"levels %d-%d", + profile.attackLevelMin, + profile.attackLevelMax]; + bleh = [NSString stringWithFormat: @"Attacking %@ within %.1fy.", + levels, + profile.engageRange]; + } + } + + status = [status stringByAppendingString: bleh]; + + if ( theCombatProfile.DoMining ) + status = [status stringByAppendingFormat: @" Mining (%d).", theCombatProfile.MiningLevel]; + if( theCombatProfile.DoHerbalism ) + status = [status stringByAppendingFormat: @" Herbalism (%d).", theCombatProfile.HerbalismLevel]; + if( theCombatProfile.DoSkinning ) + status = [status stringByAppendingFormat: @" Skinning (%d).", theCombatProfile.SkinningLevel]; + + [statusText setStringValue: status]; + + if ( self.pvpIsInBG && !_useRoutePvP && [movementController isActive] ) { + [movementController resetMovementState]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + } + + if ( !self.pvpIsInBG && !_useRoute && [movementController isActive] ) { + [movementController resetMovementState]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + } + +} + +- (IBAction)startBot: (id)sender { + + _useRoute = [[[NSUserDefaults standardUserDefaults] objectForKey: @"UseRoute"] boolValue]; + _useRoutePvP = [[[NSUserDefaults standardUserDefaults] objectForKey: @"UseRoutePvP"] boolValue]; + + // grab route info + if ( self.useRoute ) { + self.theRouteCollection = [[routePopup selectedItem] representedObject]; + self.theRouteSet = [_theRouteCollection startingRoute]; + } else { + self.theRouteSet = nil; + self.theRouteCollection = nil; + } + + self.theBehavior = [[behaviorPopup selectedItem] representedObject]; + self.theCombatProfile = [[combatProfilePopup selectedItem] representedObject]; + + // we using a PvP Behavior? + if ( self.useRoutePvP ) self.pvpBehavior = [[routePvPPopup selectedItem] representedObject]; + else self.pvpBehavior = nil; + + if ( ([self isHotKeyInvalid] & HotKeyPrimary) == HotKeyPrimary ){ + log(LOG_STARTUP, @"Primary hotkey is not valid."); + NSBeep(); + NSRunAlertPanel(@"Invalid Hotkey", @"You must choose a valid primary hotkey, or the bot will be unable to use any spells or abilities.", @"Okay", NULL, NULL); + return; + } + + if ( theCombatProfile.ShouldLoot && ([self isHotKeyInvalid] & HotKeyInteractMouseover) == HotKeyInteractMouseover ){ + log(LOG_STARTUP, @"Interact with MouseOver hotkey is not valid."); + NSBeep(); + NSRunAlertPanel(@"Invalid Looting Hotkey", @"You must choose a valid Interact with MouseOver hotkey, or the bot will be unable to loot bodies.", @"Okay", NULL, NULL); + return; + } + + // check that we have valid conditions + if( ![controller isWoWOpen]) { + log(LOG_STARTUP, @"WoW is not open. Bailing."); + NSBeep(); + NSRunAlertPanel(@"WoW is not open", @"WoW is not open...", @"Okay", NULL, NULL); + return; + } + + if( ![playerController playerIsValid:self]) { + log(LOG_STARTUP, @"The player is not valid. Bailing."); + NSBeep(); + NSRunAlertPanel(@"Player not valid or cannot be detected", @"You must be logged into the game before you can start the bot.", @"Okay", NULL, NULL); + return; + } + + if( self.useRoute && self.theRouteCollection && !self.theRouteSet ){ + + // Try the 1st routeSet + if ( self.theRouteCollection.routes.count ) { + log(LOG_STARTUP, @"You don't have a starting route selected, setting the starting route to the first route."); + self.theRouteSet = [[_theRouteCollection routes ] objectAtIndex:0]; + } + + if ( !self.theRouteSet ){ + NSBeep(); + log(LOG_ERROR, @"Could not find a route!"); + NSRunAlertPanel(@"Starting route is not selected", @"You must select a starting route for your route set! Go to the route tab and select one,", @"Okay", NULL, NULL); + return; + } + } + + if( self.useRoute && !self.theRouteSet ) { + NSBeep(); + log(LOG_STARTUP, @"The current route is not valid."); + NSRunAlertPanel(@"Route is not valid", @"You must select a valid route before starting the bot. If you removed or renamed a route, please select an alternative. And make sure you have a starting route selected on the route tab!", @"Okay", NULL, NULL); + return; + } + + if( !self.theBehavior ) { + log(LOG_STARTUP, @"The current behavior is not valid."); + NSBeep(); + NSRunAlertPanel(@"Behavior is not valid", @"You must select a valid behavior before starting the bot. If you removed or renamed a behavior, please select an alternative.", @"Okay", NULL, NULL); + return; + } + + if( !self.theCombatProfile ) { + log(LOG_STARTUP, @"The current combat profile is not valid."); + NSBeep(); + NSRunAlertPanel(@"Combat Profile is not valid", @"You must select a valid combat profile before starting the bot. If you removed or renamed a profile, please select an alternative.", @"Okay", NULL, NULL); + return; + } + + if ( !self.theRouteCollection && self.useRoute ) { + log(LOG_STARTUP, @"The current route set is not valid."); + NSBeep(); + NSRunAlertPanel(@"Route Set is not valid", @"You must select a valid route set before starting the bot. If you removed or renamed a profile, please select an alternative.", @"Okay", NULL, NULL); + return; + } + + // we need at least one macro! + if ( [[macroController macros] count] == 0 ){ + log(LOG_STARTUP, @"You need at least one macro for Pocket Gnome to function."); + NSBeep(); + NSRunAlertPanel(@"You need a macro!", @"You need at least one macro for Pocket Gnome to function correctly. It can be blank, simply create one in your game menu.", @"Okay", NULL, NULL); + return; + } + + // find our key bindings + NSString *bindingsError = [bindingsController keyBindingsValid]; + if ( bindingsError != nil ) { + log(LOG_STARTUP, @"All keys aren't bound!"); + NSBeep(); + NSRunAlertPanel(@"You need to bind the correct keys in your Game Menu", bindingsError, @"Okay", NULL, NULL); + return; + } + + // behavior check - friendly + if ( self.theCombatProfile.healingEnabled ){ + BOOL validFound = NO; + Procedure *procedure = [self.theBehavior procedureForKey: CombatProcedure]; + int i; + for ( i = 0; i < [procedure ruleCount]; i++ ) { + Rule *rule = [procedure ruleAtIndex: i]; + + if ( [rule target] == TargetFriend || [rule target] == TargetFriendlies ){ + validFound = YES; + break; + } + } + + if ( !validFound ){ + log(LOG_STARTUP, @"You have healing selected, but no rules heal friendlies!"); + NSBeep(); + NSRunAlertPanel(@"Behavior is not set up correctly", @"Your combat profile states you should be healing. But no targets are selected as friendly in your behavior! So how can I heal anyone?", @"Okay", NULL, NULL); + return; + } + } + + // behavior check - hostile + if ( self.theCombatProfile.combatEnabled ){ + BOOL validFound = NO; + Procedure *procedure = [self.theBehavior procedureForKey: CombatProcedure]; + int i; + for ( i = 0; i < [procedure ruleCount]; i++ ) { + Rule *rule = [procedure ruleAtIndex: i]; + if ( [rule target] == TargetEnemy || [rule target] == TargetAdd || [rule target] == TargetPat ){ + validFound = YES; + break; + } + } + if ( !validFound ){ + log(LOG_STARTUP, @"You have combat selected, but no rules attack enemies!"); + NSBeep(); + NSRunAlertPanel(@"Behavior is not set up correctly", @"Your combat profile states you should be attacking. But no targets are selected as enemies in your behavior! So how can I kill anyone?", @"Okay", NULL, NULL); + return; + } + } + + // make sure the route will work! + if ( self.theRouteSet ){ + [_routesChecked removeAllObjects]; + NSString *error = [self isRouteSetSound:self.theRouteSet]; + if ( error && [error length] > 0 ) { + log(LOG_STARTUP, @"Your route is not configured correctly!"); + NSBeep(); + NSRunAlertPanel(@"Route is not configured correctly", error, @"Okay", NULL, NULL); + return; + } + } + + // make sure our spells are on our action bars! + NSString *spellError = [spellController spellsReadyForBotting]; + if ( spellError && [spellError length] ){ + log(LOG_STARTUP, @"Your spells/macros/items need to be on your action bars!"); + NSBeep(); + NSRunAlertPanel(@"Your spells/macros/items need to be on your action bars!", spellError, @"Okay", NULL, NULL); + return; + } +/* + // pvp checks + UInt32 zone = [playerController zone]; + if ( [playerController isInBG:zone] ){ + + // verify we're able to actually do something (otherwise we make the assumption the user selected the correct route!) + if ( self.pvpBehavior ){ + + // do we have a BG for this? + Battleground *bg = [self.pvpBehavior battlegroundForZone:zone]; + + if ( !bg ){ + NSString *errorMsg = [NSString stringWithFormat:@"No battleground found for '%@', check your PvP Behavior!", [bg name]]; + log(LOG_STARTUP, errorMsg); + NSBeep(); + NSRunAlertPanel(@"Unknown error in PvP Behavior", errorMsg, @"Okay", NULL, NULL); + return; + } + else if ( ![bg routeCollection] ){ + NSString *errorMsg = [NSString stringWithFormat:@"You must select a valid Route Set in your PvP Behavior for '%@'.", [bg name]]; + log(LOG_STARTUP, @"No valid route found for BG %d.", zone); + NSBeep(); + NSRunAlertPanel(@"No route set found for this battleground", errorMsg, @"Okay", NULL, NULL); + return; + } + } + } + if ( self.pvpBehavior && ![self.pvpBehavior canDoRandom] ){ + log(LOG_STARTUP, @"Currently PG will only do random BGs, you must enabled all battlegrounds + select a route for each"); + NSBeep(); + NSRunAlertPanel(@"Enable all battlegrounds", @"Currently PG will only do random BGs, you must enabled all battlegrounds + select a route for each", @"Okay", NULL, NULL); + return; + + } + */ + + // not a valid pvp behavior + /*if ( self.pvpBehavior && ![self.pvpBehavior isValid] ){ + + if ( [self.pvpBehavior random] ){ + log(LOG_STARTUP, @"You must have all battlegrounds enabled in your PvP behavior to do random!", zone); + NSBeep(); + NSRunAlertPanel(@"Enable all battlegrounds", @"You must have all battlegrounds enabled in your PvP behavior to do random!", @"Okay", NULL, NULL); + return; + } + else{ + log(LOG_STARTUP, @"You need at least 1 battleground enabled in your PvP behavior to do PvP!", zone); + NSBeep(); + NSRunAlertPanel(@"Enable 1 battleground", @"You need at least 1 battleground enabled in your PvP behavior to do PvP!", @"Okay", NULL, NULL); + return; + } + }*/ + + // TO DO: verify starting routes for ALL PvP routes + + // not really sure how this could be possible hmmm + if( self.isBotting ) [self stopBot: nil]; + + if ( !self.theCombatProfile || !self.theBehavior ) return; + + log(LOG_STARTUP, @"Starting bot."); + [spellController reloadPlayerSpells]; + _lootScanIdleTimer = 0; + + self.mobToSkin = nil; + self.unitToLoot = nil; + _movingTowardMobCount = 0; + + _castingUnit = nil; + + // Follow resets + _followUnit = nil; + + // Party resets + _assistUnit = nil; + _tankUnit = nil; + + // friendly shit + _includeFriendly = [self includeFriendlyInCombat]; + _includeFriendlyPatrol = [self includeFriendlyInPatrol]; + _includeCorpsesPatrol = [self includeCorpsesInPatrol]; + + _didPreCombatProcedure = NO; + _reviveAttempt = 0; + _ghostDance = 0; + + _waitForPvPQueue = NO; + _waitForPvPPreparation = NO; + _isPvpMonitoring = NO; + + // reset statistics + [statisticsController resetQuestMobCount]; + + // start our log out timer - only check every 5 seconds! + _logOutTimer = [NSTimer scheduledTimerWithTimeInterval: 5.0f target: self selector: @selector(logOutTimer:) userInfo: nil repeats: YES]; + + int canSkinUpToLevel = 0; + if ( theCombatProfile.SkinningLevel <= 100) { + canSkinUpToLevel = (theCombatProfile.SkinningLevel/10)+10; + } else { + canSkinUpToLevel = (theCombatProfile.SkinningLevel/5); + } + if ( theCombatProfile.DoSkinning ) log(LOG_STARTUP, @"Skinning enabled with skill %d, allowing mobs up to level %d.",theCombatProfile.SkinningLevel, canSkinUpToLevel); + if ( theCombatProfile.DoNinjaSkin ) log(LOG_STARTUP, @"Ninja Skin enabled."); + + log(LOG_DEV, @"StartBot"); + [controller setCurrentStatus: @"Bot: Enabled"]; + self.isBotting = YES; [startStopButton setTitle: @"Stop Bot"]; + + // Bot started, lets reset our whisper history! + [chatLogController clearWhisperHistory]; + + self.startDate = [[NSDate date] retain]; + + // If we're in a BG this will set the right variables and routes. + if ( [self pvpSetEnvironmentForZone] ) { + log(LOG_STARTUP, @"We're in a Battleground."); + } + + if ( [playerController isDead] ) { + + [controller setCurrentStatus: @"Bot: Player is Dead"]; + + if ( ![playerController isGhost] ) { + log(LOG_GHOST, @"Do we need to release?"); + [self corpseRelease:[NSNumber numberWithInt:0]]; + } + + } else if ( theCombatProfile.ShouldLoot ) [self lootScan]; + + // we have a PvP behavior! + if ( self.useRoutePvP && self.pvpBehavior ) { + log(LOG_STARTUP, @"PvP Routes Enabled."); + self.isPvPing = YES; + + // TO DO - map these to bindings + self.pvpPlayWarning = NO;// [pvpPlayWarningCheckbox state]; + + } + + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +- (void)updateRunningTimer{ + + int duration = (int) [[NSDate date] timeIntervalSinceDate: self.startDate]; + + NSMutableString *runningFor = [NSMutableString stringWithFormat:@"Running for: "]; + + if ( duration > 0 ) { + + // Prob a better way for this heh + int seconds = duration % 60; + duration /= 60; + int minutes = duration % 60; + duration /= 60; + int hours = duration % 24; + duration /= 24; + int days = duration; + + if (days > 0) [runningFor appendString:[NSString stringWithFormat:@"%d day%@", days, (days > 1) ? @"s " : @" "]]; + if (hours > 0) [runningFor appendString:[NSString stringWithFormat:@"%d hour%@", hours, (hours > 1) ? @"s " : @" "]]; + if (minutes > 0) [runningFor appendString:[NSString stringWithFormat:@"%d minute%@", minutes, (minutes > 1) ? @"s " : @" "]]; + if (seconds > 0) [runningFor appendString:[NSString stringWithFormat:@"%d second%@", seconds, (seconds > 1) ? @"s " : @""]]; + + [runningTimer setStringValue: runningFor]; + } +} + +- (IBAction)stopBot: (id)sender { + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + log(LOG_FUNCTION, @"stopBot"); + + // we are we stopping the bot if we aren't even botting? (partly doing this as I don't want the status to change if we logged out due to something) +// if ( !self.isBotting ) return; + if ( self.isBotting ) [controller setCurrentStatus: @"Bot: Stopped"]; + self.isBotting = NO; + + // Kill it and set isBotting right away! + [self cancelCurrentEvaluation]; + [self stopBotActions]; + + // Then a user clicked! + if ( sender != nil ) self.startDate = nil; + log(LOG_GENERAL, @"Bot Stopped: %@", sender); + + _afkTimerCounter=0; + + _mountAttempt = 0; + + + _sleepTimer = 0; + [movementController resetRoutes]; + +// _pvpBehavior = nil; + _procedureInProgress = nil; + _evaluationInProgress = nil; + _lastProcedureExecuted = nil; + _didPreCombatProcedure = NO; + _lastSpellCastGameTime = 0; + self.startDate = nil; + _unitToLoot = nil; + _mobToSkin = nil; + _mobJustSkinned = nil; + _wasLootWindowOpen = NO; + _shouldFollow = YES; + _lastUnitAttemptedToHealed = nil; + self.lootStartTime = nil; + self.skinStartTime = nil; + _lootMacroAttempt = 0; + _zoneBeforeHearth = -1; + + + _jumpAttempt = 0; + _includeFriendly = NO; + _includeFriendlyPatrol = NO; + _includeCorpsesPatrol = NO; +// _lastSpellCast = 0; + _mountAttempt = 0; + _movingTowardMobCount = 0; + _movingTowardNodeCount = 0; + _mountLastAttempt = nil; + + [_castingUnit release]; + _castingUnit = nil; + + // Follow resets + [_followUnit release]; + _followUnit = nil; + _followingFlagCarrier = NO; + + [self followRouteClear]; + + // Party resets + [_tankUnit release]; + _tankUnit = nil; + [_assistUnit release]; + _assistUnit = nil; + _followSuspended = NO; + _followLastSeenPosition = NO; + _leaderBeenWaiting = NO; + + _lastCombatProcedureTarget = 0x0; + _lootScanIdleTimer = 0; + + _partyEmoteIdleTimer = 0; + _partyEmoteTimeSince = 0; + _lastEmote = nil; + _lastEmoteShuffled = 0; + + // wipe pvp options + _isPvPing = NO; + _pvpIsInBG = NO; + _pvpPlayWarning = NO; + _attackingInStrand = NO; + _strandDelay = NO; + _strandDelayTimer = 0; + _waitingToLeaveBattleground = NO; + _waitForPvPQueue = NO; + _waitForPvPPreparation = NO; + _isPvpMonitoring = NO; + _movingToCorpse = NO; + + // stop our log out timer + [_logOutTimer invalidate];_logOutTimer=nil; + + log(LOG_GENERAL, @"Bot Stopped."); + [startStopButton setTitle: @"Start Bot"]; +} + +// the idea of this function is that we want to stop the bot from doing anything, but we don't want to actually stop botting ;) +- (void)stopBotActions { + + // We don't reset evaluateSituation just in case we're being called from there. + [self cancelCurrentProcedure]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(performProcedureWithState:) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(finishCurrentProcedure:) object: nil]; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorRegen:) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(performAction:) object: nil]; + + // Only stop the movement if it's not the player doing the moving. + if ( [movementController isActive] ) [movementController resetMovementState]; + + [self resetPvpTimer]; + [combatController resetAllCombat]; + // Lets hang on to our blacklist, we can restart if we need to clear it. Handy if a node made you die while mining among other things +// [blacklistController clearAll]; + [blacklistController clearAttempts]; + + if ( theCombatProfile.ShouldLoot ) [_mobsToLoot removeAllObjects]; + self.preCombatUnit = nil; + + // stop fishing + if ( [fishController isFishing] ) [fishController stopFishing]; + +} + +- (void)reEnableStart { + [startStopButton setEnabled: YES]; +} + +- (IBAction)startStopBot: (id)sender { + if ( self.isBotting ){ + [self stopBot: sender]; + } else { + [self startBot: sender]; + } +} + +NSMutableDictionary *_diffDict = nil; +- (IBAction)testHotkey: (id)sender { + + + log(LOG_GENERAL, @"testing"); + + return; + + //int value = 28734; + //[[controller wowMemoryAccess] saveDataForAddress: ([offsetController offset:@"HOTBAR_BASE_STATIC"] + BAR6_OFFSET) Buffer: (Byte *)&value BufLength: sizeof(value)]; + //log(LOG_GENERAL, @"Set Mana Tap."); + + //[chatController pressHotkey: hotkey.code withModifier: hotkey.flags]; + + + if(!_diffDict) _diffDict = [[NSMutableDictionary dictionary] retain]; + + BOOL firstRun = ([_diffDict count] == 0); + UInt32 i, value; + + if(firstRun) { + log(LOG_GENERAL, @"First run."); + for(i=0x900000; i< 0xFFFFFF; i+=4) { + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: i Buffer: (Byte *)&value BufLength: sizeof(value)]) { + if(value < 2) + [_diffDict setObject: [NSNumber numberWithUnsignedInt: value] forKey: [NSNumber numberWithUnsignedInt: i]]; + } + } + } else { + NSMutableArray *removeKeys = [NSMutableArray array]; + for(NSNumber *key in [_diffDict allKeys]) { + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: [key unsignedIntValue] Buffer: (Byte *)&value BufLength: sizeof(value)]) { + if( value == [[_diffDict objectForKey: key] unsignedIntValue]) { + [removeKeys addObject: key]; + } else { + [_diffDict setObject: [NSNumber numberWithUnsignedInt: value] forKey: key]; + } + } + } + [_diffDict removeObjectsForKeys: removeKeys]; + } + + log(LOG_GENERAL, @"%d values.", [_diffDict count]); + if([_diffDict count] < 20) { + log(LOG_GENERAL, @"%@", _diffDict); + } + + return; +} + + +- (IBAction)hotkeyHelp: (id)sender { + [NSApp beginSheet: hotkeyHelpPanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil + contextInfo: nil]; +} + +- (IBAction)closeHotkeyHelp: (id)sender { + [NSApp endSheet: hotkeyHelpPanel returnCode: 1]; + [hotkeyHelpPanel orderOut: nil]; +} + +- (IBAction)lootHotkeyHelp: (id)sender { + [NSApp beginSheet: lootHotkeyHelpPanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil + contextInfo: nil]; +} + +- (IBAction)closeLootHotkeyHelp: (id)sender { + [NSApp endSheet: lootHotkeyHelpPanel returnCode: 1]; + [lootHotkeyHelpPanel orderOut: nil]; +} + +/* +- (IBAction)gatheringLootingOptions: (id)sender{ + [NSApp beginSheet: gatheringLootingPanel + modalForWindow: [self.view window] + modalDelegate: self + didEndSelector: @selector(gatheringLootingDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (IBAction)gatheringLootingSelectAction: (id)sender { + [NSApp endSheet: gatheringLootingPanel returnCode: [sender tag]]; +} + +- (void)gatheringLootingDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo { + [gatheringLootingPanel orderOut: nil]; +} +*/ + +#pragma mark Notifications + +- (void)joinBGCheck{ + if ( !self.isBotting ) return; + + _needToTakeQueue = NO; + + int status = [playerController battlegroundStatus]; + + if ( status == BGWaiting ) { + // queue then check again! + [controller setCurrentStatus: @"Joining Battleground."]; + [macroController useMacroOrSendCmd:@"AcceptBattlefield"]; + log(LOG_PVP, @"Joining BG!"); + [self performSelector: _cmd withObject: nil afterDelay:1.0f]; + return; + } + + _waitForPvPQueue = NO; + [self performSelector: @selector(joinBGCheckStartWithoutPreparation) withObject: nil afterDelay: 8.0f]; +} + +- (void)joinBGCheckStartWithoutPreparation { + // Normally the auraGain would start the evaluation procedure, this is here in the event that we spawn into a BG that's already in progress. + if ( _waitForPvPPreparation ) return; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; +} + +- (void)pvpMonitor: (NSTimer*)timer { + + if ( [self pvpIsBattlegroundEnding] ) { + log(LOG_PVP, @"Battleground is over, Resetting!"); + + // PvP Resets + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController resetAllCombat]; + [movementController resetRoutes]; + + self.pvpPlayWarning = NO; + + _waitForPvPQueue = NO; + _waitingToLeaveBattleground = NO; + _isPvpMonitoring = NO; + + if ( _followUnit ) { + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + } + [self stopBotActions]; +// self.theRouteCollection = nil; +// self.theRouteSet = nil; +// self.theRouteCollectionPvP = nil; +// self.theRouteSetPvP = nil; + + if ( !self.isPvPing ) { + log(LOG_PVP, @"Stopping the bot since we're running in easy mode."); + [self stopBot: nil]; + [controller setCurrentStatus: @"Battleground over, bot stopped."]; + return; + } + + _waitingToLeaveBattleground = YES; + float delay = 0.1f; + + if ( theCombatProfile.pvpWaitToLeave && theCombatProfile.pvpWaitToLeaveTime >= 0.0f ) delay = theCombatProfile.pvpWaitToLeaveTime; + int delaySeconds = round(delay); + [controller setCurrentStatus: [NSString stringWithFormat:@"Battleground over, waiting %d seconds to leave.", delaySeconds]]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: delay]; + [self resetPvpTimer]; + return; + } + + if ( ![playerController isInBG:[playerController zone]] ) { + log(LOG_PVP, @"No longer in a BG, ending monitor."); + [self resetPvpTimer]; + return; + } + + if ( !_isPvpMonitoring ) { + log(LOG_PVP, @"Starting monitor."); + _isPvpMonitoring = YES; + } + +} +-(void)resetPvpTimer{ + if ( _pvpTimer ) { + [_pvpTimer invalidate]; + _pvpTimer = nil; + } + _isPvpMonitoring = NO; +} + +- (void)eventBattlegroundStatusChange: (NSNotification*)notification { + if ( !self.isBotting ) return; + + int status = [[notification object] intValue]; + log(LOG_DEV, @"Battle ground status change notification in botController."); + + // Lets join the BG! + if ( !self.pvpIsInBG && status == BGWaiting ) { + + if ( [playerController isInCombat] || [playerController isDead] ) { + log(LOG_PVP, @"Battleground Queue popped while in combat, will take it as soon as combat is done."); + _needToTakeQueue = YES; + return; + } + + // PvP Resets + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController resetAllCombat]; + [movementController resetMovementState]; + self.pvpPlayWarning = NO; + _waitingToLeaveBattleground = NO; + if ( _followUnit ) { + [_followUnit release]; _followUnit = nil; + [self followRouteClear]; + } + + float queueAfter = SSRandomFloatBetween(8.0f, 18.0f); + log(LOG_PVP, @"Joining the BG after %0.2f seconds", queueAfter); + [controller setCurrentStatus: @"Queue popped, accepting in a moment..."]; + [self performSelector:@selector(joinBGCheck) withObject: nil afterDelay:queueAfter]; + return; + } + +} + +- (void)eventZoneChanged: (NSNotification*)notification{ + if ( !self.isBotting ) return; + + NSNumber *lastZone = [notification object]; + + if ( [playerController isInBG:[lastZone intValue]] ) { + [movementController resetMovementState]; + log(LOG_PVP, @"Left BG, stopping movement!"); + } + + [self verifyFollowUnit]; + + log(LOG_GENERAL, @"Zone change fired... to %@", lastZone); +} + +// Want to respond to some commands? o.O +- (void)whisperReceived: (NSNotification*)notification{ + if ( !self.isBotting ) return; + + ChatLogEntry *entry = [notification object]; + + //TO DO: Check to make sure you only respond to people around you that you are healing! + if ( theCombatProfile.followEnabled ) { + + // Check to ensure this command is from someone allowed to command us + if ( ![self whisperCommandAllowed: entry] ) return; + + if ( !_followUnit && [self findFollowUnit] ) + log(LOG_FOLLOW, @"Found the follow unit again!"); + + Unit *whisperUnit = [self whisperCommandUnit: entry]; + + if ( !whisperUnit ) { + log(LOG_PARTY, @"Whisper unit not found: %@ said %@", [entry playerName], [entry text]); + return; + } + + log(LOG_PARTY, @"Follow mode whisper: %@ said %@", [entry playerName], [entry text]); + + NSString *whisperLook = @"*look*"; + NSString *whisperCome = @"*come*"; + NSString *whisperStay = @"*stay*"; + NSString *whisperMove = @"*move*"; + NSString *whisperFollow = @"*follow*"; + NSString *whisperStop = @"*stop*"; + + NSPredicate *predicateLook = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", whisperLook]; + NSPredicate *predicateCome = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", whisperCome]; + NSPredicate *predicateStay = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", whisperStay]; + NSPredicate *predicateMove = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", whisperMove]; + NSPredicate *predicateFollow = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", whisperFollow]; + NSPredicate *predicateStop = [NSPredicate predicateWithFormat:@"SELF like[cd] %@", whisperStop]; + + // Break your combat and move your ass to the follow unit! + // This should also work when the leader is out of attaching range, a force attach so to speak + if ( _followUnit && [_followUnit isValid] && ![playerController isDead] && [predicateMove evaluateWithObject: [entry text]] ) { + + log(LOG_FOLLOW, @"Command recieved, breaking combat and moving now!"); + + if ( [playerController isCasting] ) [movementController establishPlayerPosition]; // Break any channeling or actions + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + if ( [combatController inCombat] ) [combatController cancelAllCombat]; + if ( [movementController isActive] ) [movementController resetMovementState]; + + + [macroController useMacroOrSendCmd:@"ReplyOMW"]; + + // If the distance is too close to trigger the follow routine we move directly to our object + float distanceToWhisperUnit = [[playerController position] distanceToPosition: [whisperUnit position]]; + if ( distanceToWhisperUnit <= 30.f ) { + [self followRouteClear]; + [movementController moveToObject:whisperUnit]; + return; + } + + // If the distance is too close to trigger the follow routine we move directly to our object + float distanceToFollowUnit = [[playerController position] distanceToPosition: [_followUnit position]]; + if ( self.followSuspended || distanceToFollowUnit <= theCombatProfile.followDistanceToMove ) { + [self followRouteClear]; + [movementController moveToObject:_followUnit]; + return; + } + + [self followRouteStartRecord]; + self.evaluationInProgress = @"Follow"; + [self evaluateSituation]; + return; + } else + + // Face up and look at your follow unit + if ( ![playerController isDead] && [whisperUnit isValid] && [predicateLook evaluateWithObject: [entry text]] ) { + + log(LOG_FOLLOW, @"Command recieved, facing leader: %@.", whisperUnit); + [playerController targetGuid:[whisperUnit cachedGUID]]; + [movementController turnTowardObject: whisperUnit]; + usleep([controller refreshDelay]*2); + [movementController establishPlayerPosition]; + return; + } else + + // Deactive follow mode + if ( ![playerController isDead] && !self.followSuspended && [predicateStay evaluateWithObject: [entry text]] ) { + + log(LOG_FOLLOW, @"Command recieved, stop following."); + self.followSuspended = YES; + + if (self.evaluationInProgress == @"Follow" ) { + [self cancelCurrentEvaluation]; + if ( [movementController isActive] ) [movementController resetMovementState]; + [macroController useMacroOrSendCmd:@"ReplyKK"]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.1f]; + return; + } + + [macroController useMacroOrSendCmd:@"ReplyKK"]; + return; + } else + + // Reactive follow mode + if ( ![playerController isDead] && self.followSuspended && [predicateCome evaluateWithObject: [entry text]] ) { + + if ( [playerController isCasting] ) [movementController establishPlayerPosition]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + if ( [combatController inCombat] ) [combatController cancelAllCombat]; + if ( [movementController isActive] ) [movementController resetMovementState]; + + log(LOG_PARTY, @"Command recieved, following again."); + self.followSuspended = NO; + [self followRouteStartRecord]; + self.evaluationInProgress = @"Follow"; + [macroController useMacroOrSendCmd:@"ReplyOMW"]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.1f]; + return; + + } + + if ( [predicateFollow evaluateWithObject: [entry text]] || [predicateStop evaluateWithObject: [entry text]] ) { + + if ( ![whisperUnit isValid] ) return; + + // Range Check + float distance = [[[playerController player] position] distanceToPosition: [whisperUnit position]]; + + if ( distance >= 30.0f ) { + log(LOG_FOLLOW, @"Leader is out of /follow range so we're ignoring request."); + return; + } + + // Use /follow + if ( [predicateFollow evaluateWithObject: [entry text]] ) { + if ( [playerController isCasting] ) [movementController establishPlayerPosition]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController cancelAllCombat]; + if ( [movementController isActive] ) [movementController resetMovementState]; + [self followRouteClear]; + + log(LOG_FOLLOW, @"Command recieved, using /follow"); + [playerController targetGuid:[whisperUnit cachedGUID]]; + [macroController useMacroOrSendCmd:@"Follow"]; + [macroController useMacroOrSendCmd:@"ReplyOMW"]; + return; + } else + + // Stop using /follow + if ( [predicateStop evaluateWithObject: [entry text]] ) { + +// [self cancelCurrentProcedure]; +// [self cancelCurrentEvaluation]; +// [combatController cancelAllCombat]; +// [movementController resetMovementState]; +// [self followRouteClear]; + + log(LOG_FOLLOW, @"Command recieved, stop using /follow"); +// [playerController targetGuid: [playerController GUID]]; + [movementController establishPlayerPosition]; + [macroController useMacroOrSendCmd:@"ReplyKK"]; + [self performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return; + } + } + } +} + +-(Unit*)whisperCommandUnit:(ChatLogEntry*)entry { + // Reverse the name to a Unit + NSMutableArray *players = [NSMutableArray array]; + [players addObjectsFromArray: [playersController allPlayers]]; + + if ( ![players count] ) return nil; + for ( Unit *unit in players ) { + // Skip if the target is ourself + if ( [unit cachedGUID] == [[playerController player] cachedGUID] ) continue; + if ( ![playerController isFriendlyWithFaction: [unit factionTemplate]] ) continue; + if ( [[playersController playerNameWithGUID: [unit cachedGUID]] isEqualToString: [entry playerName]] ) return unit; + } + return nil; +} + +-(BOOL)whisperCommandAllowed:(ChatLogEntry*)entry { + + if ( theCombatProfile.followUnit && theCombatProfile.followUnitGUID > 0x0 ) { + if ( [[playersController playerNameWithGUID: theCombatProfile.followUnitGUID] isEqualToString: [entry playerName]] ) return YES; + + } + + if ( !theCombatProfile.partyEnabled ) { + log(LOG_CHAT, @"%@ is sending me: %@, but they're not allowed to!", [entry playerName], [entry text] ); + return NO; + } + + if ( theCombatProfile.tankUnit && theCombatProfile.tankUnitGUID > 0x0 ) + if ( [[playersController playerNameWithGUID: theCombatProfile.tankUnitGUID] isEqualToString: [entry playerName]] ) return YES; + + if ( theCombatProfile.assistUnit && theCombatProfile.assistUnit > 0x0 ) + if ( [[playersController playerNameWithGUID: theCombatProfile.assistUnit] isEqualToString: [entry playerName] ] ) return YES; + + log(LOG_PARTY, @"%@ is sending me: %@, but they're not allowed to!", [entry playerName], [entry text] ); + return NO; +} + +#pragma mark ShortcutRecorder Delegate + +- (void)toggleGlobalHotKey:(SRRecorderControl*)sender +{ + if (StartStopBotGlobalHotkey != nil) { + [[PTHotKeyCenter sharedCenter] unregisterHotKey: StartStopBotGlobalHotkey]; + [StartStopBotGlobalHotkey release]; + StartStopBotGlobalHotkey = nil; + } + + KeyCombo keyCombo = [sender keyCombo]; + + if((keyCombo.code >= 0) && (keyCombo.flags >= 0)) { + StartStopBotGlobalHotkey = [[PTHotKey alloc] initWithIdentifier: @"StartStopBot" + keyCombo: [PTKeyCombo keyComboWithKeyCode: keyCombo.code + modifiers: [sender cocoaToCarbonFlags: keyCombo.flags]]]; + + [StartStopBotGlobalHotkey setTarget: startStopButton]; + [StartStopBotGlobalHotkey setAction: @selector(performClick:)]; + + [[PTHotKeyCenter sharedCenter] registerHotKey: StartStopBotGlobalHotkey]; + } +} + +- (void)shortcutRecorder:(SRRecorderControl *)recorder keyComboDidChange:(KeyCombo)newKeyCombo { + + if(recorder == startstopRecorder) { + [[NSUserDefaults standardUserDefaults] setObject: [NSNumber numberWithInt: newKeyCombo.code] forKey: @"StartstopCode"]; + [[NSUserDefaults standardUserDefaults] setObject: [NSNumber numberWithInt: newKeyCombo.flags] forKey: @"StartstopFlags"]; + [self toggleGlobalHotKey: startstopRecorder]; + } + + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +#pragma mark - +#pragma mark PvP + +- (void)auraGain: (NSNotification*)notification { + if ( !self.isBotting ) return; + + UInt32 spellID = [[(Spell*)[[notification userInfo] objectForKey: @"Spell"] ID] unsignedIntValue]; + + if ( spellID == PreparationSpellID || spellID == WaitingToRezSpellID ) { + if ( [movementController isActive] ) [movementController resetMovementState]; + [self cancelCurrentProcedure]; + [self cancelCurrentEvaluation]; + [combatController resetAllCombat]; + [self followRouteClear]; + [self pvpSetEnvironmentForZone]; + } + + if ( self.pvpIsInBG ) { + + // if we are waiting to rez, pause the bot (incase it is not) + if( spellID == WaitingToRezSpellID ) { + log(LOG_PVP, @"Waiting to rez."); + } else + + // Just got preparation? Lets check to see if we're in strand + should be attacking/defending + if ( spellID == PreparationSpellID && ![self pvpIsBattlegroundEnding] ) { + + if ( _followUnit ) { + [_followUnit release]; + _followUnit = nil; + } + + _waitForPvPPreparation = YES; + + log(LOG_PVP, @"We have preparation, checking BG info!"); + + // Do it in a bit, as we need to wait for our controller to update the object list! + [self performSelector:@selector(pvpGetBGInfo) withObject:nil afterDelay:2.0f]; + } + } else + if ( spellID == PreparationSpellID || spellID == WaitingToRezSpellID ) { + [self evaluateSituation]; + } +} + +- (void)auraFade: (NSNotification*)notification { + + if ( !self.isBotting ) return; +/* + Evaluation can handle this now + // Player is PvPing! + if ( self.isPvPing || self.pvpIsInBG ) { + + UInt32 spellID = [[(Spell*)[[notification userInfo] objectForKey: @"Spell"] ID] unsignedIntValue]; + + if( spellID == PreparationSpellID ) { + // Only checking for the delay! + if ( [playerController isOnBoatInStrand] && [playerController zone] == ZoneStrandOfTheAncients ) { + _attackingInStrand = YES; + if ( self.isPvPing ) _strandDelay = YES; + } + } + } +*/ +} + +- (void)logOutWithMessage:(NSString*)message { + + log(LOG_GENERAL, @"[Bot] %@", message); + [self logOut]; + + // sleep a bit before we update our status + usleep(500000); + [self updateStatus: [NSString stringWithFormat:@"Bot: %@", message]]; +} + +- (BOOL)pvpIsBattlegroundEnding { + + UInt32 offset = [offsetController offset:@"Lua_GetBattlefieldWinner"], status = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte*)&status BufLength: sizeof(status)]; + log(LOG_DEV, @"pvpIsBattlegroundEnding: %d", status); + if ( status != 0 ) return YES; + + return NO; +} + +// this will set up the pvp environment based on the zone we're in (basically set the RouteSet) +- (BOOL)pvpSetEnvironmentForZone{ + log(LOG_FUNCTION, @"pvpSetEnvironmentForZone:"); + + UInt32 zone = [playerController zone]; + if ( ![playerController isInBG:zone] ) { + + log(LOG_PVP, @"Resetting the PvP Environment since we're not in a BG."); + + if ( _pvpTimer ) [self resetPvpTimer]; + + // Resets for Regular Mode + _pvpIsInBG = NO; + if ( self.theBehavior != [[behaviorPopup selectedItem] representedObject] ) self.theBehavior = [[behaviorPopup selectedItem] representedObject]; + if ( self.theCombatProfile != [[combatProfilePopup selectedItem] representedObject] ) self.theCombatProfile = [[combatProfilePopup selectedItem] representedObject]; + + _attackingInStrand = NO; + _strandDelay= NO; + _waitForPvPPreparation = NO; + _strandDelayTimer = 0; + _needToTakeQueue = NO; + + return NO; + } + + _pvpIsInBG = YES; + _waitForPvPQueue = NO; + + if ( self.theBehavior != [[behaviorPvPPopup selectedItem] representedObject] ) self.theBehavior = [[behaviorPvPPopup selectedItem] representedObject]; + if ( self.theCombatProfile != [[combatProfilePvPPopup selectedItem] representedObject] ) self.theCombatProfile = [[combatProfilePvPPopup selectedItem] representedObject]; + + Battleground *battleground = [self.pvpBehavior battlegroundForZone:zone]; + if ( !battleground ) { + log(LOG_PVP, @"Running in Easy Mode for this Battleground."); + return NO; + } + + // Set the Route Collection + RouteCollection *routeCollection = [battleground routeCollection]; + if ( !routeCollection ) { + log(LOG_PVP, @"Cannot set environment, there is no route collection!"); + return NO; + } + + if ( !_theRouteCollectionPvP || routeCollection != _theRouteCollectionPvP ) { + log(LOG_DEV, @"Setting the route collection to %@", routeCollection); + _theRouteCollectionPvP = routeCollection; + } else { + log(LOG_DEV, @"Setting the route collection already set to %@", routeCollection); + } + + if ( !_theRouteCollectionPvP || ![_theRouteCollectionPvP routes] ) { + log(LOG_PVP, @"Cannot set environment, there is no route collection!"); + return NO; + } + + float closestDistance = 0.0f; + Waypoint *thisWaypoint = nil; + Route *route = nil; + RouteSet *routeSetFound; + Position *playerPosition = [playerController position]; + float distanceToWaypoint; + + log(LOG_DEV, @"pvpSetEnvironmentForZone: looking through routeSets"); + for (RouteSet *routeSet in [_theRouteCollectionPvP routes] ) { + + // Set the route to test against + route = [routeSet routeForKey:PrimaryRoute]; + + if ( !route || route == nil ) continue; + + if ( closestDistance == 0.0f ) { + thisWaypoint = [route waypointClosestToPosition:playerPosition]; + closestDistance = [playerPosition distanceToPosition: [thisWaypoint position]]; + routeSetFound = [routeSet retain]; + continue; + } + + // We have one to compare + thisWaypoint = [route waypointClosestToPosition:playerPosition]; + distanceToWaypoint = [playerPosition distanceToPosition: [thisWaypoint position]]; + if (distanceToWaypoint < closestDistance) { + closestDistance = distanceToWaypoint; + if ( routeSetFound ) [routeSetFound release]; + routeSetFound = [routeSet retain]; + } + } + + if ( _theRouteSetPvP && routeSetFound == _theRouteSetPvP ) { + log(LOG_DEV, @"Route set already set to %@", routeSetFound); + [routeSetFound release]; + routeSetFound = nil; + return YES; + } + + if ( routeSetFound ) { + log(LOG_DEV, @"pvpSetEnvironmentForZone: setting to the closest route."); + _theRouteSetPvP = routeSetFound; + [routeSetFound release]; + routeSetFound = nil; + } else + if ( [_theRouteCollectionPvP startingRoute] ) { + log(LOG_DEV, @"pvpSetEnvironmentForZone: setting to the starting route."); + _theRouteSetPvP = [_theRouteCollectionPvP startingRoute]; + } else { + log(LOG_DEV, @"pvpSetEnvironmentForZone: setting to the first route."); + _theRouteSetPvP = [[_theRouteCollectionPvP routes] objectAtIndex:0]; + } + + log(LOG_PVP, @"Setting PvP route set to %@", self.theRouteSetPvP); + return YES; +} + +- (BOOL)pvpQueueBattleground { + + // error checking (removed valid player and !isPvPing) + UInt32 zone = [playerController zone]; + + if ( [playerController isInBG:zone] ){ + log(LOG_DEV, @"Not queueing for BG, already in a BG!"); + return NO; + } + + NSString *macroEnd = [macroController macroTextForKey:@"QueueForBattleground"]; + + // doing a random? ezmode! + if ( theCombatProfile.pvpQueueForRandomBattlegrounds ) { + log(LOG_PVP, @"Queueing up for randoms."); + + // execute the macro + NSString *fullMacro = [NSString stringWithFormat:@"/run a,b={%d},{}; %@", 32, macroEnd]; + [macroController useMacroOrSendCmd:fullMacro]; + } else { + log(LOG_PVP, @"Queueing up."); + // we have some checked! + + NSString *fullMacro = [NSString stringWithFormat:@"/run a,b={%@},{}; %@", [self.pvpBehavior formattedForJoinMacro], macroEnd]; + [macroController useMacroOrSendCmd:fullMacro]; + } + + // actually queue + [macroController useMacroOrSendCmd:@"JoinBattlefield"]; + + if ( [playerController battlegroundStatus] != BGQueued ) { + log(LOG_ERROR, @"[PvP] We just queued for the BG, but we're not queued? hmmm"); + [controller setCurrentStatus: @"PvP: Waiting in queue for Battleground."]; + return NO; + } + + return YES; +} + +- (void)pvpGetBGInfo{ + + // Lets gets some info? + if ( [playerController zone] == ZoneStrandOfTheAncients ) { + + NSArray *antipersonnelCannons = [mobController mobsWithEntryID:StrandAntipersonnelCannon]; + + if ( [antipersonnelCannons count] > 0 ) { + BOOL foundFriendly = NO, foundHostile = NO; + for ( Mob *mob in antipersonnelCannons ) { + + int faction = [mob factionTemplate]; + BOOL isHostile = [playerController isHostileWithFaction: faction]; + log(LOG_DEV, @"Faction %d (%d) of Mob %@", faction, isHostile, mob); + + if ( isHostile ){ + foundHostile = YES; + } + else if ( !isHostile ){ + foundFriendly = YES; + } + } + + if ( foundHostile && foundFriendly ) { + log(LOG_PVP, @"New round for Strand! Found hostile and friendly! Were we attacking last round? %d", _attackingInStrand); + _attackingInStrand = _attackingInStrand ? NO : YES; + } + else if ( foundHostile ) { + _attackingInStrand = YES; + log(LOG_PVP, @"We're attacking in strand!"); + } + else if ( foundFriendly ) { + _attackingInStrand = NO; + log(LOG_PVP, @"We're defending in strand!"); + } + } + // If we don't see anything, then we're attacking! + else{ + _attackingInStrand = YES; + log(LOG_PVP, @"We're attacking in strand!"); + } + + // Check to see if we're on the boat! + if ( _attackingInStrand && [playerController isOnBoatInStrand]){ + _strandDelay = YES; + log(LOG_PVP, @"We're on a boat so lets delay our movement until it settles!"); + } + } else { + _attackingInStrand = NO; + } + + // Restart evaluation + [self evaluateSituation]; +} + +- (IBAction)pvpTestWarning: (id)sender { + [[NSSound soundNamed: @"alarm"] play]; +} + +#pragma Reversed Functions + +- (int)lua_GetWorldState: (int)index{ + + UInt32 offset = [offsetController offset:@"Lua_GetWorldStateUIInfo"]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + + int32_t valid = 0x0; + [memory loadDataForObject: self atAddress: offset + 0x8 Buffer: (Byte *)&valid BufLength: sizeof(valid)]; + + if ( valid != -1 ){ + UInt32 v2 = 0x0, structAddress = 0x0; + [memory loadDataForObject: self atAddress: offset Buffer: (Byte *)&v2 BufLength: sizeof(v2)]; + v2 += 12 * (index & valid); + [memory loadDataForObject: self atAddress: v2 + (2*4) Buffer: (Byte *)&structAddress BufLength: sizeof(structAddress)]; + + if ( ! (structAddress & 1) ){ + + int32_t readIndex = 0x0; + UInt32 offset = 0x0; // potentially named wrong + + while ( structAddress ){ + + // grab the next index from the world state struct + [memory loadDataForObject: self atAddress: structAddress Buffer: (Byte *)&readIndex BufLength: sizeof(readIndex)]; + + // found the correct index? + if ( readIndex == index ){ + int32_t nextWintergraspTime = 0x0; + [memory loadDataForObject: self atAddress: structAddress + (24) Buffer: (Byte *)&nextWintergraspTime BufLength: sizeof(nextWintergraspTime)]; + return nextWintergraspTime; + } + + // try the next struct address + [memory loadDataForObject: self atAddress: v2 Buffer: (Byte *)&offset BufLength: sizeof(offset)]; + [memory loadDataForObject: self atAddress: offset+structAddress+4 Buffer: (Byte *)&structAddress BufLength: sizeof(structAddress)]; + + // index not found + if ( structAddress & 1 ){ + log(LOG_ERROR, @"[GetWorldState] Index %d not found", index); + return 0; + } + } + } + } + + return 0; +} + +- (double)lua_GetWintergraspWaitTime{ + + if ( [self lua_GetWorldState:3801] > 0 ) + { + int state = [self lua_GetWorldState:4354]; + MemoryAccess *memory = [controller wowMemoryAccess]; + + int32_t v4 = 0x0; + [memory loadDataForObject: self atAddress: [offsetController offset:@"Lua_GetWorldStateUIInfo"] + 0x10 Buffer: (Byte *)&v4 BufLength: sizeof(v4)]; + + int seconds = state - (v4 + time(0)); + if ( seconds <= 0 ) + seconds = 0; + + return (double) seconds; + + } + + log(LOG_GENERAL, @"[Wintergrasp] Unable to find time - is wintergrasp running?"); + + return -1.0f; +} + +#pragma mark Timers + +- (void)logOutTimer: (NSTimer*)timer { + + BOOL logOutNow = NO; + NSString *logMessage = nil; + + // check for full inventory + if ( [logOutOnFullInventoryCheckbox state] && [itemController arePlayerBagsFull] ){ + logOutNow = YES; + logMessage = @"Inventory full, closing game"; + } + + // check for timer + if ( [logOutOnTimerExpireCheckbox state] && self.startDate ){ + float hours = [logOutAfterRunningTextField floatValue]; + NSDate *stopDate = [[NSDate alloc] initWithTimeInterval:hours * 60 * 60 sinceDate:self.startDate]; + + // check to see which date is earlier + if ( [stopDate earlierDate: [NSDate date] ] == stopDate ){ + logOutNow = YES; + logMessage = [NSString stringWithFormat:@"Timer expired after %0.2f hours! Logging out!", hours]; + } + } + + // check durability + if ( [logOutOnBrokenItemsCheckbox state] ){ + float averageDurability = [itemController averageWearableDurability]; + float durabilityPercentage = [logOutAfterRunningTextField floatValue]; + + if ( averageDurability > 0 && averageDurability < durabilityPercentage ){ + logOutNow = YES; + logMessage = [NSString stringWithFormat:@"Item durability has reached %02.f, logging out!", averageDurability]; + } + } + + // check honor + if ( theCombatProfile.pvpStopHonor ){ + UInt32 currentHonor = [playerController honor]; + if ( currentHonor && currentHonor >= theCombatProfile.pvpStopHonorTotal ){ + logOutNow = YES; + logMessage = [NSString stringWithFormat:@"Honor has reached %u, logging out!", currentHonor]; + } + } + + // time to stop botting + log! + if ( logOutNow ){ + + [self logOutWithMessage:logMessage]; + } +} + +// called every 30 seconds +- (void)afkTimer: (NSTimer*)timer { + log(LOG_FUNCTION, @"afkTimer"); + + if ( ![playerController playerIsValid] ) return; + + if ( ![antiAFKButton state] ) return; + + // If the player is doing something let's not interfere + if ( ( [movementController isMoving] && ![movementController isActive] ) || // Player is moving vs movementController moving + [playerController isCasting] || self.procedureInProgress || self.evaluationInProgress ) { + return; + } + + log(LOG_DEV, @"[AFK] Attempt: %d", _afkTimerCounter); + + _afkTimerCounter++; + + // then we are at 4 minutes + if ( _afkTimerCounter > 8 ) { + log(LOG_GENERAL, @"Triggering anti idle."); + [movementController antiAFK]; + _afkTimerCounter = 0; + } +} + +- (void)wgTimer: (NSTimer*)timer { + + // WG zone ID: 4197 + if ( ![playerController isDead] && [playerController zone] == 4197 && [playerController playerIsValid] ) { + + NSDate *currentTime = [NSDate date]; + + // then we are w/in the first hour after we've done a WG! Let's leave party! + if ( _dateWGEnded && [currentTime timeIntervalSinceDate: _dateWGEnded] < 3600 ){ + // check to see if they are in a party - and leave! + UInt32 offset = [offsetController offset:@"PARTY_LEADER_PTR"]; + UInt64 guid = 0; + if ( [[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&guid BufLength: sizeof(guid)] && guid ){ + [macroController useMacroOrSendCmd:@"LeaveParty"]; + log(LOG_PVP, @"Player is in party leaving!"); + } + + log(LOG_PVP, @"Leaving party anyways - there a leader? 0x%qX", guid); + [macroController useMacroOrSendCmd:@"LeaveParty"]; + } + + // only autojoin if it's 2 hours+ after a WG end + if ( _dateWGEnded && [currentTime timeIntervalSinceDate: _dateWGEnded] <= 7200 ) { + log(LOG_PVP, @"Not autojoing WG since it's been %0.2f seconds", [currentTime timeIntervalSinceDate: _dateWGEnded]); + return; + } + + // should we auto accept quests too? o.O + + // click the button! + [macroController useMacroOrSendCmd:@"ClickFirstButton"]; + log(LOG_PVP, @"Autojoining WG! Seconds since last WG: %0.2f", [currentTime timeIntervalSinceDate: _dateWGEnded]); + + // check how many marks they have (if it went up, we need to leave the group)! + Item *item = [itemController itemForID:[NSNumber numberWithInt:43589]]; + if ( item && [item isValid] ) { + + // it's never been set - /cry - lets set it! + if ( _lastNumWGMarks == 0 ){ + _lastNumWGMarks = [item count]; + log(LOG_PVP, @"Setting wintegrasp mark counter to %d", _lastNumWGMarks); + } + + // the player has more! + if ( _lastNumWGMarks != [item count] ){ + _lastNumWGMarks = [item count]; + + log(LOG_PVP, @"Wintergrasp over you now have %d marks! Leaving group!", _lastNumWGMarks); + [macroController useMacroOrSendCmd:@"LeaveParty"]; + + // update our time + log(LOG_PVP, @"It's been %0.2f:: opens seconds since we were last given marks!", [currentTime timeIntervalSinceDate: _dateWGEnded]); + [_dateWGEnded release]; _dateWGEnded = nil; + _dateWGEnded = [[NSDate date] retain]; + } + } + } +} + +- (int)errorValue: (NSString*) errorMessage{ + if ( [errorMessage isEqualToString: INV_FULL] ){ + return ErrInventoryFull; + } + else if ( [errorMessage isEqualToString:TARGET_LOS] ){ + return ErrTargetNotInLOS; + } + else if ( [errorMessage isEqualToString:SPELL_NOT_READY] ){ + return ErrSpellNotReady; + } + else if ( [errorMessage isEqualToString:TARGET_FRNT] ){ + return ErrTargetNotInFrnt; + } + else if ( [errorMessage isEqualToString:CANT_MOVE] ){ + return ErrCantMove; + } + else if ( [errorMessage isEqualToString:WRNG_WAY] ){ + return ErrWrng_Way; + } + else if ( [errorMessage isEqualToString:ATTACK_STUNNED] ){ + return ErrAttack_Stunned; + } + else if ( [errorMessage isEqualToString:NOT_YET] ){ + return ErrSpell_Cooldown; + } + else if ( [errorMessage isEqualToString:SPELL_NOT_READY2] ){ + return ErrSpellNot_Ready; + } + else if ( [errorMessage isEqualToString:NOT_RDY2] ){ + return ErrSpellNot_Ready; + } + else if ( [errorMessage isEqualToString:TARGET_RNGE] ){ + return ErrTargetOutRange; + } +// This one is really more for Melee that isn't close enough for melee attack so we don't need to handle it like we do out of range + else if ( [errorMessage isEqualToString:TARGET_RNGE2] ){ + return ErrYouAreTooFarAway; + } + else if ( [errorMessage isEqualToString:INVALID_TARGET] || [errorMessage isEqualToString:CANT_ATTACK_TARGET] ) { + return ErrInvalidTarget; + } + else if ( [errorMessage isEqualToString:CANT_ATTACK_MOUNTED] ){ + return ErrCantAttackMounted; + } + else if ( [errorMessage isEqualToString:YOU_ARE_MOUNTED] ){ + return ErrYouAreMounted; + } + else if ( [errorMessage isEqualToString:TARGET_DEAD] ){ + return ErrTargetDead; + } + else if ( [errorMessage isEqualToString:MORE_POWERFUL_SPELL_ACTIVE] ){ + return ErrMorePowerfullSpellActive; + } + else if ( [errorMessage isEqualToString:HAVE_NO_TARGET] ){ + return ErrHaveNoTarget; + } + else if ( [errorMessage isEqualToString:CANT_DO_THAT_WHILE_STUNNED] ){ + return ErrCantDoThatWhileStunned; + } + else if ( [errorMessage isEqualToString:CANT_DO_THAT_WHILE_SILENCED] ){ + return ErrCantDoThatWhileSilenced; + } + else if ( [errorMessage isEqualToString:CANT_DO_THAT_WHILE_INCAPACITATED] ){ + return ErrCantDoThatWhileIncapacitated; + } + + return ErrNotFound; +} + + +- (void)interactWithMob:(UInt32)entryID { + Mob *mobToInteract = [mobController closestMobForInteraction:entryID]; + + if ([mobToInteract isValid]) { + [self interactWithMouseoverGUID:[mobToInteract cachedGUID]]; + } +} + +- (void)interactWithNode:(UInt32)entryID { + Node *nodeToInteract = [nodeController closestNodeForInteraction:entryID]; + + if([nodeToInteract isValid]) { + [self interactWithMouseoverGUID:[nodeToInteract cachedGUID]]; + } + else{ + log(LOG_GENERAL, @"[Bot] Node %d not found, unable to interact", entryID); + } +} + +// This will set the GUID of the mouseover + trigger interact with mouseover! +- (BOOL)interactWithMouseoverGUID: (UInt64) guid{ + if ( [[controller wowMemoryAccess] saveDataForAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_MOUSEOVER) Buffer: (Byte *)&guid BufLength: sizeof(guid)] ){ + + // wow needs time to process the change + usleep([controller refreshDelay]); + + return [bindingsController executeBindingForKey:BindingInteractMouseover]; + } + + return NO; +} + +// Simply will log us out! +- (void)logOut{ + + if ( [logOutUseHearthstoneCheckbox state] && (_zoneBeforeHearth == -1) ){ + + // Can only use if it's not on CD! + if ( ![spellController isSpellOnCooldown:HearthStoneSpellID] ){ + + _zoneBeforeHearth = [playerController zone]; + // Use our hearth + UInt32 actionID = (USE_ITEM_MASK + HearthstoneItemID); + [self performAction:actionID]; + + // Kill bot + log out + [self performSelector:@selector(logOut) withObject: nil afterDelay:25.0f]; + + return; + } + } + + // The zones *should* be different + if ( [logOutUseHearthstoneCheckbox state] ){ + if ( _zoneBeforeHearth != [playerController zone] ){ + log(LOG_GENERAL, @"[Bot] Hearth successful from zone %d to %d", _zoneBeforeHearth, [playerController zone]); + } + else{ + log(LOG_GENERAL, @"[Bot] Sorry hearth failed for some reason (on CD?), still closing WoW!"); + } + } + + // Reset our variable in case the player fires up wow again later + _zoneBeforeHearth = -1; + + // Stop the bot + [self stopBot: nil]; + usleep(1000000); + + // Kill the process + [controller killWOW]; +} + +// check if units are nearby +- (BOOL)scaryUnitsNearNode: (WoWObject*)node doMob:(BOOL)doMobCheck doFriendy:(BOOL)doFriendlyCheck doHostile:(BOOL)doHostileCheck{ + if ( doMobCheck ){ + log(LOG_DEV, @"Scanning nearby mobs within %0.2f of %@", theCombatProfile.GatherNodesMobNearRange, [node position]); + NSArray *mobs = [mobController mobsWithinDistance: theCombatProfile.GatherNodesMobNearRange MobIDs:nil position:[node position] aliveOnly:YES]; + if ( [mobs count] ){ + log(LOG_NODE, @"There %@ %d scary mob(s) near the node, ignoring %@", ([mobs count] == 1) ? @"is" : @"are", [mobs count], node); + return YES; + } + } + if ( doFriendlyCheck ){ + if ( [playersController playerWithinRangeOfUnit: theCombatProfile.GatherNodesFriendlyPlayerNearRange Unit:(Unit*)node includeFriendly:YES includeHostile:NO] ){ + log(LOG_NODE, @"Friendly player(s) near node, ignoring %@", node); + return YES; + } + } + if ( doHostileCheck ) { + if ( [playersController playerWithinRangeOfUnit: theCombatProfile.GatherNodesHostilePlayerNearRange Unit:(Unit*)node includeFriendly:NO includeHostile:YES] ){ + log(LOG_NODE, @"Hostile player(s) near node, ignoring %@", node); + return YES; + } + } + + return NO; +} + +- (UInt8)isHotKeyInvalid{ + + // We know it's not set if flags are 0 or code is -1 then it's not set! + UInt8 flags = 0; + + // Check start/stop hotkey + KeyCombo combo = [startstopRecorder keyCombo]; + if ( combo.code == -1 ){ + flags |= HotKeyStartStop; + } + + return flags; +} + +- (char*)randomString: (int)maxLength{ + // generate a random string to write + int i, len = SSRandomIntBetween(3,maxLength); + char *string = (char*)malloc(len); + char randomChar = 0; + for (i = 0; i < len; i++) { + while (YES) { + randomChar = SSRandomIntBetween(0,128); + if (((randomChar >= '0') && (randomChar <= '9')) || ((randomChar >= 'a') && (randomChar <= 'z'))) { + string[i] = randomChar; + break; // we found an alphanumeric character, move on + } + } + } + string[i] = '\0'; + + return string; +} + +#pragma mark Waypoint Action stuff + +// set the new combat profile + select it in the dropdown! +- (void)changeCombatProfile:(CombatProfile*)profile{ + + log(LOG_GENERAL, @"[Bot] Switching to combat profile %@", profile); + self.theCombatProfile = profile; + + for ( NSMenuItem *item in [combatProfilePopup itemArray] ){ + if ( [[(CombatProfile*)[item representedObject] name] isEqualToString:[profile name]] ){ + [combatProfilePopup selectItem:item]; + break; + } + } +} + +- (NSString*)isRouteSound: (Route*)route withName:(NSString*)name{ + log(LOG_DEV, @"isRouteSound called for %@", route); + NSMutableString *errorMessage = [NSMutableString string]; + // loop through! + int wpNum = 1; + for ( Waypoint *wp in [route waypoints] ) { + if ( wp.actions && [wp.actions count] ) { + for ( Action *action in wp.actions ) { + + if ( [action type] == ActionType_SwitchRoute ) { + + RouteSet *switchRoute = nil; + NSString *UUID = [action value]; + for ( RouteSet *otherRoute in [waypointController routes] ){ + if ( [UUID isEqualToString:[otherRoute UUID]] ){ + switchRoute = otherRoute; + break; + } + } + + // check this route for issues + if ( switchRoute != nil ){ + [errorMessage appendString:[self isRouteSetSound:switchRoute]]; + } + else{ + [errorMessage appendString:[NSString stringWithFormat:@"Error on route '%@'\r\n\tSwitch route not found on waypoint action %d\r\n", name, wpNum]]; + } + } + + else if ( [action type] == ActionType_CombatProfile ){ + BOOL profileFound = NO; + NSString *UUID = [action value]; + for ( CombatProfile *otherProfile in [profileController combatProfiles] ){ + if ( [UUID isEqualToString:[otherProfile UUID]] ){ + profileFound = YES; + break; + } + } + if ( !profileFound ){ + [errorMessage appendString:[NSString stringWithFormat:@"Error on route '%@'\r\n\tCombat profile not found on waypoint action %d\r\n", name, wpNum]]; + } + } + } + } + + wpNum++; + } + + return errorMessage; +} + +// this will loop through to make sure we actually have the correct routes + profiles! +- (NSString*)isRouteSetSound: (RouteSet*)route{ + + // so we don't get stuck in an infinite loop + if ( [_routesChecked containsObject:[route UUID]] ){ + return [NSString string]; + } + [_routesChecked addObject:[route UUID]]; + + NSMutableString *errorMessage = [NSMutableString string]; + + // verify primary route + Route *primaryRoute = [route routeForKey: PrimaryRoute]; + [errorMessage appendString:[self isRouteSound:primaryRoute withName:[route name]]]; + + // verify corpse route + Route *corpseRunRoute = [route routeForKey: CorpseRunRoute]; + [errorMessage appendString:[self isRouteSound:corpseRunRoute withName:[route name]]]; + + if ( !errorMessage || [errorMessage length] == 0 ){ + return [NSString string]; + } + + return errorMessage; +} + +#pragma mark Testing Shit + +// what is the purpose of this function? Well let me tell you! +// Grab some values from the offset controller, and verify they seem correct +// Nothing is exact, just based on my past experiences +// should move to OffsetController once this is built up enough +- (IBAction)confirmOffsets: (id)sender{ + + + UInt32 offset = 0x0, offset2 = 0x0, offset3 = 0x0, offset4 = 0x0, offset5 = 0x0, offset6 = 0x0; + + // baseAddress + PlayerField_Pointer = player fields! + // 0x131C in 4.0.1 + offset = [offsetController offset:@"PlayerField_Pointer"]; + if ( offset < 0x1000 || offset > 0x2000 ){ + PGLog(@"[OffsetTest] PlayerField_Pointer invalid? 0x%X", offset); + } + + // we just want to make sure they are close to each other (all should be w/in 0x28) + // As of 4.0.1 + // BaseField_Spell_ToCast: 0xB00 + // BaseField_Spell_Casting: 0xB0C + // BaseField_Spell_TimeEnd: 0xB1C + // BaseField_Spell_Channeling: 0xB20 + // BaseField_Spell_ChannelTimeEnd: 0xB24 + // BaseField_Spell_ChannelTimeStart: 0xB28 + offset = [offsetController offset:@"BaseField_Spell_ToCast"]; + offset2 = [offsetController offset:@"BaseField_Spell_Casting"]; + offset3 = [offsetController offset:@"BaseField_Spell_TimeEnd"]; + offset4 = [offsetController offset:@"BaseField_Spell_Channeling"]; + offset5 = [offsetController offset:@"BaseField_Spell_ChannelTimeEnd"]; + offset6 = [offsetController offset:@"BaseField_Spell_ChannelTimeStart"]; + + // this obviously doesn't indicate a problem + PGLog(@"BaseField_Spell_ToCast: 0x%X", offset); + + // BaseField_Spell_ChannelTimeStart + UInt32 result = offset6 - offset; + if ( result > 0x40 || result < 0x0 ){ + PGLog(@"BaseField_Spell_ChannelTimeStart: 0x%X", offset6); + } + + // BaseField_Spell_ChannelTimeEnd + result = offset5 - offset; + if ( result > 0x40 || result < 0x0 ){ + PGLog(@"BaseField_Spell_ChannelTimeEnd: 0x%X", offset5); + } + + // BaseField_Spell_Channeling + result = offset4 - offset; + if ( result > 0x40 || result < 0x0 ){ + PGLog(@"BaseField_Spell_Channeling: 0x%X", offset4); + } + + // BaseField_Spell_TimeEnd + result = offset3 - offset; + if ( result > 0x40 || result < 0x0 ){ + PGLog(@"BaseField_Spell_TimeEnd: 0x%X", offset3); + } + + // BaseField_Spell_Casting + result = offset2 - offset; + if ( result > 0x40 || result < 0x0 ){ + PGLog(@"BaseField_Spell_Casting: 0x%X", offset2); + } + + +} + +- (IBAction)test: (id)sender{ + + NSLog(@"Runes? %d %d %d", [playerController runesAvailable:0], [playerController runesAvailable:1], [playerController runesAvailable:2]); + + NSLog(@"offset: 0x%X", [offsetController offset:@"Lua_GetRuneCount"]); + + NSLog(@"Time: %d", [playerController currentTime]); + + NSLog(@"Eclipse power: %d", [[playerController player] currentPowerOfType: UnitPower_Eclipse]); + + return; + + + /* + + + MemoryAccess *memory = [controller wowMemoryAccess]; + + UInt32 UIBase = 0x0, FirstFrame = 0x0, NextFrame = 0x0;; + [memory loadDataForObject: self atAddress: 0xE9EA00 Buffer: (Byte*)&UIBase BufLength: sizeof(UIBase)]; + [memory loadDataForObject: self atAddress: 0xE9EA00 + 0xCE4 Buffer: (Byte*)&FirstFrame BufLength: sizeof(FirstFrame)]; + [memory loadDataForObject: self atAddress: 0xE9EA00 + 0xCDC Buffer: (Byte*)&NextFrame BufLength: sizeof(NextFrame)]; + + UInt32 Frame = FirstFrame; + + if ( Frame & 1 || !Frame ){ + Frame = 0; + } + + for ( i = 0; !(Frame & 1); + + + v1 = *(_DWORD *)(dword_E9EA00 + 0xCE4); + if ( v1 & 1 || !v1 ) + v1 = 0; + for ( i = 0; !(v1 & 1); v1 = *(_DWORD *)(*(_DWORD *)(dword_E9EA00 + 0xCDC) + v1 + 4) ) + { + if ( !v1 ) + break; + ++i; + } + + */ + + + + + + + + + + SpellDbc spell; + NSLog(@"O rly? %@", databaseManager); + [databaseManager getObjectForRow:34898 withTable:Spell_ withStruct:&spell withStructSize:(size_t)sizeof(spell)]; + + NSLog(@"What did we find? 0x%X", spell.Id); + + + /* + UInt32 address = 0xC2141C; + + float val = 0.0f; + [memory loadDataForObject: self atAddress: address Buffer: (Byte*)&val BufLength: sizeof(val)]; + + NSLog(@"Value: %f", val); + + + val = 0.0f; + int result = [memory saveDataForAddress: address Buffer: (Byte*)&val BufLength: sizeof(val)]; + NSLog(@"fail? %d", result); + NSLog(@"changing to %0.2f!", val); + + [memory loadDataForObject: self atAddress: address Buffer: (Byte*)&val BufLength: sizeof(val)]; + NSLog(@"Value: %f", val); + + return; + + [profileController profilesByClass];*/ + +} + +- (IBAction)test2: (id)sender{ + /* + Position *pos = [[Position alloc] initWithX: -4968.875 Y:-1208.304 Z:501.715]; + Position *playerPosition = [playerController position]; + + log(LOG_GENERAL, @"Distance: %0.2f", [pos distanceToPosition:playerPosition]); + + Position *newPos = [pos positionAtDistance:10.0f withDestination:playerPosition]; + + log(LOG_GENERAL, @"New pos: %@", newPos); + + [movementController setClickToMove:newPos andType:ctmWalkTo andGUID:0x0]; + */ +} + +- (int)CompareFactionHash: (int)hash1 withHash2:(int)hash2{ + if ( hash1 == 0 || hash2 == 0 ) + return -1; + + UInt32 hashCheck1 = 0, hashCheck2 = 0; + UInt32 check1 = 0, check2 = 0; + int hashCompare = 0, hashIndex = 0, i = 0; + //Byte *bHash1[0x40]; + //Byte *bHash2[0x40]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + //[memory loadDataForObject: self atAddress: hash1 Buffer: (Byte*)&bHash1 BufLength: sizeof(bHash1)]; + //[memory loadDataForObject: self atAddress: hash2 Buffer: (Byte*)&bHash2 BufLength: sizeof(bHash2)]; + + // get the hash checks + [memory loadDataForObject: self atAddress: hash1 + 0x4 Buffer: (Byte*)&hashCheck1 BufLength: sizeof(hashCheck1)]; + [memory loadDataForObject: self atAddress: hash2 + 0x4 Buffer: (Byte*)&hashCheck2 BufLength: sizeof(hashCheck2)]; + + //bitwise compare of [bHash1+0x14] and [bHash2+0x0C] + [memory loadDataForObject: self atAddress: hash1 + 0x14 Buffer: (Byte*)&check1 BufLength: sizeof(check1)]; + [memory loadDataForObject: self atAddress: hash2 + 0xC Buffer: (Byte*)&check2 BufLength: sizeof(check2)]; + if ( ( check1 & check2 ) != 0 ) + return 1; // hostile + + hashIndex = 0x18; + [memory loadDataForObject: self atAddress: hash1 + hashIndex Buffer: (Byte*)&hashCompare BufLength: sizeof(hashCompare)]; + if ( hashCompare != 0 ){ + for ( i = 0; i < 4; i++ ){ + if ( hashCompare == hashCheck2 ) + return 1; // hostile + + hashIndex += 4; + [memory loadDataForObject: self atAddress: hash1 + hashIndex Buffer: (Byte*)&hashCompare BufLength: sizeof(hashCompare)]; + + if ( hashCompare == 0 ) + break; + } + } + + //bitwise compare of [bHash1+0x10] and [bHash2+0x0C] + [memory loadDataForObject: self atAddress: hash1 + 0x10 Buffer: (Byte*)&check1 BufLength: sizeof(check1)]; + [memory loadDataForObject: self atAddress: hash2 + 0xC Buffer: (Byte*)&check2 BufLength: sizeof(check2)]; + if ( ( check1 & check2 ) != 0 ){ + log(LOG_GENERAL, @"friendly"); + return 4; // friendly + } + + hashIndex = 0x28; + [memory loadDataForObject: self atAddress: hash1 + hashIndex Buffer: (Byte*)&hashCompare BufLength: sizeof(hashCompare)]; + if ( hashCompare != 0 ){ + for ( i = 0; i < 4; i++ ){ + if ( hashCompare == hashCheck2 ){ + log(LOG_GENERAL, @"friendly2"); + return 4; // friendly + } + + hashIndex += 4; + [memory loadDataForObject: self atAddress: hash1 + hashIndex Buffer: (Byte*)&hashCompare BufLength: sizeof(hashCompare)]; + + if ( hashCompare == 0 ) + break; + } + } + + //bitwise compare of [bHash2+0x10] and [bHash1+0x0C] + [memory loadDataForObject: self atAddress: hash2 + 0x10 Buffer: (Byte*)&check1 BufLength: sizeof(check1)]; + [memory loadDataForObject: self atAddress: hash1 + 0xC Buffer: (Byte*)&check2 BufLength: sizeof(check2)]; + if ( ( check1 & check2 ) != 0 ){ + log(LOG_GENERAL, @"friendly3"); + return 4; // friendly + } + + hashIndex = 0x28; + [memory loadDataForObject: self atAddress: hash2 + hashIndex Buffer: (Byte*)&hashCompare BufLength: sizeof(hashCompare)]; + if ( hashCompare != 0 ){ + for ( i = 0; i < 4; i++ ){ + if ( hashCompare == hashCheck1 ){ + log(LOG_GENERAL, @"friendly4"); + return 4; // friendly + } + + hashIndex += 4; + [memory loadDataForObject: self atAddress: hash2 + hashIndex Buffer: (Byte*)&hashCompare BufLength: sizeof(hashCompare)]; + + if ( hashCompare == 0 ) + break; + } + } + + return 3; //neutral +} + +- (void)startClick{ + + + if ( [playerController isDead] ){ + log(LOG_GENERAL, @"Player died, stopping"); + return; + } + + [macroController useMacro:@"AuctioneerClick"]; + + [self performSelector:@selector(startClick) withObject:nil afterDelay:1.0f]; +} + +- (IBAction)maltby: (id)sender{ + + [self startClick]; +} + +#define ACCOUNT_NAME_SEP @"SET accountName \"" +#define ACCOUNT_LIST_SEP @"SET accountList \"" +/* + + SET accountName "myemail@hotmail.com" + SET accountList "!ACCOUNT1|ACCOUNT2|" + */ +- (IBAction)login: (id)sender{ + //LOGIN_STATE this will be "login", "charselect", or "charcreate" + // note: it will stay in it's last state even if we are logged in + running around! + + //LOGIN_SELECTED_CHAR - we want to write the position to memory, the chosen won't change on screen, but it will log into that char! + // values: 0-max + + //LOGIN_TOTAL_CHARACTERS - obviously the total number of characters on the selection screen + + NSString *account = @"MyBNETAccount12312"; + NSString *password = @"My1337Password"; + NSString *accountList = @"!Accoun23t1|Accoun1t2|"; + + + + // ***** GET THE PATH TO OUR CONFIG FILE + NSString *configFilePath = [controller wowPath]; + // will be the case if wow is closed (lets go with the default option?) + if ( [configFilePath length] == 0 ){ + [configFilePath release]; configFilePath = nil; + configFilePath = @"/Applications/World of Warcraft/WTF/Config.wtf"; + } + // we have a dir + else{ + configFilePath = [configFilePath stringByDeletingLastPathComponent]; + configFilePath = [configFilePath stringByAppendingPathComponent: @"WTF/Config.wtf"]; + } + + + // ***** GET OUR CONFIG FILE DATA + BACK IT UP! + NSString *configData = [[NSString alloc] initWithContentsOfFile:configFilePath]; + NSMutableString *newConfigFile = [NSMutableString string]; + NSMutableString *configFileBackup = [NSString stringWithFormat:@"%@.bak", configFilePath]; + + NSFileManager *fileManager = [NSFileManager defaultManager]; + if ( ![fileManager fileExistsAtPath:configFilePath] || [configData length] == 0 ){ + log(LOG_GENERAL, @"[Bot] Unable to find config file at path '%@'. Aborting.", configFilePath); + return; + } + // should we create a backup file? + if ( ![fileManager fileExistsAtPath:configFileBackup] ){ + if ( ![configData writeToFile:configFileBackup atomically:YES encoding:NSUnicodeStringEncoding error:nil] ){ + log(LOG_GENERAL, @"[Bot] Unable to backup existing config file to '%@'. Aborting", configFileBackup); + return; + } + } + + // if we get here we have a config file! And have backed it up! + + + // Three conditions for information in this file: + // 1. Account list and Account name are set + // 2. Account list is set (when remember checkbox was once checked, but is no longer) + // 3. Neither exist in config file + if ( configData != nil ){ + + NSScanner *scanner = [NSScanner scannerWithString: configData]; + + BOOL accountNameFound = NO; + BOOL accountListFound = NO; + NSString *beforeAccountName = nil; + NSString *beforeAccountList = nil; + + // get the account name? + int scanSave = [scanner scanLocation]; + log(LOG_GENERAL, @"Location: %d", [scanner scanLocation]); + if([scanner scanUpToString: ACCOUNT_NAME_SEP intoString: &beforeAccountName] && [scanner scanString: ACCOUNT_NAME_SEP intoString: nil]) { + NSString *newName = nil; + if ( [scanner scanUpToString: @"\"" intoString: &newName] && newName && [newName length] ) { + //log(LOG_GENERAL, @"Account name: %@", newName); + accountNameFound = YES; + } + } + + // if the user doesn't have "remember" checked, the above search will fail, so lets reset to find the account list! (maybe?) + if ( !accountNameFound ){ + [scanner setScanLocation: scanSave]; + } + + // get the account list + scanSave = [scanner scanLocation]; + log(LOG_GENERAL, @"Location: %d %d", [scanner scanLocation], [beforeAccountName length]); + if ( [scanner scanUpToString: ACCOUNT_LIST_SEP intoString: &beforeAccountList] && [scanner scanString: ACCOUNT_LIST_SEP intoString: nil] ) { + NSString *newName = nil; + if ( [scanner scanUpToString: @"\"" intoString: &newName] && newName && [newName length] ) { + //log(LOG_GENERAL, @"Account list: %@", newName); + accountListFound = YES; + } + } + + // reset the location, in case we have info after our login info + can add it back to the config file! + if ( !accountListFound ){ + [scanner setScanLocation: scanSave]; + } + log(LOG_GENERAL, @"Location: %d %d", [scanner scanLocation], [beforeAccountList length]); + // save what we have left in the scanner! There could be config data after our account name! + NSString *endOfConfigFileData = [[scanner string]substringFromIndex:[scanner scanLocation]]; + + // condition 1: we have an existing account! we need to replace it (and potentially an account list to add) + if ( accountNameFound ){ + // add our new account name + [newConfigFile appendString:beforeAccountName]; + [newConfigFile appendString:ACCOUNT_NAME_SEP]; + [newConfigFile appendString:account]; + [newConfigFile appendString:@"\""]; + + // did we also have an account list to replace? + if ( [accountList length] ){ + [newConfigFile appendString:@"\n"]; + [newConfigFile appendString:ACCOUNT_LIST_SEP]; + [newConfigFile appendString:accountList]; + [newConfigFile appendString:@"\""]; + } + } + + // condition 2: only the account list was found, add the account name + potentially replace the account list + else if ( accountListFound ){ + [newConfigFile appendString:beforeAccountList]; + [newConfigFile appendString:ACCOUNT_NAME_SEP]; + [newConfigFile appendString:account]; + [newConfigFile appendString:@"\""]; + + if ( [accountList length] ){ + [newConfigFile appendString:@"\n"]; + [newConfigFile appendString:ACCOUNT_LIST_SEP]; + [newConfigFile appendString:accountList]; + [newConfigFile appendString:@"\""]; + } + } + + // condition 3: nothing was found + else{ + [newConfigFile appendString:beforeAccountList]; + [newConfigFile appendString:ACCOUNT_NAME_SEP]; + [newConfigFile appendString:account]; + [newConfigFile appendString:@"\""]; + + if ( [accountList length] ){ + [newConfigFile appendString:@"\n"]; + [newConfigFile appendString:ACCOUNT_LIST_SEP]; + [newConfigFile appendString:accountList]; + [newConfigFile appendString:@"\""]; + } + } + + // only add data if we found an account name or list! + if ( ( accountListFound || accountNameFound ) && [endOfConfigFileData length] ){ + [newConfigFile appendString:endOfConfigFileData]; + } + + } + + // write our new config file! + [newConfigFile writeToFile:configFileBackup atomically:YES encoding:NSUnicodeStringEncoding error:nil]; + log(LOG_GENERAL, @"[Bot] New config file written to '%@'", configFilePath); + + // make sure wow is open + if ( [controller isWoWOpen] ){ + + [chatController sendKeySequence:account]; + usleep(50000); + [chatController sendKeySequence:password]; + + } +} + +#pragma Testing/Development Info (Generally Reversing) + +@end diff --git a/CGKeyCodeMap.plist b/CGKeyCodeMap.plist new file mode 100644 index 0000000..c334699 --- /dev/null +++ b/CGKeyCodeMap.plist @@ -0,0 +1,236 @@ + + + + + + 49 + ' + 39 + , + 43 + - + 27 + . + 47 + / + 44 + 0 + 29 + 1 + 18 + 2 + 19 + 3 + 20 + 4 + 21 + 5 + 23 + 6 + 22 + 7 + 26 + 8 + 28 + 9 + 25 + ; + 41 + = + 24 + ! + 18 + @ + 19 + # + 20 + $ + 21 + % + 23 + ^ + 22 + * + 28 + ( + 25 + ) + 29 + Arrow + + DELETE + 117 + DOWN + 125 + END + 119 + HELP + 114 + HOME + 115 + LEFT + 123 + PAGEDOWN + 121 + PAGEUP + 116 + RIGHT + 124 + UP + 126 + + FKeys + + 1 + 122 + 10 + 109 + 11 + 103 + 12 + 111 + 13 + 105 + 14 + 107 + 15 + 113 + 2 + 120 + 3 + 99 + 4 + 119 + 5 + 96 + 6 + 97 + 7 + 99 + 8 + 100 + 9 + 101 + + Numpad + + * + 67 + + + 69 + - + 78 + . + 65 + / + 75 + 0 + 82 + 1 + 83 + 2 + 84 + 3 + 85 + 4 + 86 + 5 + 87 + 6 + 88 + 7 + 89 + 8 + 91 + 9 + 92 + = + 81 + CLEAR + 71 + ENTER + 76 + + Special + + CAPSLOCK + 57 + COMMAND + 55 + CONTROL + 59 + DELETE + 51 + ESCAPE + 53 + OPTION + 58 + RETURN + 36 + SHIFT + 56 + TAB + 48 + + [ + 33 + \ + 42 + \r + 36 + ] + 30 + a + 0 + b + 11 + c + 8 + d + 2 + e + 14 + f + 3 + g + 5 + h + 4 + i + 34 + j + 38 + k + 40 + l + 37 + m + 46 + n + 45 + o + 31 + p + 35 + q + 12 + r + 15 + s + 1 + t + 17 + u + 32 + v + 9 + w + 13 + x + 7 + y + 16 + z + 6 + + diff --git a/CGSPrivate.h b/CGSPrivate.h new file mode 100644 index 0000000..c8dae9e --- /dev/null +++ b/CGSPrivate.h @@ -0,0 +1,196 @@ +/* CGSPrivate.h -- Header file for undocumented CoreGraphics stuff. */ + +#include + +/* These functions all return a status code. Typical CoreGraphics replies are: +kCGErrorSuccess = 0, +kCGErrorFirst = 1000, +kCGErrorFailure = kCGErrorFirst, +kCGErrorIllegalArgument = 1001, +kCGErrorInvalidConnection = 1002, +*/ + +// Internal CoreGraphics typedefs +typedef int CGSConnection; +typedef int CGSWindow; +typedef int CGSValue; +typedef int CGSWindowID; +//typedef void *CGSConnectionID; + +//// CONSTANTS //// + +/* Window ordering mode. */ +typedef enum _CGSWindowOrderingMode { + kCGSOrderAbove = 1, // Window is ordered above target. + kCGSOrderBelow = -1, // Window is ordered below target. + kCGSOrderOut = 0 // Window is removed from the on-screen window list. +} CGSWindowOrderingMode; + +// Internal CoreGraphics functions. + +/* Retrieve the workspace number associated with the workspace currently + * being shown. + * + * cid -- Current connection. + * workspace -- Pointer to int value to be set to workspace number. + */ +extern OSStatus CGSGetWorkspace(const CGSConnection cid, int *workspace); + +/* Retrieve workspace number associated with the workspace a particular window + * resides on. + * + * cid -- Current connection. + * wid -- Window number of window to examine. + * workspace -- Pointer to int value to be set to workspace number. + */ +extern OSStatus CGSGetWindowWorkspace(const CGSConnection cid, const CGSWindow wid, int *workspace); + +/* Show workspace associated with a workspace number. + * + * cid -- Current connection. + * workspace -- Workspace number. + */ +extern OSStatus CGSSetWorkspace(const CGSConnection cid, int workspace); + +// Transitions we can apply +typedef enum { + CGSNone = 0, // No transition effect. + CGSFade, // Cross-fade. + CGSZoom, // Zoom/fade towards us. + CGSReveal, // Reveal new desktop under old. + CGSSlide, // Slide old out and new in. + CGSWarpFade, // Warp old and fade out revealing new. + CGSSwap, // Swap desktops over graphically. + CGSCube, // The well-known cube effect. + CGSWarpSwitch, // Warp old, switch and un-warp. + CGSFlip // Flip over +} CGSTransitionType; + +// All our transition styles - passed under "option" when invoking +// Mostly just directions +// Transparent Mask "(1<<7)" goes with option if applied. +typedef enum { + CGSDown, // Old desktop moves down. + CGSLeft, // Old desktop moves left. + CGSRight, // Old desktop moves right. + CGSInRight, // CGSSwap: Old desktop moves into screen, + // new comes from right. + CGSBottomLeft = 5, // CGSSwap: Old desktop moves to bottom-left, + // new comes from top-right. + CGSBottomRight, // Old desktop to br, New from tl. + CGSDownTopRight, // CGSSwap: Old desktop moves down, new from tr. + CGSUp, // Old desktop moves up. + CGSTopLeft, // Old desktop moves tl. + CGSTopRight, // CGSSwap: old to tr. new from bl. + CGSUpBottomRight, // CGSSwap: old desktop up, new from br. + CGSInBottom, // CGSSwap: old in, new from bottom. + CGSLeftBottomRight, // CGSSwap: old one moves left, new from br. + CGSRightBottomLeft, // CGSSwap: old one moves right, new from bl. + CGSInBottomRight, // CGSSwap: onl one in, new from br. + CGSInOut // CGSSwap: old in, new out. +} CGSTransitionOption; + +typedef struct CGPointWarp { + CGPoint local; + CGPoint global; +}CGPointWarp; + +/* Get the default connection for the current process. */ +extern CGSConnection _CGSDefaultConnection(void); + +// Behaviour of window during expose / regarding workspaces +typedef enum { + CGSTagNone = 0, // No tags + CGSTagExposeFade = 0x0002, // Fade out when Expose activates. + CGSTagNoShadow = 0x0008, // No window shadow. + CGSTagTransparent = 0x0200, // Transparent to mouse clicks. + CGSTagSticky = 0x0800, // Appears on all workspaces. +} CGSWindowTag; + +extern OSStatus CGSSetWorkspaceWithTransition(const CGSConnection cid, + int workspaceNumber, CGSTransitionType transition, CGSTransitionOption subtype, + float time); + +typedef struct { + uint32_t unknown1; + CGSTransitionType type; + CGSTransitionOption option; + CGSWindow wid; /* Can be 0 for full-screen */ + float *backColour; /* Null for black otherwise pointer to 3 float array with RGB value */ +} CGSTransitionSpec; + +/* Transition handling. */ +extern OSStatus CGSNewTransition(const CGSConnection cid, const CGSTransitionSpec* spec, int *pTransitionHandle); +extern OSStatus CGSInvokeTransition(const CGSConnection cid, int transitionHandle, float duration); +extern OSStatus CGSReleaseTransition(const CGSConnection cid, int transitionHandle); + +// window warping +extern CGError CGSSetWindowWarp(const CGSConnection cid, const CGSWindow wid, int w, int h, CGPointWarp mesh[w][h]); + +// thirtyTwo must = 32 for some reason. tags is pointer to +//array ot ints (size 2?). First entry holds window tags. +// 0x0800 is sticky bit. +extern OSStatus CGSGetWindowTags(const CGSConnection cid, const CGSWindow wid, CGSWindowTag *tags, int thirtyTwo); +extern OSStatus CGSSetWindowTags(const CGSConnection cid, const CGSWindow wid, CGSWindowTag *tags, int thirtyTwo); +extern OSStatus CGSClearWindowTags(const CGSConnection cid, const CGSWindow wid, CGSWindowTag *tags, int thirtyTwo); +extern OSStatus CGSGetWindowEventMask(const CGSConnection cid, const CGSWindow wid, uint32_t *mask); +extern OSStatus CGSSetWindowEventMask(const CGSConnection cid, const CGSWindow wid, uint32_t mask); + +// Gets the screen rect for a window. +extern OSStatus CGSGetScreenRectForWindow(const CGSConnection cid, CGSWindow wid, CGRect *outRect); +extern OSStatus CGSGetWindowBounds(const CGSConnection cid, const CGSWindow wid, CGRect *ret); + +// some other window functions +//extern int CGSCaptureWindowsContentsToRect(const CGSConnection cid, CGRect rect, const CGSWindow wid, int zero); /* i made this line up, its totally wrong */ +extern void CGContextCopyWindowCaptureContentsToRect(void *grafport, CGRect rect, const CGSConnection cid, const CGSWindow wid, int zero); +extern OSStatus CGSFindWindowByGeometry(const CGSConnection cid, int zero, int one, int zero_again, CGPoint *screen_point, CGPoint *window_coords_out, CGSWindow *wid_out, CGSConnection *cid_out); + +// Window appearance/position +extern OSStatus CGSSetWindowAlpha(const CGSConnection cid, const CGSWindow wid, float alpha); +extern OSStatus CGSSetWindowListAlpha(const CGSConnection cid, CGSWindow *wids, int count, float alpha); +extern OSStatus CGSGetWindowAlpha(const CGSConnection cid, const CGSWindow wid, float* alpha); +extern OSStatus CGSMoveWindow(const CGSConnection cid, const CGSWindow wid, CGPoint *point); +extern OSStatus CGSSetWindowTransform(const CGSConnection cid, const CGSWindow wid, CGAffineTransform transform); +extern OSStatus CGSGetWindowTransform(const CGSConnection cid, const CGSWindow wid, CGAffineTransform * outTransform); +extern OSStatus CGSSetWindowTransforms(const CGSConnection cid, CGSWindow *wids, CGAffineTransform *transform, int n); + +// gets connectionID for given process serial number +extern CGError CGSGetConnectionIDForPSN(UInt32 inParam1, ProcessSerialNumber* inPSN, CGSConnection* outConnectionID); + +// Get on-screen window counts and lists. +extern OSStatus CGSGetWindowCount(const CGSConnection cid, CGSConnection targetCID, int* outCount); +extern OSStatus CGSGetWindowList(const CGSConnection cid, CGSConnection targetCID, int listSize, int* list, int* numberOfWindows); + +// Get on-screen window counts and lists. +extern OSStatus CGSGetOnScreenWindowCount(const CGSConnection cid, CGSConnection targetCID, int* outCount); +extern OSStatus CGSGetOnScreenWindowList(const CGSConnection cid, CGSConnection targetCID, int count, int* list, int* outCount); + +// Per-workspace window counts and lists. +extern OSStatus CGSGetWorkspaceWindowCount(const CGSConnection cid, int workspaceNumber, int *outCount); +extern OSStatus CGSGetWorkspaceWindowList(const CGSConnection cid, int workspaceNumber, int count, + int* list, int* outCount); + +// Gets the level of a window +extern OSStatus CGSGetWindowLevel(const CGSConnection cid, CGSWindow wid, int *level); + +// Window ordering +extern OSStatus CGSOrderWindow(const CGSConnection cid, const CGSWindow wid, CGSWindowOrderingMode place, CGSWindow relativeToWindowID /* can be NULL */); + +extern OSStatus CGSMoveWorkspaceWindows(const CGSConnection connection, int toWorkspace, int fromWorkspace); +extern OSStatus CGSMoveWorkspaceWindowList(const CGSConnection connection, CGSWindow *wids, int count, + int toWorkspace); + +extern OSStatus CGSGetWindowProperty(const CGSConnection cid, CGSWindow wid, CGSValue key, + CGSValue *outValue); + +extern OSStatus CGSUncoverWindow(const CGSConnection cid, const CGSWindow wid); +extern OSStatus CGSFlushWindow(const CGSConnection cid, const CGSWindow wid, int unknown /* 0 works */ ); + +extern OSStatus CGSGetWindowOwner(const CGSConnection cid, const CGSWindow wid, CGSConnection *ownerCid); +extern OSStatus CGSConnectionGetPID(const CGSConnection cid, pid_t *pid, const CGSConnection ownerCid); + +// Values +//extern CGSValue CGSCreateCStringNoCopy(const char *str); // gone in leopard +extern char* CGSCStringValue(CGSValue string); +extern int CGSIntegerValue(CGSValue intVal); +extern void *CGSReleaseGenericObj(CGSValue value); /* was void* */ \ No newline at end of file diff --git a/ChatAction.h b/ChatAction.h new file mode 100644 index 0000000..2d64c18 --- /dev/null +++ b/ChatAction.h @@ -0,0 +1,38 @@ +// +// ChatAction.h +// Pocket Gnome +// +// Created by Jon Drummond on 4/5/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +// THIS CLASS IS IN NO WAY READY FOR ANYTHING. + +#import + + +@interface ChatAction : NSObject { + NSString *_name; + NSPredicate *_predicate; + BOOL _actionStopBot, _actionStartBot; + BOOL _actionQuit, _actionHearth; + BOOL _actionEmail, _actionIM; + NSString *_emailAddress, *_imName; +} + ++ (ChatAction*)chatActionWithName: (NSString*)name; + +@property (readwrite, retain) NSString *name; +@property (readwrite, retain) NSPredicate *predicate; + +@property (readwrite, assign) BOOL actionStopBot; +@property (readwrite, assign) BOOL actionHearth; +@property (readwrite, assign) BOOL actionQuit; +@property (readwrite, assign) BOOL actionStartBot; +@property (readwrite, assign) BOOL actionEmail; +@property (readwrite, assign) BOOL actionIM; + +@property (readwrite, retain) NSString *emailAddress; +@property (readwrite, retain) NSString *imName; + +@end diff --git a/ChatAction.m b/ChatAction.m new file mode 100644 index 0000000..e2422f8 --- /dev/null +++ b/ChatAction.m @@ -0,0 +1,86 @@ +// +// ChatAction.m +// Pocket Gnome +// +// Created by Jon Drummond on 4/5/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "ChatAction.h" + + +@implementation ChatAction + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.name = nil; + self.predicate = nil; + self.emailAddress = nil; + self.imName = nil; + } + return self; +} + +- (void) dealloc +{ + self.name = nil; + self.predicate = nil; + self.emailAddress = nil; + self.imName = nil; + [super dealloc]; +} + ++ (ChatAction*)chatActionWithName: (NSString*)name { + ChatAction *newAction = [[ChatAction alloc] init]; + newAction.name = name; + return [newAction autorelease]; +} + +- (id)copyWithZone: (NSZone*)zone { + ChatAction *newAction = [[ChatAction alloc] init]; + newAction.name = self.name; + newAction.predicate = self.predicate; + newAction.actionStopBot = self.actionStopBot; + newAction.actionStartBot = self.actionStartBot; + newAction.actionHearth = self.actionHearth; + newAction.actionQuit = self.actionQuit; + newAction.actionEmail = self.actionEmail; + newAction.actionIM = self.actionIM; + newAction.emailAddress = self.emailAddress; + newAction.imName = self.imName; + return newAction; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if(self) { + self.name = [decoder decodeObjectForKey: @"Name"]; + self.predicate = [decoder decodeObjectForKey: @"Predicate"]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.name forKey: @"Name"]; + [coder encodeObject: self.predicate forKey: @"Predicate"]; +} + + +@synthesize name = _name; +@synthesize predicate = _predicate; +@synthesize actionStopBot = _actionStopBot; +@synthesize actionHearth = _actionHearth; +@synthesize actionQuit = _actionQuit; +@synthesize actionStartBot = _actionStartBot; +@synthesize actionEmail = _actionEmail; +@synthesize actionIM = _actionIM; + +@synthesize emailAddress = _emailAddress; +@synthesize imName = _imName; + + +@end diff --git a/ChatController.h b/ChatController.h new file mode 100644 index 0000000..7b637a2 --- /dev/null +++ b/ChatController.h @@ -0,0 +1,32 @@ +// +// ChatController.h +// Pocket Gnome +// +// Created by Jon Drummond on 4/28/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; + +@interface ChatController : NSObject { + IBOutlet Controller *controller; + + CGEventSourceRef theSource; +} + +- (CGEventSourceRef)source; + +- (void)tab; +- (void)enter; + +- (void)jump; + +- (void)sendKeySequence: (NSString*)keySequence; +- (int)keyCodeForCharacter: (NSString*)character; + +- (void)pressHotkey: (int)hotkey withModifier: (unsigned int)modifier; + + +@end diff --git a/ChatController.m b/ChatController.m new file mode 100644 index 0000000..48ccc32 --- /dev/null +++ b/ChatController.m @@ -0,0 +1,363 @@ +// +// ChatController.m +// Pocket Gnome +// +// Created by Jon Drummond on 4/28/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import + +#import "ChatController.h" +#import "Controller.h" + +@interface ChatController (Internal) +- (CGEventSourceRef)source; +BOOL Ascii2Virtual(char pcar, BOOL *pshift, BOOL *palt, char *pkeycode); +@end + +@implementation ChatController + + + +- (id) init +{ + self = [super init]; + if (self != nil) { + theSource = NULL; + } + return self; +} + +- (CGEventSourceRef)source { + if(theSource == NULL) { + theSource = CGEventSourceCreate(kCGEventSourceStateHIDSystemState); + if(theSource) { + CGEventSourceSetKeyboardType(theSource, LMGetKbdType()); + CGEventSourceSetLocalEventsSuppressionInterval(theSource, 0.0); + CGEventSourceSetLocalEventsFilterDuringSuppressionState(theSource, kCGEventFilterMaskPermitLocalMouseEvents, kCGEventSuppressionStateSuppressionInterval); + } + } + return theSource; +} + +- (void)tab { + [self sendKeySequence: [NSString stringWithFormat: @"%c", '\t']]; +} + +- (void)enter { + [self sendKeySequence: [NSString stringWithFormat: @"%c", '\n']]; +} + +- (void)jump { + [self sendKeySequence: @" "]; +} + +BOOL Ascii2Virtual(char pcar, BOOL *pshift, BOOL *palt, char *pkeycode) +{ + KeyboardLayoutRef keyboard; + const void *keyboardData; // keyboard layout data + UInt16 nbblocs; + char *modblocs, *blocs, *deadkeys; + int ix, ifin, numbloc, keycode; + + BOOL shift, alt; + + // récupération du clavier courant + // get the current keyboard + if(KLGetCurrentKeyboardLayout(&keyboard)) return NO; + + // récupération de la description (keyboard layout) du clavier courant + // get the description of the current keyboard layout + if(KLGetKeyboardLayoutProperty(keyboard, kKLKCHRData, &keyboardData)) return NO; + + // récupération du pointeur de début des numéros de blocs pour chaque combinaison de modifiers + // get pointer early numbers of blocks for each combination of modifiers + modblocs = ((char *)keyboardData) + 2; + + // récupération de nombre de blocs keycode->ascii + // get number of blocks keycode->ascii + nbblocs = *((UInt16 *)(keyboardData + 258)); + + // récupération du pointeur de début des blocs keycode->ascii + // get pointer early blocks keycode-> ascii + blocs = ((char *)keyboardData) + 260; + + // on détermine la taille de toutes les tables keycode->ascii à scanner + // determining the size of all tables keycode-> ascii a scanner + ifin = nbblocs*128; + + // on détermine le pointeur de début de la tables des dead keys + // determining pointer early in the tables of dead keys + deadkeys = blocs+ifin; + + // maintenant on parcourt les blocs keycode->ascii pour retrouver le car ascii + // Now it runs blocks keycode-> ascii to find the car ascii + for (ix=0; ix> 7; + // log(LOG_DEV, @"Found ascii at %d; block = %d, keycode = %d", ix, numbloc, keycode); + break; + } + } + + // car non trouvé : on termine (avec erreur) + // not found: bail out (error) + if (ix >= ifin) return NO; + + // à partir du numéro de bloc, il faut retrouver la combinaison de modifiers utilisant ce bloc + // from block number, we must find the combination of modifiers using this block + for (ix=0; ix<15; ix++) + { + // on ne traite pas si les modifiers ne sont pas "majuscule" et "option" + // it does not address whether the modifiers are not "capital" and "option" + if (ix&1 || ix&4) continue; + + // combinaison de modifiers trouvée pour le bloc + // Combining modifiers found for the block + if (modblocs[ix]==numbloc) + { + shift = (ix&2) ? YES : NO; + alt = (ix&8) ? YES : NO; + break; + } + } + + // combinaison modifiers non trouvé : on termine (avec erreur) + // combination modifiers not found: bail + if (ix>=15) return NO; + + // mise à jour des paramètres + // save our parameters + *pkeycode=keycode; + *pshift=shift; + *palt=alt; + + return YES; +} + + +- (int)keyCodeForCharacter: (NSString*)character { + if(![character length]) return -1; + + char code; + BOOL shift, alt; + if(Ascii2Virtual( (char)[character characterAtIndex: 0], &shift, &alt, &code)) { + return code; + } + return -1; +} + +- (void)sendKeySequence:(NSString*)keySequence { + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + if(wowPSN.lowLongOfPSN == kNoProcess && wowPSN.highLongOfPSN == kNoProcess) { + return; + } + + log(LOG_DEV, @"[Chat] Sending '%@'", keySequence); + + // get our C string from the NSString + int strLen = [keySequence length]; + unichar buffer[strLen+1]; + [keySequence getCharacters: buffer]; + log(LOG_DEV, @"Sequence \"%@\" has %d characters.", keySequence, strLen); + + // create the event source + CGEventRef tempEvent = CGEventCreate(NULL); + if(tempEvent) CFRelease(tempEvent); + CGEventSourceRef source = [self source]; + if(source) { + + // start looping over the characters + unsigned i; + char keyCode; + BOOL shift, option; + + for(i=0; i= 0) { + log(LOG_DEV, @"%d (shift: %d)", keyCode, shift); + + // create key events + CGEventRef keyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)keyCode, TRUE); + CGEventRef keyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)keyCode, FALSE); + + // setup flags + int flags = 0; + flags = flags | (option ? kCGEventFlagMaskAlternate : 0); + flags = flags | (shift ? kCGEventFlagMaskShift : 0); + + // set flags + CGEventSetFlags(keyDn, flags); + CGEventSetFlags(keyUp, flags); + + // hit any specified modifier keys + if( option ) { + CGEventRef altKeyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Option, TRUE); + CGEventPostToPSN(&wowPSN, altKeyDn); + if(altKeyDn) CFRelease(altKeyDn); + usleep(10000); + } + if( shift ) { + CGEventRef sftKeyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Shift, TRUE); + CGEventPostToPSN(&wowPSN, sftKeyDn); + if(sftKeyDn) CFRelease(sftKeyDn); + usleep(10000); + } + + // delay before we hit return + if(keyCode == kVK_Return) { + usleep(100000); + } + + // post the key + CGEventPostToPSN(&wowPSN, keyDn); + usleep(30000); + CGEventPostToPSN(&wowPSN, keyUp); + + // delay if this was the first character typed + if(i == 0) { + usleep(100000); + } + + // undo modifiers keys + if( shift) { + CGEventRef sftKeyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Shift, FALSE); + CGEventPostToPSN(&wowPSN, sftKeyUp); + if(sftKeyUp) CFRelease(sftKeyUp); + usleep(10000); + } + if( option ) { + CGEventRef altKeyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Option, FALSE); + CGEventPostToPSN(&wowPSN, altKeyUp); + if(altKeyUp) CFRelease(altKeyUp); + usleep(10000); + } + + // release keys + if(keyDn) CFRelease(keyDn); + if(keyUp) CFRelease(keyUp); + } + } + + // release source + //CFRelease(source); + } + + return; +} + +- (void)pressHotkey: (int)hotkey withModifier: (unsigned int)modifier { + if((hotkey < 0) || (hotkey > 128)) return; + //if(modifier < 0 || modifier > 3) return; + + log(LOG_DEV, @"[Chat] Pressing %d with flags 0x%X", hotkey, modifier); + + unsigned int flags = modifier; + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + if(wowPSN.lowLongOfPSN == kNoProcess && wowPSN.highLongOfPSN == kNoProcess) return; + + CGEventRef tempEvent = CGEventCreate(NULL); + if(tempEvent) CFRelease(tempEvent); + + // create the key down.up + CGEventRef keyDn = NULL, keyUp = NULL; + + // create our source + CGEventSourceRef source = [self source]; + if(source) { + + // KLGetCurrentKeyboardLayout? + // TISCopyCurrentKeyboardLayoutInputSource? + + keyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)hotkey, TRUE); + keyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)hotkey, FALSE); + + // set flags for the event (does this even matter? No.) + CGEventSetFlags(keyDn, modifier); + CGEventSetFlags(keyUp, modifier); + + // hit any specified modifier keys + if( flags & NSAlternateKeyMask) { + CGEventRef altKeyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Option, TRUE); + if(altKeyDn) { + CGEventPostToPSN(&wowPSN, altKeyDn); + CFRelease(altKeyDn); + usleep(10000); + } + } + if( flags & NSShiftKeyMask) { + CGEventRef sftKeyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Shift, TRUE); + if(sftKeyDn) { + CGEventPostToPSN(&wowPSN, sftKeyDn); + CFRelease(sftKeyDn); + usleep(10000); + } + } + if( flags & NSControlKeyMask) { + CGEventRef ctlKeyDn = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Control, TRUE); + if(ctlKeyDn) { + CGEventPostToPSN(&wowPSN, ctlKeyDn); + CFRelease(ctlKeyDn); + usleep(10000); + } + } + + // post the actual event + CGEventPostToPSN(&wowPSN, keyDn); + usleep(30000); + CGEventPostToPSN(&wowPSN, keyUp); + usleep(10000); + + // undo the modifier keys + if( flags & NSControlKeyMask) { + CGEventRef ctlKeyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Control, FALSE); + if(ctlKeyUp) { + CGEventPostToPSN(&wowPSN, ctlKeyUp); + CFRelease(ctlKeyUp); + usleep(10000); + } + } + if( flags & NSShiftKeyMask) { + CGEventRef sftKeyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Shift, false); + if(sftKeyUp) { + CGEventPostToPSN(&wowPSN, sftKeyUp); + CFRelease(sftKeyUp); + usleep(10000); + } + } + if( flags & NSAlternateKeyMask) { + CGEventRef altKeyUp = CGEventCreateKeyboardEvent(source, (CGKeyCode)kVK_Option, FALSE); + if(altKeyUp) { + CGEventPostToPSN(&wowPSN, altKeyUp); + CFRelease(altKeyUp); + usleep(10000); + } + } + + if(keyDn) CFRelease(keyDn); + if(keyUp) CFRelease(keyUp); + // CFRelease(source); + } else { + log(LOG_GENERAL, @"invalid source with hotkey %d", hotkey); + } +} + + +@end diff --git a/ChatLog.xib b/ChatLog.xib new file mode 100644 index 0000000..b0c3c11 --- /dev/null +++ b/ChatLog.xib @@ -0,0 +1,8736 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + ChatLogController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 10 + + YES + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {665, 114} + + YES + + + -2147483392 + {{-26, 0}, {16, 17}} + + + YES + + 662 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Chat + + LucidaGrande + 11 + 3100 + + + 6 + System + headerColor + + 3 + MQA + + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337772096 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 1 + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + 448790528 + + + 2 + 4 + 15 + 0 + YES + 0 + + + {{1, 1}, {665, 114}} + + + + + 4 + + + + -2147483392 + {{556, 1}, {15, 289}} + + + _doScroller: + 0.990228 + + + + -2147483392 + {{1, 290}, {555, 15}} + + 1 + + _doScroller: + 0.99811669999999997 + + + {{18, 14}, {667, 116}} + + + 562 + + + + QSAAAEEgAABBmAAAQZgAAA + + + {{1, 1}, {703, 140}} + + + + {{18, 16}, {705, 156}} + + {0, 0} + + 67239424 + 0 + Whispers + + + 6 + System + textBackgroundColor + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {665, 179} + + YES + + + -2147483392 + {{-26, 0}, {16, 17}} + + + YES + + 662 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Chat + + + + + + 337772096 + 2048 + Text Cell + + + + + + 1 + YES + + + + 3 + 2 + + + 17 + 448790528 + + + 2 + 4 + 15 + 0 + YES + 0 + + + {{1, 1}, {665, 179}} + + + + + 4 + + + + -2147483392 + {{556, 1}, {15, 289}} + + + _doScroller: + 0.990228 + + + + -2147483392 + {{1, 290}, {555, 15}} + + 1 + + _doScroller: + 0.99811669999999997 + + + {{18, 14}, {667, 181}} + + + 562 + + + + QSAAAEEgAABBmAAAQZgAAA + + + {{1, 1}, {703, 205}} + + + + {{17, 176}, {705, 221}} + + {0, 0} + + 67239424 + 0 + All Chat + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{15, 4}, {145, 19}} + + YES + + 67239424 + 134217728 + Relay Chat Logs... + + LucidaGrande + 12 + 16 + + + -2034482945 + 173 + + NSImage + PetitionGossipIcon + + + + 400 + 75 + + + + + 265 + {{613, 6}, {106, 17}} + + YES + + 68288064 + 71304192 + Relay is Enabled + + + + 6 + System + controlColor + + + + + + + + 265 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{596, 5}, {16, 16}} + + YES + + 130560 + 33554432 + + NSImage + on + + 0 + 0 + 0 + YES + + YES + + + {{1, 1}, {739, 30}} + + + + {{-1, 459}, {741, 32}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4OCAwLjQ5ODk4OTg4IDAuNDk4OTg5ODggMC41AA + + + 1 + MC42NzEyNzQ2NiAwLjgyOTA5NDUzIDAuOTk3MzkwNjkgMC41Mjk5OTk5NwA + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{16, 12}, {188, 18}} + + YES + + -2080244224 + 0 + Enable Growl Notifications + + + 1211912703 + 130 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + {{1, 1}, {703, 38}} + + + + {{18, 401}, {705, 54}} + + {0, 0} + + 67239424 + 0 + Chat Options + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 2 + NO + + + {740, 490} + + NSView + + + 31 + 2 + {{196, 196}, {483, 314}} + 1677721600 + Relay + NSPanel + + {1.79769e+308, 1.79769e+308} + {483, 314} + + + 256 + + YES + + + 268 + {{18, 278}, {185, 18}} + + YES + + -2080244224 + 0 + Relay New Chat Messages + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 18 + + YES + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 290 + + YES + + + 274 + + YES + + + 290 + + YES + + + 257 + {{379, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + LucidaGrande-Bold + 12 + 16 + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + add + + + + + + _addOption: + + -2038284033 + 36 + + LucidaGrande + 12 + 4883 + + + 400 + 75 + + + + + -2147483391 + {{359, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + remove + + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{7, 3}, {58, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + LucidaGrande + 11 + 16 + + + 400 + 75 + + + Any + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + + YES + + + + YES + + + + All + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{71, 3}, {167, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + -2038284033 + 36 + + + 400 + 75 + + + of the following are true + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + + + YES + + + + 3 + YES + YES + 2 + + + + {407, 25} + + + 0 + 0 + + + + YES + + + + 2 + {{7, 3}, {58, 19}} + {{71, 3}, {167, 19}} + + YES + + YES + + YES + depth + pattern + + + YES + + + 2 + 0 + 0 + 0 + 0 + + YES + + + + NO + NO + + + + + YES + + YES + depth + pattern + + + YES + + + + + + 2 + {{7, 3}, {58, 19}} + {{71, 3}, {167, 19}} + + + 0 + 0 + YES + + + + 290 + + YES + + + 257 + {{379, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + add + + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 257 + {{359, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + remove + + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{37, 3}, {116, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 3 + valueForKey: + + 1 + + + YES + + 10 + playerName + + + + + -2038284033 + 36 + + + 400 + 75 + + + Player Name + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + Message Text + + 1048576 + 2147483647 + + + _popUpItemAction: + + 3 + valueForKey: + + + YES + + 10 + text + + + + + + + + Channel Name + + 1048576 + 2147483647 + + + _popUpItemAction: + + 3 + valueForKey: + + + YES + + 10 + channel + + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{159, 3}, {83, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + contains + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + is not + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + is + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + begins with + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + ends with + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + is like + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + matches + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + in + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{248, 4}, {59.5, 18}} + + + YES + + 343014976 + 4326400 + + + + YES + + + + + + {{0, 25}, {407, 25}} + + + 1 + 1 + + + + YES + + + + + 3 + {{37, 3}, {116, 19}} + {{159, 3}, {83, 19}} + {{248, 4}, {59.5, 18}} + + YES + + YES + + YES + depth + pattern + + + YES + + + 1 + 3 + 0 + 0 + 700 + + YES + + + + + NO + YES + + + + + YES + + YES + depth + pattern + + + YES + + + + + + YES + + YES + depth + pattern + + + YES + + + + + + 3 + {{37, 3}, {116, 19}} + {{159, 3}, {83, 19}} + {{248, 4}, {59.5, 18}} + + + 0 + 0 + YES + + + + 290 + + YES + + + 257 + {{379, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + add + + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 257 + {{359, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + remove + + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{37, 3}, {104, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 3 + valueForKey: + + + YES + + 10 + type + + + + + -2038284033 + 36 + + + 400 + 75 + + + Message Type + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + 3 + YES + YES + 2 + + + + + 256 + {{147, 3}, {62, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + is + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + is not + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{215, 3}, {143, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 0 + 7 + + + -2038284033 + 36 + + + 400 + 75 + + + Whisper + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + Say + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 1 + + + + + + Yell + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 6 + + + + + + Channel + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 17 + + + + + + Party + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 2 + + + + + + Raid + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 3 + + + + + + Guild + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 4 + + + + + + Officer + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 5 + + + + + + 3 + YES + YES + 2 + + + + {{0, 50}, {407, 25}} + + + 2 + 1 + + + + YES + + + + + 3 + {{37, 3}, {104, 19}} + {{147, 3}, {62, 19}} + {{215, 3}, {143, 19}} + + YES + + YES + + YES + depth + pattern + + + YES + + + 1 + 0 + 0 + 0 + 0 + + YES + + + + + NO + NO + + + + + YES + + YES + depth + pattern + + + YES + + + + + + YES + + YES + depth + pattern + + + YES + + + + + + 3 + {{37, 3}, {104, 19}} + {{147, 3}, {62, 19}} + {{215, 3}, {143, 19}} + + + 0 + 0 + YES + + + {{1, 1}, {407, 80}} + + + + + + YES + + YES + NSRuleEditorItemPBoardType + + + {409, 82} + + + YES + 75 + 25 + YES + NO + YES + 2 + rowType + subrows + criteria + displayValues + boundArray + NSMutableDictionary + + + + + YES + + YES + + YES + criteria + displayValues + rowType + subrows + + + YES + + YES + + + + + YES + + + + + + YES + + YES + + YES + criteria + displayValues + rowType + subrows + + + YES + + YES + + + + + + YES + + + + + + + YES + + + + + YES + + YES + criteria + displayValues + rowType + subrows + + + YES + + YES + + + + + + YES + + + + + + + YES + + + + + + + + + + YES + + + + + + YES + + + + + + + + {{1, 1}, {409, 82}} + + + + + 3 + MC45MTAwMDAwMwA + + 4 + + + + -2147483392 + {{506, 1}, {15, 184}} + + + _doScroller: + 0.9945946 + + + + -2147483392 + {{-100, -100}, {360, 15}} + + 1 + + _doScroller: + + + {{18, 14}, {411, 84}} + + + 530 + + + + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{18, 141}, {29, 32}} + + YES + + 130560 + 33554432 + + NSImage + Mail + + 0 + 0 + 0 + YES + + YES + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{18, 181}, {29, 23}} + + YES + + 130560 + 33554432 + + NSImage + iChat + + 0 + 0 + 0 + YES + + YES + + + + 268 + {{53, 183}, {67, 18}} + + YES + + -2080244224 + 0 + iChat + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{53, 148}, {67, 18}} + + YES + + -2080244224 + 0 + Mail + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 266 + {{263, 181}, {166, 22}} + + YES + + -1804468671 + 272630784 + + + iChat Screen Name + + YES + 1 + + + 6 + System + textColor + + + + + + + 268 + {{137, 185}, {121, 14}} + + YES + + 68288064 + 272761856 + Send to Screen Name: + + + + + + + + + 266 + {{263, 146}, {166, 22}} + + YES + + -1804468671 + 272630784 + + + Email Address + + YES + 1 + + + + + + + 268 + {{131, 150}, {127, 14}} + + YES + + 68288064 + 71435264 + Send to Email Address: + + + + + + + + + 268 + {{16, 104}, {167, 18}} + + YES + + -2080244224 + 0 + Send all new messages + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 265 + {{341, 104}, {88, 19}} + + YES + + -2080244224 + 134217728 + Add Row + + + -2034482945 + 164 + + NSImage + NSAddTemplate + + + + 400 + 75 + + + + + 268 + {{16, 104}, {302, 18}} + + YES + + -2080244224 + 0 + Instead, send messages matching predicate: + + + 1211912703 + 130 + + + + + 200 + 25 + + + + {{1, 1}, {447, 216}} + + + + {{17, 56}, {449, 218}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + + 289 + {{373, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Done + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 289 + {{410, -70}, {96, 32}} + + YES + + 67239424 + 134217728 + Close + + + -2046639873 + 129 + + Gw + 200 + 25 + + + + {483, 314} + + {{0, 0}, {1920, 1178}} + {483, 330} + {1.79769e+308, 1.79769e+308} + RelayPanelSize + + + + YES + name + predicate + actionStopBot + actionHearth + actionQuit + actionStartBot + actionEmail + actionIM + emailAddress + imName + ChatLogRelaySendAll + + YES + + YES + YES + YES + YES + YES + + + YES + + + 31 + 2 + {{196, 74}, {640, 436}} + 1677721600 + Window + NSPanel + + {1.79769e+308, 1.79769e+308} + {483, 314} + + + 256 + + YES + + + 289 + {{423, 18}, {93, 19}} + + YES + + -2080244224 + 134217728 + Log Predicate + + + -2038284033 + 164 + + + 200 + 25 + + + + + 10 + + YES + + + 256 + + YES + + + 266 + {{126, 11}, {460, 22}} + + YES + + -1804468671 + 268436480 + + + Enter a name and press return to create a new chat action. + + YES + 1 + + + + + + + 268 + {{15, 14}, {106, 17}} + + YES + + 67239488 + 71304192 + Create Action: + + + + + 1 + MCAwIDAAA + + + + + {{1, 1}, {604, 43}} + + + + {{17, 368}, {606, 59}} + + {0, 0} + + 67239424 + 0 + Chat Actions + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 2 + NO + + + + 289 + {{524, 18}, {96, 19}} + + YES + + 67239424 + 134217728 + Add Row + + + -2034482945 + 164 + + + + 400 + 75 + + + + + 4370 + + YES + + + 4364 + + YES + + + 2304 + + YES + + + 4352 + {120, 317} + + YES + + + -2147483392 + {{-26, 0}, {16, 17}} + + + YES + + 117 + 40 + 1000 + + 75628096 + 2048 + + + + 3 + MC4zMzMzMzI5OQA + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + 314572800 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 1}, {120, 317}} + + + + + 4 + + + + -2147483392 + {{102, 1}, {15, 302}} + + + _doScroller: + 0.9968553 + + + + -2147483392 + {{1, 303}, {101, 15}} + + 1 + + _doScroller: + 0.99145300000000003 + + + {122, 319} + + + 562 + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 274 + + YES + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 290 + + YES + + + 274 + + YES + + + 290 + + YES + + + 257 + {{437, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + add + + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + -2147483391 + {{417, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + remove + + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{7, 3}, {58, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + Any + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + All + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{71, 3}, {167, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + -2038284033 + 36 + + + 400 + 75 + + + of the following are true + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + + + YES + + + + 3 + YES + YES + 2 + + + + {465, 25} + + + 0 + 0 + + + + YES + + + + 2 + {{7, 3}, {58, 19}} + {{71, 3}, {167, 19}} + + YES + + YES + + YES + depth + pattern + + + YES + + + 2 + 0 + 0 + 0 + 0 + + YES + + + + NO + NO + + + + + YES + + YES + depth + pattern + + + YES + + + + + + 2 + {{7, 3}, {58, 19}} + {{71, 3}, {167, 19}} + + + 0 + 0 + YES + + + + 290 + + YES + + + 257 + {{437, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + add + + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 257 + {{417, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + remove + + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{37, 3}, {116, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 3 + valueForKey: + + + YES + + 10 + playerName + + + + + -2038284033 + 36 + + + 400 + 75 + + + Player Name + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + Message Text + + 1048576 + 2147483647 + + + _popUpItemAction: + + 3 + valueForKey: + + + YES + + 10 + text + + + + + + + + Channel Name + + 1048576 + 2147483647 + + + _popUpItemAction: + + 3 + valueForKey: + + + YES + + 10 + channel + + + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{159, 3}, {83, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + contains + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + is not + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + is + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + begins with + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + ends with + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + is like + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + matches + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + in + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{248, 4}, {59.5, 18}} + + + YES + + 343014976 + 4326400 + + + + YES + + + + + + {{0, 25}, {465, 25}} + + + 1 + 1 + + + + YES + + + + + 3 + {{37, 3}, {116, 19}} + {{159, 3}, {83, 19}} + {{248, 4}, {59.5, 18}} + + YES + + YES + + YES + depth + pattern + + + YES + + + 1 + 3 + 0 + 0 + 700 + + YES + + + + + NO + YES + + + + + YES + + YES + depth + pattern + + + YES + + + + + + YES + + YES + depth + pattern + + + YES + + + + + + 3 + {{37, 3}, {116, 19}} + {{159, 3}, {83, 19}} + {{248, 4}, {59.5, 18}} + + + 0 + 0 + YES + + + + 290 + + YES + + + 257 + {{437, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + + + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + add + + + + + + _addOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 257 + {{417, 4}, {18, 18}} + + + -1 + YES + + 67239424 + 134348800 + - + + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + remove + + + + + + _deleteOption: + + -2038284033 + 36 + + + 400 + 75 + + + + + 256 + {{37, 3}, {113, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 3 + valueForKey: + + + YES + + 10 + type + + + + + -2038284033 + 36 + + + 400 + 75 + + + Message Type + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + 3 + YES + YES + 2 + + + + + 256 + {{156, 3}, {67, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + + -2038284033 + 36 + + + 400 + 75 + + + is + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + is not + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 3 + YES + YES + 2 + + + + + 256 + {{229, 3}, {155, 19}} + + + -1 + YES + + 67239488 + 4196352 + + + 0 + 7 + + + -2038284033 + 36 + + + 400 + 75 + + + Whisper + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + YES + + + + YES + + + + Say + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 1 + + + + + + Yell + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 6 + + + + + + Channel + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 17 + + + + + + Party + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 2 + + + + + + Raid + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 3 + + + + + + Guild + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 4 + + + + + + Officer + + 1048576 + 2147483647 + + + _popUpItemAction: + + 0 + 5 + + + + + + 3 + YES + YES + 2 + + + + {{0, 50}, {465, 25}} + + + 2 + 1 + + + + YES + + + + + 3 + {{37, 3}, {113, 19}} + {{156, 3}, {67, 19}} + {{229, 3}, {155, 19}} + + YES + + YES + + YES + depth + pattern + + + YES + + + 1 + 0 + 0 + 0 + 0 + + YES + + + + + NO + NO + + + + + YES + + YES + depth + pattern + + + YES + + + + + + YES + + YES + depth + pattern + + + YES + + + + + + 3 + {{37, 3}, {113, 19}} + {{156, 3}, {67, 19}} + {{229, 3}, {155, 19}} + + + 0 + 0 + YES + + + {{1, 1}, {465, 175}} + + + + + + YES + + YES + NSRuleEditorItemPBoardType + + + {467, 177} + + + YES + 75 + 25 + YES + NO + YES + 2 + rowType + subrows + criteria + displayValues + boundArray + NSMutableDictionary + + + + + YES + + YES + + YES + criteria + displayValues + rowType + subrows + + + YES + + YES + + + + + YES + + + + + + YES + + YES + + YES + criteria + displayValues + rowType + subrows + + + YES + + YES + + + + + + YES + + + + + + + YES + + + + + YES + + YES + criteria + displayValues + rowType + subrows + + + YES + + YES + + + + + + YES + + + + + + + YES + + + + + + + + + + YES + + + + + + YES + + + + + + + + {{1, 1}, {467, 177}} + + + + + 3 + MC45MTAwMDAwMwA + + 4 + + + + -2147483392 + {{336, 1}, {15, 84}} + + + _doScroller: + 0.97701150000000003 + + + + -2147483392 + {{-100, -100}, {360, 15}} + + 1 + + _doScroller: + + + {469, 179} + + + 530 + + + + + + {469, 179} + + NSView + + + + 256 + + YES + + + 18 + + YES + + + 256 + + YES + + + 268 + {{15, 108}, {449, 17}} + + YES + + 68288064 + 272630784 + When a matching chat message arrives, perform the following: + + + + + + + + + 268 + {{26, 81}, {109, 18}} + + YES + + 67239424 + 0 + Stop the Bot + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{47, 61}, {126, 18}} + + YES + + 67239424 + 0 + Use Hearthstone + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{47, 41}, {88, 18}} + + YES + + 67239424 + 0 + Quit WoW + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{26, 16}, {100, 18}} + + YES + + 67239424 + 0 + Start the Bot + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{208, 81}, {56, 18}} + + YES + + 67239424 + 0 + Email + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 266 + {{270, 80}, {181, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + + + + + + + 268 + {{208, 36}, {56, 18}} + + YES + + 67239424 + 0 + IM + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 266 + {{270, 35}, {181, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + + + + + + + 268 + {{207, 64}, {256, 14}} + + YES + + 68288064 + 272761856 + (You must have an account configured in Mail!) + + + + + + + + + 268 + {{207, 19}, {258, 14}} + + YES + + 68288064 + 272761856 + (You must have an account configured in iChat) + + + + + + + + {{1, 1}, {473, 135}} + + + + {{-3, -4}, {475, 137}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + {{0, 188}, {469, 131}} + + NSView + + + {{131, 0}, {469, 319}} + + + + {{20, 45}, {600, 319}} + + YES + + + + 268 + {{294, 9}, {121, 32}} + + YES + + 67239424 + 134217728 + Send Email... + + + -2038284033 + 129 + + + 200 + 25 + + + + {640, 436} + + {{0, 0}, {1920, 1178}} + {483, 330} + {1.79769e+308, 1.79769e+308} + + + + + YES + + + view + + + + 52 + + + + dataSource + + + + 85 + + + + delegate + + + + 86 + + + + chatLogTable + + + + 87 + + + + something: + + + + 257 + + + + chatActionsController + + + + 558 + + + + createChatAction: + + + + 560 + + + + value: arrangedObjects.name + + + + + + value: arrangedObjects.name + value + arrangedObjects.name + 2 + + + 561 + + + + contentArray: chatActions + + + + + + contentArray: chatActions + contentArray + chatActions + + NSDeletesObjectsOnRemove + + + 2 + + + 566 + + + + addRow: + + + + 901 + + + + value: selection.predicate + + + + + + value: selection.predicate + value + selection.predicate + + NSConditionallySetsEditable + + + 2 + + + 903 + + + + ruleEditor + + + + 904 + + + + value: selection.actionStopBot + + + + + + value: selection.actionStopBot + value + selection.actionStopBot + 2 + + + 917 + + + + value: selection.actionHearth + + + + + + value: selection.actionHearth + value + selection.actionHearth + 2 + + + 918 + + + + value: selection.actionQuit + + + + + + value: selection.actionQuit + value + selection.actionQuit + 2 + + + 919 + + + + value: selection.actionStartBot + + + + + + value: selection.actionStartBot + value + selection.actionStartBot + 2 + + + 920 + + + + value: selection.actionEmail + + + + + + value: selection.actionEmail + value + selection.actionEmail + 2 + + + 921 + + + + value: selection.actionIM + + + + + + value: selection.actionIM + value + selection.actionIM + 2 + + + 922 + + + + value: selection.emailAddress + + + + + + value: selection.emailAddress + value + selection.emailAddress + 2 + + + 923 + + + + value: selection.imName + + + + + + value: selection.imName + value + selection.imName + 2 + + + 924 + + + + enabled: selection.actionIM + + + + + + enabled: selection.actionIM + enabled + selection.actionIM + 2 + + + 925 + + + + enabled: selection.actionEmail + + + + + + enabled: selection.actionEmail + enabled + selection.actionEmail + 2 + + + 926 + + + + enabled: selection.actionStopBot + + + + + + enabled: selection.actionStopBot + enabled + selection.actionStopBot + 2 + + + 927 + + + + enabled: selection.actionStopBot + + + + + + enabled: selection.actionStopBot + enabled + selection.actionStopBot + 2 + + + 928 + + + + sendEmail: + + + + 931 + + + + value: values.ChatLogRelayMessages + + + + + + value: values.ChatLogRelayMessages + value + values.ChatLogRelayMessages + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 1110 + + + + value: values.ChatLogRelayViaiChat + + + + + + value: values.ChatLogRelayViaiChat + value + values.ChatLogRelayViaiChat + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 1115 + + + + value: values.ChatLogRelayViaMail + + + + + + value: values.ChatLogRelayViaMail + value + values.ChatLogRelayViaMail + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 1121 + + + + value: values.ChatLogRelayScreenName + + + + + + value: values.ChatLogRelayScreenName + value + values.ChatLogRelayScreenName + 2 + + + 1122 + + + + value: values.ChatLogRelayEmailAddress + + + + + + value: values.ChatLogRelayEmailAddress + value + values.ChatLogRelayEmailAddress + 2 + + + 1123 + + + + value: values.ChatLogRelaySendAll + + + + + + value: values.ChatLogRelaySendAll + value + values.ChatLogRelaySendAll + 2 + + + 1124 + + + + enabled: values.ChatLogRelaySendAll + + + + + + enabled: values.ChatLogRelaySendAll + enabled + values.ChatLogRelaySendAll + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 1127 + + + + enabled: values.ChatLogRelayViaMail + + + + + + enabled: values.ChatLogRelayViaMail + enabled + values.ChatLogRelayViaMail + 2 + + + 1131 + + + + enabled: values.ChatLogRelayViaiChat + + + + + + enabled: values.ChatLogRelayViaiChat + enabled + values.ChatLogRelayViaiChat + 2 + + + 1132 + + + + relayPanel + + + + 1135 + + + + openRelayPanel: + + + + 1136 + + + + closeRelayPanel: + + + + 1140 + + + + closeRelayPanel: + + + + 1141 + + + + addRow: + + + + 1145 + + + + value: values.ChatLogRelayPredicate + + + + + + value: values.ChatLogRelayPredicate + value + values.ChatLogRelayPredicate + + NSValueTransformerName + NSKeyedUnarchiveFromData + + 2 + + + 1150 + + + + hidden: values.ChatLogRelaySendAll + + + + + + hidden: values.ChatLogRelaySendAll + hidden + values.ChatLogRelaySendAll + 2 + + + 1152 + + + + hidden: values.ChatLogRelaySendAll + + + + + + hidden: values.ChatLogRelaySendAll + hidden + values.ChatLogRelaySendAll + 2 + + + 1153 + + + + hidden: values.ChatLogRelaySendAll + + + + + + hidden: values.ChatLogRelaySendAll + hidden + values.ChatLogRelaySendAll + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 1157 + + + + value: values.ChatLogRelaySendAll + + + + + + value: values.ChatLogRelaySendAll + value + values.ChatLogRelaySendAll + 2 + + + 1165 + + + + hidden: values.ChatLogRelaySendAll + + + + + + hidden: values.ChatLogRelaySendAll + hidden + values.ChatLogRelaySendAll + 2 + + + 1166 + + + + hidden: values.ChatLogRelayMessages + + + + + + hidden: values.ChatLogRelayMessages + hidden + values.ChatLogRelayMessages + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 1176 + + + + hidden: values.ChatLogRelayMessages + + + + + + hidden: values.ChatLogRelayMessages + hidden + values.ChatLogRelayMessages + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 1178 + + + + value: values.growlChatEnabled + + + + + + value: values.growlChatEnabled + value + values.growlChatEnabled + 2 + + + 1186 + + + + enableGrowlNotifications + + + + 1187 + + + + dataSource + + + + 1213 + + + + delegate + + + + 1214 + + + + whisperLogTable + + + + 1215 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + 2 + + + YES + + + + + + + + 100 + + + YES + + + + + + 101 + + + YES + + + + + + + + + + 255 + + + YES + + + + + + 256 + + + + + 358 + + + YES + + + + + + + 360 + + + YES + + + + + + 362 + + + YES + + + + + + 367 + + + + + 369 + + + + + 462 + + + YES + + + + + + 463 + + + + + 479 + + + YES + + + + + + + 470 + + + YES + + + + + + + + 473 + + + YES + + + + + + 472 + + + + + 471 + + + + + 475 + + + YES + + + + + + 478 + + + + + 387 + + + YES + + + + + + + 389 + + + YES + + + + + + 549 + + + YES + + + + + + + + + + + + + + + + 527 + + + YES + + + + + + 528 + + + + + 529 + + + YES + + + + + + 530 + + + + + 543 + + + YES + + + + + + 544 + + + + + 533 + + + YES + + + + + + 536 + + + + + 541 + + + YES + + + + + + 542 + + + + + 550 + + + + + 388 + + + YES + + + + + + 845 + + + YES + + + + + + + + 846 + + + + + 847 + + + + + 848 + + + YES + + + + + + + + 866 + + + YES + + + + + + + 867 + + + YES + + + + + + + 868 + + + YES + + + + + + + + 869 + + + YES + + + + + + + 870 + + + YES + + + + + + 871 + + + YES + + + + + + + + + + + + + 872 + + + + + 873 + + + + + 874 + + + + + 875 + + + + + 876 + + + + + 877 + + + + + 878 + + + + + 879 + + + + + 880 + + + + + 881 + + + + + 882 + + + + + 883 + + + YES + + + + + + + + + + + + + 884 + + + YES + + + + + + + + 885 + + + + + 886 + + + + + 887 + + + + + 888 + + + + + 889 + + + + + 890 + + + + + 891 + + + + + 892 + + + + + 893 + + + + + 894 + + + + + 895 + + + + + 896 + + + YES + + + + + + + 897 + + + YES + + + + + + 898 + + + + + 899 + + + + + 900 + + + + + 905 + + + YES + + + + + + 906 + + + + + 907 + + + YES + + + + + + 908 + + + + + 909 + + + YES + + + + + + 910 + + + YES + + + + + + 911 + + + + + 912 + + + + + 913 + + + YES + + + + + + 914 + + + + + 915 + + + YES + + + + + + 916 + + + + + 929 + + + YES + + + + + + 930 + + + + + 932 + + + YES + + + + + + 933 + + + YES + + + + + + + + + 1037 + + + YES + + + + + + 1038 + + + + + 1039 + + + YES + + + + + + + + + + + + + + + + + 1040 + + + YES + + + + + + + + 1041 + + + YES + + + + + + + + 1042 + + + + + 1043 + + + + + 1044 + + + YES + + + + + + + + 1045 + + + YES + + + + + + + 1046 + + + YES + + + + + + + 1047 + + + YES + + + + + + + 1048 + + + YES + + + + + + 1049 + + + + + 1050 + + + + + 1051 + + + + + 1052 + + + YES + + + + + + + + + + + + + 1053 + + + YES + + + + + + + + 1054 + + + + + 1055 + + + + + 1056 + + + + + 1057 + + + + + 1058 + + + + + 1059 + + + + + 1060 + + + + + 1061 + + + + + 1062 + + + + + 1063 + + + + + 1064 + + + + + 1065 + + + YES + + + + + + + 1066 + + + YES + + + + + + 1067 + + + YES + + + + + + + + + + + + + 1068 + + + + + 1069 + + + + + 1070 + + + + + 1071 + + + + + 1072 + + + + + 1073 + + + + + 1074 + + + + + 1075 + + + + + 1076 + + + + + 1077 + + + + + 1078 + + + + + 1079 + + + YES + + + + + + 1080 + + + + + 1081 + + + YES + + + + + + 1082 + + + + + 1085 + + + YES + + + + + + 1086 + + + + + 1091 + + + YES + + + + + + 1092 + + + + + 1093 + + + YES + + + + + + 1094 + + + + + 1095 + + + YES + + + + + + 1096 + + + + + 1097 + + + YES + + + + + + 1098 + + + YES + + + + + + 1099 + + + + + 1100 + + + + + 1101 + + + YES + + + + + + 1102 + + + + + 1105 + + + + + 1133 + + + YES + + + + + + 1134 + + + + + 1033 + + + YES + + + + + + 1034 + + + + + 1138 + + + YES + + + + + + 1139 + + + + + 1143 + + + YES + + + + + + 1144 + + + + + 1163 + + + YES + + + + + + 1164 + + + + + 1171 + + + YES + + + + + + 1172 + + + + + 1173 + + + YES + + + + + + 1174 + + + + + 1179 + + + YES + + + + + + 1180 + + + YES + + + + + + 1181 + + + + + 1196 + + + YES + + + + + + 79 + + + YES + + + + + + + + 82 + + + + + 81 + + + + + 80 + + + YES + + + + + + 83 + + + YES + + + + + + 84 + + + + + 1206 + + + YES + + + + + + 1207 + + + YES + + + + + + + + 1210 + + + + + 1209 + + + + + 1208 + + + YES + + + + + + 1211 + + + YES + + + + + + 1212 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 100.IBEditorWindowLastContentRect + 100.IBPluginDependency + 100.IBWindowTemplateEditedContentRect + 100.NSWindowTemplate.visibleAtLaunch + 100.windowTemplate.hasMinSize + 100.windowTemplate.maxSize + 100.windowTemplate.minSize + 101.IBPluginDependency + 1033.IBPluginDependency + 1034.IBPluginDependency + 1037.IBPluginDependency + 1038.IBPluginDependency + 1039.IBPluginDependency + 1040.IBPluginDependency + 1041.IBPluginDependency + 1042.IBPluginDependency + 1043.IBPluginDependency + 1045.IBPluginDependency + 1046.IBPluginDependency + 1047.IBEditorWindowLastContentRect + 1047.IBPluginDependency + 1048.IBEditorWindowLastContentRect + 1048.IBPluginDependency + 1049.IBPluginDependency + 1050.IBPluginDependency + 1051.IBPluginDependency + 1052.IBEditorWindowLastContentRect + 1052.IBPluginDependency + 1053.IBEditorWindowLastContentRect + 1059.IBPluginDependency + 1065.IBEditorWindowLastContentRect + 1066.IBEditorWindowLastContentRect + 1067.IBEditorWindowLastContentRect + 1085.IBPluginDependency + 1086.IBPluginDependency + 1091.IBPluginDependency + 1092.IBPluginDependency + 1093.IBPluginDependency + 1094.IBPluginDependency + 1095.IBPluginDependency + 1096.IBPluginDependency + 1097.IBPluginDependency + 1098.IBPluginDependency + 1099.IBPluginDependency + 1100.IBPluginDependency + 1101.IBPluginDependency + 1102.IBPluginDependency + 1133.IBPluginDependency + 1134.IBPluginDependency + 1138.IBPluginDependency + 1139.IBPluginDependency + 1143.IBPluginDependency + 1144.IBPluginDependency + 1163.IBPluginDependency + 1164.IBPluginDependency + 1171.IBPluginDependency + 1172.IBPluginDependency + 1179.IBPluginDependency + 1180.IBPluginDependency + 1181.IBPluginDependency + 1196.IBPluginDependency + 1206.IBPluginDependency + 1207.IBPluginDependency + 1208.CustomClassName + 1208.IBPluginDependency + 1209.IBPluginDependency + 1210.IBPluginDependency + 2.IBPluginDependency + 255.IBPluginDependency + 256.IBPluginDependency + 358.IBPluginDependency + 360.IBPluginDependency + 362.IBAttributePlaceholdersKey + 362.IBPluginDependency + 367.IBPluginDependency + 369.IBPluginDependency + 387.IBPluginDependency + 388.IBPluginDependency + 389.IBPluginDependency + 462.IBPluginDependency + 463.IBPluginDependency + 470.IBPluginDependency + 471.IBPluginDependency + 472.IBPluginDependency + 473.IBPluginDependency + 475.IBPluginDependency + 478.IBPluginDependency + 527.IBPluginDependency + 528.IBPluginDependency + 529.IBPluginDependency + 530.IBPluginDependency + 533.IBPluginDependency + 536.IBPluginDependency + 541.IBPluginDependency + 542.IBPluginDependency + 543.IBPluginDependency + 544.IBPluginDependency + 550.IBPluginDependency + 79.IBPluginDependency + 80.CustomClassName + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 845.IBPluginDependency + 846.IBPluginDependency + 847.IBPluginDependency + 848.IBPluginDependency + 866.IBPluginDependency + 867.IBPluginDependency + 869.IBEditorWindowLastContentRect + 870.IBEditorWindowLastContentRect + 871.IBEditorWindowLastContentRect + 883.IBEditorWindowLastContentRect + 883.IBPluginDependency + 884.IBEditorWindowLastContentRect + 890.IBPluginDependency + 896.IBEditorWindowLastContentRect + 896.IBPluginDependency + 897.IBEditorWindowLastContentRect + 897.IBPluginDependency + 898.IBPluginDependency + 899.IBPluginDependency + 900.IBPluginDependency + 905.IBPluginDependency + 906.IBPluginDependency + 907.IBPluginDependency + 908.IBPluginDependency + 909.IBPluginDependency + 910.IBPluginDependency + 911.IBPluginDependency + 912.IBPluginDependency + 913.IBPluginDependency + 914.IBPluginDependency + 915.IBPluginDependency + 916.IBPluginDependency + 929.IBPluginDependency + 930.IBPluginDependency + 932.IBEditorWindowLastContentRect + 932.IBPluginDependency + 932.IBWindowTemplateEditedContentRect + 932.NSWindowTemplate.visibleAtLaunch + 932.windowTemplate.hasMinSize + 932.windowTemplate.minSize + 933.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{237, 255}, {740, 490}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{357, 416}, {480, 272}} + {{133, 245}, {640, 436}} + com.apple.InterfaceBuilder.CocoaPlugin + {{133, 245}, {640, 436}} + + + {3.40282e+38, 3.40282e+38} + {483, 314} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{561, 499}, {91, 41}} + com.apple.InterfaceBuilder.CocoaPlugin + {{625, 518}, {220, 22}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{810, 403}, {140, 155}} + com.apple.InterfaceBuilder.CocoaPlugin + {{547, 502}, {159, 60}} + com.apple.InterfaceBuilder.CocoaPlugin + {{666, 515}, {79, 22}} + {{547, 515}, {156, 22}} + {{956, 443}, {155, 155}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterTableView + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Type a name and press enter. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterTableView + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{666, 515}, {79, 22}} + {{547, 515}, {156, 22}} + {{956, 443}, {155, 155}} + {{810, 403}, {140, 155}} + com.apple.InterfaceBuilder.CocoaPlugin + {{547, 502}, {159, 60}} + com.apple.InterfaceBuilder.CocoaPlugin + {{561, 499}, {91, 41}} + com.apple.InterfaceBuilder.CocoaPlugin + {{625, 518}, {220, 22}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{952, 497}, {483, 314}} + com.apple.InterfaceBuilder.CocoaPlugin + {{952, 497}, {483, 314}} + + + {483, 314} + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 1215 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BotController + NSObject + + YES + + YES + autoJoinWG: + closeHotkeyHelp: + closeLootHotkeyHelp: + doTheRelicEmanation: + editCombatProfiles: + gatheringLootingOptions: + gatheringLootingSelectAction: + hotkeyHelp: + login: + lootHotkeyHelp: + pvpBMSelectAction: + pvpStartStop: + pvpTestWarning: + startBot: + startStopBot: + stopBot: + test: + testHotkey: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + autoJoinWG + behaviorPopup + chatController + chatLogController + combatController + combatProfileEditor + combatProfilePopup + controller + corpseController + fishController + fishingApplyLureCheckbox + fishingCheckbox + fishingGatherDistanceText + fishingLurePopUpButton + fishingOnlySchoolsCheckbox + fishingRecastCheckbox + fishingUseContainersCheckbox + gatherDistText + gatheringLootingPanel + herbalismCheckbox + herbalismSkillText + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootCheckbox + lootController + lootHotkeyHelpPanel + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + miningCheckbox + miningSkillText + mobController + mountCheckbox + mountType + mouseOverRecorder + movementController + netherwingEggCheckbox + nodeController + nodeIgnoreFriendlyCheckbox + nodeIgnoreFriendlyDistanceText + nodeIgnoreHostileCheckbox + nodeIgnoreHostileDistanceText + nodeIgnoreMobCheckbox + nodeIgnoreMobDistanceText + offsetController + overlayWindow + petAttackRecorder + playerController + playersController + procedureController + pvpBMSelectPanel + pvpBannerImage + pvpLeaveInactiveCheckbox + pvpPlayWarningCheckbox + pvpStartStopButton + pvpWaitForPreparationBuff + questController + routePopup + runningTimer + scanGrid + shortcutRecorder + skinningCheckbox + skinningSkillText + spellController + startStopButton + startstopRecorder + statusText + view + waypointController + + + YES + NSButton + NSButton + id + AuraController + NSButton + id + ChatController + ChatLogController + CombatController + CombatProfileEditor + id + Controller + CorpseController + FishController + NSButton + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + id + NSPanel + NSButton + id + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + NSButton + id + MobController + NSButton + NSPopUpButton + SRRecorderControl + MovementController + NSButton + NodeController + NSButton + NSTextField + NSButton + NSTextField + NSButton + NSTextField + OffsetController + NSWindow + SRRecorderControl + PlayerDataController + PlayersController + ProcedureController + NSPanel + NSImageView + NSButton + NSButton + NSButton + NSButton + QuestController + id + NSTextField + ScanGridView + SRRecorderControl + NSButton + id + SpellController + NSButton + SRRecorderControl + NSTextField + NSView + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + botController + chatController + controller + macroController + mobController + movementController + playerData + playersController + + + YES + BotController + ChatController + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + CombatProfileEditor + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + closeEditor: + closeRename: + createCombatProfile: + deleteCombatProfile: + deleteIgnoreEntry: + duplicateCombatProfile: + exportCombatProfile: + importCombatProfile: + loadCombatProfile: + playerList: + renameCombatProfile: + tankSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + editorPanel + ignoreTable + playerList + playersController + renamePanel + + + YES + NSPanel + NSTableView + NSPopUpButton + PlayersController + NSPanel + + + + IBProjectSource + CombatProfileEditor.h + + + + Controller + NSObject + + YES + + YES + confirmAppRename: + launchWebsite: + pidSelected: + renameShowHelp: + renameUseExisting: + showAbout: + showSettings: + testFront: + toggleGUIScripting: + toggleSecurePrefs: + toolbarItemSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + itemsToolbarItem + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + mobsToolbarItem + newIdentifierField + newNameField + newSignatureField + nodeController + nodesToolbarItem + offsetController + playerData + playerToolbarItem + playersController + playersToolbarItem + prefsToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + NSToolbarItem + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSToolbarItem + NSTextField + NSTextField + NSTextField + NodeController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + NSObject + + YES + + YES + controller + itemTable + memoryViewController + playerData + view + + + YES + Controller + NSTableView + MemoryViewController + PlayerDataController + NSView + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + findPointers: + menuAction: + openSearch: + saveValues: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + memoryTable + memoryViewWindow + numAddressesToScan + offsetController + operatorPopUpButton + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + id + id + NSTextField + OffsetController + NSPopUpButton + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + NSObject + + YES + + YES + additionalStart: + additionalStop: + faceMob: + filterMobs: + resetMobList: + targetMob: + updateTracking: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + additionalList + auraController + botController + combatController + controller + memoryViewController + mobColorByLevel + mobTable + movementController + playerData + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + view + + + YES + NSPopUpButton + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + prefsChanged: + id + + + YES + + YES + auraController + botController + chatController + combatController + controller + logOutStuckAttemptsTextField + macroController + mobController + movementType + offsetController + playerData + + + YES + AuraController + id + id + id + id + NSTextField + MacroController + id + NSPopUpButton + OffsetController + PlayerDataController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + NSObject + + YES + + YES + faceNode: + filterList: + filterNodes: + moveToStart: + moveToStop: + resetList: + targetNode: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + botController + controller + memoryViewController + moveToList + movementController + nodeTable + playerController + view + + + YES + id + id + id + NSPopUpButton + id + id + PlayerDataController + NSView + + + + IBProjectSource + NodeController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + + + + YES + + YES + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + NSObject + + YES + + YES + facePlayer: + reloadNames: + resetPlayerList: + targetPlayer: + updateTracking: + + + YES + id + id + id + id + id + + + + YES + + YES + controller + memoryViewController + movementController + playerColorByLevel + playerData + playerTable + trackFriendly + trackHostile + view + + + YES + Controller + MemoryViewController + MovementController + NSButton + PlayerDataController + NSTableView + id + id + NSView + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeExportPanel: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + exportBehaviors: + importBehavior: + loadBehavior: + openExportPanel: + removeBehavior: + renameBehavior: + setBehaviorEvent: + tableRowDoubleClicked: + updateOptions: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + exportPanel + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSPanel + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + WaypointController + NSObject + + YES + + YES + addWaypoint: + cancelWaypointAction: + changeWaypointAction: + closeAutomatorPanel: + closeExportPanel: + closeRename: + closeVisualize: + closeWaypointAction: + closestWaypoint: + createRoute: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + openExportPanel: + optionSelected: + removeRoute: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + startStopAutomator: + stopMovement: + testWaypointSequence: + visualize: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + exportPanel + isFlyingRouteButton + mobController + movementController + playerData + renamePanel + routeTypeSegment + shortcutRecorder + testingMenu + view + visualizePanel + visualizeView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + id + id + Controller + NSPanel + NSButton + id + id + PlayerDataController + NSPanel + id + SRRecorderControl + NSMenu + NSView + NSPanel + RouteVisualizationView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSImageCell.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSPredicateEditorRowTemplate + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditorRowTemplate.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSSplitView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSSplitView.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableView + NSControl + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/ChatLogController.h b/ChatLogController.h new file mode 100644 index 0000000..43ba5ec --- /dev/null +++ b/ChatLogController.h @@ -0,0 +1,65 @@ +// +// ChatLogController.m +// Pocket Gnome +// +// Created by Jon Drummond on 4/3/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class ChatLogEntry; +@class OffsetController; + +#define WhisperReceived @"WhisperReceived" + +@interface ChatLogController : NSObject { + IBOutlet Controller *controller; + IBOutlet OffsetController *offsetController; + + IBOutlet NSView *view; + IBOutlet NSTableView *chatLogTable, *whisperLogTable; + IBOutlet NSPredicateEditor *ruleEditor; + IBOutlet NSArrayController *chatActionsController; + IBOutlet NSPanel *relayPanel; + + IBOutlet NSButton *enableGrowlNotifications; + + NSUInteger passNumber; + BOOL _shouldScan, _lastPassFoundChat, _lastPassFoundWhisper; + NSMutableArray *_chatLog, *_chatActions, *_whisperLog; + NSSize minSectionSize, maxSectionSize; + NSDateFormatter *_timestampFormat; + NSSortDescriptor *_passNumberSortDescriptor; + NSSortDescriptor *_relativeOrderSortDescriptor; + NSMutableDictionary *_whisperHistory; // Tracks player name with # of whispers +} + +// Controller interface +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; + +- (IBAction)something: (id)sender; +- (IBAction)createChatAction: (id)sender; +- (IBAction)sendEmail: (id)sender; + +- (IBAction)openRelayPanel: (id)sender; +- (IBAction)closeRelayPanel: (id)sender; + +- (BOOL)sendLogEntry: (ChatLogEntry*)logEntry toiChatBuddy: (NSString*)buddyName; +- (BOOL)sendLogEntries: (NSArray*)logEntries toiChatBuddy: (NSString*)buddyName; + +- (BOOL)sendLogEntry: (ChatLogEntry*)logEntry toEmailAddress: (NSString*)emailAddress; +- (BOOL)sendLogEntries: (NSArray*)logEntries toEmailAddress: (NSString*)emailAddress; + +- (void)clearWhisperHistory; + +@property (readonly, retain) NSMutableArray *chatActions; + +@property (readwrite, assign) BOOL shouldScan; +@property (readwrite, assign) BOOL lastPassFoundChat; + +@end diff --git a/ChatLogController.m b/ChatLogController.m new file mode 100644 index 0000000..69d6b13 --- /dev/null +++ b/ChatLogController.m @@ -0,0 +1,630 @@ +// +// ChatLogController.m +// Pocket Gnome +// +// Created by Jon Drummond on 4/3/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "ChatLogController.h" + +#import "Controller.h" +#import "MemoryAccess.h" +#import "PlayerDataController.h" +#import "OffsetController.h" + +#import "Offsets.h" + +#import "ChatLogEntry.h" +#import "ChatAction.h" + +#import +#import +#import +#import "Mail.h" // http://developer.apple.com/mac/library/samplecode/SBSendEmail +#import "iChat.h" // http://developer.apple.com/mac/library/samplecode/iChatStatusFromApplication + +#define ChatLog_CounterOffset 0x8 +#define ChatLog_TimestampOffset 0xC +#define ChatLog_UnitGUIDOffset 0x10 +#define ChatLog_UnitNameOffset 0x1C +#define ChatLog_UnitNameLength 0x30 +#define ChatLog_DescriptionOffset 0x4C +#define ChatLog_NextEntryOffset 0x17BC + +#define ChatLog_TextOffset 0xBB8 + +@interface ChatLogController (Internal) + +- (void)kickOffScan; +- (BOOL)chatLogContainsEntry: (ChatLogEntry*)entry; +- (void)addWhisper: (ChatLogEntry *)entry; + +@end + +@implementation ChatLogController + ++ (void)initialize { + + NSDictionary *defaultValues = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool: NO], @"ChatLogRelayMessages", + [NSNumber numberWithBool: NO], @"ChatLogRelayViaiChat", + [NSNumber numberWithBool: NO], @"ChatLogRelayViaMail", + [NSNumber numberWithBool: YES], @"ChatLogRelaySendAll", nil]; + + [[NSUserDefaults standardUserDefaults] registerDefaults: defaultValues]; + [[NSUserDefaultsController sharedUserDefaultsController] setInitialValues: defaultValues]; +} + +- (id) init +{ + self = [super init]; + if (self != nil) { + passNumber = 0; + self.shouldScan = NO; + self.lastPassFoundChat = NO; + _lastPassFoundWhisper = NO; + _chatLog = [[NSMutableArray array] retain]; + _whisperLog = [[NSMutableArray array] retain]; + _chatActions = [[NSMutableArray array] retain]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(memoryIsValid:) name: MemoryAccessValidNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(memoryIsInvalid:) name: MemoryAccessInvalidNotification object: nil]; + + _whisperHistory = [[NSMutableDictionary dictionary] retain]; + + _timestampFormat = [[NSDateFormatter alloc] init]; + [_timestampFormat setDateStyle: NSDateFormatterNoStyle]; + [_timestampFormat setTimeStyle: NSDateFormatterShortStyle]; + + _passNumberSortDescriptor = [[NSSortDescriptor alloc] initWithKey: @"passNumber" ascending: YES]; + _relativeOrderSortDescriptor = [[NSSortDescriptor alloc] initWithKey: @"relativeOrder" ascending: YES]; + + [NSBundle loadNibNamed: @"ChatLog" owner: self]; + + [self kickOffScan]; + } + return self; +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; +} + +- (void) dealloc +{ + [[NSNotificationCenter defaultCenter] removeObserver: self]; + [_timestampFormat release]; + [_chatLog release]; + [_whisperLog release]; + [_whisperHistory release]; + [super dealloc]; +} + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; + +- (NSString*)sectionTitle { + return @"Other Players"; +} + +@synthesize chatActions = _chatActions; +@synthesize shouldScan = _shouldScan; +@synthesize lastPassFoundChat = _lastPassFoundChat; + +- (void)memoryIsValid: (NSNotification*)notification { + self.shouldScan = YES; +} + +- (void)memoryIsInvalid: (NSNotification*)notification { + self.shouldScan = NO; +} + +// this is run in a separate thread +- (void)scanChatLog { + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + UInt32 offset = [offsetController offset:@"CHATLOG_START"]; + + NSMutableArray *chatEntries = [NSMutableArray array]; + MemoryAccess *memory = [controller wowMemoryAccess]; + //NSDate *date = [NSDate date]; + //[memory resetLoadCount]; + if(self.shouldScan && memory) { + if(self.lastPassFoundChat) { + passNumber++; + } + self.lastPassFoundChat = NO; + + int i; + UInt32 highestSequence = 0, foundAt = 0, finishedAt = 0; + for(i = 0; i< 60; i++) { + finishedAt = i; + char buffer[400]; + UInt32 logStart = offset + ChatLog_NextEntryOffset*i; + if([memory loadDataForObject: self atAddress: logStart Buffer: (Byte *)&buffer BufLength: sizeof(buffer)-1]) + { + //GUID unitGUID = *(GUID*)(buffer + ChatLog_UnitGUIDOffset); + UInt32 sequence = *(UInt32*)(buffer + ChatLog_CounterOffset); + //UInt32 timestamp = *(UInt32*)(buffer + ChatLog_TimestampOffset); + + // track highest sequence number + if(sequence > highestSequence) { + highestSequence = sequence; + foundAt = i; + } + NSString *chatEntry = [NSString stringWithUTF8String: buffer]; + //log(LOG_GENERAL, @"Chat found: %@", chatEntry ); + + if([chatEntry length]) { + // "Type: [17], Channel: [General - Whatev], Player Name: [PlayerName], Text: [Text]" + NSMutableDictionary *chatComponents = [NSMutableDictionary dictionary]; + for(NSString *component in [chatEntry componentsSeparatedByString: @"], "]) { + NSArray *keyValue = [component componentsSeparatedByString: @": ["]; + // "Text: [blah blah blah]" + if([keyValue count] == 2) { + // now we have "key" and "[value]" + NSString *key = [keyValue objectAtIndex: 0]; + NSString *value = [[keyValue objectAtIndex: 1] stringByTrimmingCharactersInSet: [NSCharacterSet characterSetWithCharactersInString: @"[]"]]; + [chatComponents setObject: value forKey: key]; + } else { + // bad data + //log(LOG_GENERAL, @"Throwing out bad data: \"%@\"", component); + } + } + if([chatComponents count]) { + ChatLogEntry *newEntry = [ChatLogEntry entryWithSequence: i timeStamp: sequence attributes: chatComponents]; + if(newEntry) { + [chatEntries addObject: newEntry]; + } + } + } else { + break; + } + } + } + + for(ChatLogEntry *entry in chatEntries) { + [entry setPassNumber: passNumber]; + NSUInteger sequence = [[entry sequence] unsignedIntegerValue]; + if(sequence >= foundAt) { + [entry setRelativeOrder: sequence - foundAt]; + } else { + [entry setRelativeOrder: 60 - foundAt + sequence]; + } + } + [chatEntries sortUsingDescriptors: [NSArray arrayWithObject: _relativeOrderSortDescriptor]]; + } + + + //log(LOG_GENERAL, @"[Chat] New chat scan took %.2f seconds and %d memory operations.", [date timeIntervalSinceNow]*-1.0, [memory loadCount]); + + + [self performSelectorOnMainThread: @selector(scanCompleteWithNewEntries:) withObject: chatEntries waitUntilDone: YES]; + [pool drain]; +} + +- (BOOL)chatLogContainsEntry: (ChatLogEntry*)entry { + BOOL contains = NO; + @synchronized(_chatLog) { + contains = [_chatLog containsObject: entry]; + } + return contains; +} + +- (void)scanCompleteWithNewEntries: (NSArray*)newEntries { + if([newEntries count]) { + // NSMutableArray *actualNewEntries = [NSMutableArray array]; + int lastRow = [_chatLog count] - 1; + for(ChatLogEntry *entry in newEntries) { + if(![_chatLog containsObject: entry]) { + // NSLog(@"%@", entry); + [_chatLog addObject: entry]; + self.lastPassFoundChat = YES; + + if(passNumber > 0 && ![entry isWhisperSent]) { + if(![controller isWoWFront]) { + if( [enableGrowlNotifications state] && [controller sendGrowlNotifications] && [GrowlApplicationBridge isGrowlInstalled] && [GrowlApplicationBridge isGrowlRunning]) { + [GrowlApplicationBridge notifyWithTitle: [entry isSpoken] ? [NSString stringWithFormat: @"%@ %@...", [entry playerName], [entry typeVerb]] : [NSString stringWithFormat: @"%@ (%@)", [entry playerName], [entry isChannel] ? [entry channel] : [entry typeName]] + description: [entry text] + notificationName: @"PlayerReceivedMessage" + iconData: [[NSImage imageNamed: @"Trade_Engraving"] TIFFRepresentation] + priority: [entry isWhisperReceived] ? 100 : 0 + isSticky: [entry isWhisperReceived] ? YES : NO + clickContext: nil]; + } + } + + // Fire off a notification - Whisper received! + if ( [entry isWhisperReceived] ){ + [[NSNotificationCenter defaultCenter] postNotificationName: WhisperReceived object: entry]; + [self addWhisper:entry]; + } + + NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults]; + if([defaults boolForKey: @"ChatLogRelayMessages"]) { + // user wants to relay messages... + BOOL sendAll = [defaults boolForKey: @"ChatLogRelaySendAll"]; + if([defaults boolForKey: @"ChatLogRelayViaiChat"]) { + // send via iChat + NSString *screenName = [defaults stringForKey: @"ChatLogRelayScreenName"]; + if(sendAll) { + [self sendLogEntry: entry toiChatBuddy: screenName]; + } else { + NSPredicate *predicate = [NSKeyedUnarchiver unarchiveObjectWithData: [defaults objectForKey: @"ChatLogRelayPredicate"]]; + if([predicate evaluateWithObject: entry]) { + [self sendLogEntry: entry toiChatBuddy: screenName]; + } + } + } + if([defaults boolForKey: @"ChatLogRelayViaMail"]) { + // send via Mail/email + NSString *emailAddress = [defaults stringForKey: @"ChatLogRelayEmailAddress"]; + if(sendAll) { + [self sendLogEntry: entry toEmailAddress: emailAddress]; + } else { + NSPredicate *predicate = [NSKeyedUnarchiver unarchiveObjectWithData: [defaults objectForKey: @"ChatLogRelayPredicate"]]; + if([predicate evaluateWithObject: entry]) { + [self sendLogEntry: entry toEmailAddress: emailAddress]; + } + } + } + } + } + } + + // add a whisper? + if ( ![_whisperLog containsObject: entry] && [entry isWhisperReceived] ){ + [_whisperLog addObject: entry]; + _lastPassFoundWhisper = YES; + } + } + + if ( _lastPassFoundWhisper ){ + [_whisperLog sortUsingDescriptors: [NSArray arrayWithObjects: _passNumberSortDescriptor, _relativeOrderSortDescriptor, nil]]; + [whisperLogTable reloadData]; + _lastPassFoundWhisper = NO; + } + + if(self.lastPassFoundChat) { + [_chatLog sortUsingDescriptors: [NSArray arrayWithObjects: _passNumberSortDescriptor, _relativeOrderSortDescriptor, nil]]; + [chatLogTable reloadData]; + + // if the previous last row of chat was visible, then we want to scroll the table down + // if it was not visible, then we will not scroll. + NSRange rowsInRect = [chatLogTable rowsInRect: [chatLogTable visibleRect]]; + int firstVisibleRow = rowsInRect.location, lastVisibleRow = rowsInRect.location + rowsInRect.length; + if((passNumber == 0) || (lastRow >= 0 && (lastRow >= firstVisibleRow) && (lastRow <= lastVisibleRow))) { + [chatLogTable scrollRowToVisible: [_chatLog count] - 1]; + } + } + } + [self performSelector: @selector(kickOffScan) withObject: nil afterDelay: 1.0]; +} + +- (void)kickOffScan { + [self performSelectorInBackground: @selector(scanChatLog) withObject: nil]; +} + +#pragma mark - + +- (BOOL)sendMessage: (NSString*)message toiChatBuddy: (NSString*)buddyName { + if(![message length] || ![buddyName length]) + return NO; + + iChatApplication *iChat = [SBApplication applicationWithBundleIdentifier:@"com.apple.iChat"]; + + // Ultimately we need to find a buddy to open a new chat, or an existing chat, to send the message + + // We're looking for any AIM service + BOOL foundService = NO; + for (iChatService *service in [iChat services]) { + // Use the first connected AIM service we find + if (service.connectionStatus == iChatConnectionStatusConnected || service.status == iChatConnectionStatusConnected) { // (service.serviceType == iChatServiceTypeAIM) && ( + foundService = YES; + + // we have a service, find a buddy + iChatBuddy *sendToBuddy = nil; + for(iChatBuddy *buddy in [service buddies]) { + + NSString *buddyID = [buddy id]; + if([buddyID length] && ([buddy status] != iChatAccountStatusOffline)) { + // buddy id: "A123456B-1234-5678-9090-B80C2D1D4092:buddyname" + BOOL buddyMatch = ([buddyID rangeOfString: buddyName options: NSCaseInsensitiveSearch | NSBackwardsSearch | NSAnchoredSearch].location != NSNotFound); + + if(buddyMatch) { + sendToBuddy = buddy; + break; + } + } + } + + if(sendToBuddy) { + // see if there is an existing chat open with this buddy + iChatChat *buddyChat = nil; + for(iChatChat *chat in [service chats]) { + NSArray *participants = [chat participants]; + if(([participants count] == 1) && [[(iChatBuddy*)[participants lastObject] id] isEqualToString: [sendToBuddy id]]) { + buddyChat = chat; + break; + } + } + + @try { + if(buddyChat) { + [iChat send: message to: buddyChat]; + } else { + [iChat send: message to: sendToBuddy]; + } + } + @catch (NSException * e) { + log(LOG_GENERAL, @"Could not send chat message: %@", e); + return NO; + } + + return YES; + + } else { + log(LOG_GENERAL, @"Could not locate buddy \"%@\"!", buddyName); + } + } + } + + if(!foundService) { + log(LOG_GENERAL, @"Could not find active iChat service!"); + } + + return NO; +} + +- (BOOL)sendLogEntries: (NSArray*)logEntries toiChatBuddy: (NSString*)buddyName { + NSMutableString *message = [NSMutableString string]; + for(ChatLogEntry *chatEntry in logEntries) { + [message appendFormat: @"%@\n", [chatEntry wellFormattedText]]; + } + return [self sendMessage: message toiChatBuddy: buddyName]; +} + +- (BOOL)sendLogEntry: (ChatLogEntry*)logEntry toiChatBuddy: (NSString*)buddyName { + if(!logEntry) return NO; + return [self sendLogEntries: [NSArray arrayWithObject: logEntry] toiChatBuddy: buddyName]; +} + +- (BOOL)sendMessage: (NSString*)message toEmailAddress: (NSString*)emailAddress { + if(![message length] || ![emailAddress length]) + return NO; + + if([NSMailDelivery hasDeliveryClassBeenConfigured]) { + MailApplication *mail = [SBApplication applicationWithBundleIdentifier:@"com.apple.Mail"]; + + // create a new outgoing message object + NSString *subject = [NSString stringWithFormat: @"PG Chat Log: %@", [[PlayerDataController sharedController] playerName]]; + MailOutgoingMessage *emailMessage = [[[[mail classForScriptingClass:@"outgoing message"] alloc] initWithProperties: [NSDictionary dictionaryWithObjectsAndKeys: + subject, @"subject", + message, @"content", nil]] autorelease]; + + // add the object to the mail app + [[mail outgoingMessages] addObject: emailMessage]; + + // create a new recipient and add it to the recipients list + MailToRecipient *theRecipient = [[[[mail classForScriptingClass:@"to recipient"] alloc] initWithProperties: [NSDictionary dictionaryWithObject: emailAddress forKey: @"address"]] autorelease]; + [emailMessage.toRecipients addObject: theRecipient]; + + // send the message + @try { + if([emailMessage send]) { + return YES; + } else { + log(LOG_GENERAL, @"Email message could not be sent!"); + } + } + @catch (NSException * e) { + log(LOG_GENERAL, @"Email message could not be sent! %@", e); + return NO; + } + } else { + log(LOG_GENERAL, @"No account is configured in Mail!"); + } + return NO; +} + +- (BOOL)sendLogEntries: (NSArray*)logEntries toEmailAddress: (NSString*)emailAddress { + NSMutableString *message = [NSMutableString string]; + for(ChatLogEntry *chatEntry in logEntries) { + [message appendFormat: @"%@\n", [chatEntry wellFormattedText]]; + } + return [self sendMessage: message toEmailAddress: emailAddress]; +} + +- (BOOL)sendLogEntry: (ChatLogEntry*)logEntry toEmailAddress: (NSString*)emailAddress { + if(!logEntry) return NO; + return [self sendLogEntries: [NSArray arrayWithObject: logEntry] toEmailAddress: emailAddress]; +} + +#pragma mark - + + +- (IBAction)openRelayPanel: (id)sender { + [NSApp beginSheet: relayPanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil //@selector(sheetDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (IBAction)closeRelayPanel: (id)sender { + [NSApp endSheet: relayPanel returnCode: 1]; + [relayPanel orderOut: nil]; +} + +- (void)addChatAction: (ChatAction*)action { + int num = 2; + BOOL done = NO; + if(![action isKindOfClass: [ChatAction class]]) return; + if(![[action name] length]) return; + + // check to see if a route exists with this name + NSString *originalName = [action name]; + while(!done) { + BOOL conflict = NO; + for(ChatAction *anAction in self.chatActions) { + if( [[anAction name] isEqualToString: [action name]]) { + [action setName: [NSString stringWithFormat: @"%@ %d", originalName, num++]]; + conflict = YES; + break; + } + } + if(!conflict) done = YES; + } + + // save this route into our array + [chatActionsController addObject: action]; + //[self willChangeValueForKey: @"chatActions"]; + //[_routes addObject: routeSet]; + //[self didChangeValueForKey: @"chatActions"]; + + // update the current route + //changeWasMade = YES; + //[self setCurrentRouteSet: routeSet]; + //[waypointTable reloadData]; + + // log(LOG_GENERAL, @"Added route: %@", [routeSet name]); +} + +- (IBAction)createChatAction: (id)sender { + // make sure we have a valid name + NSString *actionName = [sender stringValue]; + if( [actionName length] == 0) { + NSBeep(); + return; + } + + // create a new route + [self addChatAction: [ChatAction chatActionWithName: actionName]]; + [sender setStringValue: @""]; +} + + +- (IBAction)something: (id)sender { + NSPredicate *predicate = [[[ruleEditor predicate] retain] autorelease]; + NSLog(@"%@", predicate); + + if([_chatLog count] && predicate) { + NSArray *newArray = [_chatLog filteredArrayUsingPredicate: predicate]; + NSLog(@"%@", newArray); + } +} + +- (IBAction)sendEmail: (id)sender { + if([NSMailDelivery hasDeliveryClassBeenConfigured]) { + ChatAction *chatAction = [[chatActionsController selectedObjects] lastObject]; + NSPredicate *predicate = [chatAction predicate]; + + if([_chatLog count] && predicate) { + NSArray *newArray = [_chatLog filteredArrayUsingPredicate: predicate]; + if([newArray count]) { + return; + } + } + } else { + log(LOG_GENERAL, @"Mail delivery is NOT configured."); + } +} + + +- (void)clearWhisperHistory{ + [_whisperHistory removeAllObjects]; +} + +// The key is our player's name! +- (void)addWhisper: (ChatLogEntry *)entry{ + + NSString *key = [entry playerName]; + // Lets store that we got whispered! + NSNumber *numWhispers = nil; + if ( ![_whisperHistory objectForKey: key] ){ + numWhispers = [NSNumber numberWithInt:1]; + } + else{ + numWhispers = [NSNumber numberWithInt:[[_whisperHistory objectForKey: key] intValue] + 1]; + } + [_whisperHistory setObject: numWhispers forKey: key]; + + BOOL checkWhispers = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmWhispered"] boolValue]; + + // Lets check to see if the numWhispers is too high! + if ( checkWhispers ){ + if ( [numWhispers intValue] >= [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmWhisperedTimes"] intValue] ){ + [[NSSound soundNamed: @"alarm"] play]; + log(LOG_GENERAL, @"[Chat] You have been whispered %@ times by %@. Last message: %@", numWhispers, [entry playerName], [entry text] ); + } + } +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + if ( aTableView == chatLogTable ) + return [_chatLog count]; + else if ( aTableView == whisperLogTable ) + return [_whisperLog count]; + + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + + // chat log + if ( aTableView == chatLogTable ){ + + if((rowIndex == -1) || (rowIndex >= [_chatLog count])) + return nil; + + + ChatLogEntry *entry = [_chatLog objectAtIndex: rowIndex]; + // [%u:%@] [%@] + // entry.relativeOrder, entry.timeStamp, entry.sequence, + return [NSString stringWithFormat: @"[%@] %@", [_timestampFormat stringFromDate: [entry dateStamp]], [entry wellFormattedText]]; + } + else if ( aTableView == whisperLogTable ){ + if((rowIndex == -1) || (rowIndex >= [_whisperLog count])) + return nil; + + + ChatLogEntry *entry = [_whisperLog objectAtIndex: rowIndex]; + // [%u:%@] [%@] + // entry.relativeOrder, entry.timeStamp, entry.sequence, + return [NSString stringWithFormat: @"[%@] %@", [_timestampFormat stringFromDate: [entry dateStamp]], [entry wellFormattedText]]; + } + + return nil; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (BOOL)tableViewCopy: (NSTableView*)tableView { + if ( tableView == chatLogTable ){ + NSIndexSet *rowIndexes = [tableView selectedRowIndexes]; + if([rowIndexes count] == 0) { + return NO; + } + NSPasteboard *pboard = [NSPasteboard generalPasteboard]; + [pboard declareTypes: [NSArray arrayWithObjects: NSStringPboardType, nil] owner: nil]; + + NSMutableString *stringVal = [NSMutableString string]; + int row = [rowIndexes firstIndex]; + while(row != NSNotFound) { + [stringVal appendFormat: @"%@\n", [[_chatLog objectAtIndex: row] wellFormattedText]]; + row = [rowIndexes indexGreaterThanIndex: row]; + } + [pboard setString: stringVal forType: NSStringPboardType]; + } + + return YES; +} + + +@end diff --git a/ChatLogEntry.h b/ChatLogEntry.h new file mode 100644 index 0000000..e74146c --- /dev/null +++ b/ChatLogEntry.h @@ -0,0 +1,54 @@ +// +// ChatLogController.h +// Pocket Gnome +// +// Created by Jon Drummond on 4/3/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + + +#import + + +@interface ChatLogEntry : NSObject { + NSDate *_dateStamp; + NSNumber *_sequence; + NSNumber *_timeStamp; + NSDictionary *_attributes; + + + NSUInteger _passNumber, _relativeOrder; +} + ++ (ChatLogEntry*)entryWithSequence: (NSInteger)sequence timeStamp: (NSInteger)timeStamp attributes: (NSDictionary*)attribs; + ++ (NSString*)nameForChatType: (NSString*)type; + + +@property (readwrite, assign) NSUInteger passNumber; +@property (readwrite, assign) NSUInteger relativeOrder; + +@property (readwrite, retain) NSDate *dateStamp; // date when PG finds the chat, not when it was actually sent +@property (readwrite, retain) NSNumber *timeStamp; // number embedded by wow; isn't always right... i'm not actually sure what it is +@property (readwrite, retain) NSNumber *sequence; +@property (readwrite, retain) NSDictionary *attributes; + +@property (readonly) NSString *type; +@property (readonly) NSString *typeName; +@property (readonly) NSString *typeVerb; +@property (readonly) NSString *channel; +@property (readonly) NSString *playerName; +@property (readonly) NSString *text; + +@property (readonly) BOOL isEmote; +@property (readonly) BOOL isSpoken; +@property (readonly) BOOL isWhisper; +@property (readonly) BOOL isWhisperSent; +@property (readonly) BOOL isWhisperReceived; +@property (readonly) BOOL isChannel; + +@property (readonly) NSArray *whisperTypes; + +@property (readonly) NSString *wellFormattedText; + +@end diff --git a/ChatLogEntry.m b/ChatLogEntry.m new file mode 100644 index 0000000..b33219a --- /dev/null +++ b/ChatLogEntry.m @@ -0,0 +1,289 @@ +// +// ChatLogController.h +// Pocket Gnome +// +// Created by Jon Drummond on 4/3/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "ChatLogEntry.h" + +#define ChatEntryTypeKey @"Type" +#define ChatEntryChannelKey @"Channel" +#define ChatEntryPlayerNameKey @"Player Name" +#define ChatEntryTextKey @"Text" + +@implementation ChatLogEntry + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.sequence = nil; + self.attributes = nil; + self.dateStamp = nil; + self.timeStamp = nil; + } + return self; +} + +- (void) dealloc +{ + self.sequence = nil; + self.attributes = nil; + self.dateStamp = nil; + self.timeStamp = nil; + [super dealloc]; +} + ++ (ChatLogEntry*)entryWithSequence: (NSInteger)sequence timeStamp: (NSInteger)timeStamp attributes: (NSDictionary*)attribs { + ChatLogEntry *newEntry = [[ChatLogEntry alloc] init]; + newEntry.dateStamp = [NSDate date]; + newEntry.timeStamp = [NSNumber numberWithInteger: timeStamp]; + newEntry.sequence = [NSNumber numberWithInteger: sequence]; + newEntry.attributes = attribs; + + NSString *newText = @""; + if([newEntry.text length] && ([newEntry.text rangeOfString: @"|c"].location != NSNotFound)) { + // there is likely an link in this text. try and parse it/them out... + // " |cff1eff00|Hitem:38072:0:0:0:0:0:0:1897089536:75|h[Thunder Capacitor]|h|r" + // " |cff4e96f7|Htalent:1405:-1|h[Improved Retribution Aura]|h|r + + NSScanner *scanner = [NSScanner scannerWithString: newEntry.text]; + [scanner setCaseSensitive: YES]; + [scanner setCharactersToBeSkipped: nil]; + while(1) { + NSString *temp = nil; + if([scanner scanUpToString: @"|c" intoString: &temp]) { + newText = [newText stringByAppendingString: temp]; + if([scanner scanUpToString: @"|h" intoString: nil] && [scanner scanString: @"|h" intoString: nil]) { + if([scanner scanUpToString: @"|h|r" intoString: &temp] && [scanner scanString: @"|h|r" intoString: nil]) { + newText = [newText stringByAppendingString: temp]; + } else { + break; + } + } else { + break; + } + } else { + break; + } + } + } + + if([newText length]) { + NSMutableDictionary *newAttribs = [NSMutableDictionary dictionaryWithDictionary: newEntry.attributes]; + [newAttribs setObject: newText forKey: ChatEntryTextKey]; + newEntry.attributes = newAttribs; + } + + return [newEntry autorelease]; +} + +- (BOOL)isEqual: (id)object { + if( [object isKindOfClass: [self class]] ) { + ChatLogEntry *other = (ChatLogEntry*)object; + return ([self.sequence isEqualToNumber: other.sequence] && + [self.type isEqualToString: other.type] && + [self.channel isEqualToString: other.channel] && + [self.playerName isEqualToString: other.playerName] && + [self.text isEqualToString: other.text]); + } + return NO; +} + ++ (NSString*)nameForChatType: (NSString*)type { + NSInteger chan = [type integerValue]; + switch(chan) { + case 0: + return @"Addon"; break; + case 1: + return @"Say"; break; + case 2: + return @"Party"; break; + case 3: + return @"Raid"; break; + case 4: + return @"Guild"; break; + case 5: + return @"Officer"; break; + case 6: + return @"Yell"; break; + case 7: + return @"Whisper (Received)"; break; + case 8: + return @"Whisper (Mob)"; break; + case 9: + return @"Whisper (Sent)"; break; + case 10: + return @"Emote"; break; + case 11: + return @"Emote (Text)"; break; + case 12: + return @"Monster (Say)"; break; + case 13: + return @"Monster (Party)"; break; + case 14: + return @"Monster (Yell)"; break; + case 15: + return @"Monster (Whisper)"; break; + case 16: + return @"Monster (Emote)"; break; + case 17: + return @"Channel"; break; + case 18: + return @"Channel (Join)"; break; + case 19: + return @"Channel (Leave)"; break; + case 20: + return @"Channel (List)"; break; + case 21: + return @"Channel (Notice)"; break; + case 22: + return @"Channel (Notice User)"; break; + case 23: + return @"AFK"; break; + case 24: + return @"DND"; break; + case 25: + return @"Ignored"; break; + case 26: + return @"Skill"; break; + case 27: + return @"Loot"; break; + case 28: + return @"System"; break; + // lots of unknown in here [29-34] + case 35: + return @"BG (Neutral)"; break; + case 36: + return @"BG (Alliance)"; break; + case 37: + return @"BG (Horde)"; break; + case 38: + return @"Combat Faction Change (wtf?)"; break; + case 39: + return @"Raid Leader"; break; + case 40: + return @"Raid Warning"; break; + case 41: + return @"Raid Warning (Boss Whisper)"; break; + case 42: + return @"Raid Warning (Boss Emote)"; break; + case 43: + return @"Filtered"; break; + case 44: + return @"Battleground"; break; + case 45: + return @"Battleground (Leader)"; break; + case 46: + return @"Restricted"; break; + case 53: + return @"RealChat (sent)"; break; + case 54: + return @"RealChat (received)"; break; + // case 47 - 56, channels 1 through 10? + } + return [NSString stringWithFormat: @"Unknown (%@)", type]; +} + +@synthesize passNumber = _passNumber; +@synthesize relativeOrder = _relativeOrder; + +@synthesize sequence = _sequence; +@synthesize timeStamp = _timeStamp; +@synthesize dateStamp = _dateStamp; +@synthesize attributes = _attributes; + +- (NSString*)type { + return [self.attributes objectForKey: ChatEntryTypeKey]; +} + +- (NSString*)typeName { + return [isa nameForChatType: self.type]; +} + +- (NSString*)typeVerb { + switch([self.type integerValue]) { + case 1: + case 53: + return @"says"; break; + case 6: + return @"yells"; break; + case 54: + case 7: + case 8: + return @"whispers"; break; + } + return nil; +} + +- (NSString*)channel { + return [self.attributes objectForKey: ChatEntryChannelKey]; +} + +- (NSString*)playerName { + return [self.attributes objectForKey: ChatEntryPlayerNameKey]; +} + +- (NSString*)text { + return [self.attributes objectForKey: ChatEntryTextKey]; +} + +- (NSString*)description { + return [NSString stringWithFormat: @"<%@ -%u:%u- [%@] %@: \"%@\"%@>", isa, self.passNumber, self.relativeOrder, [ChatLogEntry nameForChatType: self.type], self.playerName, self.text, ([self.channel length] ? [NSString stringWithFormat: @" (%@)", self.channel] : @"")]; +} + +- (BOOL)isEmote { + NSInteger type = [self.type integerValue]; + return ((type == 10) || (type == 11)); +} + +- (BOOL)isSpoken { + NSInteger type = [self.type integerValue]; + return ((type == 1) || (type == 6) || [self isWhisperReceived]); +} + +- (BOOL)isWhisper { + NSInteger type = [self.type integerValue]; + return ((type == 7) || (type == 8) || (type == 9)); +} + +- (NSArray*)spokenTypes { + return [NSArray arrayWithObjects: @"1", @"6", nil]; +} + +- (NSArray*)whisperTypes { + return [NSArray arrayWithObjects: @"7", @"8", @"9", @"53", @"54", nil]; +} + +- (BOOL)isWhisperSent { + NSInteger type = [self.type integerValue]; + return (type == 9); +} + +- (BOOL)isWhisperReceived { + NSInteger type = [self.type integerValue]; + return ((type == 7) || (type == 8)); +} + +- (BOOL)isChannel { + NSInteger type = [self.type integerValue]; + return ((type >= 17) && (type <= 22) && [[self channel] length]); +} + +- (NSString*)wellFormattedText { + + if([self isEmote]) { + return [NSString stringWithFormat: @"%@ %@", [self playerName], [self text]]; + } else if([self isChannel]) { + return [NSString stringWithFormat: @"[%@] [%@] %@", [self channel], [self playerName], [self text]]; + } else if([self isSpoken]) { + return [NSString stringWithFormat: @"[%@] %@: %@", [self playerName], [self typeVerb], [self text]]; + } else if([self isWhisperSent]) { + return [NSString stringWithFormat: @"To [%@]: %@", [self playerName], [self text]]; + } + return [NSString stringWithFormat: @"[%@] [%@] %@", [self playerName], [self typeName], [self text]]; +} + +@end diff --git a/ClientDbDefines.h b/ClientDbDefines.h new file mode 100644 index 0000000..e96d1b0 --- /dev/null +++ b/ClientDbDefines.h @@ -0,0 +1,135 @@ + +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: ClientDbDefines.h 315 2010-04-14 04:12:45Z Tanaris4 $ + * + */ + +typedef struct SpellDbc{ + uint Id; // 0 + uint Category; + uint Dispel; + uint Mechanic; // wonder how to know what all these are? but this can be Mounted (0x15 - for swift + non-swift flying) + uint Attributes; + uint AttributesEx; // 5 + uint AttributesEx2; + uint AttributesEx3; + uint AttributesEx4; + uint AttributesEx5; + uint AttributesEx6; // 10 + uint AttributesEx7; + uint Stances; + uint unk_320_2; + uint StancesNot; + uint unk_320_3; // 15 + uint Targets; + uint TargetCreatureType; + uint RequiresSpellFocus; + uint FacingCasterFlags; + uint CasterAuraState; // 20 + uint TargetAuraState; + uint CasterAuraStateNot; + uint TargetAuraStateNot; + uint casterAuraSpell; + uint targetAuraSpell; // 25 + uint excludeCasterAuraSpell; + uint excludeTargetAuraSpell; + uint CastingTimeIndex; // Need to look this up in another table for the exact value, wtf? y blizz y!!! + uint RecoveryTime; + uint CategoryRecoveryTime; // 30 (cooldown, divide it by 1000) + uint InterruptFlags; + uint AuraInterruptFlags; + uint ChannelInterruptFlags; + uint procFlags; + uint procChance; // 35 + uint procCharges; + uint maxLevel; + uint baseLevel; + uint spellLevel; + uint DurationIndex; // 40 + uint powerType; + uint manaCost; + uint manaCostPerlevel; + uint manaPerSecond; + uint manaPerSecondPerLevel; // 45 + uint rangeIndex; + float speed; + uint modalNextSpell; + uint StackAmount; + uint Totem[2]; // 50-51 + int Reagent[8]; // 52-59 + uint ReagentCount[8]; // 60-67 + int EquippedItemClass; // 68 + int EquippedItemSubClassMask; // 69 + int EquippedItemInventoryTypeMask; // 70 + uint Effect[3]; // 71-73 + int EffectDieSides[3]; // 74-76 + int EffectBaseDice[3]; // 77-79 + float EffectDicePerLevel[3]; // 80-82 + float EffectRealPointsPerLevel[3]; // 83-85 + int EffectBasePoints[3]; // 86-88 + uint EffectMechanic[3]; // 89-91 + uint EffectImplicitTargetA[3]; // 92-94 + uint EffectImplicitTargetB[3]; // 95-97 + uint EffectRadiusIndex[3]; // 98-100 + uint EffectChainTarget[3]; // 101-103 (swapped this with EffectApplyAuraName @ 110) + uint EffectAmplitude[3]; // 104-106 + float EffectMultipleValue[3]; // 107-109 + uint EffectApplyAuraName[3]; // 110-112 (at 110 found 18376 for a swift flying mount, 18357 for slow mount, which is the mounted aura - seems like this should be EffectApplyAuraName) + uint EffectItemType[3]; // 113-115 + int EffectMiscValue[3]; // 116-118 + int EffectMiscValueB[3]; // 119-121 + uint EffectTriggerSpell[3]; // 122-124 + float EffectPointsPerComboPoint[3]; // 125-127 + uint EffectSpellClassMask[3]; // 128-130 Flag96 + uint SpellVisual[2]; // 131-132 + uint SpellIconID; + uint activeIconID; + uint spellPriority; // 135 + uint SpellName; + uint Rank; + uint Description; + uint ToolTip; + uint ManaCostPercentage; // 140 + uint StartRecoveryCategory; + uint StartRecoveryTime; + uint MaxTargetLevel; + uint SpellFamilyName; + uint SpellFamilyFlags[3]; // 145-147 Flag96 + uint MaxAffectedTargets; + uint DmgClass; + uint PreventionType; // 150 + uint StanceBarOrder; + float DmgMultiplier[3]; // 152-154 + uint MinFactionId; // 155 + uint MinReputation; + uint RequiredAuraVision; + uint TotemCategory[2]; // 158-160 + int AreaGroupId; + int SchoolMask; + uint runeCostID; + uint spellMissileID; + uint PowerDisplayId; // 165 + float unk_320_4[3]; // 166-168 + uint spellDescriptionVariableID; + uint SpellDifficultyId; // 170 +} SpellDbc; \ No newline at end of file diff --git a/Combat.png b/Combat.png new file mode 100644 index 0000000..d0ba9a2 Binary files /dev/null and b/Combat.png differ diff --git a/CombatController.h b/CombatController.h new file mode 100644 index 0000000..0a268d3 --- /dev/null +++ b/CombatController.h @@ -0,0 +1,121 @@ +// +// CombatController.h +// Pocket Gnome +// +// Created by Josh on 12/19/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class ChatController; +@class MobController; +@class BotController; +@class MovementController; +@class PlayerDataController; +@class PlayersController; +@class BlacklistController; +@class AuraController; +@class MacroController; +@class BindingsController; + +@class Position; +@class Unit; + +#define UnitDiedNotification @"UnitDiedNotification" +#define UnitTappedNotification @"UnitTappedNotification" +#define UnitEnteredCombat @"UnitEnteredCombat" + +@interface CombatController : NSObject { + IBOutlet Controller *controller; + IBOutlet PlayerDataController *playerData; + IBOutlet PlayersController *playersController; + IBOutlet BotController *botController; + IBOutlet MobController *mobController; + IBOutlet ChatController *chatController; + IBOutlet MovementController *movementController; + IBOutlet BlacklistController *blacklistController; + IBOutlet AuraController *auraController; + IBOutlet MacroController *macroController; + IBOutlet BindingsController *bindingsController; + + // three different types of units to be tracked at all times + Unit *_attackUnit; + Unit *_friendUnit; + Unit *_addUnit; + Unit *_castingUnit; // the unit we're casting on! This will be one of the above 3! + + IBOutlet NSPanel *combatPanel; + IBOutlet NSTableView *combatTable; + + BOOL _inCombat; + BOOL _hasStepped; + + NSDate *_enteredCombat; + + NSMutableArray *_unitsAttackingMe; + NSMutableArray *_unitsAllCombat; // meant for the display table ONLY! + NSMutableArray *_unitsDied; + NSMutableArray *_unitsMonitoring; + + NSMutableDictionary *_unitLeftCombatCount; + NSMutableDictionary *_unitLeftCombatTargetCount; +} + +@property BOOL inCombat; +@property (readonly, retain) Unit *attackUnit; +@property (readonly, retain) Unit *castingUnit; +@property (readonly, retain) Unit *addUnit; +@property (readonly, retain) NSMutableArray *unitsAttackingMe; +@property (readonly, retain) NSMutableArray *unitsDied; +@property (readonly, retain) NSMutableArray *unitsMonitoring; + +// weighted units we're in combat with +- (NSArray*)combatList; + +// OUTPUT: PerformProcedureWithState - used to determine which unit to act on! +// Also used for Proximity Count check +- (NSArray*)validUnitsWithFriendly:(BOOL)includeFriendly onlyHostilesInCombat:(BOOL)onlyHostilesInCombat; + +// OUTPUT: return all adds +- (NSArray*)allAdds; + +// OUTPUT: find a unit to attack, or heal +-(Unit*)findUnitWithFriendly:(BOOL)includeFriendly onlyHostilesInCombat:(BOOL)onlyHostilesInCombat; +-(Unit*)findUnitWithFriendlyToEngage:(BOOL)includeFriendly onlyHostilesInCombat:(BOOL)onlyHostilesInCombat; + +// INPUT: from CombatProcedure within PerformProcedureWithState +- (void)stayWithUnit:(Unit*)unit withType:(int)type; + +// INPUT: called when combat should be over +- (void)cancelCombatAction; +- (void)cancelAllCombat; + +// INPUT: called when we start/stop the bot +- (void)resetAllCombat; +- (void)resetUnitsDied; + +// INPUT: from PlayerDataController when a user enters combat +- (void)doCombatSearch; + +- (NSArray*)friendlyUnits; +- (NSArray*)friendlyCorpses; + +// OUPUT: could also be using [playerController isInCombat] +- (BOOL)combatEnabled; + +// OUPUT: returns the weight of a unit +- (int)weight: (Unit*)unit; +- (int)weight: (Unit*)unit PlayerPosition:(Position*)playerPosition; + +// OUTPUT: valid targets in range based on combat profile +- (NSArray*)enemiesWithinRange:(float)range; + +// UI +- (void)showCombatPanel; +- (void)updateCombatTable; + +- (NSString*)unitHealthBar: (Unit*)unit; + +@end diff --git a/CombatController.m b/CombatController.m new file mode 100644 index 0000000..9468bcb --- /dev/null +++ b/CombatController.m @@ -0,0 +1,1936 @@ +// +// CombatController.m +// Pocket Gnome +// +// Created by Josh on 12/19/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "CombatController.h" +#import "PlayersController.h" +#import "AuraController.h" +#import "MobController.h" +#import "BotController.h" +#import "PlayerDataController.h" +#import "BlacklistController.h" +#import "MovementController.h" +#import "Controller.h" +#import "AuraController.h" +#import "MacroController.h" + +#import "Unit.h" +#import "Rule.h" +#import "CombatProfile.h" +#import "Behavior.h" + +#import "ImageAndTextCell.h" + +@interface CombatController () +@property (readwrite, retain) Unit *attackUnit; +@property (readwrite, retain) Unit *castingUnit; +@property (readwrite, retain) Unit *addUnit; + +@end + +@interface CombatController (Internal) +- (NSArray*)friendlyUnits; +- (NSRange)levelRange; +- (int)weight: (Unit*)unit PlayerPosition:(Position*)playerPosition; +- (void)stayWithUnit; +- (NSArray*)combatListValidated; +- (void)updateCombatTable; +- (void)monitorUnit: (Unit*)unit; +@end + +@implementation CombatController + +- (id) init{ + self = [super init]; + if (self == nil) return self; + + _attackUnit = nil; + _friendUnit = nil; + _addUnit = nil; + _castingUnit = nil; + + _enteredCombat = nil; + + _inCombat = NO; + _hasStepped = NO; + + _unitsAttackingMe = [[NSMutableArray array] retain]; + _unitsAllCombat = [[NSMutableArray array] retain]; + _unitLeftCombatCount = [[NSMutableDictionary dictionary] retain]; + _unitLeftCombatTargetCount = [[NSMutableDictionary dictionary] retain]; + _unitsDied = [[NSMutableArray array] retain]; + _unitsMonitoring = [[NSMutableArray array] retain]; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerHasDied:) name: PlayerHasDiedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerEnteringCombat:) name: PlayerEnteringCombatNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerLeavingCombat:) name: PlayerLeavingCombatNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(invalidTarget:) name: ErrorInvalidTarget object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(haveNoTarget:) name: ErrorHaveNoTarget object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(targetOutOfRange:) name: ErrorTargetOutOfRange object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(targetNotInLOS:) name: ErrorTargetNotInLOS object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(targetNotInFront:) name: ErrorTargetNotInFront object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(morePowerfullSpellActive:) name: ErrorMorePowerfullSpellActive object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(unitDied:) name: UnitDiedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(unitTapped:) name: UnitTappedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(cantDoThatWhileStunned:) name: ErrorCantDoThatWhileStunned object: nil]; + + return self; +} + +- (void) dealloc +{ + [_unitsAttackingMe release]; + [_unitsAllCombat release]; + [_unitLeftCombatCount release]; + [_unitLeftCombatTargetCount release]; + [_unitsDied release]; + [_unitsMonitoring release]; + + [_castingUnit release]; + [_attackUnit release]; + [_friendUnit release]; + [_addUnit release]; + + [super dealloc]; +} + +@synthesize attackUnit = _attackUnit; +@synthesize castingUnit = _castingUnit; +@synthesize addUnit = _addUnit; +@synthesize inCombat = _inCombat; +@synthesize unitsAttackingMe = _unitsAttackingMe; +@synthesize unitsDied = _unitsDied; +@synthesize unitsMonitoring = _unitsMonitoring; + +#pragma mark - + +int DistFromPositionCompare(id unit1, id unit2, void *context) { + + //PlayerDataController *playerData = (PlayerDataController*)context; [playerData position]; + Position *position = (Position*)context; + + float d1 = [position distanceToPosition: [unit1 position]]; + float d2 = [position distanceToPosition: [unit2 position]]; + if (d1 < d2) + return NSOrderedAscending; + else if (d1 > d2) + return NSOrderedDescending; + else + return NSOrderedSame; +} + +int WeightCompare(id unit1, id unit2, void *context) { + + NSDictionary *dict = (NSDictionary*)context; + + NSNumber *w1 = [dict objectForKey:[NSNumber numberWithLongLong:[unit1 cachedGUID]]]; + NSNumber *w2 = [dict objectForKey:[NSNumber numberWithLongLong:[unit2 cachedGUID]]]; + + int weight1=0, weight2=0; + + if ( w1 ) + weight1 = [w1 intValue]; + if ( w2 ) + weight2 = [w2 intValue]; + + log(LOG_DEV, @"WeightCompare: (%@)%d vs. (%@)%d", unit1, weight1, unit2, weight2); + + if (weight1 > weight2) + return NSOrderedAscending; + else if (weight1 < weight2) + return NSOrderedDescending; + else + return NSOrderedSame; + + return NSOrderedSame; +} + +#pragma mark [Input] Notifications + +- (void)playerEnteringCombat: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + log(LOG_DEV, @"------ Player Entering Combat ------"); + + _inCombat = YES; +} + +- (void)playerLeavingCombat: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + log(LOG_DEV, @"------ Player Leaving Combat ------"); + + _inCombat = NO; + +// [self resetAllCombat]; // It's possible that we've left combat as we're casting on a new target so this is bad. +} + +- (void)playerHasDied: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + log(LOG_COMBAT, @"Player has died!"); + + [self resetAllCombat]; + _inCombat = NO; +} + +- (void)unitDied: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + log(LOG_DEV, @"%@ died, removing from combat list!", unit); + + BOOL wasCastingUnit = NO; + if ( _castingUnit && [unit cachedGUID] == [_castingUnit cachedGUID] ) wasCastingUnit = YES; + + // Kill the monitoring if called from else where + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + + if ( [_unitsMonitoring containsObject: unit] ) [_unitsMonitoring removeObject: unit]; + + if ( wasCastingUnit ) { + [_castingUnit release]; + _castingUnit = nil; + + // Casting unit dead, reset! + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [botController cancelCurrentProcedure]; + [botController cancelCurrentEvaluation]; + [movementController resetMovementState]; + } + + // If this was our attacking unit + if ( _attackUnit && [unit cachedGUID] == [_attackUnit cachedGUID] ) { + [_attackUnit release]; + _attackUnit = nil; + } + + // If this was our friend unit + if ( _friendUnit && [unit cachedGUID] == [_friendUnit cachedGUID] ) { + [_friendUnit release]; + _friendUnit = nil; + } + + // If this was our add unit + if ( _addUnit && [unit cachedGUID] == [_addUnit cachedGUID] ) { + // Make sure our add is on the lists + if ( ![_unitsAttackingMe containsObject: unit] ) [_unitsAttackingMe addObject: unit]; + if ( ![_unitsAllCombat containsObject: unit] ) [_unitsAllCombat addObject: unit]; + [_addUnit release]; _addUnit = nil; + } + + if ( [_unitsAllCombat containsObject: unit] ) [_unitsAllCombat removeObject: unit]; + if ( [_unitsAttackingMe containsObject: unit] ) [_unitsAttackingMe removeObject: unit]; + + // Add this to our internal list + [_unitsDied addObject: unit]; + + if ( _inCombat && [_unitsAttackingMe count] == 0 ) _inCombat = NO; + + // If this was our casting unit + if ( wasCastingUnit ) [botController evaluateSituation]; + +} + +// invalid target +- (void)invalidTarget: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + +// log(LOG_COMBAT, @"%@ %@ is an Invalid Target, blacklisting.", [self unitHealthBar: unit], unit); +// [blacklistController blacklistObject: unit withReason:Reason_InvalidTarget]; + + [self cancelAllCombat]; +} + +// have no target +- (void)haveNoTarget: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + log(LOG_COMBAT, @"%@ %@ gave error You Have No Target!", [self unitHealthBar: unit], unit); +// [blacklistController blacklistObject: unit withReason:Reason_InvalidTarget]; + +// log(LOG_COMBAT, @"%@ %@ is an Invalid Target, blacklisting.", [self unitHealthBar: unit], unit); +// [blacklistController blacklistObject: unit withReason:Reason_InvalidTarget]; + + [self cancelAllCombat]; +} + +// not in LoS +- (void)targetNotInLOS: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + log(LOG_COMBAT, @"%@ %@ is not in LoS, blacklisting.", [self unitHealthBar: unit], unit); + [blacklistController blacklistObject:unit withReason:Reason_NotInLoS]; + + [self cancelAllCombat]; + +} + +// target is out of range +- (void)targetOutOfRange: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + [botController cancelCurrentProcedure]; + [botController cancelCurrentEvaluation]; + + // if we can correct this error + if ( ![playerData isFriendlyWithFaction: [unit factionTemplate]] && [unit isInCombat] && [unit isTargetingMe] && [movementController checkUnitOutOfRange: unit] ) { + [botController actOnUnit: unit]; + return; + } + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + [self cancelAllCombat]; + + log(LOG_COMBAT, @"%@ %@ is out of range, disengaging.", [self unitHealthBar: unit], unit); + [blacklistController blacklistObject:unit withReason:Reason_OutOfRange]; + [botController evaluateSituation]; +} + +- (void)morePowerfullSpellActive: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + [blacklistController blacklistObject: unit withReason:Reason_RecentlyHelpedFriend]; + [self cancelAllCombat]; +} + +- (void)cantDoThatWhileStunned: (NSNotification*)notification { + if ( !botController.isBotting ) return; + + Unit *unit = [notification object]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + [self cancelAllCombat]; +} + +- (void)targetNotInFront: (NSNotification*)notification { + if ( !botController.isBotting ) return; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + Unit *unit = [notification object]; + + log(LOG_COMBAT, @"%@ %@ is not in front, adjusting.", [self unitHealthBar: unit] , unit); + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + [botController cancelCurrentProcedure]; + [botController cancelCurrentEvaluation]; + if ([movementController isActive] ) [movementController resetMovementState]; + + [movementController turnTowardObject:unit]; + [movementController establishPlayerPosition]; + [botController actOnUnit: unit]; + +} + +- (void)unitTapped: (NSNotification*)notification { + if ( !botController.isBotting ) return; + if ( botController.pvpIsInBG ) return; + + Unit *unit = [notification object]; + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + log(LOG_COMBAT, @"%@ %@ tapped by another player, disengaging!", [self unitHealthBar: unit] ,unit); + + if ( unit == _castingUnit ) { + [botController cancelCurrentProcedure]; + [self cancelAllCombat]; + [_unitsAllCombat removeObject: unit]; + [_unitsAttackingMe removeObject: unit]; + [botController evaluateSituation]; + } +} + +#pragma mark Public + +// list of units we're in combat with, XXX NO friendlies XXX +// This is now updated to include units attacking party members +- (NSArray*)combatList { + + // Looks like this is called from the PlayerConroller even the bot is off + if ( !botController.isBotting ) return nil; + + if ( [playerData isDead] || [playerData percentHealth] == 0 ) return nil; + + //log(LOG_FUNCTION, @"combatList"); + + // Seems this isn't upating so I'll stick it here for now? + [self doCombatSearch]; + + NSMutableArray *units = [NSMutableArray array]; + + if ( [_unitsAttackingMe count] ) [units addObjectsFromArray:_unitsAttackingMe]; + + // add the other units if we need to + if ( _attackUnit!= nil && ![units containsObject:_attackUnit] && ![blacklistController isBlacklisted:_attackUnit] && ![_attackUnit isDead] && ![_unitsDied containsObject: _attackUnit] ) { + [units addObject:(Unit*)_attackUnit]; + log(LOG_DEV, @"Adding attack unit: %@", _attackUnit); + } + + // add our add + if ( _addUnit != nil && ![units containsObject:_addUnit] && ![blacklistController isBlacklisted:_addUnit] && ![_addUnit isDead] && ![_unitsDied containsObject: _addUnit] ) { + [units addObject:(Unit*)_addUnit]; + log(LOG_COMBAT, @"Adding add unit: %@", _addUnit); + } + + float attackRange = [botController.theCombatProfile engageRange]; + if ( [botController.theCombatProfile attackRange] > [botController.theCombatProfile engageRange] ) + attackRange = [botController.theCombatProfile attackRange]; + + UInt64 playerID; + Player *player; + UInt64 targetID; + Mob *targetMob; + Player *targetPlayer; + + Position *playerPosition = [playerData position]; + float distanceToTarget = 0.0f; + + // Add our pets target + if ( [botController.theBehavior usePet] && [playerData pet] && ![[playerData pet] isDead] && [[playerData pet] isInCombat] ) { + + targetID = [[playerData pet] targetID]; + if ( targetID > 0x0) { + log(LOG_DEV, @"Pet has a target."); + Mob *targetMob = [mobController mobWithGUID:targetID]; + if ( targetMob && ![targetMob isDead] && ![targetMob percentHealth] == 0 && ![_unitsDied containsObject: (Unit*)targetMob] && [targetMob isInCombat] ) { + [units addObject:targetMob]; + log(LOG_DEV, @"Adding Pet's mob: %@", targetMob); + } else { + targetPlayer = [playersController playerWithGUID: targetID]; + if ( targetPlayer && ![targetPlayer isDead] && ![targetPlayer percentHealth] == 0 && ![_unitsDied containsObject: (Unit*)targetPlayer] && [targetPlayer isInCombat] && ![playerData isFriendlyWithFaction: [targetPlayer factionTemplate]] ) { + log(LOG_DEV, @"Adding Pet's PvP target: %@", targetPlayer); + [units addObject: (Unit*)targetPlayer]; + } + } + } + } + + // If we're in party mode we'll add the units our party members are in combat with + if ( botController.theCombatProfile.partyEnabled ) { + + // Check only party members + int i; + for (i=1;i<6;i++) { + + // If there are no more party members + playerID = [playerData PartyMember: i]; + if ( playerID <= 0x0) break; + + player = [playersController playerWithGUID: playerID]; + if ( !player || ![player isValid] || [player isDead] || [player percentHealth] == 0 || ![player isInCombat] ) continue; + + targetID = [player targetID]; + + if ( !targetID || targetID <= 0x0) continue; + + // Try player targets + targetPlayer = [playersController playerWithGUID: targetID]; + if ( targetPlayer ) { + if ( ![targetPlayer isValid] || [_unitsDied containsObject: (Unit*)targetPlayer] || [targetPlayer isDead] || [targetPlayer percentHealth] == 0 ) continue; + if ( [units containsObject: (Unit*)targetPlayer] ) continue; + if ( ![targetPlayer isInCombat] ) continue; + if ( [playerData isFriendlyWithFaction: [targetPlayer factionTemplate]] ) continue; + distanceToTarget = [playerPosition distanceToPosition:[(Unit*)targetPlayer position]]; + if ( distanceToTarget > attackRange ) continue; + log(LOG_DEV, @"Adding Party members PvP target: %@ for %@", targetPlayer, player); + [units addObject: (Unit*)targetPlayer]; + targetPlayer = nil; + continue; + } + + // Try mob targets + targetMob = [mobController mobWithGUID: targetID]; + if ( targetMob ) { + if ( ![targetMob isValid] || [_unitsDied containsObject: (Unit*)targetMob] || [targetMob isDead] || [targetMob percentHealth] == 0 ) continue; + if ( [units containsObject: targetMob] ) continue; + if ( ![targetMob isInCombat] ) continue; + if ( [playerData isFriendlyWithFaction: [targetMob factionTemplate]] ) continue; + + distanceToTarget = [playerPosition distanceToPosition:[targetMob position]]; + if ( distanceToTarget > attackRange ) continue; + log(LOG_DEV, @"Adding Party mob: %@ for %@", targetMob, player); + [units addObject: targetMob]; + targetMob = nil; + continue; + } + } + + } else + + // Get the assist players target + if ( botController.assistUnit && [[botController assistUnit] isValid] && [[botController assistUnit] isInCombat] ) { + + targetID = [[botController assistUnit] targetID]; + if ( targetID > 0x0) { + log(LOG_DEV, @"Assist has a target."); + targetMob = [mobController mobWithGUID:targetID]; + if ( targetMob && ![targetMob isDead] && [targetMob percentHealth] != 0 && ![_unitsDied containsObject: (Unit*)targetMob] && [targetMob isInCombat] ) { + distanceToTarget = [playerPosition distanceToPosition:[targetMob position]]; + if ( distanceToTarget <= attackRange ) { + [units addObject:targetMob]; + log(LOG_DEV, @"Adding Assit's mob: %@", targetMob); + } + } + + targetPlayer = [playersController playerWithGUID: targetID]; + if ( targetPlayer && ![targetPlayer isDead] && ![_unitsDied containsObject: (Unit*)targetPlayer] && [targetPlayer isInCombat] && ![playerData isFriendlyWithFaction: [targetPlayer factionTemplate]] ) { + distanceToTarget = [playerPosition distanceToPosition:[(Unit*)targetPlayer position]]; + if ( distanceToTarget <= attackRange ) { + log(LOG_DEV, @"Adding Assist's PvP target: %@", player); + [units addObject: (Unit*)targetPlayer]; + } + } + } + } + + // sort + NSMutableDictionary *dictOfWeights = [NSMutableDictionary dictionary]; + for ( Unit *unit in units ) { + [dictOfWeights setObject: [NSNumber numberWithInt:[self weight:unit PlayerPosition:playerPosition]] forKey:[NSNumber numberWithUnsignedLongLong:[unit cachedGUID]]]; + } + + [units sortUsingFunction: WeightCompare context: dictOfWeights]; + + //log(LOG_DEV, @"combatList has %d units.", [units count]); + + return [[units retain] autorelease]; +} + +// out of the units that are attacking us, which are valid for us to attack back? +- (NSArray*)combatListValidated{ + + NSArray *units = [self combatList]; + NSMutableArray *validUnits = [NSMutableArray array]; + + Position *playerPosition = [playerData position]; + float vertOffset = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistVerticalOffset"] floatValue]; + + // range changes if the unit is friendly or not +// float distanceToTarget; +// float attackRange = ( botController.theCombatProfile.attackRange > botController.theCombatProfile.engageRange ) ? botController.theCombatProfile.attackRange : botController.theCombatProfile.engageRange; +// float range = ([playerData isFriendlyWithFaction: [unit factionTemplate]] ? botController.theCombatProfile.healingRange : attackRange); + + for ( Unit *unit in units ){ + + if ( [blacklistController isBlacklisted:unit] ) { + log(LOG_COMBAT, @"Not adding blacklisted unit to validated combat list: %@", unit); + continue; + } + + // ignore dead units + if ( [unit isDead] || [unit percentHealth] == 0 || [_unitsDied containsObject: unit] ) continue; + + // Ignore not valid units + if ( ![unit isValid] ) continue; + + // Ignore evading units + if ( ![unit isPlayer] && [unit isEvading] ) continue; + + // Ignore if vertical distance is too great + if ( [[unit position] verticalDistanceToPosition: playerPosition] > vertOffset ) continue; + +// distanceToTarget = [playerPosition distanceToPosition:[(Unit*)unit position]]; + +// if ( distanceToTarget > range ) continue; + + [validUnits addObject:unit]; + } + + // sort + NSMutableDictionary *dictOfWeights = [NSMutableDictionary dictionary]; + + for ( Unit *unit in validUnits ) + [dictOfWeights setObject: [NSNumber numberWithInt:[self weight:unit PlayerPosition:playerPosition]] forKey:[NSNumber numberWithUnsignedLongLong:[unit cachedGUID]]]; + + [validUnits sortUsingFunction: WeightCompare context: dictOfWeights]; + + log(LOG_DEV, @"combatListValidated has %d units.", [validUnits count]); + + if ( _inCombat && [validUnits count] == 0 ) _inCombat = NO; + + return [[validUnits retain] autorelease]; +} + + +- (BOOL)combatEnabled { + return botController.theCombatProfile.combatEnabled; +} + +// from performProcedureWithState +// this will keep the unit targeted! +- (void)stayWithUnit:(Unit*)unit withType:(int)type { + // Stop movement on our current castingUnit if need be + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + if ( !unit || unit == nil ) return; + + if ( [unit isDead] ) return; + + Unit *oldTarget = [_castingUnit retain]; + + [_castingUnit release]; _castingUnit = nil; + _castingUnit = [unit retain]; + + // enemy + if ( type == TargetEnemy ){ + _attackUnit = [unit retain]; + } + + // add + else if ( type == TargetAdd || type == TargetPat ) { + _addUnit = [unit retain]; + } + + // friendly + else if ( type == TargetFriend || type == TargetFriendlies || type == TargetPet ) { + _friendUnit = [unit retain]; + } + + // otherwise lets clear our target (we're either targeting no one or ourself) + else { + [_castingUnit release]; + _castingUnit = nil; + } + + // If we don't need to monitor or stay with this unit + if ( type == TargetFriend || type == TargetFriendlies || type == TargetPet || type == TargetSelf || type == TargetNone || [playerData isFriendlyWithFaction: [unit factionTemplate]] ) return; + + // remember when we started w/this unit + [_enteredCombat release]; _enteredCombat = [[NSDate date] retain]; + if ( !self.inCombat ) _inCombat = YES; + + // lets face our new unit! +// if ( unit != oldTarget ) { +// log(LOG_DEV, @"Facing new target! %@", unit); +// [movementController turnTowardObject:unit]; +// [movementController establishPlayerPosition]; // already in botController +// [movementController correctDirectionByTurning]; +// } + + // stop monitoring our "old" unit - we ONLY want to do this in PvP as we'd like to know when the unit dies! + if ( oldTarget && ( botController.pvpIsInBG || ![playerData isFriendlyWithFaction: [unit factionTemplate]] ) ) { + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: oldTarget]; + [oldTarget release]; + } + + log(LOG_DEV, @"Now staying with %@", unit); + if ( ![_unitsMonitoring containsObject: unit] ) { + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: unit]; + [self monitorUnit: unit]; + } + + [self stayWithUnit]; +} + +- (void)stayWithUnit { + // cancel other requests + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + + log(LOG_DEV, @"Staying with %@ in procedure %@", _castingUnit, [botController procedureInProgress]); + + if ( _castingUnit == nil ) { + log(LOG_COMBAT, @"No longer staying w/the unit"); + return; + } + + // dead + if ( [_castingUnit isDead] || [_castingUnit percentHealth] <= 0 ) { + log(LOG_COMBAT, @"Unit is dead! %@", _castingUnit); + return; + } + + // sanity checks + if ( ![_castingUnit isValid] || [blacklistController isBlacklisted:_castingUnit] ) { + log(LOG_COMBAT, @"STOP ATTACK: Invalid? (%d) Blacklisted? (%d)", ![_castingUnit isValid], [blacklistController isBlacklisted:_castingUnit]); + return; + } + + // sanity checks + if ( ![_castingUnit isPlayer] && [_castingUnit isEvading] ) { + log(LOG_COMBAT, @"STOP ATTACK: Evading? (%d)", [_castingUnit isEvading]); + return; + } + + if ( [playerData isDead] ){ + log(LOG_COMBAT, @"You died, stopping attack."); + return; + } + + // no longer in combat procedure + if ( botController.procedureInProgress != @"CombatProcedure" && botController.procedureInProgress != @"PreCombatProcedure" ) { + log(LOG_COMBAT, @"No longer in combat procedure, no longer staying with unit"); + return; + } + + float delay = 0.25f; + + // Let's not interfere if we're already moving + if ( [movementController isMoving] ) { + log(LOG_COMBAT, @"We've already moving so stay with unit will not interfere."); + [self performSelector: @selector(stayWithUnit) withObject: nil afterDelay: delay]; + return; + } + + BOOL isCasting = [playerData isCasting]; + + // check player facing vs. unit position + Position *playerPosition = [playerData position]; + float playerDirection = [playerData directionFacing]; + float distanceToCastingUnit = [[playerData position] distanceToPosition: [_castingUnit position]]; + float theAngle = [playerPosition angleTo: [_castingUnit position]]; + + // compensate for the 2pi --> 0 crossover + if(fabsf(theAngle - playerDirection) > M_PI) { + if(theAngle < playerDirection) theAngle += (M_PI*2); + else playerDirection += (M_PI*2); + } + + // find the difference between the angles + float angleTo = fabsf(theAngle - playerDirection); + + // ensure unit is our target if they feign + UInt64 unitGUID = [_castingUnit cachedGUID]; + if ( ( [playerData targetID] != unitGUID) && [_castingUnit isFeignDeath] ) [playerData targetGuid:unitGUID]; + + if( !isCasting ) { + + // if the difference is more than 90 degrees (pi/2) M_PI_2, reposition + if( (angleTo > 0.785f) ) { // changed to be ~45 degrees + log(LOG_COMBAT, @"%@ is behind us (%.2f). Repositioning.", _castingUnit, angleTo); + + if ( [movementController movementType] == MovementType_CTM && !botController.theBehavior.meleeCombat && distanceToCastingUnit < 3.0f ) + if ( [movementController jumpForward] ) log(LOG_COMBAT, @"Lunge and spin."); + + [movementController turnTowardObject: _castingUnit]; + delay = 0.5f; + } + + // move toward unit? + if ( botController.theBehavior.meleeCombat ) { + if ( [playerPosition distanceToPosition: [_castingUnit position]] > 5.0f ) { + log(LOG_COMBAT, @"[Combat] Moving to %@", _castingUnit); + if ( [movementController moveToObject:_castingUnit] ) { +// [self performSelector: @selector(stayWithUnit) withObject: nil afterDelay: delay]; + return; + } + } + } + } else { + + if( (angleTo > 0.2f) ) { + log(LOG_DEV, @"[Combat] Unit moving while casting (%.2f). Turning.", angleTo); + // set player facing while casting + [movementController turnTowardObject: _castingUnit]; + } + } + + [self performSelector: @selector(stayWithUnit) withObject: nil afterDelay: delay]; +} + +- (void)monitorUnit: (Unit*)unit { + + if ( ![_unitsMonitoring containsObject: unit] ) [_unitsMonitoring addObject: unit]; + + // invalid unit + if ( !unit || ![unit isValid] ) { + log(LOG_COMBAT, @"Unit isn't valid!?? %@", unit); + return; + } + + if ( [playerData isDead] ) { + log(LOG_DEV, @"Player died, stopping monitoring."); + return; + } + + if ( !botController.isBotting ) { + log(LOG_DEV, @"Bot no longer running, stopping monitoring."); + return; + } + +// if ( !self.inCombat ) { +// log(LOG_COMBAT, @"%@ %@: player is no longer in combat, canceling monitor.", [self unitHealthBar: unit], unit); +// return; +// } + + // unit died, fire off notification + if ( [unit isDead] || [unit percentHealth] <= 0 ) { + log(LOG_DEV, @"Firing death notification for unit %@", unit); + [[NSNotificationCenter defaultCenter] postNotificationName: UnitDiedNotification object: [[unit retain] autorelease]]; + return; + } + + // unit has ghost aura (so is dead, fire off notification) + NSArray *auras = [[AuraController sharedController] aurasForUnit: unit idsOnly: YES]; + if ( [auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]] ){ + log(LOG_COMBAT, @"%@ Firing death notification for player %@", [self unitHealthBar: unit], unit); + [[NSNotificationCenter defaultCenter] postNotificationName: UnitDiedNotification object: [[unit retain] autorelease]]; + return; + } + + // Tap check + if ( !botController.theCombatProfile.partyEnabled && !botController.isPvPing && !botController.pvpIsInBG && + [unit isTappedByOther] && [unit targetID] != [[playerData player] cachedGUID] ) { + + // Only do this for mobs. + Mob *mob = [mobController mobWithGUID:[unit cachedGUID]]; + if (mob && [mob isValid]) { + // Mob has been tapped by another player + log(LOG_DEV, @"Firing tapped notification for unit %@", unit); + [[NSNotificationCenter defaultCenter] postNotificationName: UnitTappedNotification object: [[unit retain] autorelease]]; + return; + } + } + + // Unit not in combat check + int leftCombatCount = [[_unitLeftCombatCount objectForKey:[NSNumber numberWithLongLong:[unit cachedGUID]]] intValue]; + + if ( ![unit isInCombat] ) { + + float secondsInCombat = leftCombatCount/10; + + log(LOG_DEV, @"%@ %@ not in combat now for %0.2f seconds", [self unitHealthBar: unit], unit, secondsInCombat); + leftCombatCount++; + + // If it's our target let's do some checks as we should be in combat + if ( [unit cachedGUID] == [_castingUnit cachedGUID] ) { + + // This is to set timer if the unit actually our target vs being an add + int leftCombatTargetCount = [[_unitLeftCombatTargetCount objectForKey:[NSNumber numberWithLongLong:[unit cachedGUID]]] intValue]; + + secondsInCombat = leftCombatTargetCount/10; + + float combatBlacklistDelay = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistTriggerNotInCombat"] floatValue]; + // [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistTriggerNotInCombat"] floatValue]; + + // not in combat after x seconds we blacklist for the short term, long enough to target something else or move + if ( secondsInCombat > combatBlacklistDelay ) { + _hasStepped = NO; + log(LOG_COMBAT, @"%@ Unit not in combat after %.2f seconds, blacklisting", [self unitHealthBar: unit], combatBlacklistDelay); + [blacklistController blacklistObject:unit withReason:Reason_NotInCombat]; + [self cancelAllCombat]; + return; + } + + leftCombatTargetCount++; + [_unitLeftCombatTargetCount setObject:[NSNumber numberWithInt:leftCombatTargetCount] forKey:[NSNumber numberWithLongLong:[unit cachedGUID]]]; + // log(LOG_DEV, @"%@ Monitoring %@", [self unitHealthBar: unit], unit); + } + + // Unit is an add or not our primary target + // after a minute stop monitoring + if ( secondsInCombat > 60 ){ + _hasStepped = NO; + log(LOG_COMBAT, @"%@ No longer monitoring %@, didn't enter combat after %d seconds.", [self unitHealthBar: unit], unit, secondsInCombat); + + leftCombatCount = 0; + [_unitLeftCombatCount setObject:[NSNumber numberWithInt:leftCombatCount] forKey:[NSNumber numberWithLongLong:[unit cachedGUID]]]; + + return; + } + + } else { + // log(LOG_DEV, @"%@ Monitoring %@", [self unitHealthBar: unit], unit); + leftCombatCount = 0; + } + + [_unitLeftCombatCount setObject:[NSNumber numberWithInt:leftCombatCount] forKey:[NSNumber numberWithLongLong:[unit cachedGUID]]]; + + [self performSelector:@selector(monitorUnit:) withObject:unit afterDelay:0.1f]; +} + +- (void)cancelCombatAction { + log(LOG_FUNCTION, @"cancelCombatAction"); + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + // reset our variables + [_castingUnit release]; _castingUnit = nil; + [_attackUnit release]; _attackUnit = nil; + [_addUnit release]; _addUnit = nil; + [_friendUnit release]; _friendUnit = nil; + + + [self performSelector:@selector(doCombatSearch) withObject:nil afterDelay:0.1f]; +} + +- (void)cancelAllCombat { + log(LOG_FUNCTION, @"cancelAllCombat"); + + // reset our variables + [_castingUnit release]; _castingUnit = nil; + [_attackUnit release]; _attackUnit = nil; + [_addUnit release]; _addUnit = nil; + [_friendUnit release]; _friendUnit = nil; + + [_unitLeftCombatCount removeAllObjects]; + [_unitLeftCombatTargetCount removeAllObjects]; +} + +- (void)resetAllCombat { + log(LOG_FUNCTION, @"resetAllCombat"); + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(monitorUnit:) object: nil]; + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithUnit) object: nil]; + + [self cancelAllCombat]; + _inCombat = NO; + +} + +- (void)resetUnitsDied { + log(LOG_FUNCTION, @"resetUnitsDied"); + [_unitsDied removeAllObjects]; + log(LOG_DEV, @"unitsDied reset."); +} + +// units here will meet all conditions! Combat Profile WILL be checked +- (NSArray*)validUnitsWithFriendly:(BOOL)includeFriendly onlyHostilesInCombat:(BOOL)onlyHostilesInCombat { + + // ************************************************* + // Find all available units! + // Add friendly units + // Add Assist unit if we're assisting! + // Add hostile/neutral units if we should + // Add units attacking us + // ************************************************* + + NSMutableArray *allPotentialUnits = [NSMutableArray array]; + + // add friendly units w/in range + if ( ( botController.theCombatProfile.healingEnabled || includeFriendly ) ) { + log(LOG_DEV, @"Adding friendlies to the list of valid units"); + [allPotentialUnits addObjectsFromArray:[self friendlyUnits]]; + } + + float attackRange = botController.theCombatProfile.engageRange; + if ( ( botController.isPvPing || botController.pvpIsInBG ) && botController.theCombatProfile.attackRange > botController.theCombatProfile.engageRange ) + attackRange = botController.theCombatProfile.attackRange; + + UInt64 targetID; + Mob *targetMob; + Player *targetPlayer; + + Position *playerPosition = [playerData position]; + float distanceToTarget = 0.0f; + + // Get the assist players target + if ( botController.theCombatProfile.partyEnabled && botController.assistUnit && [[botController assistUnit] isValid] + && ![[botController assistUnit] isDead] && [[botController assistUnit] percentHealth] != 0 + && [[botController assistUnit] isInCombat] ) { + + targetID = [[botController assistUnit] targetID]; + if ( targetID && targetID > 0x0) { + log(LOG_DEV, @"Assist has a target."); + + // Check for PvP target + targetPlayer = [playersController playerWithGUID: targetID]; + if ( targetPlayer ) { + if ( ![targetPlayer isDead] && [targetPlayer percentHealth] != 0 && ![playerData isFriendlyWithFaction: [targetPlayer factionTemplate]] && [targetPlayer isInCombat] ) { + distanceToTarget = [playerPosition distanceToPosition:[(Unit*)targetPlayer position]]; + if ( distanceToTarget <= attackRange ) { + log(LOG_DEV, @"Adding my Assist's PvP target to the list of valid units: %@", targetPlayer); + [allPotentialUnits addObject: (Unit*)targetPlayer]; + } + } + } else { + // Check for mob target + targetMob = [mobController mobWithGUID:targetID]; + if ( targetMob && ![targetMob isDead] && [targetMob percentHealth] != 0 && [targetMob isInCombat] ) { + + distanceToTarget = [playerPosition distanceToPosition:[targetMob position]]; + if ( distanceToTarget <= attackRange ) { + [allPotentialUnits addObject:targetMob]; + log(LOG_DEV, @"Adding my Assist's target to list of valid units"); + } + } + } + } + } + + // Get the tanks target + if ( botController.theCombatProfile.partyEnabled && botController.tankUnit && [[botController tankUnit] isValid] + && ![[botController tankUnit] isDead] && [[botController tankUnit] percentHealth] != 0 + && [[botController tankUnit] isInCombat] ) { + + targetID = [[botController tankUnit] targetID]; + if ( targetID && targetID > 0x0) { + log(LOG_DEV, @"Tank has a target."); + + // Check for PvP target + targetPlayer = [playersController playerWithGUID: targetID]; + if ( targetPlayer) { + if ( ![targetPlayer isDead] && [targetPlayer percentHealth] != 0 && ![playerData isFriendlyWithFaction: [targetPlayer factionTemplate]] && [targetPlayer isInCombat] ) { + distanceToTarget = [playerPosition distanceToPosition:[(Unit*)targetPlayer position]]; + if ( distanceToTarget <= attackRange ) { + log(LOG_DEV, @"Adding Tank's PvP target to the list of valid units: %@", targetPlayer); + [allPotentialUnits addObject: (Unit*)targetPlayer]; + } + } + } else { + targetMob = [mobController mobWithGUID:targetID]; + if ( targetMob && ![targetMob isDead] && [targetMob percentHealth] != 0 && [targetMob isInCombat] ) { + + distanceToTarget = [playerPosition distanceToPosition:[targetMob position]]; + if ( distanceToTarget <= attackRange ) { + [allPotentialUnits addObject:targetMob]; + log(LOG_DEV, @"Adding Tank's target to list of valid units"); + } + } + } + } + } + + // Get the leaders target + if ( botController.theCombatProfile.followEnabled && botController.followUnit && [[botController followUnit] isValid] + && ![[botController followUnit] isDead] && [[botController followUnit] percentHealth] != 0 + && [[botController followUnit] isInCombat] ) { + + targetID = [[botController followUnit] targetID]; + if ( targetID && targetID > 0x0) { + log(LOG_DEV, @"Leader has a target."); + + // Check for PvP target + targetPlayer = [playersController playerWithGUID: targetID]; + if ( targetPlayer) { + if ( ![targetPlayer isDead] && [targetPlayer percentHealth] != 0 && ![playerData isFriendlyWithFaction: [targetPlayer factionTemplate]] && [targetPlayer isInCombat] ) { + distanceToTarget = [playerPosition distanceToPosition:[(Unit*)targetPlayer position]]; + if ( distanceToTarget <= attackRange ) { + log(LOG_DEV, @"Adding Leaders's PvP target to the list of valid units: %@", targetPlayer); + [allPotentialUnits addObject: (Unit*)targetPlayer]; + } + } + } else { + targetMob = [mobController mobWithGUID:targetID]; + if ( targetMob && ![targetMob isDead] && [targetMob percentHealth] != 0 && [targetMob isInCombat] ) { + + distanceToTarget = [playerPosition distanceToPosition:[targetMob position]]; + if ( distanceToTarget <= attackRange ) { + [allPotentialUnits addObject:targetMob]; + log(LOG_DEV, @"Adding Leader's target to list of valid units"); + } + } + } + } + } + + // add new units w/in range if we're not on assist + if ( botController.theCombatProfile.combatEnabled && !botController.theCombatProfile.onlyRespond && !onlyHostilesInCombat ) { + log(LOG_DEV, @"Adding ALL available combat units"); + + [allPotentialUnits addObjectsFromArray:[self enemiesWithinRange:attackRange]]; + } + + // remove units attacking us from the list + if ( [_unitsAttackingMe count] ) [allPotentialUnits removeObjectsInArray:_unitsAttackingMe]; + + // add combat units that have been validated! (includes attack unit + add) + NSArray *inCombatUnits = [self combatListValidated]; + if ( botController.theCombatProfile.combatEnabled && [inCombatUnits count] ) { + log(LOG_DEV, @"Adding %d validated in combat units to list", [inCombatUnits count]); + for ( Unit *unit in inCombatUnits ) if ( ![allPotentialUnits containsObject:unit] ) [allPotentialUnits addObject:unit]; + } + + log(LOG_DEV, @"Found %d potential units to validate", [allPotentialUnits count]); + + // ************************************************* + // Validate all potential units - check for: + // Blacklisted + // Dead, evading, invalid + // Vertical distance + // Distance to target + // Ghost + // ************************************************* + + NSMutableArray *validUnits = [NSMutableArray array]; + + if ( [allPotentialUnits count] ){ + float range = 0.0f; + BOOL isFriendly = NO; + + for ( Unit *unit in allPotentialUnits ){ + + if ( [blacklistController isBlacklisted:unit] ) { + log(LOG_DEV, @":Ignoring blacklisted unit: %@", unit); + continue; + } + + if ( [unit isDead] || ![unit isValid] ) continue; + + if ( ![unit isPlayer] && [unit isEvading] ) continue; + + if ( [playerData isFriendlyWithFaction: [unit factionTemplate]] ) isFriendly = YES; + else isFriendly = NO; + + // range changes if the unit is friendly or not + distanceToTarget = [playerPosition distanceToPosition:[unit position]]; + range = ( isFriendly ? botController.theCombatProfile.healingRange : botController.theCombatProfile.attackRange); + if ( distanceToTarget > range ) continue; + + // player: make sure they're not a ghost + if ( [unit isPlayer] ) { + NSArray *auras = [auraController aurasForUnit: unit idsOnly: YES]; + if ( [auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]] ) { + continue; + } + } + + [validUnits addObject: unit]; + } + } + + if ([validUnits count]) log(LOG_DEV, @"Found %d valid units", [validUnits count]); + // sort + NSMutableDictionary *dictOfWeights = [NSMutableDictionary dictionary]; + for ( Unit *unit in validUnits ) { + [dictOfWeights setObject: [NSNumber numberWithInt:[self weight:unit PlayerPosition:playerPosition]] forKey:[NSNumber numberWithUnsignedLongLong:[unit cachedGUID]]]; + } + + [validUnits sortUsingFunction: WeightCompare context: dictOfWeights]; + return [[validUnits retain] autorelease]; +} + +// find a unit to attack, CC, or heal +- (Unit*)findUnitWithFriendly:(BOOL)includeFriendly onlyHostilesInCombat:(BOOL)onlyHostilesInCombat { + + log(LOG_FUNCTION, @"findCombatTarget called"); + + // flying check? + if ( botController.theCombatProfile.ignoreFlying ) if ( ![playerData isOnGround] ) return nil; + + // no combat or healing? + if ( !botController.theCombatProfile.healingEnabled && !botController.theCombatProfile.combatEnabled ) return nil; + + NSArray *validUnits = [NSArray arrayWithArray:[self validUnitsWithFriendly:includeFriendly onlyHostilesInCombat:onlyHostilesInCombat]]; + + if ( ![validUnits count] ) return nil; + + // Some weights can be pretty low so let's make sure we don't fail if comparing low weights + + for ( Unit *unit in validUnits ) { + + // Let's make sure we can even act on this unit before we consider it + if ( ![botController combatProcedureValidForUnit:unit] ) continue; + + log(LOG_DEV, @"Best unit %@ found.", unit); + return unit; + } + + return nil; +} + +// find a unit to attack, CC, or heal (this one is for engage range only... combat start vs combat continuation) +- (Unit*)findUnitWithFriendlyToEngage:(BOOL)includeFriendly onlyHostilesInCombat:(BOOL)onlyHostilesInCombat { + + log(LOG_FUNCTION, @"findCombatTarget called"); + + // flying check? + if ( botController.theCombatProfile.ignoreFlying ) if ( ![playerData isOnGround] ) return nil; + + // no combat or healing? + if ( !botController.theCombatProfile.healingEnabled && !botController.theCombatProfile.combatEnabled ) return nil; + + NSArray *validUnits = [NSArray arrayWithArray:[self validUnitsWithFriendly:includeFriendly onlyHostilesInCombat:onlyHostilesInCombat]]; + + if ( ![validUnits count] ) return nil; + + Position *playerPosition = [playerData position]; + float vertOffset = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistVerticalOffset"] floatValue]; + + for ( Unit *unit in validUnits ) { + + // Make sure it's within our Engage range + if ( ![playerData isFriendlyWithFaction: [unit factionTemplate]] || !botController.theCombatProfile.healingEnabled ) { + if ( [playerPosition distanceToPosition: [unit position]] > botController.theCombatProfile.engageRange ) continue; + } else { + if ( [playerPosition distanceToPosition: [unit position]] > botController.theCombatProfile.healingRange ) continue; + } + + if ( [[unit position] verticalDistanceToPosition: playerPosition] > vertOffset ) continue; + + // Let's make sure we can even act on this unit before we consider it + if ( ![botController combatProcedureValidForUnit:unit] ) continue; + + log(LOG_DEV, @"Best unit %@ found.", unit); + return unit; + } + + return nil; +} + +- (NSArray*)allAdds { + NSMutableArray *allAdds = [NSMutableArray array]; + + // loop through units that are attacking us! + for ( Unit *unit in _unitsAttackingMe ) if ( unit != _attackUnit && ![unit isDead] && [unit percentHealth] != 0 ) [allAdds addObject:unit]; + + return [[allAdds retain] autorelease]; +} + +// so, in a perfect world +// -) players before pets +// -) low health targets before high health targets +// -) closer before farther +// everything needs to be in combatProfile range + +// assign 'weights' to each target based on current conditions/settings +// highest weight unit is our best target + +// current target? +25 +// player? +100 pet? +25 +// hostile? +100, neutral? +100 +// health: +(100-percentHealth) +// distance: 100*(attackRange - distance)/attackRange + +#define SilverwingFlagSpellID 23335 +#define WarsongFlagSpellID 23333 +#define NetherstormFlagSpellID 34976 + +- (int)weight: (Unit*)unit PlayerPosition:(Position*)playerPosition { + + float attackRange = (botController.theCombatProfile.engageRange > botController.theCombatProfile.attackRange) ? botController.theCombatProfile.engageRange : botController.theCombatProfile.attackRange; +// float healingRange = ( botController.theCombatProfile.healingRange > attackRange ) ? botController.theCombatProfile.healingRange : attackRange; + + float distanceToTarget = [playerPosition distanceToPosition:[unit position]]; + + BOOL isFriendly = [playerData isFriendlyWithFaction: [unit factionTemplate]]; + + // begin weight calculation + int weight = 0; + + // player or pet? + if ( [unit isPlayer] ) weight += 50; + + if ( [unit isPet] ) { + // we kill pets! + if ( botController.theCombatProfile.attackPets ) weight += 25; + else weight -= 50; + } + + // health left + int healthLeft = [unit percentHealth]; + int healthWeight = 100-healthLeft; + weight += healthWeight; + + // our add? + if ( unit == _addUnit ) weight -= 25; + + int unitLevel = [unit level]; + + // Give higher weight to the flag carrier if in a BG + if ( botController.pvpIsInBG ) + if( [auraController unit: unit hasAura: SilverwingFlagSpellID] || [auraController unit: unit hasAura: WarsongFlagSpellID] || [auraController unit: unit hasAura: NetherstormFlagSpellID] ) + weight +=50; + + // non-friendly checks only + if ( !isFriendly ) { + + if ( attackRange > 0 ) weight += ( 50 * ((attackRange-distanceToTarget)/attackRange)); + + // The lower the enemy level the higher the weight + int lvlWeight = ((100-unitLevel)/10); + weight += lvlWeight; + + // current target + if ( [playerData targetID] == [unit cachedGUID] ) weight += 25; + + // Hostile Players + if ( [unit isPlayer] ) { + + // Assist mode - assists target + if ( botController.theCombatProfile.partyEnabled && botController.assistUnit && [[botController assistUnit] isValid] ) { + UInt64 targetGUID = [[botController assistUnit] targetID]; + if ( targetGUID > 0x0) { + Player *assistsPlayer = [playersController playerWithGUID: targetGUID]; + if ( unit == (Unit*)assistsPlayer ) weight += 50; + } + } + + // Tanks target + if ( botController.theCombatProfile.partyEnabled && botController.tankUnit && [[botController tankUnit] isValid] ) { + UInt64 targetGUID = [[botController tankUnit] targetID]; + if ( targetGUID > 0x0) { + Player *tanksPlayer = [playersController playerWithGUID: targetGUID]; + if ( unit == (Unit*)tanksPlayer ) weight += 50; + } + } + + // Leaders target + if ( botController.theCombatProfile.followEnabled && botController.followUnit && [[botController followUnit] isValid] ) { + UInt64 targetGUID = [[botController followUnit] targetID]; + if ( targetGUID > 0x0) { + Player *leadersPlayer = [playersController playerWithGUID: targetGUID]; + if ( unit == (Unit*)leadersPlayer ) weight += 50; + } + } + + } else { + // Mobs + + // Assist mode - assists target + if ( botController.theCombatProfile.partyEnabled && botController.assistUnit && [[botController assistUnit] isValid] ) { + UInt64 targetGUID = [[botController assistUnit] targetID]; + if ( targetGUID > 0x0) { + Mob *assistMob = [mobController mobWithGUID:targetGUID]; + if ( unit == assistMob ) weight += 50; + } + } + + // Tanks target + if ( botController.theCombatProfile.partyEnabled && botController.tankUnit && [[botController tankUnit] isValid] ) { + UInt64 targetGUID = [[botController tankUnit] targetID]; + if ( targetGUID > 0x0) { + Mob *tankMob = [mobController mobWithGUID:targetGUID]; + if ( unit == tankMob ) weight += 50; // Still less than the assist just in case + } + } + + // Leaders target + if ( botController.theCombatProfile.followEnabled && botController.followUnit && [[botController followUnit] isValid] ) { + UInt64 targetGUID = [[botController followUnit] targetID]; + if ( targetGUID > 0x0) { + Mob *leaderMob = [mobController mobWithGUID:targetGUID]; + if ( unit == leaderMob ) weight += 50; + } + } + } + + } else { + // friendly? + + // The higher the friend level the higher the weight + int lvlWeight = (unitLevel/10); + weight += lvlWeight; + + // Friends come first when we're not being targeted + if ( ![_unitsAttackingMe count] ) weight *= 1.5; + + // tank gets a pretty big weight @ all times + if ( botController.theCombatProfile.partyEnabled && botController.tankUnit && [[botController tankUnit] cachedGUID] == [unit cachedGUID] ) + weight += healthWeight*2; + + // assist gets a pretty big weight @ all times + if ( botController.theCombatProfile.partyEnabled && botController.assistUnit && [[botController assistUnit] cachedGUID] == [unit cachedGUID] ) + weight += healthWeight*2; + + // leader gets a pretty big weight @ all times + if ( botController.theCombatProfile.followEnabled && botController.followUnit && [[botController followUnit] cachedGUID] == [unit cachedGUID] ) + weight += healthWeight*2; + + } + return weight; +} + +- (NSString*)unitHealthBar: (Unit*)unit { + // lets build a log prefix that reflects units health + NSString *logPrefix = nil; + UInt32 unitPercentHealth = 0; + if (unit) { + unitPercentHealth = [unit percentHealth]; + } else { + unitPercentHealth = [[playerData player] percentHealth]; + } + if ( [[playerData player] cachedGUID] == [unit cachedGUID] || !unit) { + // Ourselves + if (unitPercentHealth == 100) logPrefix = @"[OOOOOOOOOOO]"; + else if (unitPercentHealth >= 90) logPrefix = @"[OOOOOOOOOO ]"; + else if (unitPercentHealth >= 80) logPrefix = @"[OOOOOOOOO ]"; + else if (unitPercentHealth >= 70) logPrefix = @"[OOOOOOOO ]"; + else if (unitPercentHealth >= 60) logPrefix = @"[OOOOOOO ]"; + else if (unitPercentHealth >= 50) logPrefix = @"[OOOOOO ]"; + else if (unitPercentHealth >= 40) logPrefix = @"[OOOOO ]"; + else if (unitPercentHealth >= 30) logPrefix = @"[OOOO ]"; + else if (unitPercentHealth >= 20) logPrefix = @"[OOO ]"; + else if (unitPercentHealth >= 10) logPrefix = @"[OO ]"; + else if (unitPercentHealth > 0) logPrefix = @"[O ]"; + else logPrefix = @"[ ]"; + } else + if ( [botController isTank: (Unit*) unit] ) { + // Tank + if (unitPercentHealth == 100) logPrefix = @"[-----------]"; + else if (unitPercentHealth >= 90) logPrefix = @"[---------- ]"; + else if (unitPercentHealth >= 80) logPrefix = @"[--------- ]"; + else if (unitPercentHealth >= 70) logPrefix = @"[-------- ]"; + else if (unitPercentHealth >= 60) logPrefix = @"[------- ]"; + else if (unitPercentHealth >= 50) logPrefix = @"[------ ]"; + else if (unitPercentHealth >= 40) logPrefix = @"[----- ]"; + else if (unitPercentHealth >= 30) logPrefix = @"[---- ]"; + else if (unitPercentHealth >= 20) logPrefix = @"[--- ]"; + else if (unitPercentHealth >= 10) logPrefix = @"[-- ]"; + else if (unitPercentHealth > 0) logPrefix = @"[- ]"; + else logPrefix = @"[ TANK DEAD ]"; + } else + if ([playerData isFriendlyWithFaction: [unit factionTemplate]]) { + // Friendly + if (unitPercentHealth == 100) logPrefix = @"[+++++++++++]"; + else if (unitPercentHealth >= 90) logPrefix = @"[++++++++++ ]"; + else if (unitPercentHealth >= 80) logPrefix = @"[+++++++++ ]"; + else if (unitPercentHealth >= 70) logPrefix = @"[++++++++ ]"; + else if (unitPercentHealth >= 60) logPrefix = @"[+++++++ ]"; + else if (unitPercentHealth >= 50) logPrefix = @"[++++++ ]"; + else if (unitPercentHealth >= 40) logPrefix = @"[+++++ ]"; + else if (unitPercentHealth >= 30) logPrefix = @"[++++ ]"; + else if (unitPercentHealth >= 20) logPrefix = @"[+++ ]"; + else if (unitPercentHealth >= 10) logPrefix = @"[++ ]"; + else if (unitPercentHealth > 0) logPrefix = @"[+ ]"; + else logPrefix = @"[ ]"; + } else { + // Hostile + if (unitPercentHealth == 100) logPrefix = @"[***********]"; + else if (unitPercentHealth >= 90) logPrefix = @"[********** ]"; + else if (unitPercentHealth >= 80) logPrefix = @"[********* ]"; + else if (unitPercentHealth >= 70) logPrefix = @"[******** ]"; + else if (unitPercentHealth >= 60) logPrefix = @"[******* ]"; + else if (unitPercentHealth >= 50) logPrefix = @"[****** ]"; + else if (unitPercentHealth >= 40) logPrefix = @"[***** ]"; + else if (unitPercentHealth >= 30) logPrefix = @"[**** ]"; + else if (unitPercentHealth >= 20) logPrefix = @"[*** ]"; + else if (unitPercentHealth >= 10) logPrefix = @"[** ]"; + else if (unitPercentHealth > 0) logPrefix = @"[* ]"; + else logPrefix = @"[ ]"; + } + return logPrefix; + } + +#pragma mark Enemy + +- (int)weight: (Unit*)unit { + return [self weight:unit PlayerPosition:[playerData position]]; +} + +// find available hostile targets +- (NSArray*)enemiesWithinRange:(float)range { + + NSMutableArray *targetsWithinRange = [NSMutableArray array]; + NSRange levelRange = [self levelRange]; + + // check for mobs? + if ( botController.theCombatProfile.attackNeutralNPCs || botController.theCombatProfile.attackHostileNPCs ) { + log(LOG_DEV, @"[Combat] Checking for mobs."); + + [targetsWithinRange addObjectsFromArray: [mobController mobsWithinDistance: range + levelRange: levelRange + includeElite: !(botController.theCombatProfile.ignoreElite) + includeFriendly: NO + includeNeutral: botController.theCombatProfile.attackNeutralNPCs + includeHostile: botController.theCombatProfile.attackHostileNPCs]]; + } + + // check for players? + if ( botController.theCombatProfile.attackPlayers ) { + log(LOG_DEV, @"[Combat] Checking for Players."); + [targetsWithinRange addObjectsFromArray: [playersController playersWithinDistance: range + levelRange: levelRange + includeFriendly: NO + includeNeutral: NO + includeHostile: YES]]; + } + + log(LOG_DEV, @"[Combat] Found %d targets within range: %0.2f", [targetsWithinRange count], range); + + return targetsWithinRange; +} + +#pragma mark Friendly + +- (BOOL)validFriendlyUnit: (Unit*)unit{ + + if ( !unit ) return NO; + + NSArray *auras = [auraController aurasForUnit: unit idsOnly: YES]; + // regular dead - night elf ghost + if ( [auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]] ) + return NO; + + // We need to check: + // Not dead + // Friendly + // Could check position + health threshold + if they are moving away! + if ( [unit isDead] || [unit percentHealth] == 0 ) return NO; + + if ( ![unit isValid] ) return NO; + + if ( ![playerData isFriendlyWithFaction: [unit factionTemplate]] ) { + log(LOG_DEV, @"validFriendlyUnit: %@ is not Friendly with Faction!", unit); + return NO; + } + + if ( !botController.theCombatProfile.attackAnyLevel ) { + int unitLevel = [unit level]; + if ( unitLevel < botController.theCombatProfile.attackLevelMin ) return NO; + if ( unitLevel > botController.theCombatProfile.attackLevelMax ) return NO; + } + + return YES; +} + +- (NSArray*)friendlyUnits{ + + // get list of all targets + NSMutableArray *friendliesWithinRange = [NSMutableArray array]; + NSMutableArray *friendliesNotInRange = [NSMutableArray array]; + NSMutableArray *friendlyTargets = [NSMutableArray array]; + + // If we're in party mode and only supposed to help party members + if ( botController.theCombatProfile.partyEnabled && botController.theCombatProfile.partyIgnoreOtherFriendlies ) { + + Player *player; + UInt64 playerID; + + // Check only party members + int i; + for (i=1;i<6;i++) { + + playerID = [playerData PartyMember: i]; + if ( playerID <= 0x0) break; + + player = [playersController playerWithGUID: playerID]; + + if ( ![player isValid] ) continue; + + [friendliesWithinRange addObject: player]; + } + + } else { + + // Check all friendlies + if ( !botController.waitForPvPQueue ) [friendliesWithinRange addObjectsFromArray: [playersController allPlayers]]; + + } + + // Parse the list to remove out of range units + // if we have some targets + float range = (botController.theCombatProfile.healingRange > botController.theCombatProfile.attackRange) ? botController.theCombatProfile.healingRange : botController.theCombatProfile.attackRange; + Position *playerPosition = [playerData position]; + + if ( [friendliesWithinRange count] ) + for ( Unit *unit in friendliesWithinRange ) + if ( [playerPosition distanceToPosition: [unit position]] > range ) [friendliesNotInRange addObject: unit]; + + // Remove out of range units before we sort this list in case it's massive + if ( [friendliesNotInRange count] ) + for ( Unit *unit in friendliesNotInRange ) + [friendliesWithinRange removeObject: unit]; + + // sort by range + [friendliesWithinRange sortUsingFunction: DistFromPositionCompare context: playerPosition]; + + // if we have some targets + if ( [friendliesWithinRange count] ) { + for ( Unit *unit in friendliesWithinRange ) { + // Skip if the target is ourself + if ( [unit cachedGUID] == [[playerData player] cachedGUID] ) continue; + +// log(LOG_DEV, @"Friendly - Checking %@", unit); + if ( [self validFriendlyUnit:unit] ) { + log(LOG_DEV, @"Valid friendly %@", unit); + [friendlyTargets addObject: unit]; + } + } + } + + log(LOG_DEV, @"Total friendlies: %d", [friendlyTargets count]); + + return friendlyTargets; +} + +- (NSArray*)friendlyCorpses{ + + + + // get list of all targets + NSMutableArray *friendliesWithinRange = [NSMutableArray array]; + NSMutableArray *friendlyTargets = [NSMutableArray array]; + + // If we're in party mode and only supposed to help party members + if ( botController.theCombatProfile.partyEnabled && botController.theCombatProfile.partyIgnoreOtherFriendlies ) { + + Player *player; + UInt64 playerID; + + // Check only party members + int i; + for (i=1;i<6;i++) { + + playerID = [playerData PartyMember: i]; + if ( playerID <= 0x0) break; + + player = [playersController playerWithGUID: playerID]; + + if ( ![player isValid] ) continue; + + [friendliesWithinRange addObject: player]; + } + + } else { + // Check all friendlies + [friendliesWithinRange addObjectsFromArray: [playersController allPlayers]]; + } + + // sort by range + Position *playerPosition = [playerData position]; + [friendliesWithinRange sortUsingFunction: DistFromPositionCompare context: playerPosition]; + + // if we have some targets + if ( [friendliesWithinRange count] ) { + for ( Unit *unit in friendliesWithinRange ) { +// log(LOG_DEV, @"Friendly Corpse - Checking %@", unit); + + if ( ![unit isDead] || ![playerData isFriendlyWithFaction: [unit factionTemplate]] ) continue; + + log(LOG_DEV, @"Valid friendly corpse."); + [friendlyTargets addObject: unit]; + } + } + + log(LOG_DEV, @"Total friendly corpses: %d", [friendlyTargets count]); + + return friendlyTargets; +} + +#pragma mark Internal + +// find all units we are in combat with +- (void)doCombatSearch { + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: _cmd object: nil]; + + if ( !botController.isBotting ) return; + + if ( [[playerData player] isDead] || [[playerData player] percentHealth] == 0 ) { + log(LOG_DEV, @"Dead, removing all objects!"); + + [_unitsAttackingMe removeAllObjects]; + self.attackUnit = nil; + self.addUnit = nil; + self.castingUnit = nil; + _inCombat = NO; + return; + } + + // If we're not in combat then lets skip this altogether + if ( ![[playerData player] isInCombat] ) { + + if ( [_unitsAttackingMe count] ) [_unitsAttackingMe removeAllObjects]; + self.addUnit = nil; + if ( botController.procedureInProgress != @"CombatProcedure") { + self.attackUnit = nil; + self.castingUnit = nil; + _inCombat = NO; + } + return; + } + + // add all mobs + players + NSArray *mobs = [mobController allMobs]; + + UInt64 playerGUID = [[playerData player] cachedGUID]; + UInt64 unitTarget = 0; + BOOL playerHasPet = [[playerData player] hasPet]; + UInt64 petGUID; + if (playerHasPet) petGUID = [[playerData pet] cachedGUID]; + + BOOL addMob; + for ( Mob *mob in mobs ) { + unitTarget = [mob targetID]; + addMob = YES; + + if ( addMob && ( ![mob isValid] || [_unitsDied containsObject: (Unit*)mob] || [mob isDead] || [mob percentHealth] == 0 ) ) addMob = NO; + if ( addMob && ![mob isInCombat] ) addMob = NO; + if ( addMob && ( ![mob isSelectable] || ![mob isAttackable] ) ) addMob = NO; + if ( addMob && !botController.isPvPing && !botController.pvpIsInBG && !botController.theCombatProfile.partyEnabled && [mob isTappedByOther] ) addMob = NO; + if ( addMob && botController.theCombatProfile.ignoreLevelOne && [mob level] == 1 ) addMob = NO; + if ( addMob && unitTarget != playerGUID ) { + if ( playerHasPet ) { + if ( unitTarget != petGUID ) addMob = NO; + } else { + addMob = NO; + } + } + + // add mob! + if ( addMob && ![_unitsAttackingMe containsObject:(Unit*)mob] ) { + log(LOG_DEV, @"Adding mob %@", mob); + [_unitsAttackingMe addObject:(Unit*)mob]; + [[NSNotificationCenter defaultCenter] postNotificationName: UnitEnteredCombat object: [[(Unit*)mob retain] autorelease]]; + } + + if ( !addMob && [_unitsAttackingMe containsObject:(Unit*)mob] && ![mob isFleeing] ) { + log(LOG_DEV, @"Removing mob %@", mob); + [_unitsAttackingMe removeObject:(Unit*)mob]; + } + } + + NSArray *players = [playersController allPlayers]; + BOOL addPlayer; + for ( Player *player in players ) { + + if ( [playerData isFriendlyWithFaction: [player factionTemplate]] ) continue; + + unitTarget = [player targetID]; + addPlayer = YES; + + if ( addPlayer && ( ![player isValid] || [_unitsDied containsObject: (Unit*)player] || [player isDead] || [player percentHealth] == 0 ) ) addPlayer = NO; + if ( addPlayer && ![player isInCombat] ) addPlayer = NO; + if ( addPlayer && ( ![player isSelectable] || ![player isAttackable] ) ) addPlayer = NO; + if ( addPlayer && unitTarget != playerGUID ) { + + if ( playerHasPet ) { + if ( unitTarget != petGUID ) addPlayer = NO; + } else { + addPlayer = NO; + } + } + + // add player! + if ( addPlayer && ![_unitsAttackingMe containsObject:(Unit*)player] ) { + log(LOG_DEV, @"Adding Player %@", player); + [_unitsAttackingMe addObject:(Unit*)player]; + [[NSNotificationCenter defaultCenter] postNotificationName: UnitEnteredCombat object: [[(Unit*)player retain] autorelease]]; + } + + if ( !addPlayer && [_unitsAttackingMe containsObject:(Unit*)player] && ![player isFleeing] && ![player isEvading] && ![player isFeignDeath] ) { + log(LOG_DEV, @"Removing player %@", player); + [_unitsAttackingMe removeObject:(Unit*)player]; + } + } + + Position *playerPosition = [playerData position]; + + // double check to see if we should remove any! + NSMutableArray *unitsToRemove = [NSMutableArray array]; + for ( Unit *unit in _unitsAttackingMe ){ + if ( !unit || ![unit isValid] || [unit isDead] || [unit percentHealth] == 0 || ![unit isInCombat] || ![unit isSelectable] || ![unit isAttackable] ) { + log(LOG_DEV, @"[Combat] Removing unit: %@", unit); + [unitsToRemove addObject:unit]; + } else + // Just a safety check + if ( [playerPosition distanceToPosition: [unit position]] > 45.0f ) { + log(LOG_DEV, @"[Combat] Removing out of range unit: %@", unit); + [unitsToRemove addObject:unit]; + } + } + + if ( [unitsToRemove count] ) [_unitsAttackingMe removeObjectsInArray:unitsToRemove]; + + log(LOG_DEV, @"doCombatSearch: In combat with %d units", [_unitsAttackingMe count]); + + if ( [_unitsAttackingMe count] ) { + _inCombat = YES; + } else { + self.addUnit = nil; + if ( botController.procedureInProgress != @"CombatProcedure") { + self.attackUnit = nil; + self.castingUnit = nil; + _inCombat = NO; + } + } +} + +// this will return the level range of mobs we are attacking! +- (NSRange)levelRange{ + + // set the level of mobs/players we are attacking! + NSRange range = NSMakeRange(0, 0); + + // any level + if ( botController.theCombatProfile.attackAnyLevel ){ + range.length = 200; // in theory this would be 83, but just making it a high value to be safe + + // ignore level one? + if ( botController.theCombatProfile.ignoreLevelOne ){ + range.location = 2; + } + else{ + range.location = 1; + } + } + // we have level requirements! + else{ + range.location = botController.theCombatProfile.attackLevelMin; + range.length = botController.theCombatProfile.attackLevelMax - botController.theCombatProfile.attackLevelMin; + } + + return range; +} + +#pragma mark UI + +- (void)showCombatPanel{ + [combatPanel makeKeyAndOrderFront: self]; +} + +- (void)updateCombatTable{ + + if ( [combatPanel isVisible] ){ + + [_unitsAllCombat removeAllObjects]; + + NSArray *allUnits = [self validUnitsWithFriendly:YES onlyHostilesInCombat:NO]; + NSMutableArray *allAndSelf = [NSMutableArray array]; + + if ( [allUnits count] ){ + [allAndSelf addObjectsFromArray:allUnits]; + } + [allAndSelf addObject:[playerData player]]; + + Position *playerPosition = [playerData position]; + + for(Unit *unit in allAndSelf) { + if( ![unit isValid] ) + continue; + + float distance = [playerPosition distanceToPosition: [unit position]]; + unsigned level = [unit level]; + if(level > 100) level = 0; + int weight = [self weight: unit PlayerPosition:playerPosition]; + + NSString *name = [unit name]; + if ( (name == nil || [name length] == 0) && ![unit isNPC] ){ + [name release]; name = nil; + name = [playersController playerNameWithGUID:[unit cachedGUID]]; + } + + if ( [unit cachedGUID] == [[playerData player] cachedGUID] ){ + weight = 0; + } + + [_unitsAllCombat addObject: [NSDictionary dictionaryWithObjectsAndKeys: + unit, @"Player", + name, @"Name", + [NSString stringWithFormat: @"0x%X", [unit lowGUID]], @"ID", + [NSString stringWithFormat: @"%@%@", [unit isPet] ? @"[Pet] " : @"", [Unit stringForClass: [unit unitClass]]], @"Class", + [Unit stringForRace: [unit race]], @"Race", + [NSString stringWithFormat: @"%d%%", [unit percentHealth]], @"Health", + [NSNumber numberWithUnsignedInt: level], @"Level", + [NSNumber numberWithFloat: distance], @"Distance", + [NSNumber numberWithInt:weight], @"Weight", + nil]]; + } + + // Update our combat table! + [_unitsAllCombat sortUsingDescriptors: [combatTable sortDescriptors]]; + [combatTable reloadData]; + } + +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (void)tableView:(NSTableView *)aTableView sortDescriptorsDidChange:(NSArray *)oldDescriptors { + [aTableView reloadData]; +} + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + if ( aTableView == combatTable ){ + return [_unitsAllCombat count]; + } + + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if ( aTableView == combatTable ){ + if(rowIndex == -1 || rowIndex >= [_unitsAllCombat count]) return nil; + + if([[aTableColumn identifier] isEqualToString: @"Distance"]) + return [NSString stringWithFormat: @"%.2f", [[[_unitsAllCombat objectAtIndex: rowIndex] objectForKey: @"Distance"] floatValue]]; + + if([[aTableColumn identifier] isEqualToString: @"Status"]) { + NSString *status = [[_unitsAllCombat objectAtIndex: rowIndex] objectForKey: @"Status"]; + if([status isEqualToString: @"1"]) status = @"Combat"; + if([status isEqualToString: @"2"]) status = @"Hostile"; + if([status isEqualToString: @"3"]) status = @"Dead"; + if([status isEqualToString: @"4"]) status = @"Neutral"; + if([status isEqualToString: @"5"]) status = @"Friendly"; + return [NSImage imageNamed: status]; + } + + return [[_unitsAllCombat objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; + } + + return nil; +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex{ + + if ( aTableView == combatTable ){ + if( aRowIndex == -1 || aRowIndex >= [_unitsAllCombat count]) return; + + if ([[aTableColumn identifier] isEqualToString: @"Race"]) { + [(ImageAndTextCell*)aCell setImage: [[_unitsAllCombat objectAtIndex: aRowIndex] objectForKey: @"RaceIcon"]]; + } + if ([[aTableColumn identifier] isEqualToString: @"Class"]) { + [(ImageAndTextCell*)aCell setImage: [[_unitsAllCombat objectAtIndex: aRowIndex] objectForKey: @"ClassIcon"]]; + } + + // do text color + if( ![aCell respondsToSelector: @selector(setTextColor:)] ){ + return; + } + + Unit *unit = [[_unitsAllCombat objectAtIndex: aRowIndex] objectForKey: @"Player"]; + + // casting unit + if ( unit == _castingUnit ){ + [aCell setTextColor: [NSColor blueColor]]; + } + else if ( unit == _addUnit ){ + [aCell setTextColor: [NSColor purpleColor]]; + } + // all others + else{ + if ( [playerData isFriendlyWithFaction:[unit factionTemplate]] || [unit cachedGUID] == [[playerData player] cachedGUID] ){ + [aCell setTextColor: [NSColor greenColor]]; + } + else{ + [aCell setTextColor: [NSColor redColor]]; + } + } + } + + return; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn { + if( [[aTableColumn identifier] isEqualToString: @"RaceIcon"]) + return NO; + if( [[aTableColumn identifier] isEqualToString: @"ClassIcon"]) + return NO; + return YES; +} + +@end diff --git a/CombatCount.xib b/CombatCount.xib new file mode 100644 index 0000000..dcf8cfa --- /dev/null +++ b/CombatCount.xib @@ -0,0 +1,1109 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + CombatCountConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{32, 10}, {306, 17}} + + YES + + 68288064 + 272630784 + Player is being targeted by (and in combat with) + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{341, 5}, {86, 24}} + + YES + + 67239424 + 0 + + + + YES + + 26 + > + 1 + 0 + + + 26 + = + 2 + YES + 0 + + + 26 + < + 3 + 0 + + + 1 + 1 + + + + + 268 + {{433, 7}, {54, 22}} + + YES + + -1804468671 + 138413056 + + + + + YES + + YES + allowsFloats + formatterBehavior + locale + maximumIntegerDigits + minimum + negativeFormat + numberStyle + paddingCharacter + positiveFormat + + + YES + + + + + + + + + + * + # + + + # + + + + + + + NaN + + YES + + + YES + + + + + + 0 + 0 + YES + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + 3 + YES + YES + YES + + . + , + NO + NO + NO + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{492, 10}, {46, 17}} + + YES + + 68288064 + 272630784 + units. + + + + + + + + {555, 36} + + NSView + + + + + YES + + + view + + + + 16 + + + + disableButton + + + + 17 + + + + comparatorSegment + + + + 18 + + + + valueText + + + + 19 + + + + disableCondition: + + + + 20 + + + + validateState: + + + + 21 + + + + validateState: + + + + 22 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + 2 + + + YES + + + + + + 4 + + + YES + + + + + + 5 + + + + + 7 + + + + + 8 + + + YES + + + + + + 9 + + + YES + + + + + + 10 + + + YES + + + + + + 11 + + + + + 12 + + + + + 13 + + + YES + + + + + + 14 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 10.IBPluginDependency + 11.IBNumberFormatterLocalizesFormatMetadataKey + 11.IBPluginDependency + 12.IBPluginDependency + 13.IBPluginDependency + 14.IBPluginDependency + 2.IBAttributePlaceholdersKey + 2.IBPluginDependency + 4.IBPluginDependency + 5.IBPluginDependency + 7.IBPluginDependency + 8.CustomClassName + 8.IBPluginDependency + 9.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{156, 796}, {555, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{357, 416}, {480, 272}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 22 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + CombatCountConditionController + ConditionController + + YES + + YES + comparatorSegment + valueText + + + YES + BetterSegmentedControl + NSTextField + + + + IBProjectSource + CombatCountConditionController.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/CombatCountConditionController.h b/CombatCountConditionController.h new file mode 100644 index 0000000..3050d7f --- /dev/null +++ b/CombatCountConditionController.h @@ -0,0 +1,19 @@ +// +// CombatCountConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface CombatCountConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *valueText; +} + +@end diff --git a/CombatCountConditionController.m b/CombatCountConditionController.m new file mode 100644 index 0000000..270d969 --- /dev/null +++ b/CombatCountConditionController.m @@ -0,0 +1,67 @@ +// +// CombatCountConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "CombatCountConditionController.h" + + +@implementation CombatCountConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"CombatCount" owner: self]) { + log(LOG_GENERAL, @"Error loading CombatCount.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + if( ([comparatorSegment selectedTag] == CompareLess) && ([valueText intValue] == 0)) { + [comparatorSegment selectSegmentWithTag: CompareEqual]; + NSBeep(); + } + + if([valueText intValue] < 0) { + [valueText setIntValue: 0]; + } +} + +- (Condition*)condition { + [self validateState: nil]; + + int value = [valueText intValue]; + if(value < 0) value = 0; + + Condition *condition = [Condition conditionWithVariety: VarietyCombatCount + unit: UnitPlayer + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: value + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyCombatCount) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [valueText setStringValue: [NSString stringWithFormat: @"%d", [condition state]]]; + + [self validateState: nil]; +} + +@end diff --git a/CombatProfile.h b/CombatProfile.h new file mode 100644 index 0000000..8332fee --- /dev/null +++ b/CombatProfile.h @@ -0,0 +1,201 @@ +// +// CombatProfileActionController.h +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "IgnoreEntry.h" +#import "FileObject.h" + +@class Unit; +@class Player; + +@interface CombatProfile : FileObject { + NSMutableArray *_combatEntries; + + BOOL combatEnabled, onlyRespond, attackNeutralNPCs, attackHostileNPCs, attackPlayers, attackPets; + BOOL attackAnyLevel, ignoreElite, ignoreLevelOne, ignoreFlying; + + // Healing + BOOL healingEnabled, autoFollowTarget, mountEnabled; + float healingRange; + + // Party + UInt64 tankUnitGUID; + UInt64 assistUnitGUID; + UInt64 followUnitGUID; + float followDistanceToMove, yardsBehindTargetStart, yardsBehindTargetStop; + BOOL assistUnit, tankUnit, followUnit, partyEnabled; + BOOL disableRelease; + + float attackRange, engageRange; + int attackLevelMin, attackLevelMax; + + // New additions + BOOL partyDoNotInitiate; + BOOL partyIgnoreOtherFriendlies; + BOOL partyEmotes; + int partyEmotesIdleTime; + int partyEmotesInterval; + BOOL followEnabled; + BOOL followStopFollowingOOR; + float followStopFollowingRange; + BOOL followDoNotAssignLeader; + float followDoNotAssignLeaderRange; + BOOL followEnemyFlagCarriers; + BOOL followFriendlyFlagCarriers; + + // PvP + BOOL pvpQueueForRandomBattlegrounds; + BOOL pvpStopHonor; + int pvpStopHonorTotal; + BOOL pvpLeaveIfInactive; + BOOL pvpDontMoveWithPreparation; + BOOL pvpWaitToLeave; + float pvpWaitToLeaveTime; + BOOL pvpStayInWintergrasp; + + BOOL resurrectWithSpiritHealer; + BOOL checkForCampers; + float checkForCampersRange; + BOOL avoidMobsWhenResurrecting; + float moveToCorpseRange; + + BOOL partyLeaderWait; + float partyLeaderWaitRange; + + // Looting and Gathering + BOOL DoMining; + int MiningLevel; + BOOL DoHerbalism; + int HerbalismLevel; + float GatheringDistance; + BOOL DoNetherwingEggs; + BOOL ShouldLoot; + BOOL DoSkinning; + int SkinningLevel; + BOOL DoNinjaSkin; + BOOL GatherUseCrystallized; + BOOL GatherNodesHostilePlayerNear; + float GatherNodesHostilePlayerNearRange; + BOOL GatherNodesFriendlyPlayerNear; + float GatherNodesFriendlyPlayerNearRange; + BOOL GatherNodesMobNear; + float GatherNodesMobNearRange; + BOOL DoFishing; + BOOL FishingApplyLure; + int FishingLureID; + BOOL FishingUseContainers; + BOOL FishingOnlySchools; + BOOL FishingRecast; + float FishingGatherDistance; + +} + ++ (id)combatProfile; ++ (id)combatProfileWithName: (NSString*)name; + +- (BOOL)unitShouldBeIgnored: (Unit*)unit; + +- (unsigned)entryCount; +- (IgnoreEntry*)entryAtIndex: (unsigned)index; + +- (void)addEntry: (IgnoreEntry*)entry; +- (void)removeEntry: (IgnoreEntry*)entry; +- (void)removeEntryAtIndex: (unsigned)index; + +@property (readwrite, retain) NSArray *entries; +@property (readwrite, assign) UInt64 tankUnitGUID; +@property (readwrite, assign) UInt64 assistUnitGUID; +@property (readwrite, assign) UInt64 followUnitGUID; +@property (readwrite, assign) BOOL combatEnabled; +@property (readwrite, assign) BOOL onlyRespond; +@property (readwrite, assign) BOOL attackNeutralNPCs; +@property (readwrite, assign) BOOL attackHostileNPCs; +@property (readwrite, assign) BOOL attackPlayers; +@property (readwrite, assign) BOOL attackPets; +@property (readwrite, assign) BOOL attackAnyLevel; +@property (readwrite, assign) BOOL ignoreElite; +@property (readwrite, assign) BOOL ignoreLevelOne; +@property (readwrite, assign) BOOL ignoreFlying; +@property (readwrite, assign) BOOL assistUnit; +@property (readwrite, assign) BOOL tankUnit; +@property (readwrite, assign) BOOL followUnit; +@property (readwrite, assign) BOOL partyEnabled; + +@property (readwrite, assign) BOOL healingEnabled; +@property (readwrite, assign) BOOL autoFollowTarget; +@property (readwrite, assign) float followDistanceToMove; +@property (readwrite, assign) float yardsBehindTargetStart; +@property (readwrite, assign) float yardsBehindTargetStop; +@property (readwrite, assign) float healingRange; +@property (readwrite, assign) BOOL mountEnabled; +@property (readwrite, assign) BOOL disableRelease; +@property (readwrite, assign) float attackRange; +@property (readwrite, assign) float engageRange; +@property (readwrite, assign) int attackLevelMin; +@property (readwrite, assign) int attackLevelMax; + +// New additions +@property (readwrite, assign) BOOL checkForCampers; +@property (readwrite, assign) BOOL partyDoNotInitiate; +@property (readwrite, assign) BOOL partyIgnoreOtherFriendlies; +@property (readwrite, assign) BOOL partyEmotes; +@property (readwrite, assign) int partyEmotesIdleTime; +@property (readwrite, assign) int partyEmotesInterval; +@property (readwrite, assign) BOOL followEnabled; +@property (readwrite, assign) BOOL followStopFollowingOOR; +@property (readwrite, assign) float followStopFollowingRange; +@property (readwrite, assign) BOOL followDoNotAssignLeader; +@property (readwrite, assign) float followDoNotAssignLeaderRange; + +@property (readwrite, assign) BOOL followEnemyFlagCarriers; +@property (readwrite, assign) BOOL followFriendlyFlagCarriers; + +@property (readwrite, assign) BOOL resurrectWithSpiritHealer; +@property (readwrite, assign) float checkForCampersRange; +@property (readwrite, assign) BOOL avoidMobsWhenResurrecting; +@property (readwrite, assign) float moveToCorpseRange; +@property (readwrite, assign) BOOL partyLeaderWait; +@property (readwrite, assign) float partyLeaderWaitRange; + +// PvP +@property (readwrite, assign) BOOL pvpQueueForRandomBattlegrounds; +@property (readwrite, assign) BOOL pvpStopHonor; +@property (readwrite, assign) int pvpStopHonorTotal; +@property (readwrite, assign) BOOL pvpLeaveIfInactive; +@property (readwrite, assign) BOOL pvpDontMoveWithPreparation; +@property (readwrite, assign) BOOL pvpWaitToLeave; +@property (readwrite, assign) float pvpWaitToLeaveTime; +@property (readwrite, assign) BOOL pvpStayInWintergrasp; + +// Gathering and Looting +@property (readwrite, assign) BOOL DoMining; +@property (readwrite, assign) int MiningLevel; +@property (readwrite, assign) BOOL DoHerbalism; +@property (readwrite, assign) int HerbalismLevel; +@property (readwrite, assign) float GatheringDistance; +@property (readwrite, assign) BOOL DoNetherwingEggs; +@property (readwrite, assign) BOOL ShouldLoot; +@property (readwrite, assign) BOOL DoSkinning; +@property (readwrite, assign) int SkinningLevel; +@property (readwrite, assign) BOOL DoNinjaSkin; +@property (readwrite, assign) BOOL GatherUseCrystallized; +@property (readwrite, assign) BOOL GatherNodesHostilePlayerNear; +@property (readwrite, assign) float GatherNodesHostilePlayerNearRange; +@property (readwrite, assign) BOOL GatherNodesFriendlyPlayerNear; +@property (readwrite, assign) float GatherNodesFriendlyPlayerNearRange; +@property (readwrite, assign) BOOL GatherNodesMobNear; +@property (readwrite, assign) float GatherNodesMobNearRange; +@property (readwrite, assign) BOOL DoFishing; +@property (readwrite, assign) BOOL FishingApplyLure; +@property (readwrite, assign) int FishingLureID; +@property (readwrite, assign) BOOL FishingUseContainers; +@property (readwrite, assign) BOOL FishingOnlySchools; +@property (readwrite, assign) BOOL FishingRecast; +@property (readwrite, assign) float FishingGatherDistance; + +@end diff --git a/CombatProfile.m b/CombatProfile.m new file mode 100644 index 0000000..4d3d50e --- /dev/null +++ b/CombatProfile.m @@ -0,0 +1,680 @@ +// +// CombatProfileActionController.m +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "CombatProfile.h" +#import "Unit.h" +#import "Mob.h" +#import "IgnoreEntry.h" +#import "Offsets.h" +#import "FileObject.h" + +#import "PlayerDataController.h" + +@implementation CombatProfile + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.entries = [NSArray array]; + self.combatEnabled = YES; + self.onlyRespond = NO; + self.attackNeutralNPCs = YES; + self.attackHostileNPCs = YES; + self.attackPlayers = NO; + self.attackPets = NO; + self.attackAnyLevel = YES; + self.ignoreElite = YES; + self.ignoreLevelOne = YES; + self.ignoreFlying = YES; + + // Party mode + self.partyEnabled = NO; + self.assistUnit = NO; + self.tankUnit = NO; + self.assistUnitGUID = 0x0; + self.tankUnitGUID = 0x0; + self.followUnitGUID = 0x0; + self.followUnit = NO; + self.yardsBehindTargetStart = 10.0; + self.yardsBehindTargetStop = 15.0; + self.followDistanceToMove = 20.0; + self.followEnemyFlagCarriers = NO; + self.followFriendlyFlagCarriers = NO; + + self.disableRelease = NO; + + // New additions + self.partyDoNotInitiate = YES; + self.partyIgnoreOtherFriendlies = YES; + self.partyEmotes = NO; + self.partyEmotesIdleTime = 120; + self.partyEmotesInterval = 100; + self.followEnabled = NO; + self.followStopFollowingOOR = NO; + self.followStopFollowingRange = 50.0f; + self.followDoNotAssignLeader = NO; + self.followDoNotAssignLeaderRange = 50.0f; + + self.resurrectWithSpiritHealer = NO; + self.checkForCampers = NO; + self.checkForCampersRange = 50.0f; + self.avoidMobsWhenResurrecting = YES; + self.moveToCorpseRange = 35.0f; + self.partyLeaderWait = NO; + self.partyLeaderWaitRange = 35.0f; + + // Healing + self.healingEnabled = NO; + self.autoFollowTarget = NO; + self.healingRange = 40.0f; + self.mountEnabled = NO; + + self.attackRange = 20.0f; + self.engageRange = 30.0f; + self.attackLevelMin = 2; + self.attackLevelMax = PLAYER_LEVEL_CAP; + + // PvP + self.pvpQueueForRandomBattlegrounds = NO; + self.pvpStopHonor = NO; + self.pvpStopHonorTotal = 75000; + self.pvpLeaveIfInactive = YES; + self.pvpDontMoveWithPreparation = NO; + self.pvpWaitToLeave = YES; + self.pvpWaitToLeaveTime = 10.0; + self.pvpStayInWintergrasp = YES; + + self.DoMining = NO; + self.MiningLevel = 0; + self.DoHerbalism = NO; + self.HerbalismLevel = 0; + self.GatheringDistance = 50.0; + self.DoNetherwingEggs = NO; + self.ShouldLoot = NO; + self.DoSkinning = NO; + self.SkinningLevel = 0; + self.DoNinjaSkin = NO; + self.GatherUseCrystallized = NO; + self.GatherNodesHostilePlayerNear = NO; + self.GatherNodesHostilePlayerNearRange = 50.0; + self.GatherNodesFriendlyPlayerNear = NO; + self.GatherNodesFriendlyPlayerNearRange = 50.0; + self.GatherNodesMobNear = NO; + self.GatherNodesMobNearRange = 50.0; + self.DoFishing = NO; + self.FishingApplyLure = 0; + self.FishingLureID = NO; + self.FishingUseContainers = NO; + self.FishingOnlySchools = NO; + self.FishingRecast = NO; + self.FishingGatherDistance = 15.0; + + _observers = [[NSArray arrayWithObjects: + @"combatEnabled", + @"onlyRespond", + @"attackNeutralNPCs", + @"attackHostileNPCs", + @"attackPlayers", + @"attackPets", + @"attackAnyLevel", + @"ignoreElite", + @"ignoreLevelOne", + @"ignoreFlying", + @"assistUnit", + @"assistUnitGUID", + @"tankUnit", + @"tankUnitGUID", + @"followUnit", + @"followUnitGUID", + @"partyEnabled", + @"followDistanceToMove", + @"yardsBehindTargetStart", + @"yardsBehindTargetStop", + @"ignoreFlying", + @"healingEnabled", + @"autoFollowTarget", + @"healingRange", + @"mountEnabled", + @"disableRelease", + @"engageRange", + @"attackRange", + @"attackLevelMin", + @"attackLevelMax", + @"partyDoNotInitiate", + @"partyIgnoreOtherFriendlies", + @"partyEmotes", + @"partyEmotesIdleTime", + @"partyEmotesInterval", + @"followEnabled", + @"followStopFollowingOOR", + @"followStopFollowingRange", + @"resurrectWithSpiritHealer", + @"checkForCampers", + @"checkForCampersRange", + @"avoidMobsWhenResurrecting", + @"moveToCorpseRange", + @"partyLeaderWait", + @"partyLeaderWaitRange", + @"pvpQueueForRandomBattlegrounds", + @"pvpStopHonor", + @"pvpStopHonorTotal", + @"pvpLeaveIfInactive", + @"pvpDontMoveWithPreparation", + @"pvpWaitToLeave", + @"pvpWaitToLeaveTime", + @"pvpStayInWintergrasp", + @"DoMining", + @"MiningLevel", + @"DoHerbalism", + @"HerbalismLevel", + @"GatheringDistance", + @"DoNetherwingEggs", + @"ShouldLoot", + @"DoSkinning", + @"SkinningLevel", + @"DoNinjaSkin", + @"GatherUseCrystallized", + @"GatherNodesHostilePlayerNear", + @"GatherNodesHostilePlayerNearRange", + @"GatherNodesFriendlyPlayerNear", + @"GatherNodesFriendlyPlayerNearRange", + @"GatherNodesMobNear", + @"GatherNodesMobNearRange", + @"DoFishing", + @"FishingApplyLure", + @"FishingLureID", + @"FishingUseContainers", + @"FishingOnlySchools", + @"FishingRecast", + @"FishingGatherDistance", + + nil] retain]; + } + return self; +} + +- (id)initWithName: (NSString*)name { + self = [self init]; + if (self != nil) { + self.name = name; + } + return self; +} + ++ (id)combatProfile { + return [[[CombatProfile alloc] init] autorelease]; +} + ++ (id)combatProfileWithName: (NSString*)name { + return [[[CombatProfile alloc] initWithName: name] autorelease]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + CombatProfile *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.entries = self.entries; + copy.combatEnabled = self.combatEnabled; + copy.onlyRespond = self.onlyRespond; + copy.attackNeutralNPCs = self.attackNeutralNPCs; + copy.attackHostileNPCs = self.attackHostileNPCs; + copy.attackPlayers = self.attackPlayers; + copy.attackPets = self.attackPets; + copy.attackAnyLevel = self.attackAnyLevel; + copy.ignoreElite = self.ignoreElite; + copy.ignoreLevelOne = self.ignoreLevelOne; + copy.ignoreFlying = self.ignoreFlying; + + copy.assistUnit = self.assistUnit; + copy.assistUnitGUID = self.assistUnitGUID; + copy.tankUnit = self.tankUnit; + copy.tankUnitGUID = self.tankUnitGUID; + copy.partyEnabled = self.partyEnabled; + copy.followUnit = self.followUnit; + copy.followUnitGUID = self.followUnitGUID; + copy.followDistanceToMove = self.followDistanceToMove; + copy.yardsBehindTargetStart = self.yardsBehindTargetStart; + copy.yardsBehindTargetStop = self.yardsBehindTargetStop; + copy.disableRelease = self.disableRelease; + + copy.healingEnabled = self.healingEnabled; + copy.autoFollowTarget = self.autoFollowTarget; + copy.healingRange = self.healingRange; + copy.mountEnabled = self.mountEnabled; + + copy.attackRange = self.attackRange; + copy.engageRange = self.engageRange; + copy.attackLevelMin = self.attackLevelMin; + copy.attackLevelMax = self.attackLevelMax; + + // New additions + copy.partyDoNotInitiate = self.partyDoNotInitiate; + copy.partyIgnoreOtherFriendlies = self.partyIgnoreOtherFriendlies; + copy.partyEmotes = self.partyEmotes; + copy.partyEmotesIdleTime = self.partyEmotesIdleTime; + copy.partyEmotesInterval = self.partyEmotesInterval; + copy.followEnabled = self.followEnabled; + copy.followStopFollowingOOR = self.followStopFollowingOOR; + copy.followStopFollowingRange = self.followStopFollowingRange; + copy.followDoNotAssignLeader = self.followDoNotAssignLeader; + copy.followDoNotAssignLeaderRange = self.followDoNotAssignLeaderRange; + + copy.followEnemyFlagCarriers = self.followEnemyFlagCarriers; + copy.followFriendlyFlagCarriers = self.followFriendlyFlagCarriers; + + copy.resurrectWithSpiritHealer = self.resurrectWithSpiritHealer; + copy.checkForCampers = self.checkForCampers; + copy.checkForCampersRange = self.checkForCampersRange; + copy.avoidMobsWhenResurrecting = self.avoidMobsWhenResurrecting; + copy.moveToCorpseRange = self.moveToCorpseRange; + copy.partyLeaderWait = self.partyLeaderWait; + copy.partyLeaderWaitRange = self.partyLeaderWaitRange; + + copy.pvpQueueForRandomBattlegrounds = self.pvpQueueForRandomBattlegrounds; + copy.pvpStopHonor = self.pvpStopHonor; + copy.pvpStopHonorTotal = self.pvpStopHonorTotal; + copy.pvpLeaveIfInactive = self.pvpLeaveIfInactive; + copy.pvpDontMoveWithPreparation = self.pvpDontMoveWithPreparation; + copy.pvpWaitToLeave = self.pvpWaitToLeave; + copy.pvpWaitToLeaveTime = self.pvpWaitToLeaveTime; + copy.pvpStayInWintergrasp = self.pvpStayInWintergrasp; + + copy.DoMining = self.DoMining; + copy.MiningLevel = self.MiningLevel; + copy.DoHerbalism = self.DoHerbalism; + copy.HerbalismLevel = self.HerbalismLevel; + copy.GatheringDistance = self.GatheringDistance; + copy.DoNetherwingEggs = self.DoNetherwingEggs; + copy.ShouldLoot = self.ShouldLoot; + copy.DoSkinning = self.DoSkinning; + copy.SkinningLevel = self.SkinningLevel; + copy.DoNinjaSkin = self.DoNinjaSkin; + copy.GatherUseCrystallized = self.GatherUseCrystallized; + copy.GatherNodesHostilePlayerNear = self.GatherNodesHostilePlayerNear; + copy.GatherNodesHostilePlayerNearRange = self.GatherNodesHostilePlayerNearRange; + copy.GatherNodesFriendlyPlayerNear = self.GatherNodesFriendlyPlayerNear; + copy.GatherNodesFriendlyPlayerNearRange = self.GatherNodesFriendlyPlayerNearRange; + copy.GatherNodesMobNear = self.GatherNodesMobNear; + copy.GatherNodesMobNearRange = self.GatherNodesMobNearRange; + copy.DoFishing = self.DoFishing; + copy.FishingApplyLure = self.FishingApplyLure; + copy.FishingLureID = self.FishingLureID; + copy.FishingUseContainers = self.FishingUseContainers; + copy.FishingOnlySchools = self.FishingOnlySchools; + copy.FishingRecast = self.FishingRecast; + copy.FishingGatherDistance = self.FishingGatherDistance; + + copy.changed = YES; + + return copy; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if ( self ) { + self.entries = [decoder decodeObjectForKey: @"IgnoreList"] ? [decoder decodeObjectForKey: @"IgnoreList"] : [NSArray array]; + + self.combatEnabled = [[decoder decodeObjectForKey: @"CombatEnabled"] boolValue]; + self.onlyRespond = [[decoder decodeObjectForKey: @"OnlyRespond"] boolValue]; + self.attackNeutralNPCs = [[decoder decodeObjectForKey: @"AttackNeutralNPCs"] boolValue]; + self.attackHostileNPCs = [[decoder decodeObjectForKey: @"AttackHostileNPCs"] boolValue]; + self.attackPlayers = [[decoder decodeObjectForKey: @"AttackPlayers"] boolValue]; + self.attackPets = [[decoder decodeObjectForKey: @"AttackPets"] boolValue]; + self.attackAnyLevel = [[decoder decodeObjectForKey: @"AttackAnyLevel"] boolValue]; + self.ignoreElite = [[decoder decodeObjectForKey: @"IgnoreElite"] boolValue]; + self.ignoreLevelOne = [[decoder decodeObjectForKey: @"IgnoreLevelOne"] boolValue]; + self.ignoreFlying = [[decoder decodeObjectForKey: @"IgnoreFlying"] boolValue]; + + self.assistUnit = [[decoder decodeObjectForKey: @"AssistUnit"] boolValue]; + self.assistUnitGUID = [[decoder decodeObjectForKey: @"AssistUnitGUID"] unsignedLongLongValue]; + self.tankUnit = [[decoder decodeObjectForKey: @"TankUnit"] boolValue]; + self.tankUnitGUID = [[decoder decodeObjectForKey: @"TankUnitGUID"] unsignedLongLongValue]; + self.followUnit = [[decoder decodeObjectForKey: @"FollowUnit"] boolValue]; + self.followUnitGUID = [[decoder decodeObjectForKey: @"FollowUnitGUID"] unsignedLongLongValue]; + self.partyEnabled = [[decoder decodeObjectForKey: @"PartyEnabled"] boolValue]; + self.followDistanceToMove = [[decoder decodeObjectForKey: @"FollowDistanceToMove"] floatValue]; + self.yardsBehindTargetStart = [[decoder decodeObjectForKey: @"YardsBehindTargetStart"] floatValue]; + self.yardsBehindTargetStop = [[decoder decodeObjectForKey: @"YardsBehindTargetStop"] floatValue]; + self.disableRelease = [[decoder decodeObjectForKey: @"DisableRelease"] boolValue]; + + self.healingEnabled = [[decoder decodeObjectForKey: @"HealingEnabled"] boolValue]; + self.autoFollowTarget = [[decoder decodeObjectForKey: @"AutoFollowTarget"] boolValue]; + self.healingRange = [[decoder decodeObjectForKey: @"HealingRange"] floatValue]; + self.mountEnabled = [[decoder decodeObjectForKey: @"MountEnabled"] boolValue]; + + self.engageRange = [[decoder decodeObjectForKey: @"EngageRange"] floatValue]; + self.attackRange = [[decoder decodeObjectForKey: @"AttackRange"] floatValue]; + self.attackLevelMin = [[decoder decodeObjectForKey: @"AttackLevelMin"] intValue]; + self.attackLevelMax = [[decoder decodeObjectForKey: @"AttackLevelMax"] intValue]; + + // New additions + self.partyDoNotInitiate = [[decoder decodeObjectForKey: @"PartyDoNotInitiate"] boolValue]; + self.partyIgnoreOtherFriendlies = [[decoder decodeObjectForKey: @"PartyIgnoreOtherFriendlies"] boolValue]; + self.partyEmotes = [[decoder decodeObjectForKey: @"PartyEmotes"] boolValue]; + self.partyEmotesIdleTime = [[decoder decodeObjectForKey: @"PartyEmotesIdleTime"] intValue]; + self.partyEmotesInterval = [[decoder decodeObjectForKey: @"PartyEmotesInterval"] intValue]; + self.followEnabled = [[decoder decodeObjectForKey: @"FollowEnabled"] boolValue]; + self.followStopFollowingOOR = [[decoder decodeObjectForKey: @"FollowStopFollowingOOR"] boolValue]; + self.followStopFollowingRange = [[decoder decodeObjectForKey: @"FollowStopFollowingRange"] floatValue]; + self.followDoNotAssignLeader = [[decoder decodeObjectForKey: @"FollowDoNotAssignLeader"] boolValue]; + self.followDoNotAssignLeaderRange = [[decoder decodeObjectForKey: @"FollowDoNotAssignLeaderRange"] floatValue]; + self.followEnemyFlagCarriers = [[decoder decodeObjectForKey: @"FollowEnemyFlagCarriers"] boolValue]; + self.followFriendlyFlagCarriers = [[decoder decodeObjectForKey: @"FollowFriendlyFlagCarriers"] boolValue]; + + self.resurrectWithSpiritHealer = [[decoder decodeObjectForKey: @"ResurrectWithSpiritHealer"] boolValue]; + self.checkForCampers = [[decoder decodeObjectForKey: @"CheckForCampers"] boolValue]; + self.checkForCampersRange = [[decoder decodeObjectForKey: @"CheckForCampersRange"] floatValue]; + self.avoidMobsWhenResurrecting = [[decoder decodeObjectForKey: @"AvoidMobsWhenResurrecting"] boolValue]; + self.moveToCorpseRange = [[decoder decodeObjectForKey: @"MoveToCorpseRange"] floatValue]; + + self.partyLeaderWait = [[decoder decodeObjectForKey: @"PartyLeaderWait"] boolValue]; + self.partyLeaderWaitRange = [[decoder decodeObjectForKey: @"PartyLeaderWaitRange"] floatValue]; + + self.pvpQueueForRandomBattlegrounds = [[decoder decodeObjectForKey: @"PvpQueueForRandomBattlegrounds"] boolValue]; + self.pvpStopHonor = [[decoder decodeObjectForKey: @"PvpStopHonor"] boolValue]; + self.pvpStopHonorTotal = [[decoder decodeObjectForKey: @"PvpStopHonorTotal"] intValue]; + self.pvpLeaveIfInactive = [[decoder decodeObjectForKey: @"PvpLeaveIfInactive"] boolValue]; + self.pvpDontMoveWithPreparation = [[decoder decodeObjectForKey: @"PvpDontMoveWithPreparation"] boolValue]; + self.pvpWaitToLeave = [[decoder decodeObjectForKey: @"PvpWaitToLeave"] boolValue]; + self.pvpWaitToLeaveTime = [[decoder decodeObjectForKey: @"PvpWaitToLeaveTime"] floatValue]; + self.pvpStayInWintergrasp = [[decoder decodeObjectForKey: @"pvpStayInWintergrasp"] boolValue]; + + self.DoMining = [[decoder decodeObjectForKey: @"DoMining"] boolValue]; + self.MiningLevel = [[decoder decodeObjectForKey: @"MiningLevel"] intValue]; + self.DoHerbalism = [[decoder decodeObjectForKey: @"DoHerbalism"] boolValue]; + self.HerbalismLevel = [[decoder decodeObjectForKey: @"HerbalismLevel"] intValue]; + self.GatheringDistance = [[decoder decodeObjectForKey: @"GatheringDistance"] floatValue]; + self.DoNetherwingEggs = [[decoder decodeObjectForKey: @"DoNetherwingEggs"] boolValue]; + self.ShouldLoot = [[decoder decodeObjectForKey: @"ShouldLoot"] boolValue]; + self.DoSkinning = [[decoder decodeObjectForKey: @"DoSkinning"] boolValue]; + self.SkinningLevel = [[decoder decodeObjectForKey: @"SkinningLevel"] intValue]; + self.DoNinjaSkin = [[decoder decodeObjectForKey: @"DoNinjaSkin"] boolValue]; + self.GatherUseCrystallized = [[decoder decodeObjectForKey: @"GatherUseCrystallized"] boolValue]; + self.GatherNodesHostilePlayerNear = [[decoder decodeObjectForKey: @"GatherNodesHostilePlayerNear"] boolValue]; + self.GatherNodesHostilePlayerNearRange = [[decoder decodeObjectForKey: @"GatherNodesHostilePlayerNearRange"] floatValue]; + self.GatherNodesFriendlyPlayerNear = [[decoder decodeObjectForKey: @"GatherNodesFriendlyPlayerNear"] boolValue]; + self.GatherNodesFriendlyPlayerNearRange = [[decoder decodeObjectForKey: @"GatherNodesFriendlyPlayerNearRange"] floatValue]; + self.GatherNodesMobNear = [[decoder decodeObjectForKey: @"GatherNodesMobNear"] boolValue]; + self.GatherNodesMobNearRange = [[decoder decodeObjectForKey: @"GatherNodesMobNearRange"] floatValue]; + self.DoFishing = [[decoder decodeObjectForKey: @"DoFishing"] boolValue]; + self.FishingApplyLure = [[decoder decodeObjectForKey: @"FishingApplyLure"] boolValue]; + self.FishingLureID = [[decoder decodeObjectForKey: @"FishingLureID"] intValue]; + self.FishingUseContainers = [[decoder decodeObjectForKey: @"FishingUseContainers"] boolValue]; + self.FishingOnlySchools = [[decoder decodeObjectForKey: @"FishingOnlySchools"] boolValue]; + self.FishingRecast = [[decoder decodeObjectForKey: @"FishingRecast"] boolValue]; + self.FishingGatherDistance = [[decoder decodeObjectForKey: @"FishingGatherDistance"] floatValue]; + + [super initWithCoder:decoder]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [super encodeWithCoder:coder]; + + [coder encodeObject: [NSNumber numberWithBool: self.combatEnabled] forKey: @"CombatEnabled"]; + [coder encodeObject: [NSNumber numberWithBool: self.onlyRespond] forKey: @"OnlyRespond"]; + [coder encodeObject: [NSNumber numberWithBool: self.attackNeutralNPCs] forKey: @"AttackNeutralNPCs"]; + [coder encodeObject: [NSNumber numberWithBool: self.attackHostileNPCs] forKey: @"AttackHostileNPCs"]; + [coder encodeObject: [NSNumber numberWithBool: self.attackPlayers] forKey: @"AttackPlayers"]; + [coder encodeObject: [NSNumber numberWithBool: self.attackPets] forKey: @"AttackPets"]; + [coder encodeObject: [NSNumber numberWithBool: self.attackAnyLevel] forKey: @"AttackAnyLevel"]; + [coder encodeObject: [NSNumber numberWithBool: self.ignoreElite] forKey: @"IgnoreElite"]; + [coder encodeObject: [NSNumber numberWithBool: self.ignoreLevelOne] forKey: @"IgnoreLevelOne"]; + [coder encodeObject: [NSNumber numberWithBool: self.ignoreFlying] forKey: @"IgnoreFlying"]; + + [coder encodeObject: [NSNumber numberWithBool: self.assistUnit] forKey: @"AssistUnit"]; + [coder encodeObject: [NSNumber numberWithUnsignedLongLong: self.assistUnitGUID] forKey: @"AssistUnitGUID"]; + [coder encodeObject: [NSNumber numberWithBool: self.tankUnit] forKey: @"TankUnit"]; + [coder encodeObject: [NSNumber numberWithUnsignedLongLong: self.tankUnitGUID] forKey: @"TankUnitGUID"]; + [coder encodeObject: [NSNumber numberWithBool: self.followUnit] forKey: @"FollowUnit"]; + [coder encodeObject: [NSNumber numberWithUnsignedLongLong: self.followUnitGUID] forKey: @"FollowUnitGUID"]; + [coder encodeObject: [NSNumber numberWithBool: self.partyEnabled] forKey: @"PartyEnabled"]; + [coder encodeObject: [NSNumber numberWithFloat: self.followDistanceToMove] forKey: @"FollowDistanceToMove"]; + [coder encodeObject: [NSNumber numberWithFloat: self.yardsBehindTargetStart] forKey: @"YardsBehindTargetStart"]; + [coder encodeObject: [NSNumber numberWithFloat: self.yardsBehindTargetStop] forKey: @"YardsBehindTargetStop"]; + [coder encodeObject: [NSNumber numberWithBool: self.disableRelease] forKey: @"DisableRelease"]; + + [coder encodeObject: [NSNumber numberWithBool: self.healingEnabled] forKey: @"HealingEnabled"]; + [coder encodeObject: [NSNumber numberWithBool: self.autoFollowTarget] forKey: @"AutoFollowTarget"]; + [coder encodeObject: [NSNumber numberWithFloat: self.healingRange] forKey: @"HealingRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.mountEnabled] forKey: @"MountEnabled"]; + + [coder encodeObject: [NSNumber numberWithFloat: self.engageRange] forKey: @"EngageRange"]; + [coder encodeObject: [NSNumber numberWithFloat: self.attackRange] forKey: @"AttackRange"]; + [coder encodeObject: [NSNumber numberWithInt: self.attackLevelMin] forKey: @"AttackLevelMin"]; + [coder encodeObject: [NSNumber numberWithInt: self.attackLevelMax] forKey: @"AttackLevelMax"]; + + // New additions + [coder encodeObject: [NSNumber numberWithBool: self.partyDoNotInitiate] forKey: @"PartyDoNotInitiate"]; + [coder encodeObject: [NSNumber numberWithBool: self.partyIgnoreOtherFriendlies] forKey: @"PartyIgnoreOtherFriendlies"]; + [coder encodeObject: [NSNumber numberWithBool: self.partyEmotes] forKey:@"PartyEmotes"]; + [coder encodeObject: [NSNumber numberWithInt: self.partyEmotesIdleTime] forKey: @"PartyEmotesIdleTime"]; + [coder encodeObject: [NSNumber numberWithInt: self.partyEmotesInterval] forKey: @"PartyEmotesInterval"]; + [coder encodeObject: [NSNumber numberWithBool: self.followEnabled] forKey: @"FollowEnabled"]; + [coder encodeObject: [NSNumber numberWithBool: self.followStopFollowingOOR] forKey: @"FollowStopFollowingOOR"]; + [coder encodeObject: [NSNumber numberWithFloat: self.followStopFollowingRange] forKey: @"FollowStopFollowingRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.followDoNotAssignLeader] forKey: @"FollowDoNotAssignLeader"]; + [coder encodeObject: [NSNumber numberWithFloat: self.followDoNotAssignLeaderRange] forKey: @"FollowDoNotAssignLeaderRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.followEnemyFlagCarriers] forKey: @"FollowEnemyFlagCarriers"]; + [coder encodeObject: [NSNumber numberWithBool: self.followFriendlyFlagCarriers] forKey: @"FollowFriendlyFlagCarriers"]; + [coder encodeObject: [NSNumber numberWithBool: self.resurrectWithSpiritHealer] forKey: @"ResurrectWithSpiritHealer"]; + [coder encodeObject: [NSNumber numberWithBool: self.checkForCampers] forKey: @"CheckForCampers"]; + [coder encodeObject: [NSNumber numberWithFloat: self.checkForCampersRange] forKey: @"CheckForCampersRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.avoidMobsWhenResurrecting] forKey: @"AvoidMobsWhenResurrecting"]; + [coder encodeObject: [NSNumber numberWithFloat: self.moveToCorpseRange] forKey: @"MoveToCorpseRange"]; + + [coder encodeObject: [NSNumber numberWithBool: self.partyLeaderWait] forKey: @"PartyLeaderWait"]; + [coder encodeObject: [NSNumber numberWithFloat: self.partyLeaderWaitRange] forKey: @"PartyLeaderWaitRange"]; + + [coder encodeObject: [NSNumber numberWithBool: self.pvpQueueForRandomBattlegrounds] forKey: @"PvpQueueForRandomBattlegrounds"]; + [coder encodeObject: [NSNumber numberWithBool: self.pvpStopHonor] forKey: @"PvpStopHonor"]; + [coder encodeObject: [NSNumber numberWithInt: self.pvpStopHonorTotal] forKey: @"PvpStopHonorTotal"]; + [coder encodeObject: [NSNumber numberWithBool: self.pvpLeaveIfInactive] forKey: @"PvpLeaveIfInactive"]; + [coder encodeObject: [NSNumber numberWithBool: self.pvpDontMoveWithPreparation] forKey: @"PvpDontMoveWithPreparation"]; + [coder encodeObject: [NSNumber numberWithBool: self.pvpWaitToLeave] forKey: @"PvpWaitToLeave"]; + [coder encodeObject: [NSNumber numberWithFloat: self.pvpWaitToLeaveTime] forKey: @"PvpWaitToLeaveTime"]; + [coder encodeObject: [NSNumber numberWithBool: self.pvpStayInWintergrasp] forKey: @"PvpStayInWintergrasp"]; + + [coder encodeObject: [NSNumber numberWithBool: self.DoMining] forKey: @"DoMining"]; + [coder encodeObject: [NSNumber numberWithInt: self.MiningLevel] forKey: @"MiningLevel"]; + [coder encodeObject: [NSNumber numberWithBool: self.DoHerbalism] forKey: @"DoHerbalism"]; + [coder encodeObject: [NSNumber numberWithInt: self.HerbalismLevel] forKey: @"HerbalismLevel"]; + [coder encodeObject: [NSNumber numberWithFloat: self.GatheringDistance] forKey: @"GatheringDistance"]; + [coder encodeObject: [NSNumber numberWithBool: self.DoNetherwingEggs] forKey: @"DoNetherwingEggs"]; + [coder encodeObject: [NSNumber numberWithBool: self.ShouldLoot] forKey: @"ShouldLoot"]; + [coder encodeObject: [NSNumber numberWithBool: self.DoSkinning] forKey: @"DoSkinning"]; + [coder encodeObject: [NSNumber numberWithInt: self.SkinningLevel] forKey: @"SkinningLevel"]; + [coder encodeObject: [NSNumber numberWithBool: self.DoNinjaSkin] forKey: @"DoNinjaSkin"]; + [coder encodeObject: [NSNumber numberWithBool: self.GatherUseCrystallized] forKey: @"GatherUseCrystallized"]; + [coder encodeObject: [NSNumber numberWithBool: self.GatherNodesHostilePlayerNear] forKey: @"GatherNodesHostilePlayerNear"]; + [coder encodeObject: [NSNumber numberWithFloat: self.GatherNodesHostilePlayerNearRange] forKey: @"GatherNodesHostilePlayerNearRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.GatherNodesFriendlyPlayerNear] forKey: @"GatherNodesFriendlyPlayerNear"]; + [coder encodeObject: [NSNumber numberWithFloat: self.GatherNodesFriendlyPlayerNearRange] forKey: @"GatherNodesFriendlyPlayerNearRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.GatherNodesMobNear] forKey: @"GatherNodesMobNear"]; + [coder encodeObject: [NSNumber numberWithFloat: self.GatherNodesMobNearRange] forKey: @"GatherNodesMobNearRange"]; + [coder encodeObject: [NSNumber numberWithBool: self.DoFishing] forKey: @"DoFishing"]; + [coder encodeObject: [NSNumber numberWithBool: self.FishingApplyLure] forKey: @"FishingApplyLure"]; + [coder encodeObject: [NSNumber numberWithInt: self.FishingLureID] forKey: @"FishingLureID"]; + [coder encodeObject: [NSNumber numberWithBool: self.FishingUseContainers] forKey: @"FishingUseContainers"]; + [coder encodeObject: [NSNumber numberWithBool: self.FishingOnlySchools] forKey: @"FishingOnlySchools"]; + [coder encodeObject: [NSNumber numberWithBool: self.FishingRecast] forKey: @"FishingRecast"]; + [coder encodeObject: [NSNumber numberWithFloat: self.FishingGatherDistance] forKey: @"FishingGatherDistance"]; + + [coder encodeObject: self.entries forKey: @"IgnoreList"]; +} + +- (void) dealloc +{ + self.name = nil; + self.entries = nil; + [super dealloc]; +} + +@synthesize name = _name; +@synthesize entries = _combatEntries; +@synthesize combatEnabled; +@synthesize onlyRespond; +@synthesize attackNeutralNPCs; +@synthesize attackHostileNPCs; +@synthesize attackPlayers; +@synthesize attackPets; +@synthesize attackAnyLevel; +@synthesize ignoreElite; +@synthesize ignoreLevelOne; +@synthesize ignoreFlying; + +@synthesize assistUnit; +@synthesize assistUnitGUID; +@synthesize tankUnit; +@synthesize tankUnitGUID; +@synthesize followUnit; +@synthesize followUnitGUID; +@synthesize partyEnabled; +@synthesize followDistanceToMove; +@synthesize yardsBehindTargetStart; +@synthesize yardsBehindTargetStop; + +@synthesize healingEnabled; +@synthesize autoFollowTarget; +@synthesize healingRange; +@synthesize mountEnabled; +@synthesize disableRelease; + +@synthesize engageRange; +@synthesize attackRange; +@synthesize attackLevelMin; +@synthesize attackLevelMax; + +// New additions +@synthesize partyDoNotInitiate; +@synthesize partyIgnoreOtherFriendlies; +@synthesize partyEmotes; +@synthesize partyEmotesIdleTime; +@synthesize partyEmotesInterval; +@synthesize followEnabled; +@synthesize followStopFollowingOOR; +@synthesize followStopFollowingRange; +@synthesize followDoNotAssignLeader; +@synthesize followDoNotAssignLeaderRange; + +@synthesize followFriendlyFlagCarriers; +@synthesize followEnemyFlagCarriers; + +@synthesize resurrectWithSpiritHealer; +@synthesize checkForCampers; +@synthesize checkForCampersRange; +@synthesize avoidMobsWhenResurrecting; +@synthesize moveToCorpseRange; +@synthesize partyLeaderWait; +@synthesize partyLeaderWaitRange; + +@synthesize pvpQueueForRandomBattlegrounds; +@synthesize pvpStopHonor; +@synthesize pvpStopHonorTotal; +@synthesize pvpLeaveIfInactive; +@synthesize pvpDontMoveWithPreparation; +@synthesize pvpWaitToLeave; +@synthesize pvpWaitToLeaveTime; +@synthesize pvpStayInWintergrasp; + +@synthesize DoMining; +@synthesize MiningLevel; +@synthesize DoHerbalism; +@synthesize HerbalismLevel; +@synthesize GatheringDistance; +@synthesize DoNetherwingEggs; +@synthesize ShouldLoot; +@synthesize DoSkinning; +@synthesize SkinningLevel; +@synthesize DoNinjaSkin; +@synthesize GatherUseCrystallized; +@synthesize GatherNodesHostilePlayerNear; +@synthesize GatherNodesHostilePlayerNearRange; +@synthesize GatherNodesFriendlyPlayerNear; +@synthesize GatherNodesFriendlyPlayerNearRange; +@synthesize GatherNodesMobNear; +@synthesize GatherNodesMobNearRange; +@synthesize DoFishing; +@synthesize FishingApplyLure; +@synthesize FishingLureID; +@synthesize FishingUseContainers; +@synthesize FishingOnlySchools; +@synthesize FishingRecast; +@synthesize FishingGatherDistance; + + +- (BOOL)unitShouldBeIgnored: (Unit*)unit{ + + // check our internal blacklist + for ( IgnoreEntry *entry in [self entries] ) { + if( [entry type] == IgnoreType_EntryID) { + if( [[entry ignoreValue] intValue] == [unit entryID]) + return YES; + } + if( [entry type] == IgnoreType_Name) { + if(![entry ignoreValue] || ![[entry ignoreValue] length] || ![unit name]) + continue; + + NSRange range = [[unit name] rangeOfString: [entry ignoreValue] + options: NSCaseInsensitiveSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound) { + return YES; + } + } + } + + return NO; +} + +- (void)setEntries: (NSArray*)newEntries { + [self willChangeValueForKey: @"entries"]; + [_combatEntries autorelease]; + if(newEntries) { + _combatEntries = [[NSMutableArray alloc] initWithArray: newEntries copyItems: YES]; + } else { + _combatEntries = nil; + } + self.changed = YES; + [self didChangeValueForKey: @"entries"]; +} + +- (unsigned)entryCount { + return [self.entries count]; +} + +- (IgnoreEntry*)entryAtIndex: (unsigned)index { + if(index >= 0 && index < [self entryCount]) + return [[[_combatEntries objectAtIndex: index] retain] autorelease]; + return nil; +} + +- (void)addEntry: (IgnoreEntry*)entry { + if(entry != nil){ + [_combatEntries addObject: entry]; + self.changed = YES; + } +} + +- (void)removeEntry: (IgnoreEntry*)entry { + if(entry == nil) return; + [_combatEntries removeObject: entry]; + self.changed = YES; +} + +- (void)removeEntryAtIndex: (unsigned)index; { + if(index >= 0 && index < [self entryCount]){ + [_combatEntries removeObjectAtIndex: index]; + self.changed = YES; + } +} + +@end diff --git a/CombatProfileAction.xib b/CombatProfileAction.xib new file mode 100644 index 0000000..abc5730 --- /dev/null +++ b/CombatProfileAction.xib @@ -0,0 +1,1045 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + CombatProfileActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{100, 2}, {204, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{32, 8}, {66, 17}} + + YES + + 67239488 + 272630784 + Switch to: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 6}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {430, 34} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + profilePopUp + + + + 176 + + + + content: profiles + + + + + + content: profiles + content + profiles + 2 + + + 177 + + + + contentObjects: profiles + + + + + + contentObjects: profiles + contentObjects + profiles + + 2 + + + 181 + + + + contentValues: profiles.name + + + + + + contentValues: profiles.name + contentValues + profiles.name + + 2 + + + 182 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + 122 + + + YES + + + + + + + + 123 + + + + + 124 + + + + + 125 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{528, 481}, {430, 34}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 182 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + CombatProfileActionController + ActionController + + profilePopUp + NSPopUpButton + + + IBProjectSource + CombatProfileActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/CombatProfileActionController.h b/CombatProfileActionController.h new file mode 100644 index 0000000..8d5c5d5 --- /dev/null +++ b/CombatProfileActionController.h @@ -0,0 +1,22 @@ +// +// CombatProfileActionController.h +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface CombatProfileActionController : ActionController { + IBOutlet NSPopUpButton *profilePopUp; + + NSArray *_profiles; +} + ++ (id)combatProfileActionControllerWithProfiles: (NSArray*)profiles; + +@property (readwrite, copy) NSArray *profiles; + +@end diff --git a/CombatProfileActionController.m b/CombatProfileActionController.m new file mode 100644 index 0000000..1ccb7d2 --- /dev/null +++ b/CombatProfileActionController.m @@ -0,0 +1,81 @@ +// +// CombatProfileActionController.m +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "CombatProfileActionController.h" +#import "ActionController.h" + +#import "CombatProfile.h" + +@implementation CombatProfileActionController + +- (id)init +{ + self = [super init]; + if (self != nil) { + _profiles = nil; + if(![NSBundle loadNibNamed: @"CombatProfileAction" owner: self]) { + log(LOG_GENERAL, @"Error loading CombatProfileAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithProfiles: (NSArray*)profiles{ + self = [self init]; + if (self != nil) { + self.profiles = profiles; + } + return self; +} + ++ (id)combatProfileActionControllerWithProfiles: (NSArray*)profiles{ + return [[[CombatProfileActionController alloc] initWithProfiles: profiles] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [profilePopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [profilePopUp unbind: binding]; + } +} + +@synthesize profiles = _profiles; + +- (void)setStateFromAction: (Action*)action{ + + for ( NSMenuItem *item in [profilePopUp itemArray] ){ + if ( [[(CombatProfile*)[item representedObject] UUID] isEqualToString:action.value] ){ + [profilePopUp selectItem:item]; + break; + } + } + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_CombatProfile value:nil]; + + [action setEnabled: self.enabled]; + [action setValue: [[[profilePopUp selectedItem] representedObject] UUID]]; + + log(LOG_GENERAL, @"saving combat profile with %@", [[[profilePopUp selectedItem] representedObject] UUID]); + + return action; +} + + +@end diff --git a/ComboPointCondition.xib b/ComboPointCondition.xib new file mode 100644 index 0000000..1405577 --- /dev/null +++ b/ComboPointCondition.xib @@ -0,0 +1,924 @@ + + + + 1050 + 9E17 + 629 + 949.33 + 352.00 + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + ComboPointConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{217, 7}, {57, 22}} + + + YES + + -1804468671 + 138413056 + + 0 + 0 + NO + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + LucidaGrande + 1.300000e+01 + 1044 + + + + YES + + YES + allowsFloats + alwaysShowsDecimalSeparator + decimalSeparator + formatterBehavior + generatesDecimalNumbers + groupingSeparator + maximum + minimum + negativeFormat + numberStyle + positiveFormat + usesGroupingSeparator + + + YES + + + . + + + , + + + + + # + + + + + + + + + 0 + + YES + + YES + + + YES + + + + + + + + NaN + + + + + + + + NO + YES + YES + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + + textColor + + 3 + MAA + + + + + + + 268 + {{279, 10}, {92, 17}} + + + YES + + 67239488 + 272630784 + Combo Points + + + + 6 + + controlColor + + 3 + MC42NjY2NjY2OQA + + + + 6 + + controlTextColor + + + + + + + 268 + {{7, 8}, {20, 19}} + + + YES + + 67239424 + 134217728 + + + + 1.200000e+01 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{32, 10}, {68, 17}} + + + YES + + 67239488 + 272630784 + Player has + + + + + + + + + 268 + {{102, 4}, {110, 26}} + + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + More Than + + 1048576 + 2147483647 + 1 + + + NSMenuCheckmark + + + + NSMenuMixedState + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + Exactly + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + Less Than + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + 1 + YES + YES + 2 + + + + {376, 36} + + + NSView + + + + + YES + + + validateState: + + + + 17 + + + + valueText + + + + 21 + + + + view + + + + 22 + + + + disableButton + + + + 33 + + + + disableCondition: + + + + 34 + + + + + + + + 35 + + + + comparatorPopUp + + + + 36 + + + + + YES + + 0 + + YES + + + + + + -2 + + + RmlsZSdzIE93bmVyA + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + + 3 + + + YES + + + + + + 7 + + + YES + + + + + + 8 + + + YES + + + + + + 9 + + + + + 13 + + + + + 23 + + + YES + + + + + + 24 + + + + + 25 + + + YES + + + + + + 26 + + + + + 27 + + + YES + + + + + + 28 + + + YES + + + + + + 29 + + + YES + + + + + + + + 30 + + + + + 31 + + + + + 32 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 13.IBPluginDependency + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 23.IBAttributePlaceholdersKey + 23.IBPluginDependency + 24.IBPluginDependency + 25.IBPluginDependency + 26.IBPluginDependency + 27.IBPluginDependency + 28.IBPluginDependency + 29.IBPluginDependency + 29.editorWindowContentRectSynchronizationRect + 3.IBPluginDependency + 30.IBAttributePlaceholdersKey + 30.IBPluginDependency + 31.IBAttributePlaceholdersKey + 31.IBPluginDependency + 32.IBAttributePlaceholdersKey + 32.IBPluginDependency + 7.IBPluginDependency + 8.IBPluginDependency + 9.IBPluginDependency + + + YES + + + + + + {628, 654} + {{590, 350}, {376, 36}} + + ToolTip + + + + Disable this condition. + + + + + + + + + + {{681, 317}, {142, 63}} + + + + + + + + + + + + + + + + The same number + + + + + + + + + + + + + + + + + + + YES + + YES + + + YES + + + + + YES + + YES + + + YES + + + + 36 + + + + YES + + ComboPointConditionController + ConditionController + + YES + + YES + + + YES + + + + YES + + YES + comparatorPopUp + valueText + + + YES + NSPopUpButton + NSTextField + + + + IBProjectSource + ComboPointConditionController.h + + + + + ConditionController + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + IBUserSource + + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + + + + + YES + + YES + _delegate + disableButton + view + + + YES + + NSButton + + + + + + ConditionController.h + + + + + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + Controller.h + + + + + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + BetterTableView.h + + + + + 0 + ../WoWWaypoint.xcodeproj + 3 + + YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA +AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxDIAAsADAAxADUANgA8AD0A +QQBFAFMAWwBrAHUACwB2AJkAoQCiAKUApgC7AMAAwQDGAMcAyADLAM8A0ADRANMA1ADaAOMA0ADkAO4A +0ADvAPMA9QD7AQIBAwEHAQwBDQEQARUBHQEeASwBMQE1ATYBOAE6ATsBQAFIAVABUQFhAW0BcAGSAa8B +sAGxAbIBswG0AbUBtgG3AbgBuQG6AWoAjgG7AbwBaQG+Ab8BwAHBAcUBywHMAdAB0gHVAKUB2AHcAd0B +4AHqAesB7AHwAfIB9wH4AfsB/gIBAgkCCgITAhQCGQIaAh0CIgIjAisCLAIzAjQACwEAAjUCOAI5Aj4C +PwJEAkkCSgJRAlICUwJWAlsCYAJhAmYCegJ9An4CgAKUAqkCvgK/AsACwQLCAsMCxALFAsYCxwLIAskC +ygLLAswCzQLOAs8C0ALTAtYC9gMWAxcDGAMZAxoDGwMcAx0DHgMfAO0DIAMhAyIDIwCKAyQDJQMmAycD +KAMpAyoDKwMsAy0DLgMvAzADMQM0AzcDOlUkbnVsbN8QEgANAA4ADwAQABEAEgATABQAFQAWABcAGAAZ +ABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAuAC8AMFZOU1Jvb3RWJGNsYXNz +XU5TT2JqZWN0c0tleXNfEA9OU0NsYXNzZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlPaWRzVmFsdWVz +XU5TQ29ubmVjdGlvbnNbTlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlNDbGFzc2VzS2V5c1pOU09pZHNL +ZXlzXU5TTmFtZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlDb25uZWN0b3JzXU5TRm9udE1hbmFnZXJf +EBBOU1Zpc2libGVXaW5kb3dzXxAPTlNPYmplY3RzVmFsdWVzXxAXTlNBY2Nlc3NpYmlsaXR5T2lkc0tl +eXNZTlNOZXh0T2lkXE5TT2lkc1ZhbHVlc4ACgMeAioCkgMaACICPgAWAo4ClgJCAxIAAgAaAjoDFECqA +ptIADgAyADMANFtOU0NsYXNzTmFtZYAEgANfEB1Db21ib1BvaW50Q29uZGl0aW9uQ29udHJvbGxlctIA +NwA4ADkAOlgkY2xhc3Nlc1okY2xhc3NuYW1logA6ADteTlNDdXN0b21PYmplY3RYTlNPYmplY3RfEBBJ +QkNvY29hRnJhbWV3b3Jr0gAOAD4APwBAWk5TLm9iamVjdHOAB6DSADcAOABCAEOjAEMARAA7XE5TTXV0 +YWJsZVNldFVOU1NldNIADgA+AEYAR4AmqwBIAEkASgBLAEwATQBOAE8AUABRAFKACYAsgC+AOYB9gH+A +gICCgIaAh4CJ1AAOAFQAVQBWAFcAHwBZAFpdTlNEZXN0aW5hdGlvblhOU1NvdXJjZVdOU0xhYmVsgCuA +AoAKgCrYAFwADgBdAF4AXwBgAGEAYgBjAGQAZQBmAGcAaABpAGNfEA9OU05leHRSZXNwb25kZXJXTlNG +cmFtZVZOU0NlbGxYTlN2RmxhZ3NZTlNFbmFibGVkWE5TV2luZG93W05TU3VwZXJ2aWV3gAuAKYAMgA4R +AQwJgA2AC9gAXAAOAGwAXwBtAGEAMgBiAGkAbwBwAGcAcQBpAHMAdFpOU1N1YnZpZXdzW05TRnJhbWVT +aXplgA2Ae4A6gHiADYB6gHlfEBV7ezEwMiwgNH0sIHsxMTAsIDI2fX3fEBIAdwB4AHkAegB7AA4AfAB9 +AH4AfwCAAIEAggCDAIQAhQCGAIcAiABoAIoAiwCMAI0AjgCLAJAAkQBZAI4AaABoAJUAlgCXAJhbTlND +ZWxsRmxhZ3NfEBpOU01lbnVJdGVtUmVzcGVjdEFsaWdubWVudF8QD05TQXJyb3dQb3NpdGlvbl8QE05T +QWx0ZXJuYXRlQ29udGVudHNfEBJOU1BlcmlvZGljSW50ZXJ2YWxeTlNCdXR0b25GbGFnczJfEA9OU0tl +eUVxdWl2YWxlbnRZTlNTdXBwb3J0Wk5TTWVudUl0ZW1dTlNDb250cm9sVmlld18QD05TUHJlZmVycmVk +RWRnZV8QEk5TVXNlc0l0ZW1Gcm9tTWVudV1OU0FsdGVyc1N0YXRlXxAPTlNQZXJpb2RpY0RlbGF5XE5T +Q2VsbEZsYWdzMlZOU01lbnVdTlNCdXR0b25GbGFncxP/////hEH+QAkQAoASEEuAKBABgBKAD4ATgAoJ +CREBkBEIAIAUEgaCQP/UAA4AmgCbAJwAnQCeAJ8AoFZOU1NpemVWTlNOYW1lWE5TZkZsYWdzgBEjQCoA +AAAAAACAEBEEFFxMdWNpZGFHcmFuZGXSADcAOACjAKSiAKQAO1ZOU0ZvbnRQ3ACnAA4AqACpAKoAqwCs +AK0AhgCuAK8AsABmALIAswC0AIsAtgC3ALgAlwC6AI4AjlhOU1RhcmdldFdOU1RpdGxlXxARTlNLZXlF +cXVpdk1vZE1hc2taTlNLZXlFcXVpdl1OU01uZW1vbmljTG9jWU5TT25JbWFnZVxOU01peGVkSW1hZ2VY +TlNBY3Rpb25VTlNUYWdXTlNTdGF0ZYAOgB2AFRIAEAAAgBISf////4AWgBqAFIAc0wAOAKgAvAC9AL4A +v1tOU01lbnVJdGVtc4AngB6AH1lNb3JlIFRoYW7TAA4AMgDCAMMAxADFXk5TUmVzb3VyY2VOYW1lgBmA +F4AYV05TSW1hZ2VfEA9OU01lbnVDaGVja21hcmvSADcAOADJAMqiAMoAO18QEE5TQ3VzdG9tUmVzb3Vy +Y2XTAA4AMgDCAMMAxADOgBmAF4AbXxAQTlNNZW51TWl4ZWRTdGF0ZV8QEV9wb3BVcEl0ZW1BY3Rpb246 +0gA3ADgA0gB/ogB/ADtaT3RoZXJWaWV3c9IADgA+AEYA1oAmowCRANgA2YATgCCAI9sApwAOAKgAqQCq +AKsArACtAIYArgCvAGYAsgDdALQAiwC2ALcAuACXAOIAioAOgB2AIYASgBaAGoAUgCJXRXhhY3RsedsA +pwAOAKgAqQCqAKsArACtAIYArgCvAGYAsgDnALQAiwC2ALcAuACXAOwA7YAOgB2AJIASgBaAGoAUgCUQ +A1lMZXNzIFRoYW7SADcAOADwAPGjAPEA8gA7Xk5TTXV0YWJsZUFycmF5V05TQXJyYXnSADcAOAD0AIai +AIYAO9IANwA4APYA96YA9wD4APkA+gBeADtfEBFOU1BvcFVwQnV0dG9uQ2VsbF5OU01lbnVJdGVtQ2Vs +bFxOU0J1dHRvbkNlbGxcTlNBY3Rpb25DZWxs0gA3ADgA/AD9pgD9AP4A/wEAAQEAO11OU1BvcFVwQnV0 +dG9uWE5TQnV0dG9uWU5TQ29udHJvbFZOU1ZpZXdbTlNSZXNwb25kZXJedmFsaWRhdGVTdGF0ZTrSADcA +OAEEAQWjAQUBBgA7XxAVTlNOaWJDb250cm9sQ29ubmVjdG9yXk5TTmliQ29ubmVjdG9y1AAOAFQAVQBW +AQgAWQAfAQuALoAKgAKALV8QD2NvbXBhcmF0b3JQb3BVcNIANwA4AQ4BD6MBDwEGADtfEBROU05pYk91 +dGxldENvbm5lY3RvctQADgBUAFUAVgBXAB8BEwEUgCuAAoAwgDjYAFwADgBdAF4AXwBgAGEAYgBjARcB +GAEZAGcAaABpAGOAC4A3gDGAMgmADYALXxASe3s3LCA4fSwgezIwLCAxOX193QB3AA4AegEfAHsAfAB9 +ASAAfgCAAIQAhQCHASEBIgCLASQAjAElAIsAiwEoARMAlQEqAStdTlNOb3JtYWxJbWFnZVpOU0NvbnRl +bnRzEgQB/gCANoASgDQQrYASgBKAM4AwEggAAAAT/////7b0QP/UAA4AmgCbAJwAnQEuAJ8BMIARI0Ao +AAAAAAAAgBAQENMADgAyAMIAwwDEATSAGYAXgDVfEBZOU1N0b3BQcm9ncmVzc1RlbXBsYXRl0gA3ADgB +NwD5pAD5APoAXgA70gA3ADgBOQD+pQD+AP8BAAEBADtfEBFkaXNhYmxlQ29uZGl0aW9uOtQADgBUAFUA +VgEIAGMAHwE/gC6AC4ACgHzSAA4APgBGAUKAJqUBQwFEARMBRgBZgDuAa4AwgHSACtgAXAAOAF0AXgBf +AGAAYQBiAGMBSgFLAUwAZwBoAGkAY4ALgGqAPIA9CYANgAtfEBR7ezIxNywgN30sIHs1NywgMjJ9fdsA +dwAOAVIBIAB+AIABUwCFAVQBVQFWAVcBWAFZAVoAkAFDAV0BXgCOAGgBYF8QEU5TQmFja2dyb3VuZENv +bG9yW05TRm9ybWF0dGVyXxAQTlNUZXh0QmV6ZWxTdHlsZV8QEU5TRHJhd3NCYWNrZ3JvdW5kW05TVGV4 +dENvbG9yE/////+Ucf5BgGmAYYA+gA+AO4BAEghABAAJgGbXAA4BYgFjAWQBZQFmAWcBaAFpAWoAjgFq +AWsBaVpOUy5jb21wYWN0W05TLmV4cG9uZW50Xk5TLm1hbnRpc3NhLmJvWU5TLmxlbmd0aFtOUy5tYW50 +aXNzYVtOUy5uZWdhdGl2ZYA/CBAATxAQAAAAAAAAAAAAAAAAAAAAAAjSADcAOAFuAW+iAW8AO18QGk5T +RGVjaW1hbE51bWJlclBsYWNlaG9sZGVy3xARAA4BcQFyAXMBdAF1AXYBdwF4AXkBegF7AXwBfQF+AX8B +gAGBAYIBgwGEACsBhgArAYgBiQGKAGgAiwArAY4BjwBoAWlWTlMubmlsWk5TLmRlY2ltYWxWTlMubmFu +W05TLnJvdW5kaW5nV05TLnplcm9fEBBOUy5uZWdhdGl2ZWF0dHJzVk5TLm1heF1OUy5hdHRyaWJ1dGVz +XxARTlMucG9zaXRpdmVmb3JtYXRfEA9OUy5hbGxvd3NmbG9hdHNfEBFOUy5uZWdhdGl2ZWZvcm1hdF8Q +EE5TLnBvc2l0aXZlYXR0cnNbTlMudGhvdXNhbmRWTlMubWluXE5TLmxvY2FsaXplZF8QD05TLmhhc3Ro +b3VzYW5kc4BggFyAU4BegACAV4AAgFCAQYBRCYASgACAVYBOCQjTAA4BkwA+AZQBlQGiV05TLmtleXOA +VqwBlgGXAZgBmQGaAZsBnAGdAZ4BnwGgAaGAQoBDgESARYBGgEeASIBJgEqAS4BMgE2sAY8BpAGPAaQB +iACLAYoBqgGDAawBjwGOgE6AT4BOgE+AUIASgFGAUoBTgFSAToBVXxAXZ2VuZXJhdGVzRGVjaW1hbE51 +bWJlcnNbbnVtYmVyU3R5bGVXbWluaW11bVxhbGxvd3NGbG9hdHNXbWF4aW11bV5uZWdhdGl2ZUZvcm1h +dF5wb3NpdGl2ZUZvcm1hdF8QFXVzZXNHcm91cGluZ1NlcGFyYXRvcl8QEGRlY2ltYWxTZXBhcmF0b3Jf +EBFmb3JtYXR0ZXJCZWhhdmlvcl8QG2Fsd2F5c1Nob3dzRGVjaW1hbFNlcGFyYXRvcl8QEWdyb3VwaW5n +U2VwYXJhdG9yI0AUAAAAAAAAUSMIUS4RA+hRLNIANwA4AcIBw6MBwwHEADtfEBNOU011dGFibGVEaWN0 +aW9uYXJ5XE5TRGljdGlvbmFyedMADgHGAccByAHJAcpcTlNBdHRyaWJ1dGVzWE5TU3RyaW5ngFuAWYBY +UTDTAA4BkwA+Ac0BzgHPgFqgoNIANwA4AdEBxKIBxAA70gA3ADgB0wHUogHUADtfEBJOU0F0dHJpYnV0 +ZWRTdHJpbmfSAA4BxwHIAdeAW4Bd0wAOAcYBxwHIAckB24BbgFmAX1NOYU7SADcAOAHeAd+jAd8BUwA7 +XxARTlNOdW1iZXJGb3JtYXR0ZXLVAA4B4QHiAeMB5AHlAeYB5wHoAelXTlNDb2xvclxOU0NvbG9yU3Bh +Y2VbTlNDb2xvck5hbWVdTlNDYXRhbG9nTmFtZYBlgGQQBoBjgGJWU3lzdGVtXxATdGV4dEJhY2tncm91 +bmRDb2xvctMADgHiAe0B5QDtAe9XTlNXaGl0ZYBlQjEA0gA3ADgB8QHhogHhADvVAA4B4QHiAeMB5AHl +AfQB5wH1AemAZYBogGeAYll0ZXh0Q29sb3LTAA4B4gHtAeUA7QH6gGVCMADSADcAOAH8Af2kAf0A+gBe +ADtfEA9OU1RleHRGaWVsZENlbGzSADcAOAH/AgClAgAA/wEAAQEAO1tOU1RleHRGaWVsZNgAXAAOAF0A +XgBfAGAAYQBiAGMBSgIEAgUAZwBoAGkAY4ALgGqAbIBtCYANgAtfEBV7ezI3OSwgMTB9LCB7OTIsIDE3 +fX3YAHcADgFSASAAfgCAAIUBVgILAVgCDQIOAJABRAIRAhISBAH+QIBpgG+AboAPgGsSEEAEAIByXENv +bWJvIFBvaW50c9UADgHhAeIB4wHkAeUCFgHnAhcB6YBlgHGAcIBiXGNvbnRyb2xDb2xvctMADgHiAe0B +5QDtAhyAZUswLjY2NjY2NjY5ANUADgHhAeIB4wHkAeUB9AHnAiAB6YBlgGiAc4BiXxAQY29udHJvbFRl +eHRDb2xvctgAXAAOAF0AXgBfAGAAYQBiAGMBSgImAicAZwBoAGkAY4ALgGqAdYB2CYANgAtfEBR7ezMy +LCAxMH0sIHs2OCwgMTd9fdgAdwAOAVIBIAB+AIAAhQFWAgsBWAINAi8AkAFGAhECEoBpgG+Ad4APgHSA +clpQbGF5ZXIgaGFzWXszNzYsIDM2fdIANwA4AjYCN6QCNwEAAQEAO1xOU0N1c3RvbVZpZXdUdmlld9QA +DgBUAFUAVgEIAUMAHwI9gC6AO4ACgH5ZdmFsdWVUZXh01AAOAFQAVQBWAFcAHwFDAFqAK4ACgDuAKtQA +DgBUAFUAVgEIARMAHwJIgC6AMIACgIFdZGlzYWJsZUJ1dHRvbtQADgBUAksCTAJNARMCTwJQWE5TTWFy +a2VyVk5TRmlsZYCFgDCAhICDXxAQTlNUb29sVGlwSGVscEtleV8QF0Rpc2FibGUgdGhpcyBjb25kaXRp +b24u0gA3ADgCVAJVogJVADtfEBFOU0lCSGVscENvbm5lY3RvctQADgBUAksCTAJNANkA5wJQgIWAI4Ak +gIPUAA4AVAJLAkwCTQDYAl4CUICFgCCAiICDXxAPVGhlIHNhbWUgbnVtYmVy1AAOAFQCSwJMAk0AkQCz +AlCAhYATgBWAg9IADgA+AmcCaICNrxARAUQBRgETARkAkQJuAGMBQwCXAgUBXQDZAGYA2AFMAicAWYBr +gHSAMIAygBOAi4ALgDuAFIBtgECAI4AOgCCAPYB2gArSAA4AMgAzAnyABICMXU5TQXBwbGljYXRpb27S +ADcAOAJ/APKiAPIAO9IADgA+AmcCgoCNrxARAGMAYwBjARMAlwAfAB8AYwBmAUQBTACXAFkAlwFDAUYA +Y4ALgAuAC4AwgBSAAoACgAuADoBrgD2AFIAKgBSAO4B0gAvSAA4APgJnApaAja8QEgAfAUQBRgETARkA +kQJuAGMBQwCXAgUBXQDZAGYA2AFMAFkCJ4ACgGuAdIAwgDKAE4CLgAuAO4AUgG2AQIAjgA6AIIA9gAqA +dtIADgA+AmcCq4CNrxASAqwCrQKuAq8CsAKxArICswK0ArUCtgK3ArgCuQK6ArsCvAK9gJGAkoCTgJSA +lYCWgJeAmICZgJqAm4CcgJ2AnoCfgKCAoYCiXEZpbGUncyBPd25lcl8QGlN0YXRpYyBUZXh0IChDb21i +byBQb2ludHMpXxAYU3RhdGljIFRleHQgKFBsYXllciBoYXMpXxAoUmVjZXNzZWQgQnV0dG9uIChOU1N0 +b3BQcm9ncmVzc1RlbXBsYXRlKV8QJEJ1dHRvbiBDZWxsIChOU1N0b3BQcm9ncmVzc1RlbXBsYXRlKV8Q +FU1lbnUgSXRlbSAoTW9yZSBUaGFuKVtBcHBsaWNhdGlvbltDdXN0b20gVmlld18QFlJvdW5kZWQgVGV4 +dCBGaWVsZCAoMClfEBFNZW51IChPdGhlclZpZXdzKV8QHlRleHQgRmllbGQgQ2VsbCAoQ29tYm8gUG9p +bnRzKV8QEE51bWJlciBGb3JtYXR0ZXJfEBVNZW51IEl0ZW0gKExlc3MgVGhhbilfEB5Qb3AgVXAgQnV0 +dG9uIENlbGwgKE1vcmUgVGhhbilfEBNNZW51IEl0ZW0gKEV4YWN0bHkpXxATVGV4dCBGaWVsZCBDZWxs +ICgwKV8QGFBvcHVwIEJ1dHRvbiAoTW9yZSBUaGFuKV8QHFRleHQgRmllbGQgQ2VsbCAoUGxheWVyIGhh +cynSAA4APgJnAtKAjaDSAA4APgJnAtWAjaDSAA4APgJnAtiAja8QHQETAm4ASwBPAEwATgBJAEgAUAAf +AUQBGQFGAJEATQBjAFEASgFDAJcCBQFdANkAZgDYAUwCJwBZAFKAMICLgDmAgoB9gICALIAJgIaAAoBr +gDKAdIATgH+AC4CHgC+AO4AUgG2AQIAjgA6AIIA9gHaACoCJ0gAOAD4CZwL4gI2vEB0C+QL6AvsC/AL9 +Av4C/wMAAwEDAgMDAwQDBQMGAwcDCAMJAwoDCwMMAw0DDgMPAxADEQMSAxMDFAMVgKeAqICpgKqAq4Cs +gK2AroCvgLCAsYCygLOAtIC1gLaAt4C4gLmAuoC7gLyAvYC+gL+AwIDBgMKAwxAXE//////////9EBYQ +JhAVECEQJBAjECcQJRAYEBkQIBARECgQIhAHEB0QDRAJEB4QHBAfEAgQGhAbECnSAA4APgBGAzOAJqDS +AA4APgJnAzaAjaDSAA4APgJnAzmAjaDSADcAOAM7AzyiAzwAO15OU0lCT2JqZWN0RGF0YQAIABkAIgAn +ADEAOgA/AEQAUgBUAGYB+QH/AkoCUQJYAmYCeAKUAqICrgK6AsgC0wLhAv0DCwMeAzADSgNUA2EDYwNl +A2cDaQNrA20DbwNxA3MDdQN3A3kDewN9A38DgQODA4UDjgOaA5wDngO+A8cD0APbA+AD7wP4BAsEFAQf +BCEEIgQrBDIEPwRFBE4EUARnBGkEawRtBG8EcQRzBHUEdwR5BHsEfQSOBJwEpQStBK8EsQSzBLUE1gTo +BPAE9wUABQoFEwUfBSEFIwUlBScFKgUrBS0FLwVQBVsFZwVpBWsFbQVvBXEFcwV1BY0F2AXkBgEGEwYp +Bj4GTQZfBmkGdAaCBpQGqQa3BskG1gbdBusG9Ab1BvcG+Qb7Bv0G/wcBBwMHBQcHBwgHCQcMBw8HEQcW +BycHLgc1Bz4HQAdJB0sHTgdbB2QHaQdwB3EHogerB7MHxwfSB+AH6gf3CAAIBggOCBAIEggUCBkIGwgg +CCIIJAgmCCgINQhBCEMIRQhHCFEIXghtCG8IcQhzCHsIjQiWCJsIrgi7CL0IvwjBCNQI6AjxCPYJAQkK +CQwJEwkVCRcJGQlGCUgJSglMCU4JUAlSCVQJVgleCYsJjQmPCZEJkwmVCZcJmQmbCZ0JpwmwCbcJxgnO +CdcJ3AnlCfIKBgoVCiIKLwo4CkUKUwpcCmYKbQp5CogKkQqYCrAKvwrQCtIK1ArWCtgK6grzCvoLEQsi +CyQLJgsoCyoLSwtNC08LUQtTC1QLVgtYC20LoguwC7sLwAvCC8QLxgvIC8oLzAvOC9AL1QveC+8L8Qv6 +C/wL/gwLDA0MDwwRDCoMMww8DEUMUAxkDHUMdwx5DHsMfQyGDIgMkwyVDJcMmQybDJ0MvgzADMIMxAzG +DMcMyQzLDOINDw0jDS8NQg1WDWINaw1tDW8NcQ1zDXUNdw18DX0Nfw2cDacNsw3CDcwN2A3kDeYN5w3p +DfwN/Q4GDgsOKA5vDnYOgQ6IDpQOnA6vDrYOxA7YDuoO/g8RDx0PJA8xD0MPRQ9HD0kPSw9ND08PUQ9T +D1UPVw9YD1oPXA9eD2APYQ9iD28Pdw95D5IPlA+WD5gPmg+cD54PoA+iD6QPpg+oD6oPww/FD8cPyQ/L +D80Pzw/RD9MP1Q/XD9kP2w/1EAEQCRAWEB4QLRA8EFQQZxB7EJkQrRC2ELgQuRC7EL4QwBDJENAQ5hDz +EQARDREWERgRGhEcER4RKxEtES4RLxE4ET0RRhFLEWARaRFrEW0RehF8EX4RgBGEEY0RlBGoEb0RxRHS +Ed4R7BHuEfAR8hH0EfYR/RITEiASKBIqEi0SNhI7ElASUhJUElYSWBJiEm8ScRJ0En0ShhKYEqESrBK4 +EtkS2xLdEt8S4RLiEuQS5hL+Ex8TJBMmEygTKhMsEy4TMxM1E0ITVxNZE1sTXRNfE2wTeRN7E4cTnBOe +E6ATohOkE7cT2BPaE9wT3hPgE+ET4xPlE/wUHRQfFCEUIxQlFCcUKRQ0FD4URxRQFF0UYhRzFHUUdxR5 +FHsUhRSWFJgUmhScFJ4UrxSxFLMUtRS3FMUU1hTfFOYU6BTqFOwU7hUBFRsVJBUpFT0VThVQFVIVVBVW +FWcVaRVrFW0VbxWBFZIVlBWWFZgVmhWjFaUVyhXMFc4V0BXSFdQV1hXYFdoV3BXeFeAV4hXkFeYV6BXq +FewV9RX3FfkWBxYQFhUWHhYgFkUWRxZJFksWTRZPFlEWUxZVFlcWWRZbFl0WXxZhFmMWZRZnFnAWchaZ +FpsWnRafFqEWoxalFqcWqRarFq0WrxaxFrMWtRa3FrkWuxa9FsYWyBbvFvEW8xb1FvcW+Rb7Fv0W/xcB +FwMXBRcHFwkXCxcNFw8XERcTFyAXPRdYF4MXqhfCF84X2hfzGAcYKBg7GFMYdBiKGKAYuxjaGOMY5Rjm +GO8Y8RjyGPsY/Rk6GTwZPhlAGUIZRBlGGUgZShlMGU4ZUBlSGVQZVhlYGVoZXBleGWAZYhlkGWYZaBlq +GWwZbhlwGXIZdBl9GX8ZvBm+GcAZwhnEGcYZyBnKGcwZzhnQGdIZ1BnWGdgZ2hncGd4Z4BniGeQZ5hno +GeoZ7BnuGfAZ8hn0GfYZ+BoBGgMaBRoHGgkaCxoNGg8aERoTGhUaFxoZGhsaHRofGiEaIxolGicaKRor +Gi0aLxoxGjMaPBo+Gj8aSBpKGksaVBpWGlcaYBplAAAAAAAAAgIAAAAAAAADPQAAAAAAAAAAAAAAAAAA +GnQ + + + diff --git a/ComboPointConditionController.h b/ComboPointConditionController.h new file mode 100644 index 0000000..2c0ef89 --- /dev/null +++ b/ComboPointConditionController.h @@ -0,0 +1,20 @@ +// +// ComboPointConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 5/7/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface ComboPointConditionController : ConditionController { + + IBOutlet NSPopUpButton *comparatorPopUp; + IBOutlet NSTextField *valueText; +} + +@end diff --git a/ComboPointConditionController.m b/ComboPointConditionController.m new file mode 100644 index 0000000..ab0bbd3 --- /dev/null +++ b/ComboPointConditionController.m @@ -0,0 +1,80 @@ +// +// ComboPointConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 5/7/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "ComboPointConditionController.h" + + +@implementation ComboPointConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"ComboPointCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading ComboPointCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + + // correct the quantity + int quantity = [valueText intValue]; + if(quantity < 0) { quantity = 0; [valueText setIntValue: 0]; } + if(quantity > 5) { quantity = 5; [valueText setIntValue: 5]; } + + // correct compare segment + if( (quantity == 0) && ([[comparatorPopUp selectedItem] tag] == CompareLess)) { + [comparatorPopUp selectItemWithTag: CompareEqual]; + } + if( (quantity == 5) && ([[comparatorPopUp selectedItem] tag] == CompareMore)) { + [comparatorPopUp selectItemWithTag: CompareEqual]; + } +} + +- (Condition*)condition { + [self validateState: nil]; + + id value = [NSNumber numberWithInt: [valueText intValue]]; + + Condition *condition = [Condition conditionWithVariety: VarietyComboPoints + unit: UnitPlayer + quality: QualityComboPoints + comparator: [[comparatorPopUp selectedItem] tag] + state: StateNone + type: TypeNone + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyComboPoints) return; + + //[unitSegment selectSegmentWithTag: [condition unit]]; + //[qualitySegment selectSegmentWithTag: [condition quality]]; + //[comparatorSegment selectSegmentWithTag: [condition comparator]]; + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareMore]; + } + + if( [condition value] ) + [valueText setIntValue: [[condition value] intValue]]; + else + [valueText setIntValue: 0]; +} + + +@end diff --git a/Condition.h b/Condition.h new file mode 100644 index 0000000..a8c4e67 --- /dev/null +++ b/Condition.h @@ -0,0 +1,172 @@ +// +// Condition.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + +typedef enum Variety { + VarietyNone = 0, + VarietyPower = 1, + VarietyStatus = 2, + VarietyAura = 3, + VarietyDistance = 4, + VarietyInventory = 5, + VarietyComboPoints = 6, + VarietyAuraStack = 7, + VarietyTotem = 8, + VarietyTempEnchant = 9, + VarietyTargetType = 10, + VarietyTargetClass = 11, + VarietyCombatCount = 12, + VarietyProximityCount = 13, + VarietySpellCooldown = 14, + VarietyLastSpellCast = 15, + VarietyRune = 16, + + // waypoint actions + VarietyPlayerLevel = 17, + VarietyPlayerZone = 18, + VarietyQuest = 19, + VarietyRouteRunCount = 20, + VarietyRouteRunTime = 21, + VarietyInventoryFree = 22, + VarietyDurability = 23, + VarietyMobsKilled = 24, + VarietyGate = 25, + VarietyStrandStatus = 26, + +} ConditionVariety; + +typedef enum UnitComponents { + UnitNone = 0, + UnitPlayer = 1, + UnitTarget = 2, + UnitPlayerPet = 3, + UnitFriendlies = 4, + UnitEnemies = 5, + UnitAdd = 6, // Deprecated I assume? +} ConditionUnit; + +typedef enum QualityComponents { + QualityNone = 0, + + QualityHealth = 1, + QualityPower = 2, + QualityBuff = 3, + QualityDebuff = 4, + QualityDistance = 5, + QualityInventory = 6, + + QualityComboPoints = 7, + QualityMana = 8, + QualityRage = 9, + QualityEnergy = 10, + QualityHappiness = 11, + QualityFocus = 12, + QualityRunicPower = 20, + QualityEclipse = 33, + QualityHolyPower = 34, + QualitySoulShards = 35, + + QualityBuffType = 13, + QualityDebuffType = 14, + + QualityTotem = 15, + + QualityMainhand = 16, + QualityOffhand = 17, + + QualityNPC = 18, + QualityPlayer = 19, + + QualityRuneBlood = 21, + QualityRuneUnholy = 22, + QualityRuneFrost = 23, + QualityRuneDeath = 24, + + QualityBlueGate = 25, + QualityGreenGate = 26, + QualityPurpleGate = 27, + QualityRedGate = 28, + QualityYellowGate = 29, + QualityChamber = 30, + + QualityAttacking = 31, + QualityDefending = 32, + +} ConditionQuality; + +typedef enum ComparatorComponents { + CompareNone = 0, + CompareMore = 1, + CompareEqual = 2, + CompareLess = 3, + CompareIs = 4, + CompareIsNot = 5, + CompareExists = 6, + CompareDoesNotExist = 7, + CompareAtLeast = 8, +} ConditionComparator; + +typedef enum StateComponents { + StateNone = 0, + StateAlive = 1, + StateCombat = 2, + StateCasting = 3, + + StateMagic = 4, + StateCurse = 5, + StateDisease = 6, + StatePoison = 7, + + StateMounted = 8, + StateIndoors = 9, + StateSwimming = 10, + StateTargetingMe = 11, + StateTank = 12, + + +} ConditionState; + +typedef enum TypeComponents { + TypeNone = 0, + TypeValue = 1, + TypePercent = 2, + TypeString = 3, +} ConditionType; + +@interface Condition : NSObject { + ConditionVariety _variety; + ConditionUnit _unit; + ConditionQuality _quality; + ConditionComparator _comparator; + ConditionState _state; + ConditionType _type; + + id _value; + BOOL _enabled; +} + +- (id)initWithVariety: (int)variety unit: (int)unit quality: (int)quality comparator: (int)comparator state: (int)state type: (int)type value: (id)value; ++ (id)conditionWithVariety: (int)variety + unit: (int)unit + quality: (int)quality + comparator: (int)comparator + state: (int)state + type: (int)type + value: (id)value; + +@property ConditionVariety variety; +@property ConditionUnit unit; +@property ConditionQuality quality; +@property ConditionComparator comparator; +@property ConditionState state; +@property ConditionType type; +@property (readwrite, retain) id value; +@property BOOL enabled; + +@end diff --git a/Condition.m b/Condition.m new file mode 100644 index 0000000..f950b5c --- /dev/null +++ b/Condition.m @@ -0,0 +1,117 @@ +// +// Condition.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Condition.h" + + +@implementation Condition + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.variety = 0; + self.unit = 0; + self.quality = 0; + self.comparator = 0; + self.state = 0; + self.type = 0; + self.value = nil; + } + return self; +} + +- (id)initWithVariety: (int)variety unit: (int)unit quality: (int)quality comparator: (int)comparator state: (int)state type: (int)type value: (id)value { + [self init]; + if(self) { + self.variety = variety; + self.unit = unit; + self.quality = quality; + self.comparator = comparator; + self.state = state; + self.type = type; + self.value = value; + } + return self; +} + ++ (id)conditionWithVariety: (int)variety unit: (int)unit quality: (int)quality comparator: (int)comparator state: (int)state type: (int)type value: (id)value { + return [[[Condition alloc] initWithVariety: variety + unit: unit + quality: quality + comparator: comparator + state: state + type: type + value: value] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if(self) { + self.variety = [[decoder decodeObjectForKey: @"Variety"] intValue]; + self.unit = [[decoder decodeObjectForKey: @"Unit"] intValue]; + self.quality = [[decoder decodeObjectForKey: @"Quality"] intValue]; + self.comparator = [[decoder decodeObjectForKey: @"Comparator"] intValue]; + self.state = [[decoder decodeObjectForKey: @"State"] intValue]; + self.type = [[decoder decodeObjectForKey: @"Type"] intValue]; + self.value = [decoder decodeObjectForKey: @"Value"]; + + self.enabled = [decoder decodeObjectForKey: @"Enabled"] ? [[decoder decodeObjectForKey: @"Enabled"] boolValue] : YES; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: [NSNumber numberWithInt: [self variety]] forKey: @"Variety"]; + [coder encodeObject: [NSNumber numberWithInt: [self unit]] forKey: @"Unit"]; + [coder encodeObject: [NSNumber numberWithInt: [self quality]] forKey: @"Quality"]; + [coder encodeObject: [NSNumber numberWithInt: [self comparator]] forKey: @"Comparator"]; + [coder encodeObject: [NSNumber numberWithInt: [self state]] forKey: @"State"]; + [coder encodeObject: [NSNumber numberWithInt: [self type]] forKey: @"Type"]; + [coder encodeObject: [self value] forKey: @"Value"]; + [coder encodeObject: [NSNumber numberWithBool: self.enabled] forKey: @"Enabled"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Condition *copy = [[[self class] allocWithZone: zone] initWithVariety: [self variety] + unit: [self unit] + quality: [self quality] + comparator: [self comparator] + state: [self state] + type: [self type] + value: [self value]]; + [copy setEnabled: [self enabled]]; + + return copy; +} + +- (void) dealloc +{ + [_value release]; + [super dealloc]; +} + +@synthesize variety = _variety; +@synthesize unit = _unit; +@synthesize quality = _quality; +@synthesize comparator = _comparator; +@synthesize state = _state; +@synthesize type = _type; + +@synthesize value = _value; +@synthesize enabled = _enabled; + +- (NSString*)description { + return [NSString stringWithFormat: @" + + +@interface ConditionCell : NSTextFieldCell { + + NSView *subview; +} + +// The view is not retained by the cell! +- (void) addSubview:(NSView *) view; + +@end diff --git a/ConditionCell.m b/ConditionCell.m new file mode 100644 index 0000000..da42f14 --- /dev/null +++ b/ConditionCell.m @@ -0,0 +1,40 @@ +// +// ConditionCell.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "ConditionCell.h" + + +@implementation ConditionCell + +- (void) addSubview:(NSView *) view { + // Weak reference + subview = view; +} + +- (void) dealloc { + subview = nil; + [super dealloc]; +} + +- (NSView *) view { + return subview; +} + +- (void) drawWithFrame:(NSRect)cellFrame inView:(NSView *) controlView { + + [super drawWithFrame: cellFrame inView: controlView]; + + [[self view] setFrame: cellFrame]; + + if ([[self view] superview] != controlView) + { + [controlView addSubview: [self view]]; + } +} + +@end diff --git a/ConditionController.h b/ConditionController.h new file mode 100644 index 0000000..b6a338d --- /dev/null +++ b/ConditionController.h @@ -0,0 +1,31 @@ +// +// RuleController.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "Condition.h" + +@interface ConditionController : NSObject { + IBOutlet NSView *view; + IBOutlet id _delegate; + IBOutlet NSButton *disableButton; + BOOL _enabled; +} + ++ (id)conditionControllerWithCondition: (Condition*)condition; + +- (NSView*)view; +- (IBAction)validateState: (id)sender; +- (IBAction)disableCondition: (id)sender; + +@property (readwrite, assign) id delegate; +@property BOOL enabled; + +- (Condition*)condition; +- (void)setStateFromCondition: (Condition*)condition; + +@end diff --git a/ConditionController.m b/ConditionController.m new file mode 100644 index 0000000..ad69156 --- /dev/null +++ b/ConditionController.m @@ -0,0 +1,174 @@ +// +// ConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "ConditionController.h" +#import "Condition.h" +#import "HealthConditionController.h" +#import "StatusConditionController.h" +#import "AuraConditionController.h" +#import "DistanceConditionController.h" +#import "InventoryConditionController.h" +#import "ComboPointConditionController.h" +#import "AuraStackConditionController.h" +#import "TotemConditionController.h" +#import "TempEnchantConditionController.h" +#import "TargetTypeConditionController.h" +#import "TargetClassConditionController.h" +#import "CombatCountConditionController.h" +#import "ProximityCountConditionController.h" +#import "SpellCooldownConditionController.h" +#import "LastSpellCastConditionController.h" +#import "RuneConditionController.h" +#import "DurabilityConditionController.h" +#import "PlayerLevelConditionController.h" +#import "PlayerZoneConditionController.h" +#import "QuestConditionController.h" +#import "RouteRunCountConditionController.h" +#import "RouteRunTimeConditionController.h" +#import "InventoryFreeConditionController.h" +#import "MobsKilledConditionController.h" +#import "GateConditionController.h" +#import "StrandStatusConditionController.h" + +@implementation ConditionController + + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.enabled = YES; + } + return self; +} + +- (void) dealloc +{ + [view removeFromSuperview]; + [super dealloc]; +} + ++ (id)conditionControllerWithCondition: (Condition*)condition { + ConditionController *newController = nil; + + if( [condition variety] == VarietyPower ) { + newController = [[HealthConditionController alloc] init]; + } + else if( [condition variety] == VarietyStatus ) { + newController = [[StatusConditionController alloc] init]; + } + else if( [condition variety] == VarietyAura ) { + newController = [[AuraConditionController alloc] init]; + } + else if( [condition variety] == VarietyDistance ) { + newController = [[DistanceConditionController alloc] init]; + } + else if( [condition variety] == VarietyInventory ) { + newController = [[InventoryConditionController alloc] init]; + } + else if( [condition variety] == VarietyComboPoints ) { + newController = [[ComboPointConditionController alloc] init]; + } + else if( [condition variety] == VarietyAuraStack ) { + newController = [[AuraStackConditionController alloc] init]; + } + else if( [condition variety] == VarietyTotem ) { + newController = [[TotemConditionController alloc] init]; + } + else if( [condition variety] == VarietyTempEnchant ) { + newController = [[TempEnchantConditionController alloc] init]; + } + else if( [condition variety] == VarietyTargetType ) { + newController = [[TargetTypeConditionController alloc] init]; + } + else if( [condition variety] == VarietyTargetClass ) { + newController = [[TargetClassConditionController alloc] init]; + } + else if( [condition variety] == VarietyCombatCount ) { + newController = [[CombatCountConditionController alloc] init]; + } + else if( [condition variety] == VarietyProximityCount ) { + newController = [[ProximityCountConditionController alloc] init]; + } + else if( [condition variety] == VarietySpellCooldown ) { + newController = [[SpellCooldownConditionController alloc] init]; + } + else if( [condition variety] == VarietyLastSpellCast ) { + newController = [[LastSpellCastConditionController alloc] init]; + } + else if( [condition variety] == VarietyRune ) { + newController = [[RuneConditionController alloc] init]; + } + + // for waypoint actions + else if ( [condition variety] == VarietyDurability ) + newController = [[DurabilityConditionController alloc] init]; + else if ( [condition variety] == VarietyPlayerLevel ) + newController = [[PlayerLevelConditionController alloc] init]; + else if ( [condition variety] == VarietyPlayerZone ) + newController = [[PlayerZoneConditionController alloc] init]; + else if ( [condition variety] == VarietyQuest ) + newController = [[QuestConditionController alloc] init]; + else if ( [condition variety] == VarietyRouteRunCount ) + newController = [[RouteRunCountConditionController alloc] init]; + else if ( [condition variety] == VarietyRouteRunTime ) + newController = [[RouteRunTimeConditionController alloc] init]; + else if ( [condition variety] == VarietyInventoryFree ) + newController = [[InventoryFreeConditionController alloc] init]; + else if ( [condition variety] == VarietyMobsKilled ) + newController = [[MobsKilledConditionController alloc] init]; + else if ( [condition variety] == VarietyGate ) + newController = [[GateConditionController alloc] init]; + else if ( [condition variety] == VarietyStrandStatus ) + newController = [[StrandStatusConditionController alloc] init]; + + + if(newController) { + [newController setStateFromCondition: condition]; + return [newController autorelease]; + } + + return [[[ConditionController alloc] init] autorelease]; +} + +@synthesize enabled = _enabled; +@synthesize delegate = _delegate; + +- (NSView*)view { + return view; +} + +- (IBAction)validateState: (id)sender { + return; +} + +- (IBAction)disableCondition: (id)sender { + for(NSView *aView in [[self view] subviews]) { + if( (aView != sender) && [aView respondsToSelector: @selector(setEnabled:)] ) { + [(NSControl*)aView setEnabled: ![sender state]]; + } + } + + self.enabled = ![sender state]; +} + +- (Condition*)condition { + return nil; + return [[[Condition alloc] init] autorelease]; +} + +- (void)setStateFromCondition: (Condition*)condition { + self.enabled = [condition enabled]; + + if(self.enabled) [disableButton setState: NSOffState]; + else [disableButton setState: NSOnState]; + + [self disableCondition: disableButton]; +} + +@end diff --git a/Controller.h b/Controller.h new file mode 100644 index 0000000..935907a --- /dev/null +++ b/Controller.h @@ -0,0 +1,182 @@ +// +// Controller.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/15/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// +// + +#import +#import "MemoryAccess.h" +#import + +@class Position; +@class BotController; +@class MobController; +@class NodeController; +@class SpellController; +@class ChatLogController; +@class PlayersController; +@class WaypointController; +@class InventoryController; +@class ProcedureController; +@class MemoryViewController; +@class PlayerDataController; +@class CorpseController; +@class FishController; +@class OffsetController; +@class StatisticsController; +@class ObjectsController; +@class PvPController; +@class ProfileController; + +#define MemoryAccessValidNotification @"MemoryAccessValidNotification" +#define MemoryAccessInvalidNotification @"MemoryAccessInvalidNotification" +#define DidLoadViewInMainWindowNotification @"DidLoadViewInMainWindowNotification" + +#define GameState_Unknown -1 +#define GameState_LoggingIn 0 +#define GameState_Valid 1 +#define GameState_Loading 2 + +BOOL Ascii2Virtual(char pcar, BOOL *pshift, BOOL *palt, char *pkeycode); + + +@interface Controller : NSObject { + IBOutlet PlayerDataController *playerData; + IBOutlet MemoryViewController *memoryViewController; + IBOutlet BotController *botController; + IBOutlet MobController *mobController; + IBOutlet NodeController *nodeController; + IBOutlet PlayersController *playersController; + IBOutlet InventoryController *itemController; + IBOutlet SpellController *spellController; + IBOutlet WaypointController *routeController; + IBOutlet ProcedureController *behaviorController; + IBOutlet ChatLogController *chatLogController; + IBOutlet CorpseController *corpseController; + IBOutlet OffsetController *offsetController; + IBOutlet StatisticsController *statisticsController; + IBOutlet ObjectsController *objectsController; + IBOutlet PvPController *pvpController; + IBOutlet ProfileController *profileController; + + IBOutlet id mainWindow; + IBOutlet NSToolbar *mainToolbar; + IBOutlet NSToolbarItem *botToolbarItem, *playerToolbarItem, *spellsToolbarItem; + IBOutlet NSToolbarItem *routesToolbarItem, *behavsToolbarItem, *pvpToolbarItem; + IBOutlet NSToolbarItem *memoryToolbarItem, *prefsToolbarItem, *chatLogToolbarItem, *statisticsToolbarItem, *objectsToolbarItem, *profilesToolbarItem; + + IBOutlet NSPopUpButton *wowInstancePopUpButton; + int _selectedPID; + int _lastAttachedPID; + + IBOutlet NSView *aboutView, *settingsView; + IBOutlet NSImageView *aboutValidImage; + IBOutlet NSTextField *versionInfoText; + + IBOutlet id mainBackgroundBox; + IBOutlet id memoryAccessLight; + IBOutlet id memoryAccessValidText; + IBOutlet id currentStatusText; + + // security stuff + IBOutlet NSButton *disableGUIScriptCheckbox, *matchExistingCheckbox; + IBOutlet NSTextField *newNameField, *newIdentifierField, *newSignatureField; + NSString *_matchExistingApp; + + NSMutableArray *_items, *_mobs, *_players, *_gameObjects, *_dynamicObjects, *_corpses; + + // new scan + NSMutableArray *_objectAddresses; + NSMutableArray *_objectGUIDs; + UInt32 _currentObjectManager; + int _totalObjects; + UInt32 _currentAddress; + BOOL _validObjectListManager; + + MemoryAccess *_wowMemoryAccess; + NSString *_savedStatus; + BOOL _appFinishedLaunching; + int _currentState; + BOOL _isRegistered; + UInt64 _globalGUID; + BOOL _invalidPlayerNotificationSent; + + NSTimer *_updateNameListTimer; + NSMutableDictionary *_nameListAddresses; + int _nameListSavedRead; + + NSDictionary *factionTemplate; +} + ++ (Controller *)sharedController; + +@property BOOL isRegistered; +@property (readonly) UInt64 globalGUID; + +- (IBAction)showAbout: (id)sender; +- (IBAction)showSettings: (id)sender; +- (IBAction)launchWebsite:(id)sender; +- (IBAction)toolbarItemSelected: (id)sender; +- (IBAction)pidSelected: (id)sender; + +- (void)revertStatus; +- (NSString*)currentStatus; +- (void)setCurrentStatus: (NSString*)statusMsg; + +- (NSString*)appName; +- (NSString*)appSignature; +- (NSString*)appIdentifier; +- (BOOL)sendGrowlNotifications; + +// new scan +- (NSArray*)allObjectAddresses; +- (NSArray*)allObjectGUIDs; +- (BOOL)isObjectManagerValid; + +// WoW information +- (BOOL)isWoWOpen; +- (BOOL)isWoWFront; +- (BOOL)isWoWHidden; +- (BOOL)isWoWChatBoxOpen; +- (BOOL)isWoWVersionValid; +- (BOOL)makeWoWFront; +- (NSString*)wowPath; +- (NSString*)wtfAccountPath; +- (NSString*)wtfCharacterPath; +- (int)getWOWWindowID; +- (CGRect)wowWindowRect; +- (unsigned)refreshDelay; +- (Position*)cameraPosition; +- (NSString*)wowVersionShort; +- (NSString*)wowVersionLong; +- (MemoryAccess*)wowMemoryAccess; +- (ProcessSerialNumber)getWoWProcessSerialNumber; +- (CGPoint)screenPointForGamePosition: (Position*)gamePosition; + +- (void)showMemoryView; + +- (void)killWOW; + +// factions stuff +- (NSDictionary*)factionDict; +- (UInt32)reactMaskForFaction: (UInt32)faction; +- (UInt32)friendMaskForFaction: (UInt32)faction; +- (UInt32)enemyMaskForFaction: (UInt32)faction; + +- (void)traverseNameList; + +- (float)getPing; + +- (void)selectCombatProfileTab; +- (void)selectBehaviorTab; +- (void)selectRouteTab; +- (void)selectPvPRouteTab; + +@end + +@interface NSObject (MemoryViewControllerExtras) +- (NSString*)infoForOffset: (unsigned)offset; +@end diff --git a/Controller.m b/Controller.m new file mode 100644 index 0000000..d41c6b8 --- /dev/null +++ b/Controller.m @@ -0,0 +1,1618 @@ +// +// Controller.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/15/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// +// + +#import "Controller.h" +#import "NoAccessApplication.h" +#import "BotController.h" +#import "MobController.h" +#import "NodeController.h" +#import "SpellController.h" +#import "InventoryController.h" +#import "WaypointController.h" +#import "ProcedureController.h" +#import "PlayerDataController.h" +#import "MemoryViewController.h" +#import "PlayersController.h" +#import "CorpseController.h" +#import "OffsetController.h" +#import "StatisticsController.h" +#import "ObjectsController.h" +#import "PvPController.h" +#import "ProfileController.h" + +#import "CGSPrivate.h" + +#import "MemoryAccess.h" +#import "Offsets.h" +#import "NSNumberToHexString.h" +#import "NSString+URLEncode.h" +#import "NSString+Extras.h" +#import "Mob.h" +#import "Item.h" +#import "Node.h" +#import "Player.h" +#import "PTHeader.h" +#import "Position.h" + +#import + +#import +#import +#import + +typedef enum { + wowNotOpenState = 0, + memoryInvalidState = 1, + memoryValidState = 2, + playerValidState = 3, +} memoryState; + +#define MainWindowMinWidth 740 +#define MainWindowMinHeight 200 + +@interface Controller () +@property int currentState; +@property (readwrite, retain) NSString* matchExistingApp; +@end + +@interface Controller (Internal) +- (void)finalizeUserDefaults; + +- (void)scanObjectGraph; +- (BOOL)locatePlayerStructure; +- (void)loadView: (NSView*)newView withTitle: (NSString*)title; +- (void)populateWowInstances; +- (void)foundObjectListAddress: (NSNumber*)address; + +// new structure scanning +- (BOOL)isValidAddress: (UInt32)address; +- (UInt32)getNextObjectAddress:(MemoryAccess*)memory; +- (void)sortObjects: (MemoryAccess*)memory; +@end + +@implementation Controller + ++ (void)initialize { + + // fix for saving the mount dropdown + id mountObject = [[NSUserDefaults standardUserDefaults] objectForKey: @"MountType"]; + if ( [mountObject isKindOfClass:[NSString class]] ){ + [[NSUserDefaults standardUserDefaults] removeObjectForKey: @"MountType"]; + [[NSUserDefaults standardUserDefaults] synchronize]; + } + + // initialize our value transformer + NSNumberToHexString *hexTransformer = [[[NSNumberToHexString alloc] init] autorelease]; + [NSValueTransformer setValueTransformer: hexTransformer forName: @"NSNumberToHexString"]; + + NSDictionary *defaultValues = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithFloat: 7.0], @"BlacklistTriggerNotInCombat", + [NSNumber numberWithFloat: 45.0], @"BlacklistDurationNotInCombat", + [NSNumber numberWithFloat: 20.0], @"BlacklistDurationNotInLos", + [NSNumber numberWithFloat: 10.0], @"BlacklistVerticalOffset", + [NSNumber numberWithInt: 3], @"BlacklistTriggerNodeFailedToReach", + [NSNumber numberWithInt: 4], @"BlacklistTriggerNodeFailedToLoot", + [NSNumber numberWithInt: 2], @"BlacklistTriggerNodeMadeMeFall", + [NSNumber numberWithBool: YES], @"MovementUseSmoothTurning", + [NSNumber numberWithFloat: 2.0], @"MovementMinJumpTime", + [NSNumber numberWithFloat: 6.0], @"MovementMaxJumpTime", + [NSNumber numberWithBool: YES], @"GlobalSendGrowlNotifications", + [NSNumber numberWithBool: YES], @"SUCheckAtStartup", + [NSNumber numberWithBool: NO], @"ExtendedLoggingEnable", + [NSNumber numberWithBool: NO], @"ExtendedLoggingDev", + [NSNumber numberWithBool: NO], @"ExtendedLoggingEvaluate", + [NSNumber numberWithBool: NO], @"ExtendedLoggingBindings", + [NSNumber numberWithBool: NO], @"ExtendedLoggingMacro", + [NSNumber numberWithBool: NO], @"ExtendedLoggingMovement", + [NSNumber numberWithBool: NO], @"ExtendedLoggingWaypoint", + [NSNumber numberWithBool: NO], @"ExtendedLoggingCondition", + [NSNumber numberWithBool: NO], @"ExtendedLoggingRule", + [NSNumber numberWithBool: NO], @"ExtendedLoggingBlacklist", + [NSNumber numberWithBool: NO], @"ExtendedLoggingStatistics", + [NSNumber numberWithBool: NO], @"ExtendedLoggingFunction", + [NSNumber numberWithBool: NO], @"ExtendedLoggingMemory", + [NSNumber numberWithInt: 1], @"MountType", + nil]; + [[NSUserDefaults standardUserDefaults] setObject: @"http://pg.savorydeviate.com/appcast.xml" forKey: @"SUFeedURL"]; + //[[NSUserDefaults standardUserDefaults] removeObjectForKey: @"SUFeedURL"]; + [[NSUserDefaults standardUserDefaults] registerDefaults: defaultValues]; + [[NSUserDefaultsController sharedUserDefaultsController] setInitialValues: defaultValues]; + + // allow GUI scripting + [NSApp setAllowAccessibility: YES]; +} + +static Controller* sharedController = nil; + ++ (Controller *)sharedController { + if (sharedController == nil) + sharedController = [[[self class] alloc] init]; + return sharedController; +} + +- (id) init { + self = [super init]; + if(sharedController) { + [self release]; + self = sharedController; + } else if(self != nil) { + + sharedController = self; + _items = [[NSMutableArray array] retain]; + _mobs = [[NSMutableArray array] retain]; + _players = [[NSMutableArray array] retain]; + _corpses = [[NSMutableArray array] retain]; + _gameObjects = [[NSMutableArray array] retain]; + _dynamicObjects = [[NSMutableArray array] retain]; + + _wowMemoryAccess = nil; + _appFinishedLaunching = NO; + _invalidPlayerNotificationSent = NO; + + _lastAttachedPID = 0; + _selectedPID = 0; + _globalGUID = 0; + + // new search + _objectAddresses = [[NSMutableArray array] retain]; // stores the start address for all objects + _objectGUIDs = [[NSMutableArray array] retain]; + _currentAddress = 0; + _totalObjects = 0; + _currentObjectManager = 0; + + // load in our faction dictionary + factionTemplate = [[NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"FactionTemplate" ofType: @"plist"]] retain]; + + // start our name list update timer! + _updateNameListTimer = [NSTimer scheduledTimerWithTimeInterval: 30.0f target: self selector: @selector(updateNameList:) userInfo: nil repeats: YES]; + _nameListAddresses = [[NSMutableDictionary dictionary] retain]; + } + + return self; +} + +- (void)dealloc { + [_items release]; + [_mobs release]; + [_players release]; + [_corpses release]; + [_gameObjects release]; + [_dynamicObjects release]; + [_nameListAddresses release]; + [_objectAddresses release]; + [_objectGUIDs release]; + [factionTemplate release]; + [currentStatusText release]; + [_wowMemoryAccess release]; + + [super dealloc]; +} + +- (void)checkWoWVersion { + + NSString *appVers = [[[NSBundle mainBundle] infoDictionary] objectForKey: @"CFBundleShortVersionString"]; + + if([self isWoWVersionValid]) { + [aboutValidImage setImage: [NSImage imageNamed: @"good"]]; + [versionInfoText setStringValue: [NSString stringWithFormat: @"%@ v%@ is up to date with WoW %@.", [self appName], appVers, [self wowVersionShort]]]; + } else { + [aboutValidImage setImage: [NSImage imageNamed: @"bad"]]; + [versionInfoText setStringValue: [NSString stringWithFormat: @"%@ v%@ may require WoW %@. Check the site below for more details.", [self appName], appVers, VALID_WOW_VERSION]]; + } +} + +- (void)awakeFromNib { + // [mainWindow setBackgroundColor: [NSColor windowFrameColor]]; + + [self showAbout: nil]; + [self checkWoWVersion]; + + [GrowlApplicationBridge setGrowlDelegate: self]; + [GrowlApplicationBridge setWillRegisterWhenGrowlIsReady: YES]; + /*if( [GrowlApplicationBridge isGrowlInstalled] && [GrowlApplicationBridge isGrowlRunning]) { + log(LOG_CONTROLLER, @"Growl running."); + [GrowlApplicationBridge notifyWithTitle: @"RUNNING" + description: [NSString stringWithFormat: @"You have reached level %d.", 1] + notificationName: @"PlayerLevelUp" + iconData: [[NSImage imageNamed: @"Ability_Warrior_Revenge"] TIFFRepresentation] + priority: 0 + isSticky: NO + clickContext: nil]; + } else { + log(LOG_CONTROLLER, @"Growl not running."); + }*/ + +} + +- (void)finalizeUserDefaults { + //[[NSUserDefaults standardUserDefaults] removeObjectForKey: @"SUFeedURL"]; + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +- (void)applicationDidFinishLaunching:(NSNotification *)aNotification { + // no more license checking; clean up old registration + self.isRegistered = YES; + NSUserDefaults *settings = [NSUserDefaults standardUserDefaults]; + [settings removeObjectForKey: @"LicenseData"]; + [settings removeObjectForKey: @"LicenseName"]; + [settings removeObjectForKey: @"LicenseEmail"]; + [settings removeObjectForKey: @"LicenseHash"]; + [settings removeObjectForKey: @"LicenseID"]; + [settings removeObjectForKey: @"SecurityDisableGUIScripting"]; + [settings removeObjectForKey: @"SecurityDisableLogging"]; + [settings removeObjectForKey: @"SecurityPreferencesUnreadable"]; + [settings removeObjectForKey: @"SecurityUseBlankWindowTitles"]; + [settings removeObjectForKey: @"SecurityShowRenameSettings"]; + [settings synchronize]; + + // make us the front process + if ( ![self isWoWFront] ){ + ProcessSerialNumber psn = { 0, kCurrentProcess }; + SetFrontProcess( &psn ); + [mainWindow makeKeyAndOrderFront: nil]; + } + _appFinishedLaunching = YES; + + // check for update? + //[[SUUpdater sharedUpdater] checkForUpdatesInBackground]; + + // validate game version + //if(![self isWoWVersionValid]) { + // NSRunCriticalAlertPanel(@"No valid version of WoW detected!", @"You have version %@ of WoW installed, and this program requires version %@. There is no gaurantee that this program will work with your version of World of Warcraft. Please check for an updated version.", @"Okay", nil, nil, [self wowVersionShort], VALID_WOW_VERSION); + //} + + [self performSelector: @selector(scanObjectGraph) withObject: nil afterDelay: 0.5]; +} + +- (void)applicationWillTerminate:(NSNotification *)aNotification { + [self finalizeUserDefaults]; +} + +- (void)applicationDidBecomeActive:(NSNotification *)aNotification { + if(![mainWindow isVisible]) { + [mainWindow makeKeyAndOrderFront: nil]; + } +} + +- (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag { + if(!flag) { + [mainWindow makeKeyAndOrderFront: nil]; + } + return NO; +} + +- (BOOL)application:(NSApplication *)theApplication openFile:(NSString *)filename { + + if ( [[filename pathExtension] isEqualToString: @"route"] || [[filename pathExtension] isEqualToString: @"routeset"] || [[filename pathExtension] isEqualToString: @"routecollection"] ) { + [routeController importRouteAtPath: filename]; + [self toolbarItemSelected: routesToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [routesToolbarItem itemIdentifier]]; + return YES; + } + else if ( [[filename pathExtension] isEqualToString: @"behavior"] || [[filename pathExtension] isEqualToString: @"behaviorset"] ) { + [behaviorController importBehaviorAtPath: filename]; + [self toolbarItemSelected: behavsToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [behavsToolbarItem itemIdentifier]]; + return YES; + } + else if ( [[filename pathExtension] isEqualToString: @"pvpbehavior"] ) { + [pvpController importBehaviorAtPath: filename]; + [self toolbarItemSelected: pvpToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [pvpToolbarItem itemIdentifier]]; + return YES; + } + // mail action profile or combat profile + else if ( [[filename pathExtension] isEqualToString: @"mailprofile"] || [[filename pathExtension] isEqualToString: @"combatprofile"] || [[filename pathExtension] isEqualToString: @"combatProfile"] ) { + [self toolbarItemSelected: profilesToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [profilesToolbarItem itemIdentifier]]; + [profileController importProfileAtPath: filename]; + return YES; + } + + return NO; +} + +#pragma mark NSURLConnection Delegate + +- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response { return; } + +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { return; } + +- (void)connection:(NSURLConnection *)connection didFailWithError:(NSError *)error { + // log(LOG_CONTROLLER, @"Registration connection error."); + [connection autorelease]; +} + +- (void)connectionDidFinishLoading:(NSURLConnection *)connection +{ + // log(LOG_CONTROLLER, @"Registration connection done."); + [connection autorelease]; +} + +#pragma mark Name List Scanning + +typedef struct NameListStruct{ + UInt32 four; + UInt32 nextPtr; + UInt32 prevPtr; +} NameListStruct; + +// next + prev could be swapped, not sure, but pointers nonetheless +typedef struct NameObjectStruct{ + UInt32 guidLow; + UInt32 addr; + UInt32 unk; + UInt32 nextPtr; // 0xC need to subtract 0xC to get to the start + UInt32 prevPtr; // 0x10 no change req'd + UInt64 guid; + char name[16]; // max length is 12 chars +} NameObjectStruct; + +- (void)updateNameList: (NSTimer*)timer{ + [self traverseNameList]; +} + +- (NameObjectStruct)readPlayerName: (UInt32)address withMemory:(MemoryAccess*)memory{ + NameObjectStruct objBad; + objBad.guidLow = 1; + + NSNumber *key = [NSNumber numberWithUnsignedLong:address]; + NSNumber *value = [_nameListAddresses objectForKey:key]; + + // we already have this guy stored? + if ( value != nil ){ + [_nameListAddresses setObject:[NSNumber numberWithInt:[value intValue]+1] forKey:key]; + + //_nameListSavedRead++; + + return objBad; + } + // add to list + else{ + [_nameListAddresses setObject:[NSNumber numberWithInt:1] forKey:key]; + } + + // invalid address + if ( address & 1 ) + return objBad; + + // load the entire chunk + NameObjectStruct obj; + [memory loadDataForObject: self atAddress: address Buffer: (Byte *)&obj BufLength: sizeof(obj)]; + + // back in list, ignore! + if ( obj.guidLow == 0x4 ) + return objBad; + + // if we get here we should have a valid name! + NSString *newTmpName = [NSString stringWithUTF8String: obj.name]; // will stop after it's first encounter with '\0' + + // add the player? + [playersController addPlayerName:newTmpName withGUID:obj.guid]; + + return obj; +} + +- (void)traverseNameList{ + UInt32 curObjAddress = 0x0, offset = [offsetController offset:@"PLAYER_NAME_LIST"]; + + // reset our stats guy + //_nameListSavedRead = 0; + + // + 0x58 is another pointer to within the list, not sure what it means? first or last? + MemoryAccess *memory = [self wowMemoryAccess]; + [memory resetLoadCount]; + if ( memory && [memory loadDataForObject: self atAddress: offset + 0x24 Buffer: (Byte*)&curObjAddress BufLength: sizeof(curObjAddress)] && curObjAddress ){ + + // check to make sure the first value is 0x4! + NameListStruct nameListStruct; + NameObjectStruct nameStruct1, nameStruct2; + + [memory loadDataForObject: self atAddress: curObjAddress Buffer: (Byte*)&nameListStruct BufLength: sizeof(nameListStruct)]; + while ( nameListStruct.four == 0x4 ){ + + // FIRST one in the list + nameStruct1 = [self readPlayerName:nameListStruct.nextPtr - 0x4 withMemory:memory]; + + // there are 2 pointers in EACH player struct, so lets check both + if ( nameStruct1.guidLow != 1 ){ + + [self readPlayerName:nameStruct1.nextPtr - 0xC withMemory:memory]; + [self readPlayerName:nameStruct1.prevPtr withMemory:memory]; + } + + // second in the list + nameStruct2 = [self readPlayerName:nameListStruct.prevPtr withMemory:memory]; + + // 2 more pointers due to the second struct check! + if ( nameStruct2.guidLow != 1 ){ + [self readPlayerName:nameStruct2.nextPtr - 0xC withMemory:memory]; + [self readPlayerName:nameStruct2.prevPtr withMemory:memory]; + } + + curObjAddress += 0xC; + [memory loadDataForObject: self atAddress: curObjAddress Buffer: (Byte*)&nameListStruct BufLength: sizeof(nameListStruct)]; + } + + //log(LOG_CONTROLLER, @"[Controller] Player names updated after %d memory reads", [memory loadCount]); + } +} + +#pragma mark - +#pragma mark WoW Structure Scanning + +// Special thanks to EmilyStrange @ http://www.mmowned.com/forums/wow-memory-editing/261575-c-memory-enumerator-walking-objects.html +- (void)scanObjectList:(MemoryAccess*)memory{ + + // clear crap from our last scan + [_objectAddresses removeAllObjects]; + _currentAddress = 0; + + // find all object addresses + UInt32 objectAddress = 0; + while ( (objectAddress = [self getNextObjectAddress:memory]) && [self isValidAddress:objectAddress] ){ + _currentAddress = objectAddress; + + // save the object addresses + [_objectAddresses addObject:[NSNumber numberWithUnsignedInt:objectAddress]]; + } + + // we have the addresses now, lets add them to our respective controllers + [self sortObjects:memory]; + _totalObjects = [_objectAddresses count]; +} + +- (BOOL)isValidAddress: (UInt32)address{ + if ( address == 0x0 ) + return NO; + + if ( (address & 1) != 0 ) + return NO; + + if ( address == _currentAddress ) + return NO; + + return YES; +} + +// player GUID (lower) is stored at [[OBJECT_LIST_LL_PTR] + 0xBC] +- (UInt32)getNextObjectAddress:(MemoryAccess*)memory{ + if ( _currentAddress == 0 ){ + UInt32 objectManager = 0; + UInt32 firstObjectOffset = [offsetController offset:@"FIRST_OBJECT_OFFSET"]; + if([memory loadDataForObject: self atAddress: [offsetController offset:@"OBJECT_LIST_LL_PTR"] Buffer: (Byte*)&objectManager BufLength: sizeof(objectManager)] && objectManager) { + _validObjectListManager = YES; + UInt32 firstObjectPtr = 0; + if([memory loadDataForObject: self atAddress: objectManager + firstObjectOffset Buffer: (Byte*)&firstObjectPtr BufLength: sizeof(firstObjectPtr)] && firstObjectPtr) { + return firstObjectPtr; + } + } + } + + UInt32 nextObjectAddress = 0; + if([memory loadDataForObject: self atAddress: _currentAddress + 0x34 Buffer: (Byte*)&nextObjectAddress BufLength: sizeof(nextObjectAddress)] && nextObjectAddress) { + return nextObjectAddress; + } + + return 0; +} + +- (void)sortObjects: (MemoryAccess*)memory{ + + // remove all known + [_objectGUIDs removeAllObjects]; + + UInt32 objectAddress = 0; + for ( NSNumber *objAddress in _objectAddresses ){ + objectAddress = [objAddress unsignedIntValue]; + + int objectType = TYPEID_UNKNOWN; + if ( [memory loadDataForObject: self atAddress: (objectAddress + OBJECT_TYPE_ID) Buffer: (Byte*)&objectType BufLength: sizeof(objectType)] ) { + + // store object GUIDs + UInt32 guid = 0x0; + [memory loadDataForObject: self atAddress: (objectAddress + OBJECT_GUID_LOW32) Buffer: (Byte*)&guid BufLength: sizeof(guid)]; + [_objectGUIDs addObject:[NSNumber numberWithInt:guid]]; + + // item + if ( objectType == TYPEID_ITEM || objectType == TYPEID_CONTAINER ) { + [_items addObject: objAddress]; + continue; + } + + // mob + if ( objectType == TYPEID_UNIT ) { + [_mobs addObject: objAddress]; + continue; + } + + // player + if ( objectType == TYPEID_PLAYER ) { + + if ( guid == GUID_LOW32(_globalGUID) ){ + if ( objectAddress != [playerData baselineAddress] ){ + + log(LOG_CONTROLLER, @"[Controller] Player base address 0x%X changed to 0x%X, verifying change...", [playerData baselineAddress], objectAddress); + + // reset mobs, nodes, and inventory for the new player address + [mobController resetAllObjects]; + [nodeController resetAllObjects]; + [itemController resetAllObjects]; + [playersController resetAllObjects]; + + // tell our player controller its new address + [playerData setStructureAddress: objAddress]; + Player *player = [playerData player]; + log(LOG_CONTROLLER, @"[Player] Level %d %@ %@", [player level], [Unit stringForRace: [player race]], [Unit stringForClass: [player unitClass]]); + + [self setCurrentState: playerValidState]; + } + } + + //log(LOG_CONTROLLER, @"Player GUID: 0x%X Yours: 0x%X 0x%qX", guid, GUID_LOW32(_globalGUID), _globalGUID); + + [_players addObject: objAddress]; + continue; + } + + if(objectType == TYPEID_GAMEOBJECT) { + [_gameObjects addObject: objAddress]; + continue; + } + + if(objectType == TYPEID_DYNAMICOBJECT) { + [_dynamicObjects addObject: objAddress]; + continue; + } + + if(objectType == TYPEID_CORPSE) { + [_corpses addObject: objAddress]; + continue; + } + } + } +} + +// [[OBJECT_MANAGER] + 0xC] ==[[OBJECT_MANAGER] + 0xAC] = First object in object list +// [[OBJECT_MANAGER] + 0x1C] = Object list (not in order) +- (UInt32)objectManager:(MemoryAccess*)memory{ + UInt32 objectManager = 0; + if([memory loadDataForObject: self atAddress: [offsetController offset:@"OBJECT_LIST_LL_PTR"] Buffer: (Byte*)&objectManager BufLength: sizeof(objectManager)] && objectManager) { + return objectManager; + } + + return 0; +} + +// this gets our objects +- (void)scanObjectGraph { + + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + + // populate wow process list + [self populateWowInstances]; + + // grab memory + MemoryAccess *memory = [self wowMemoryAccess]; + + // grab our global GUID + [memory loadDataForObject: self atAddress: [offsetController offset:@"PLAYER_GUID_NAME"] Buffer: (Byte*)&_globalGUID BufLength: sizeof(_globalGUID)]; + //log(LOG_CONTROLLER, @"[Controller] Player GUID: 0x%qX 0x%qX Low32:0x%X High32:0x%X HiPart:0x%X", _globalGUID, CFSwapInt64HostToLittle(_globalGUID), GUID_LOW32(_globalGUID), GUID_HIGH32(_globalGUID), GUID_HIPART(_globalGUID)); + + // object manager + if ( memory ){ + + UInt32 objectManager = [self objectManager:memory]; + // we have a valid object list + if ( objectManager > 0x0 ){ + // our object manager has changed (wonder if this happens often?) + if ( _currentObjectManager > 0x0 && _currentObjectManager != objectManager ){ + _validObjectListManager = NO; + log(LOG_CONTROLLER, @"[Controller] Object manager changed from 0x%X to 0x%X", _currentObjectManager, objectManager); + } + + _currentObjectManager = objectManager; + _invalidPlayerNotificationSent = NO; + } + // no valid list, player not logged in or loading screen + else if ( objectManager == 0x0 || _globalGUID == 0x0 ){ + if ( !_invalidPlayerNotificationSent ){ + _invalidPlayerNotificationSent = YES; + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerIsInvalidNotification object: nil]; + } + + // memory is valid, but no player :( + [self setCurrentState: memoryValidState]; + } + + // now lets tell our appropriate controllers! + [_items removeAllObjects]; + [_mobs removeAllObjects]; + [_players removeAllObjects]; + [_gameObjects removeAllObjects]; + [_dynamicObjects removeAllObjects]; + //[_corpses removeAllObjects]; + + //NSDate *date = [NSDate date]; + [memory resetLoadCount]; + [self scanObjectList:memory]; + //log(LOG_CONTROLLER, @"[Controller] Found %d objects in game with %d memory operations", _totalObjects, [memory loadCount]); + //log(LOG_CONTROLLER, @"New name scan took %.2f seconds and %d memory operations.", [date timeIntervalSinceNow]*-1.0, [memory loadCount]); + + //log(LOG_CONTROLLER, @"Memory scan took %.4f sec for %d total objects.", [date timeIntervalSinceNow]*-1.0f, [_mobs count] + [_items count] + [_gameObjects count] + [_players count]); + //date = [NSDate date]; + + [mobController addAddresses: _mobs]; + [itemController addAddresses: _items]; + [nodeController addAddresses: _gameObjects]; + [playersController addAddresses: _players]; + //[corpseController addAddresses: _corpses]; + + //log(LOG_CONTROLLER, @"Controller adding took %.4f sec", [date timeIntervalSinceNow]*-1.0f); + //date = [NSDate date]; + + // clean-up; we don't need this crap sitting around + [_items removeAllObjects]; + [_mobs removeAllObjects]; + [_players removeAllObjects]; + [_gameObjects removeAllObjects]; + [_dynamicObjects removeAllObjects]; + //[_corpses removeAllObjects]; + + // is our player invalid? + if ( ![playerData playerIsValid:self] ){ + [self setCurrentState: memoryValidState]; + } + else{ + [self setCurrentState: playerValidState]; + } + + //log(LOG_CONTROLLER, @"Total scan took %.4f sec", [start timeIntervalSinceNow]*-1.0f); + //log(LOG_CONTROLLER, @"-----------------"); + } + + // run this every second + [self performSelector: @selector(scanObjectGraph) withObject: nil afterDelay: 1.0]; +} + +#pragma mark - +#pragma mark IBActions + +- (IBAction)showAbout: (id)sender { + [self checkWoWVersion]; + [self loadView: aboutView withTitle: [self appName]]; + [mainToolbar setSelectedItemIdentifier: nil]; + + NSSize theSize = [aboutView frame].size; theSize.height += 20; + [mainWindow setContentMinSize: theSize]; + [mainWindow setContentMaxSize: theSize]; + [mainWindow setShowsResizeIndicator: NO]; +} + +- (IBAction)showSettings: (id)sender { + [self loadView: settingsView withTitle: @"Settings"]; + [mainToolbar setSelectedItemIdentifier: [prefsToolbarItem itemIdentifier]]; + + NSSize theSize = [settingsView frame].size; theSize.height += 20; + [mainWindow setContentMinSize: theSize]; + [mainWindow setContentMaxSize: theSize]; + [mainWindow setShowsResizeIndicator: NO]; + + // setup security stuff + self.matchExistingApp = nil; + [matchExistingCheckbox setState: NSOffState]; + [newNameField setStringValue: [self appName]]; + [newSignatureField setStringValue: [self appSignature]]; + [newIdentifierField setStringValue: [self appIdentifier]]; +} + +- (IBAction)launchWebsite:(id)sender { + [[NSWorkspace sharedWorkspace] openURL: [NSURL URLWithString: @"http://www.savorydeviate.com/pocketgnome/forum/viewforum.php?f=39"]]; +} + +- (void)loadView: (NSView*)newView withTitle: (NSString*)title { + if(!newView || (newView == [mainBackgroundBox contentView]) ) return; + + // set the view to blank + NSView *tempView = [[NSView alloc] initWithFrame: [[mainWindow contentView] frame]]; + [mainBackgroundBox setContentView: tempView]; + [tempView release]; + + NSRect newFrame = [mainWindow frame]; + newFrame.size.height = [newView frame].size.height + ([mainWindow frame].size.height - [[mainWindow contentView] frame].size.height) + 20; // Compensates for toolbar + newFrame.size.width = [newView frame].size.width < MainWindowMinWidth ? MainWindowMinWidth : [newView frame].size.width; + newFrame.origin.y += ([[mainWindow contentView] frame].size.height - [newView frame].size.height - 20); // Origin moves by difference in two views + newFrame.origin.x += ([[mainWindow contentView] frame].size.width - newFrame.size.width)/2; // Origin moves by difference in two views, halved to keep center alignment + + /* // resolution independent resizing + float vdiff = ([newView frame].size.height - [[mainWindow contentView] frame].size.height) * [mainWindow userSpaceScaleFactor]; + newFrame.origin.y -= vdiff; + newFrame.size.height += vdiff; + float hdiff = ([newView frame].size.width - [[mainWindow contentView] frame].size.width) * [mainWindow userSpaceScaleFactor]; + newFrame.size.width += hdiff;*/ + + [mainWindow setFrame: newFrame display: YES animate: YES]; + [mainBackgroundBox setContentView: newView]; + + [[NSNotificationCenter defaultCenter] postNotificationName: DidLoadViewInMainWindowNotification object: newView]; +} + +- (IBAction)toolbarItemSelected: (id)sender { + NSView *newView = nil; + NSString *addToTitle = nil; + NSSize minSize = NSZeroSize, maxSize = NSZeroSize; + if( [sender tag] == 1) { + newView = [botController view]; + addToTitle = [botController sectionTitle]; + minSize = [botController minSectionSize]; + maxSize = [botController maxSectionSize]; + } + if( [sender tag] == 2) { + newView = [playerData view]; + addToTitle = [playerData sectionTitle]; + minSize = [playerData minSectionSize]; + maxSize = [playerData maxSectionSize]; + } + if( [sender tag] == 3) { + newView = [spellController view]; + addToTitle = [spellController sectionTitle]; + minSize = [spellController minSectionSize]; + maxSize = [spellController maxSectionSize]; + } + if( [sender tag] == 6) { + newView = [routeController view]; + addToTitle = [routeController sectionTitle]; + minSize = [routeController minSectionSize]; + maxSize = [routeController maxSectionSize]; + } + if( [sender tag] == 7) { + newView = [behaviorController view]; + addToTitle = [behaviorController sectionTitle]; + minSize = [behaviorController minSectionSize]; + maxSize = [behaviorController maxSectionSize]; + } + //if( [sender tag] == 9) { + // newView = settingsView; + // addToTitle = @"Settings"; + //} + if( [sender tag] == 10) { + newView = [memoryViewController view]; + addToTitle = [memoryViewController sectionTitle]; + minSize = [memoryViewController minSectionSize]; + maxSize = [memoryViewController maxSectionSize]; + } + if( [sender tag] == 12) { + newView = [chatLogController view]; + addToTitle = [chatLogController sectionTitle]; + minSize = [chatLogController minSectionSize]; + maxSize = [chatLogController maxSectionSize]; + } + if( [sender tag] == 14) { + newView = [statisticsController view]; + addToTitle = [statisticsController sectionTitle]; + minSize = [statisticsController minSectionSize]; + maxSize = [statisticsController maxSectionSize]; + } + if( [sender tag] == 15) { + newView = [objectsController view]; + addToTitle = [objectsController sectionTitle]; + minSize = [objectsController minSectionSize]; + maxSize = [objectsController maxSectionSize]; + } + if ( [sender tag] == 16 ){ + newView = [pvpController view]; + addToTitle = [pvpController sectionTitle]; + minSize = [pvpController minSectionSize]; + maxSize = [pvpController maxSectionSize]; + } + if ( [sender tag] == 17 ) { + newView = [profileController view]; + addToTitle = [profileController sectionTitle]; + minSize = [profileController minSectionSize]; + maxSize = [profileController maxSectionSize]; + } + + if(newView) { + [self loadView: newView withTitle: addToTitle]; + } + + // correct the minSize + if(NSEqualSizes(minSize, NSZeroSize)) { + minSize = NSMakeSize(MainWindowMinWidth, MainWindowMinHeight); + } else { + minSize.height += 20; + } + + // correct the maxSize + if(NSEqualSizes(maxSize, NSZeroSize)) { + maxSize = NSMakeSize(20000, 20000); + } else { + maxSize.height += 20; + } + + // set constraints + if(minSize.width < MainWindowMinWidth) minSize.width = MainWindowMinWidth; + if(maxSize.width < MainWindowMinWidth) maxSize.width = MainWindowMinWidth; + if(minSize.height < MainWindowMinHeight) minSize.height = MainWindowMinHeight; + if(maxSize.height < MainWindowMinHeight) maxSize.height = MainWindowMinHeight; + + if((minSize.width == maxSize.width) && (minSize.height == maxSize.height)) { + [mainWindow setShowsResizeIndicator: NO]; + } else { + [mainWindow setShowsResizeIndicator: YES]; + } + + [mainWindow setContentMinSize: minSize]; + [mainWindow setContentMaxSize: maxSize]; +} + +#pragma mark - +#pragma mark State & Status + +- (void)revertStatus { + [self setCurrentStatus: _savedStatus]; +} + +- (NSString*)currentStatus { + return [currentStatusText stringValue]; +} + +- (void)setCurrentStatus: (NSString*)statusMsg { + + log(LOG_CONTROLLER, @"[Controller] Setting status to: %@", statusMsg); + + NSString *currentText = [[currentStatusText stringValue] retain]; + [currentStatusText setStringValue: statusMsg]; + + [_savedStatus release]; + _savedStatus = currentText; +} + +- (BOOL)isObjectManagerValid{ + return _validObjectListManager; +} + +- (NSArray*)allObjectAddresses{ + return [[_objectAddresses copy] autorelease]; +} + +- (NSArray*)allObjectGUIDs{ + return [[_objectGUIDs copy] autorelease]; +} + +@synthesize currentState = _currentState; +@synthesize isRegistered = _isRegistered; // too many bindings rely on this property, keep it +@synthesize matchExistingApp = _matchExistingApp; +@synthesize globalGUID = _globalGUID; + +- (void)setCurrentState: (int)state { + if(_currentState == state) return; + + [self willChangeValueForKey: @"stateImage"]; + [self willChangeValueForKey: @"stateString"]; + _currentState = state; + [self didChangeValueForKey: @"stateImage"]; + [self didChangeValueForKey: @"stateString"]; +} + +- (NSImage*)stateImage { + if(self.currentState == memoryValidState) + return [NSImage imageNamed: @"mixed"]; + if(self.currentState == playerValidState) + return [NSImage imageNamed: @"on"]; + return [NSImage imageNamed: @"off"]; +} + +- (NSString*)stateString { + if(self.currentState == wowNotOpenState) + return @"WoW is not open"; + if(self.currentState == memoryInvalidState) + return @"Memory access denied"; + if(self.currentState == memoryValidState) + return @"Player not found"; + if(self.currentState == playerValidState) + return @"Player is Valid"; + return @"Unknown State"; +} + +- (NSString*)appName { + return [[NSBundle mainBundle] objectForInfoDictionaryKey: @"CFBundleName"]; +} + +- (NSString*)appSignature { + return [[NSBundle mainBundle] objectForInfoDictionaryKey: @"CFBundleSignature"]; +} + +- (NSString*)appIdentifier { + return [[NSBundle mainBundle] objectForInfoDictionaryKey: @"CFBundleIdentifier"]; +} + +- (BOOL)sendGrowlNotifications { + return [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"GlobalSendGrowlNotifications"] boolValue]; +} + +#pragma mark - +#pragma mark WoW Accessors + + +- (MemoryAccess*)wowMemoryAccess { + // dont do anything until the app finishes launching + if(!_appFinishedLaunching) { + //log(LOG_CONTROLLER, @"App still launching; nil"); + return nil; + } + + // if we have a good memory access, return it + if(_wowMemoryAccess && [_wowMemoryAccess isValid]) { + return [[_wowMemoryAccess retain] autorelease]; + } + + // we have a memory access, but it is no longer valid + if(_wowMemoryAccess && ![_wowMemoryAccess isValid]) { + [self willChangeValueForKey: @"wowMemoryAccess"]; + + // send notification of invalidity + log(LOG_CONTROLLER, @"Memory access is invalid."); + [self setCurrentState: memoryInvalidState]; + + [_wowMemoryAccess release]; + _wowMemoryAccess = nil; + + [self didChangeValueForKey: @"wowMemoryAccess"]; + + [[NSNotificationCenter defaultCenter] postNotificationName: MemoryAccessInvalidNotification object: nil]; + + return nil; + } + + if(_wowMemoryAccess == nil) { + if([self isWoWOpen]) { + // log(LOG_CONTROLLER, @"Initializing memory access."); + // otherwise, create one if possible + pid_t wowPID = 0; + ProcessSerialNumber wowPSN = [self getWoWProcessSerialNumber]; + OSStatus err = GetProcessPID(&wowPSN, &wowPID); + + //log(LOG_CONTROLLER, @"Got PID: %d", wowPID); + + // make sure the old one is disposed of, just incase + [_wowMemoryAccess release]; + _wowMemoryAccess = nil; + + if(err == noErr && wowPID > 0) { + // now we have a valid memory access + [self willChangeValueForKey: @"wowMemoryAccess"]; + _wowMemoryAccess = [[MemoryAccess alloc] initWithPID: wowPID]; + [self didChangeValueForKey: @"wowMemoryAccess"]; + + // send notification of validity + if(_wowMemoryAccess && [_wowMemoryAccess isValid]) { + log(LOG_CONTROLLER, @"Memory access is valid for PID %d.", wowPID); + [self setCurrentState: memoryValidState]; + [[NSNotificationCenter defaultCenter] postNotificationName: MemoryAccessValidNotification object: nil]; + return [[_wowMemoryAccess retain] autorelease]; + } else { + log(LOG_CONTROLLER, @"Even after re-creation, memory access is nil (wowPID = %d).", wowPID); + return nil; + } + } else { + log(LOG_CONTROLLER, @"Error %d while retrieving WoW's PID.", err); + } + } else { + [self setCurrentState: wowNotOpenState]; + } + } + + //log(LOG_CONTROLLER, @"Unable to get a handle on WoW's memory."); + return nil; +} + +- (BOOL)isWoWFront { + NSDictionary *frontProcess; + if( (frontProcess = [[NSWorkspace sharedWorkspace] activeApplication]) ) { + NSString *bundleID = [frontProcess objectForKey: @"NSApplicationBundleIdentifier"]; + if( [bundleID isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + return YES; + } + } + return NO; +} + +- (BOOL)isWoWHidden { + ProcessSerialNumber wowPSN = [self getWoWProcessSerialNumber]; + NSDictionary *infoDict = (NSDictionary*)ProcessInformationCopyDictionary(&wowPSN, kProcessDictionaryIncludeAllInformationMask); + [infoDict autorelease]; + return [[infoDict objectForKey: @"IsHiddenAttr"] boolValue]; +} + +- (BOOL)isWoWOpen { + for(NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications]) { + NSString *bundleID = [processDict objectForKey: @"NSApplicationBundleIdentifier"]; + if( [bundleID isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + return YES; + } + } + return NO; +} + +- (NSString*)wowPath { + for(NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications]) { + NSString *bundleID = [processDict objectForKey: @"NSApplicationBundleIdentifier"]; + if( [bundleID isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + return [processDict objectForKey: @"NSApplicationPath"]; + } + } + return @""; +} + +- (NSString*)wtfAccountPath { + if([[self wowMemoryAccess] isValid]) { + NSString *fullPath = [self wowPath]; + fullPath = [fullPath stringByDeletingLastPathComponent]; + fullPath = [fullPath stringByAppendingPathComponent: @"WTF"]; + fullPath = [fullPath stringByAppendingPathComponent: @"Account"]; + fullPath = [fullPath stringByAppendingPathComponent: [playerData accountName]]; + + BOOL isDir; + if ([[NSFileManager defaultManager] fileExistsAtPath: fullPath isDirectory: &isDir] && isDir) { + //log(LOG_CONTROLLER, @"Got full path: %@", fullPath); + return fullPath; + } + //log(LOG_CONTROLLER, @"Unable to get path (%@)", fullPath); + } + return @""; +} + +- (NSString*)wtfCharacterPath { + if([[self wowMemoryAccess] isValid]) { + // create the path + NSString *path = [self wtfAccountPath]; + if([path length]) { + path = [path stringByAppendingPathComponent: [playerData serverName]]; + path = [path stringByAppendingPathComponent: [playerData playerName]]; + } + + // see if it exists + BOOL isDir; + if ([[NSFileManager defaultManager] fileExistsAtPath: path isDirectory: &isDir] && isDir) { + return path; + } + } + return @""; +} + +- (BOOL)isWoWVersionValid { + if( [VALID_WOW_VERSION isEqualToString: [self wowVersionShort]]) + return YES; + return NO; +} + +- (BOOL)makeWoWFront { + if([self isWoWOpen]) { + ProcessSerialNumber psn = [self getWoWProcessSerialNumber]; + SetFrontProcess( &psn ); + usleep(50000); + return YES; + } + return NO; +} + +- (NSString*)wowVersionShort { + NSBundle *wowBundle = nil; + if([self isWoWOpen]) { + for(NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications]) { + NSString *bundleID = [processDict objectForKey: @"NSApplicationBundleIdentifier"]; + if( [bundleID isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + wowBundle = [NSBundle bundleWithPath: [processDict objectForKey: @"NSApplicationPath"]]; + } + } + } else { + wowBundle = [NSBundle bundleWithPath: [[NSWorkspace sharedWorkspace] fullPathForApplication: @"World of Warcraft"]]; + } + return [[wowBundle infoDictionary] objectForKey: @"CFBundleVersion"]; +} + +- (NSString*)wowVersionLong { + NSBundle *wowBundle = nil; + if([self isWoWOpen]) { + for(NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications]) { + NSString *bundleID = [processDict objectForKey: @"NSApplicationBundleIdentifier"]; + if( [bundleID isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + wowBundle = [NSBundle bundleWithPath: [processDict objectForKey: @"NSApplicationPath"]]; + } + } + } else { + wowBundle = [NSBundle bundleWithPath: [[NSWorkspace sharedWorkspace] fullPathForApplication: @"World of Warcraft"]]; + } + return [[wowBundle infoDictionary] objectForKey: @"BlizzardFileVersion"]; +} + +- (ProcessSerialNumber)getWoWProcessSerialNumber { + ProcessSerialNumber pSN = {kNoProcess, kNoProcess}; + pid_t wowPID = 0; + for(NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications]) { + if( [[processDict objectForKey: @"NSApplicationBundleIdentifier"] isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + pSN.highLongOfPSN = [[processDict objectForKey: @"NSApplicationProcessSerialNumberHigh"] longValue]; + pSN.lowLongOfPSN = [[processDict objectForKey: @"NSApplicationProcessSerialNumberLow"] longValue]; + + OSStatus err = GetProcessPID(&pSN, &wowPID); + _lastAttachedPID = wowPID; + if( err == noErr && wowPID > 0 && wowPID == _selectedPID) { + return pSN; + } + } + } + + // This is ONLY the case when we load PG! + if ( wowPID != _selectedPID ){ + _selectedPID = wowPID; + + // Now rebuild menu! + [self populateWowInstances]; + } + + return pSN; +} + +- (IBAction)pidSelected: (id)sender{ + // Only switch if the user chose a new one! + if ( _selectedPID != _lastAttachedPID ){ + _wowMemoryAccess = nil; + [self wowMemoryAccess]; + } +} + +- (void)populateWowInstances{ + NSMutableArray *PIDs = [[NSMutableArray array] retain]; + + // Lets find all available processes! + ProcessSerialNumber pSN = {kNoProcess, kNoProcess}; + for(NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications]) { + if( [[processDict objectForKey: @"NSApplicationBundleIdentifier"] isEqualToString: @"com.blizzard.worldofwarcraft"] ) { + pSN.highLongOfPSN = [[processDict objectForKey: @"NSApplicationProcessSerialNumberHigh"] longValue]; + pSN.lowLongOfPSN = [[processDict objectForKey: @"NSApplicationProcessSerialNumberLow"] longValue]; + + pid_t wowPID = 0; + OSStatus err = GetProcessPID(&pSN, &wowPID); + + if((err == noErr) && (wowPID > 0)) { + [PIDs addObject:[NSNumber numberWithInt:wowPID]]; + } + } + } + + // Build our menu! I'm sure I could use bindings to do this another way, but I'm a n00b :( + NSMenu *wowInstanceMenu = [[[NSMenu alloc] initWithTitle: @"Instances"] autorelease]; + NSMenuItem *wowInstanceItem; + int tagToSelect = 0; + + // WoW isn't open then :( + if ( [PIDs count] == 0 ){ + wowInstanceItem = [[NSMenuItem alloc] initWithTitle: @"WoW is not open" action: nil keyEquivalent: @""]; + [wowInstanceItem setTag: 0]; + [wowInstanceItem setRepresentedObject: 0]; + [wowInstanceItem setIndentationLevel: 0]; + [wowInstanceMenu addItem: [wowInstanceItem autorelease]]; + } + // We have some instances running! + else{ + // Add all of them to the menu! + for ( NSNumber *pid in PIDs ){ + wowInstanceItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@", pid] action: nil keyEquivalent: @""]; + [wowInstanceItem setTag: [pid intValue]]; + [wowInstanceItem setRepresentedObject: pid]; + [wowInstanceItem setIndentationLevel: 0]; + [wowInstanceMenu addItem: [wowInstanceItem autorelease]]; + } + + if ( _selectedPID != 0 ){ + tagToSelect = _selectedPID; + } + else{ + tagToSelect = [[PIDs objectAtIndex:0] intValue];; + } + } + + [wowInstancePopUpButton setMenu: wowInstanceMenu]; + [wowInstancePopUpButton selectItemWithTag: tagToSelect]; + + [PIDs release]; +} + +-(int)getWOWWindowID { + CGError err = 0; + int count = 0; + ProcessSerialNumber pSN = [self getWoWProcessSerialNumber]; + CGSConnection connectionID = 0; + CGSConnection myConnectionID = _CGSDefaultConnection(); + + err = CGSGetConnectionIDForPSN(0, &pSN, &connectionID); + if( err == noErr ) { + + //err = CGSGetOnScreenWindowCount(myConnectionID, connectionID, &count); + err = CGSGetWindowCount(myConnectionID, connectionID, &count); + if( (err == noErr) && (count > 0) ) { + + int i = 0, actualIDs = 0, windowList[count]; + + //err = CGSGetOnScreenWindowList(myConnectionID, connectionID, count, windowList, &actualIDs); + err = CGSGetWindowList(myConnectionID, connectionID, count, windowList, &actualIDs); + + for(i = 0; i < actualIDs; i++) { + CGSValue windowTitle; + CGSWindow window = windowList[i]; + //CFStringRef titleKey = CFStringCreateWithCStringNoCopy(kCFAllocatorDefault, "kCGSWindowTitle", kCFStringEncodingUTF8, kCFAllocatorNull); + err = CGSGetWindowProperty(myConnectionID, window, (CGSValue)CFSTR("kCGSWindowTitle"), &windowTitle); + //if(titleKey) CFRelease(titleKey); + if((err == noErr) && windowTitle) { + // log(LOG_CONTROLLER, @"%d: %@", window, windowTitle); + return window; + } + } + } + } + return 0; +} + +- (BOOL)isWoWChatBoxOpen { + unsigned value = 0; + [[self wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"CHAT_BOX_OPEN_STATIC"] Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (unsigned)refreshDelay { + + return 50000; + + /* + UInt32 refreshDelay = [self refreshDelayReal]; + + if(refreshDelay > 1000000) refreshDelay = 50000; // incase we get a bogus number + if(refreshDelay < 15000) refreshDelay = 15000; // incase we get a bogus number + + return refreshDelay*2;*/ +} + +- (CGRect)wowWindowRect { + CGRect windowRect; + int Connection = _CGSDefaultConnection(); + int windowID = [self getWOWWindowID]; + log(LOG_CONTROLLER, @"Connection: %d, Window id: %d", Connection, windowID); + CGSGetWindowBounds(Connection, windowID, &windowRect); + windowRect.origin.y += 22; // cut off the title bar + windowRect.size.height -= 22; + + return windowRect; +} + +- (Position*)cameraPosition { + if(IS_X86) { + float pos[3] = { -1, -1, -1 }; + [[self wowMemoryAccess] loadDataForObject: self atAddress: 0xD6B198 Buffer: (Byte *)&pos BufLength: sizeof(pos)]; + return [Position positionWithX: pos[0] Y: pos[1] Z: pos[2]]; + + } + return nil; +} + +- (float)cameraFacing { + if(IS_X86) { + float value = 0; + [[self wowMemoryAccess] loadDataForObject: self atAddress: 0xD6B1BC Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; + } + return 0; +} + +- (float)cameraTilt { + if(IS_X86) { + float value = 0; + [[self wowMemoryAccess] loadDataForObject: self atAddress: 0xD6B1B8 Buffer: (Byte *)&value BufLength: sizeof(value)]; + return asinf(value); + } + return 0; +} + +- (CGPoint)screenPointForGamePosition: (Position*)gP { + Position *cP = [self cameraPosition]; + if(!gP || !cP) return CGPointZero; + + float ax = -[gP xPosition]; + float ay = -[gP zPosition]; + float az = [gP yPosition]; + + log(LOG_CONTROLLER, @"Game position: { %.2f, %.2f, %.2f } (%@)", ax, ay, az, gP); + + float cx = -[cP xPosition]; + float cy = -[cP zPosition]; + float cz = [cP yPosition]; + + log(LOG_CONTROLLER, @"Camera position: { %.2f, %.2f, %.2f } (%@)", cx, cy, cz, cP); + + float facing = [self cameraFacing]; + if(facing > M_PI) facing -= 2*M_PI; + log(LOG_CONTROLLER, @"Facing: %.2f (%.2f), tilt = %.2f", facing, [self cameraFacing], [self cameraTilt]); + + float ox = [self cameraTilt]; + float oy = -facing; + float oz = 0; + + log(LOG_CONTROLLER, @"Camera direction: { %.2f, %.2f, %.2f }", ox, oy, oz); + + + float dx = cosf(oy) * ( sinf(oz) * (ay - cy) + cosf(oz) * (ax - cx)) - sinf(oy) * (az - cz); + float dy = sinf(ox) * ( cosf(oy) * (az - cz) + sinf(oy) * ( sinf(oz) * (ay - cy) + cosf(oz) * (ax - cx))) + cosf(ox) * ( cosf(oz) * (ay - cy) - sinf(oz) * (ax - cx) ); + float dz = cosf(ox) * ( cosf(oy) * (az - cz) + sinf(oy) * ( sinf(oz) * (ay - cy) + cosf(oz) * (ax - cx))) - sinf(ox) * ( cosf(oz) * (ay - cy) - sinf(oz) * (ax - cx) ); + + log(LOG_CONTROLLER, @"Calcu position: { %.2f, %.2f, %.2f }", dx, dy, dz); + + float bx = (dx - cx) * (cz/dz); + float by = (dy - cy) * (cz/dz); + + log(LOG_CONTROLLER, @"Projected 2d position: { %.2f, %.2f }", bx, by); + + if(dz <= 0) { + log(LOG_CONTROLLER, @"behind the camera1"); + //return CGPointMake(-1, -1); + } + + CGRect wowSize = [self wowWindowRect]; + CGPoint wowCenter = CGPointMake( wowSize.origin.x+wowSize.size.width/2.0f, wowSize.origin.y+wowSize.size.height/2.0f); + + log(LOG_CONTROLLER, @"WowWindowSize: %@", NSStringFromRect(NSRectFromCGRect(wowSize))); + log(LOG_CONTROLLER, @"WoW Center: %@", NSStringFromPoint(NSPointFromCGPoint(wowCenter))); + + float FOV1 = 0.1; + float FOV2 = 3 /* 7.4 */ * wowSize.size.width; + int sx = dx * (FOV1 / (dz + FOV1)) * FOV2 + wowCenter.x; + int sy = dy * (FOV1 / (dz + FOV1)) * FOV2 + wowCenter.y; + + // ensure on screen + if(sx < wowSize.origin.x || sy < wowSize.origin.y || sx >= wowSize.origin.x+wowSize.size.width || sy >= wowSize.origin.y+wowSize.size.height) { + log(LOG_CONTROLLER, @"behind the camera2"); + //return CGPointMake(-1, -1); + } + return CGPointMake(sx, sy); +} + +#pragma mark - +#pragma mark Faction Information + + // Keys: + // @"ReactMask", Number + // @"FriendMask", Number + // @"EnemyMask", Number + // @"EnemyFactions", Array + // @"FriendFactions" Array + +- (NSDictionary*)factionDict { + return [[factionTemplate retain] autorelease]; +} + +- (UInt32)reactMaskForFaction: (UInt32)faction { + NSNumber *mask = [[[self factionDict] objectForKey: [NSString stringWithFormat: @"%d", faction]] objectForKey: @"ReactMask"]; + if(mask) + return [mask unsignedIntValue]; + return 0; +} + +- (UInt32)friendMaskForFaction: (UInt32)faction { + NSNumber *mask = [[[self factionDict] objectForKey: [NSString stringWithFormat: @"%d", faction]] objectForKey: @"FriendMask"]; + if(mask) + return [mask unsignedIntValue]; + return 0; +} + +- (UInt32)enemyMaskForFaction: (UInt32)faction { + NSNumber *mask = [[[self factionDict] objectForKey: [NSString stringWithFormat: @"%d", faction]] objectForKey: @"EnemyMask"]; + if(mask) + return [mask unsignedIntValue]; + return 0; +} + + +#pragma mark - + +- (void)showMemoryView { + [self performSelector: [memoryToolbarItem action] withObject: memoryToolbarItem]; +} + +#pragma mark Toolbar Delegate + +- (NSArray *)toolbarDefaultItemIdentifiers:(NSToolbar*)toolbar { + return [NSArray arrayWithObjects: + [botToolbarItem itemIdentifier], + [chatLogToolbarItem itemIdentifier], + NSToolbarSpaceItemIdentifier, + [playerToolbarItem itemIdentifier], + [spellsToolbarItem itemIdentifier], + NSToolbarSpaceItemIdentifier, + [objectsToolbarItem itemIdentifier], + NSToolbarSpaceItemIdentifier, + [pvpToolbarItem itemIdentifier], + [routesToolbarItem itemIdentifier], + [behavsToolbarItem itemIdentifier], + [profilesToolbarItem itemIdentifier], + NSToolbarFlexibleSpaceItemIdentifier, + [statisticsToolbarItem itemIdentifier], + [memoryToolbarItem itemIdentifier], + [prefsToolbarItem itemIdentifier], nil]; +} + +- (NSArray *)toolbarSelectableItemIdentifiers: (NSToolbar *)toolbar; +{ + // Optional delegate method: Returns the identifiers of the subset of + // toolbar items that are selectable. In our case, all of them + return [NSArray arrayWithObjects: [botToolbarItem itemIdentifier], + [playerToolbarItem itemIdentifier], + [spellsToolbarItem itemIdentifier], + [routesToolbarItem itemIdentifier], + [behavsToolbarItem itemIdentifier], + [memoryToolbarItem itemIdentifier], + [prefsToolbarItem itemIdentifier], + [chatLogToolbarItem itemIdentifier], + [statisticsToolbarItem itemIdentifier], + [objectsToolbarItem itemIdentifier], + [pvpToolbarItem itemIdentifier], + [profilesToolbarItem itemIdentifier], nil]; +} + +#pragma mark - +#pragma mark Growl Delegate + +/* The dictionary should have the required key object pairs: + * key: GROWL_NOTIFICATIONS_ALL object: NSArray of NSString objects + * key: GROWL_NOTIFICATIONS_DEFAULT object: NSArray of NSString objects + */ + +- (NSDictionary *) registrationDictionaryForGrowl { + NSDictionary * dict = [NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"Growl Registration Ticket" ofType: @"growlRegDict"]]; + return dict; +} + +- (NSString *) applicationNameForGrowl { + // NSLog(@"applicationNameForGrowl: %@", [self appName]); + return [self appName]; //@"Pocket Gnome"; +} + +- (NSImage *) applicationIconForGrowl { + //log(LOG_CONTROLLER, @"applicationIconForGrowl"); + return [NSApp applicationIconImage]; // [NSImage imageNamed: @"gnome2"]; +} + +- (NSData *) applicationIconDataForGrowl { + //log(LOG_CONTROLLER, @"applicationIconDataForGrowl"); + return [[NSApp applicationIconImage] TIFFRepresentation]; +} + +#pragma mark Sparkle - Auto Updater + +// Sent when a valid update is found by the update driver. +- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update { + PGLog(@"[Update] didFindValidUpdate: %@", [update fileURL]); +} + +- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update { + PGLog(@"[Update] willInstallUpdate: %@", [update fileURL]); +} + + +- (BOOL)updater: (SUUpdater *)updater shouldPostponeRelaunchForUpdate: (SUAppcastItem *)update untilInvoking: (NSInvocation *)invocation { + + if( ![[self appName] isEqualToString: @"Pocket Gnome"] ) { + // log(LOG_CONTROLLER, @"[Update] We've been renamed."); + + NSAlert *alert = [NSAlert alertWithMessageText: @"SECURITY ALERT: PLEASE BE AWARE" + defaultButton: @"Understood" + alternateButton: nil + otherButton: nil + informativeTextWithFormat: @"During the update process, the file name of the downloaded version of Pocket Gnome will be changed to \"%@\".\n\nHowever, the executable, signature, and identifier inside the new version WILL NOT BE CHANGED. In order for rename settings to stay in effect, you must manually reapply them from the \"Security\" panel.", [self appName]]; + [alert setAlertStyle: NSCriticalAlertStyle]; + [alert beginSheetModalForWindow: mainWindow + modalDelegate: self + didEndSelector: @selector(updateAlertConfirmed:returnCode:contextInfo:) + contextInfo: (void*)[invocation retain]]; + return YES; + } + //log(LOG_CONTROLLER, @"[Update] Relaunching as expected."); + return NO; +} + +- (void)updateAlertConfirmed:(NSAlert *)alert returnCode:(int)returnCode contextInfo:(void *)contextInfo { + NSInvocation *invocation = (NSInvocation*)contextInfo; + [invocation invoke]; +} + +- (void)killWOW{ + ProcessSerialNumber pSN = [self getWoWProcessSerialNumber]; + if( pSN.lowLongOfPSN == kNoProcess) return; + NSLog(@"Quitting WoW"); + + // send Quit apple event + OSStatus status; + AEDesc targetProcess = {typeNull, NULL}; + AppleEvent theEvent = {typeNull, NULL}; + AppleEvent eventReply = {typeNull, NULL}; + + status = AECreateDesc(typeProcessSerialNumber, &pSN, sizeof(pSN), &targetProcess); + require_noerr(status, AECreateDesc); + + status = AECreateAppleEvent(kCoreEventClass, kAEQuitApplication, &targetProcess, kAutoGenerateReturnID, kAnyTransactionID, &theEvent); + require_noerr(status, AECreateAppleEvent); + + status = AESend(&theEvent, &eventReply, kAENoReply + kAEAlwaysInteract, kAENormalPriority, kAEDefaultTimeout, NULL, NULL); + require_noerr(status, AESend); + +AESend:; +AECreateAppleEvent:; +AECreateDesc:; + + AEDisposeDesc(&eventReply); + AEDisposeDesc(&theEvent); +AEDisposeDesc(&targetProcess); +} + +// 3.3.3a: 0xC9241C ClientServices_GetCurrent +- (float)getPing{ + + MemoryAccess *memory = [self wowMemoryAccess]; + int totalPings = 0, v5 = 0, v6 = 0, samples = 0, ping = 0; + UInt32 gCurrentClientServices = 0; + [memory loadDataForObject: self atAddress: 0xC9241C Buffer: (Byte*)&gCurrentClientServices BufLength: sizeof(gCurrentClientServices)]; + [memory loadDataForObject: self atAddress: gCurrentClientServices + 0x2E74 Buffer: (Byte*)&v6 BufLength: sizeof(v6)]; + [memory loadDataForObject: self atAddress: gCurrentClientServices + 0x2E78 Buffer: (Byte*)&v5 BufLength: sizeof(v5)]; + + if ( v6 == v5 ){ + return 0.0f; + } + + do + { + if ( v6 >= 16 ){ + v6 = 0; + if ( !v5 ) + break; + } + + [memory loadDataForObject: self atAddress: gCurrentClientServices + 0x2E34 + (v6++ * 4) Buffer: (Byte*)&ping BufLength: sizeof(ping)]; + totalPings += ping; + ++samples; + } + while ( v6 != v5 ); + + if ( samples > 0 ){ + float averagePing = (float)totalPings / (float)samples; + return averagePing; + } + + return 0.0f; +} + +- (void)selectCombatProfileTab{ + [self toolbarItemSelected: profilesToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [profilesToolbarItem itemIdentifier]]; + [profileController openEditor:TabCombat]; +} + +- (void)selectBehaviorTab{ + [self toolbarItemSelected: behavsToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [behavsToolbarItem itemIdentifier]]; +} + +- (void)selectRouteTab{ + [self toolbarItemSelected: routesToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [routesToolbarItem itemIdentifier]]; +} + +- (void)selectPvPRouteTab{ + [self toolbarItemSelected: pvpToolbarItem]; + [mainToolbar setSelectedItemIdentifier: [pvpToolbarItem itemIdentifier]]; +} + +@end diff --git a/Corpse.h b/Corpse.h new file mode 100644 index 0000000..f17ceed --- /dev/null +++ b/Corpse.h @@ -0,0 +1,52 @@ +// +// Corpse.h +// Pocket Gnome +// +// Created by Josh on 5/25/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import +#import "WoWObject.h" +#import "Position.h" + +@class Position; + +enum eCorpseBaseFields { + CorpseField_OwnerGUID = 0x18, // 3.1.2 + + CorpseField_XLocation = 0xE0, + CorpseField_YLocation = 0xE4, + CorpseField_ZLocation = 0xE8, + CorpseField_Rotation = 0xEC, + +}; + +/* +// OLD CONSTANTS +enum eCorpseFields { + CORPSE_FIELD_OWNER = 0x18 , // Type: Guid , Size: 2 + CORPSE_FIELD_FACING = 0x20 , // Type: Float, Size: 1 + CORPSE_FIELD_POS_X = 0x24 , // Type: Float, Size: 1 + CORPSE_FIELD_POS_Y = 0x28 , // Type: Float, Size: 1 + CORPSE_FIELD_POS_Z = 0x2C , // Type: Float, Size: 1 + CORPSE_FIELD_DISPLAY_ID = 0x30 , // Type: Int32, Size: 1 + CORPSE_FIELD_ITEM = 0x34 , // Type: Int32, Size: 19 + CORPSE_FIELD_BYTES_1 = 0x80 , // Type: Chars, Size: 1 + CORPSE_FIELD_BYTES_2 = 0x84 , // Type: Chars, Size: 1 + CORPSE_FIELD_GUILD = 0x88 , // Type: Int32, Size: 1 + CORPSE_FIELD_FLAGS = 0x8C , // Type: Int32, Size: 1 + CORPSE_FIELD_DYNAMIC_FLAGS = 0x90 , // Type: Int32, Size: 1 + CORPSE_FIELD_PAD = 0x94 , // Type: Int32, Size: 1 +}; +*/ + +@interface Corpse : WoWObject { + +} + ++ (id)corpseWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +- (UInt32) parentLowGUID; + +@end diff --git a/Corpse.m b/Corpse.m new file mode 100644 index 0000000..8345728 --- /dev/null +++ b/Corpse.m @@ -0,0 +1,44 @@ +// +// Corpse.m +// Pocket Gnome +// +// Created by Josh on 5/25/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "Corpse.h" +#import "WoWObject.h" +#import "Position.h" + +@implementation Corpse + ++ (id)corpseWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + return [[[Corpse alloc] initWithAddress: address inMemory: memory] autorelease]; +} + +- (NSString*)description { + return [NSString stringWithFormat: @"<%@: %d; Addr: %@, Parent: %d>", + [self className], + [self entryID], + [NSString stringWithFormat: @"0x%X", [self baseAddress]], + [self parentLowGUID]]; +} + +- (UInt32)parentLowGUID{ + + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self infoAddress] + CorpseField_OwnerGUID) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + + return 0; +} + +- (Position*)position{ + float pos[3] = {-1.0f, -1.0f, -1.0f }; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + CorpseField_XLocation) Buffer: (Byte *)&pos BufLength: sizeof(float)*3]) + return [Position positionWithX: pos[0] Y: pos[1] Z: pos[2]]; + return nil; +} + +@end diff --git a/CorpseController.h b/CorpseController.h new file mode 100644 index 0000000..e1487b0 --- /dev/null +++ b/CorpseController.h @@ -0,0 +1,26 @@ +// +// CorpseController.h +// Pocket Gnome +// +// Created by Josh on 5/25/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class Position; + +@interface CorpseController : NSObject { + IBOutlet Controller *controller; + + NSMutableArray *_corpseList; +} + +- (void)addAddresses: (NSArray*)addresses; + +- (Position *) findPositionbyGUID: (GUID)GUID; + +- (int)totalCorpses; + +@end diff --git a/CorpseController.m b/CorpseController.m new file mode 100644 index 0000000..d992fa8 --- /dev/null +++ b/CorpseController.m @@ -0,0 +1,95 @@ +// +// CorpseController.m +// Pocket Gnome +// +// Created by Josh on 5/25/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "CorpseController.h" +#import "Corpse.h" +#import "MemoryAccess.h" +#import "Controller.h" +#import "Position.h" + + +@implementation CorpseController + +- (id) init +{ + self = [super init]; + if (self != nil) { + _corpseList = [[NSMutableArray array] retain]; + } + return self; +} + +- (void) dealloc +{ + [_corpseList release]; + [super dealloc]; +} + +- (int)totalCorpses{ + return [_corpseList count]; +} + +- (Position *)findPositionbyGUID: (GUID)GUID{ + + + // Loop through the corpses + for(Corpse *corpse in _corpseList) { + + // found + if ( [corpse parentLowGUID] == GUID ){ + //log(LOG_GENERAL, @"Player corpse found: %qu", GUID); + + return [corpse position]; + } + //log(LOG_GENERAL, @"Corpse: %@ Name: %@", corpse, [corpse name]); + } + + return nil; +} + +- (void)addAddresses: (NSArray*)addresses { + + NSMutableDictionary *addressDict = [NSMutableDictionary dictionary]; + NSMutableArray *objectsToRemove = [NSMutableArray array]; + NSMutableArray *dataList = _corpseList; + MemoryAccess *memory = [controller wowMemoryAccess]; + if(![memory isValid]) return; + + //[self willChangeValueForKey: @"corpseCount"]; + + // enumerate current object addresses + // determine which objects need to be removed + for(WoWObject *obj in dataList) { + if([obj isValid]) { + [addressDict setObject: obj forKey: [NSNumber numberWithUnsignedLongLong: [obj baseAddress]]]; + } else { + [objectsToRemove addObject: obj]; + } + } + + // remove any if necessary + if([objectsToRemove count]) { + [dataList removeObjectsInArray: objectsToRemove]; + } + + // add new objects if they don't currently exist + NSDate *now = [NSDate date]; + for(NSNumber *address in addresses) { + + if( ![addressDict objectForKey: address] ) { + [dataList addObject: [Corpse corpseWithAddress: address inMemory: memory]]; + } else { + [[addressDict objectForKey: address] setRefreshDate: now]; + } + } + + //[self didChangeValueForKey: @"corpseCount"]; + //[self updateTracking: nil]; +} + +@end diff --git a/DatabaseManager.h b/DatabaseManager.h new file mode 100644 index 0000000..5627d1a --- /dev/null +++ b/DatabaseManager.h @@ -0,0 +1,283 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: DatabaseManager.h 315 2010-04-12 04:12:45Z Tanaris4 $ + * + */ + +#import +#import "ClientDbDefines.h" + +// offsets listed are for windows, i'm too lazy to remove +typedef enum ClientDbType{ + Achievement = 0x000000EB, // 0x00A73888 + Achievement_Criteria = 0x000000EC, // 0x00A738AC + Achievement_Category = 0x000000ED, // 0x00A738D0 + AnimationData = 0x000000EE, // 0x00A738F4 + AreaGroup = 0x000000EF, // 0x00A73918 + AreaPOI = 0x000000F0, // 0x00A7393C + AreaTable = 0x000000F1, // 0x00A73960 + AreaTrigger = 0x000000F2, // 0x00A73984 + AttackAnimKits = 0x000000F3, // 0x00A739A8 + AttackAnimTypes = 0x000000F4, // 0x00A739CC + AuctionHouse = 0x000000F5, // 0x00A739F0 + BankBagSlotPrices = 0x000000F6, // 0x00A73A14 + BannedAddOns = 0x000000F7, // 0x00A73A38 + BarberShopStyle = 0x000000F8, // 0x00A73A5C + BattlemasterList = 0x000000F9, // 0x00A73A80 + CameraShakes = 0x000000FA, // 0x00A73AA4 + Cfg_Categories = 0x000000FB, // 0x00A73AC8 + Cfg_Configs = 0x000000FC, // 0x00A73AEC + CharBaseInfo = 0x000000FD, // 0x00A73B10 + CharHairGeosets = 0x000000FE, // 0x00A73B34 + CharSections = 0x000000FF, // 0x00A73B58 + CharStartOutfit = 0x00000100, // 0x00A73B7C + CharTitles = 0x00000101, // 0x00A73BA0 + CharacterFacialHairStyles = 0x00000102, // 0x00A73BC4 + ChatChannels = 0x00000103, // 0x00A73BE8 + ChatProfanity = 0x00000104, // 0x00A73C0C + ChrClasses = 0x00000105, // 0x00A73C30 + ChrRaces = 0x00000106, // 0x00A73C54 + CinematicCamera = 0x00000107, // 0x00A73C78 + CinematicSequences = 0x00000108, // 0x00A73C9C + CreatureDisplayInfo = 0x00000109, // 0x00A73CE4 + CreatureDisplayInfoExtra = 0x0000010A, // 0x00A73CC0 + CreatureFamily = 0x0000010B, // 0x00A73D08 + CreatureModelData = 0x0000010C, // 0x00A73D2C + CreatureMovementInfo = 0x0000010D, // 0x00A73D50 + CreatureSoundData = 0x0000010E, // 0x00A73D74 + CreatureSpellData = 0x0000010F, // 0x00A73D98 + CreatureType_ = 0x00000110, // 0x00A73DBC + CurrencyTypes = 0x00000111, // 0x00A73DE0 + CurrencyCategory = 0x00000112, // 0x00A73E04 + DanceMoves = 0x00000113, // 0x00A73E28 + DeathThudLookups = 0x00000114, // 0x00A73E4C + DestructibleModelData = 0x00000115, // 0x00A73EB8 + DungeonEncounter = 0x00000116, // 0x00A73EDC + DungeonMap = 0x00000117, // 0x00A73F00 + DungeonMapChunk = 0x00000118, // 0x00A73F24 + DurabilityCosts = 0x00000119, // 0x00A73F48 + DurabilityQuality = 0x0000011A, // 0x00A73F6C + Emotes = 0x0000011B, // 0x00A73F90 + EmotesText = 0x0000011C, // 0x00A73FFC + EmotesTextData = 0x0000011D, // 0x00A73FB4 + EmotesTextSound = 0x0000011E, // 0x00A73FD8 + EnvironmentalDamage = 0x0000011F, // 0x00A74020 + Exhaustion = 0x00000120, // 0x00A74044 + Faction = 0x00000121, // 0x00A7408C + FactionGroup = 0x00000122, // 0x00A74068 + FactionTemplate = 0x00000123, // 0x00A740B0 + FileData = 0x00000124, // 0x00A740D4 + FootprintTextures = 0x00000125, // 0x00A740F8 + FootstepTerrainLookup = 0x00000126, // 0x00A7411C + GameObjectArtKit = 0x00000127, // 0x00A74140 + GameObjectDisplayInfo = 0x00000128, // 0x00A74164 + GameTables = 0x00000129, // 0x00A74188 + GameTips = 0x0000012A, // 0x00A741AC + GemProperties = 0x0000012B, // 0x00A741D0 + GlyphProperties = 0x0000012C, // 0x00A741F4 + GlyphSlot = 0x0000012D, // 0x00A74218 + GMSurveyAnswers = 0x0000012E, // 0x00A7423C + GMSurveyCurrentSurvey = 0x0000012F, // 0x00A74260 + GMSurveyQuestions = 0x00000130, // 0x00A74284 + GMSurveySurveys = 0x00000131, // 0x00A742A8 + GMTicketCategory = 0x00000132, // 0x00A742CC + GroundEffectDoodad = 0x00000133, // 0x00A742F0 + GroundEffectTexture = 0x00000134, // 0x00A74314 + gtBarberShopCostBase = 0x00000135, // 0x00A74338 + gtCombatRatings = 0x00000136, // 0x00A7435C + gtChanceToMeleeCrit = 0x00000137, // 0x00A74380 + gtChanceToMeleeCritBase = 0x00000138, // 0x00A743A4 + gtChanceToSpellCrit = 0x00000139, // 0x00A743C8 + gtChanceToSpellCritBase = 0x0000013A, // 0x00A743EC + gtNPCManaCostScaler = 0x0000013B, // 0x00A74410 + gtOCTClassCombatRatingScalar = 0x0000013C, // 0x00A74434 + gtOCTRegenHP = 0x0000013D, // 0x00A74458 + gtOCTRegenMP = 0x0000013E, // 0x00A7447C + gtRegenHPPerSpt = 0x0000013F, // 0x00A744A0 + gtRegenMPPerSpt = 0x00000140, // 0x00A744C4 + HelmetGeosetVisData = 0x00000141, // 0x00A744E8 + HolidayDescriptions = 0x00000142, // 0x00A7450C + HolidayNames = 0x00000143, // 0x00A74530 + Holidays = 0x00000144, // 0x00A74554 + Item_ = 0x00000145, // 0x00A74578 + ItemBagFamily = 0x00000146, // 0x00A7459C + ItemClass = 0x00000147, // 0x00A745C0 + ItemCondExtCosts = 0x00000148, // 0x00A745E4 + ItemDisplayInfo = 0x00000149, // 0x00A74608 + ItemExtendedCost = 0x0000014A, // 0x00A7462C + ItemGroupSounds = 0x0000014B, // 0x00A74650 + ItemLimitCategory = 0x0000014C, // 0x00A74674 + ItemPetFood = 0x0000014D, // 0x00A74698 + ItemPurchaseGroup = 0x0000014E, // 0x00A746BC + ItemRandomProperties = 0x0000014F, // 0x00A746E0 + ItemRandomSuffix = 0x00000150, // 0x00A74704 + ItemSet = 0x00000151, // 0x00A74728 + ItemSubClass = 0x00000152, // 0x00A74770 + ItemSubClassMask = 0x00000153, // 0x00A7474C + ItemVisualEffects = 0x00000154, // 0x00A74794 + ItemVisuals = 0x00000155, // 0x00A747B8 + LanguageWords = 0x00000156, // 0x00A747DC + Languages = 0x00000157, // 0x00A74800 + LfgDungeonExpansion = 0x00000158, // 0x00A74824 + LfgDungeonGroup = 0x00000159, // 0x00A74848 + LfgDungeons = 0x0000015A, // 0x00A7486C + Light = 0x0000015B, // 0x00A96C08 + LightFloatBand = 0x0000015C, // 0x00A96BC0 + LightIntBand = 0x0000015D, // 0x00A96B9C + LightParams = 0x0000015E, // 0x00A96BE4 + LightSkybox = 0x0000015F, // 0x00A96B78 + LiquidType = 0x00000160, // 0x00A74890 + LiquidMaterial = 0x00000161, // 0x00A748B4 + LoadingScreens = 0x00000162, // 0x00A748D8 + LoadingScreenTaxiSplines = 0x00000163, // 0x00A748FC + Lock = 0x00000164, // 0x00A74920 + LockType = 0x00000165, // 0x00A74944 + MailTemplate = 0x00000166, // 0x00A74968 + Map = 0x00000167, // 0x00A7498C + MapDifficulty = 0x00000168, // 0x00A749B0 + Material = 0x00000169, // 0x00A749D4 + Movie = 0x0000016A, // 0x00A749F8 + MovieFileData = 0x0000016B, // 0x00A74A1C + MovieVariation = 0x0000016C, // 0x00A74A40 + NameGen = 0x0000016D, // 0x00A74A64 + NPCSounds = 0x0000016E, // 0x00A74A88 + NamesProfanity = 0x0000016F, // 0x00A74AAC + NamesReserved = 0x00000170, // 0x00A74AD0 + OverrideSpellData = 0x00000171, // 0x00A74AF4 + Package = 0x00000172, // 0x00A74B18 + PageTextMaterial = 0x00000173, // 0x00A74B3C + PaperDollItemFrame = 0x00000174, // 0x00A74B60 + ParticleColor = 0x00000175, // 0x00A74B84 + PetPersonality = 0x00000176, // 0x00A74BA8 + PowerDisplay = 0x00000177, // 0x00A74BCC + PvpDifficulty = 0x00000178, // 0x00A74BF0 + QuestFactionReward = 0x00000179, // 0x00A74C14 + QuestInfo = 0x0000017A, // 0x00A74C38 + QuestSort = 0x0000017B, // 0x00A74C5C + QuestXP = 0x0000017C, // 0x00A74C80 + Resistances = 0x0000017D, // 0x00A74CA4 + RandPropPoints = 0x0000017E, // 0x00A74CC8 + ScalingStatDistribution = 0x0000017F, // 0x00A74CEC + ScalingStatValues = 0x00000180, // 0x00A74D10 + ScreenEffect = 0x00000181, // 0x00A74D34 + ServerMessages = 0x00000182, // 0x00A74D58 + SheatheSoundLookups = 0x00000183, // 0x00A74D7C + SkillCostsData = 0x00000184, // 0x00A74DA0 + SkillLineAbility = 0x00000185, // 0x00A74DC4 + SkillLineCategory = 0x00000186, // 0x00A74DE8 + SkillLine = 0x00000187, // 0x00A74E0C + SkillRaceClassInfo = 0x00000188, // 0x00A74E30 + SkillTiers = 0x00000189, // 0x00A74E54 + SoundAmbience = 0x0000018A, // 0x00A74E78 + SoundEmitters = 0x0000018B, // 0x00A74EC0 + SoundEntries = 0x0000018C, // 0x00A74E9C + SoundProviderPreferences = 0x0000018D, // 0x00A74EE4 + SoundSamplePreferences = 0x0000018E, // 0x00A74F08 + SoundWaterType = 0x0000018F, // 0x00A74F2C + SpamMessages = 0x00000190, // 0x00A74F50 + SpellCastTimes = 0x00000191, // 0x00A74F74 + SpellCategory = 0x00000192, // 0x00A74F98 + SpellChainEffects = 0x00000193, // 0x00A74FBC + Spell_ = 0x00000194, // 0x00A751FC + SpellDescriptionVariables = 0x00000195, // 0x00A74FE0 + SpellDifficulty = 0x00000196, // 0x00A75004 + SpellDispelType = 0x00000197, // 0x00A75028 + SpellDuration = 0x00000198, // 0x00A7504C + SpellEffectCameraShakes = 0x00000199, // 0x00A75070 + SpellFocusObject = 0x0000019A, // 0x00A75094 + SpellIcon = 0x0000019B, // 0x00A750B8 + SpellItemEnchantment = 0x0000019C, // 0x00A750DC + SpellItemEnchantmentCondition = 0x0000019D, // 0x00A75100 + SpellMechanic = 0x0000019E, // 0x00A75124 + SpellMissile = 0x0000019F, // 0x00A75148 + SpellMissileMotion = 0x000001A0, // 0x00A7516C + SpellRadius = 0x000001A1, // 0x00A75190 + SpellRange = 0x000001A2, // 0x00A751B4 + SpellRuneCost = 0x000001A3, // 0x00A751D8 + SpellShapeshiftForm = 0x000001A4, // 0x00A75220 + SpellVisual = 0x000001A5, // 0x00A752D4 + SpellVisualEffectName = 0x000001A6, // 0x00A75244 + SpellVisualKit = 0x000001A7, // 0x00A75268 + SpellVisualKitAreaModel = 0x000001A8, // 0x00A7528C + SpellVisualKitModelAttach = 0x000001A9, // 0x00A752B0 + StableSlotPrices = 0x000001AA, // 0x00A752F8 + Stationery = 0x000001AB, // 0x00A7531C + StringLookups = 0x000001AC, // 0x00A75340 + SummonProperties = 0x000001AD, // 0x00A75364 + Talent = 0x000001AE, // 0x00A75388 + TalentTab = 0x000001AF, // 0x00A753AC + TaxiNodes = 0x000001B0, // 0x00A753D0 + TaxiPath = 0x000001B1, // 0x00A75418 + TaxiPathNode = 0x000001B2, // 0x00A753F4 + TeamContributionPoints = 0x000001B3, // 0x00A7543C + TerrainType = 0x000001B4, // 0x00A75460 + TerrainTypeSounds = 0x000001B5, // 0x00A75484 + TotemCategory = 0x000001B6, // 0x00A754A8 + TransportAnimation = 0x000001B7, // 0x00A754CC + TransportPhysics = 0x000001B8, // 0x00A754F0 + TransportRotation = 0x000001B9, // 0x00A75514 + UISoundLookups = 0x000001BA, // 0x00A75538 + UnitBlood = 0x000001BB, // 0x00A75580 + UnitBloodLevels = 0x000001BC, // 0x00A7555C + Vehicle = 0x000001BD, // 0x00A755A4 + VehicleSeat = 0x000001BE, // 0x00A755C8 + VehicleUIIndicator = 0x000001BF, // 0x00A755EC + VehicleUIIndSeat = 0x000001C0, // 0x00A75610 + VocalUISounds = 0x000001C1, // 0x00A75634 + WMOAreaTable = 0x000001C2, // 0x00A75658 + WeaponImpactSounds = 0x000001C3, // 0x00A7567C + WeaponSwingSounds2 = 0x000001C4, // 0x00A756A0 + Weather = 0x000001C5, // 0x00A756C4 + WorldMapArea = 0x000001C6, // 0x00A756E8 + WorldMapTransforms = 0x000001C7, // 0x00A75754 + WorldMapContinent = 0x000001C8, // 0x00A7570C + WorldMapOverlay = 0x000001C9, // 0x00A75730 + WorldSafeLocs = 0x000001CA, // 0x00A75778 + WorldStateUI = 0x000001CB, // 0x00A7579C + ZoneIntroMusicTable = 0x000001CC, // 0x00A757C0 + ZoneMusic = 0x000001CD, // 0x00A757E4 + WorldStateZoneSounds = 0x000001CE, // 0x00A75808 + WorldChunkSounds = 0x000001CF, // 0x00A7582C + SoundEntriesAdvanced = 0x000001D0, // 0x00A75850 + ObjectEffect = 0x000001D1, // 0x00A75874 + ObjectEffectGroup = 0x000001D2, // 0x00A75898 + ObjectEffectModifier = 0x000001D3, // 0x00A758BC + ObjectEffectPackage = 0x000001D4, // 0x00A758E0 + ObjectEffectPackageElem = 0x000001D5, // 0x00A75904 + SoundFilter = 0x000001D6, // 0x00A75928 + SoundFilterElem = 0x000001D7, // 0x00A7594C +} ClientDbType; + +@class Controller; +@class OffsetController; + +@interface DatabaseManager : NSObject { + IBOutlet Controller *controller; + IBOutlet OffsetController *offsetController; + + NSMutableDictionary *_tables; + BOOL _dataLoaded; +} + +- (BOOL)getObjectForRow:(int)index withTable:(ClientDbType)table withStruct:(void*)obj withStructSize:(size_t)structSize; + +@end \ No newline at end of file diff --git a/DatabaseManager.m b/DatabaseManager.m new file mode 100644 index 0000000..2f6e890 --- /dev/null +++ b/DatabaseManager.m @@ -0,0 +1,192 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: DatabaseManager.m 315 2010-04-12 04:12:45Z Tanaris4 $ + * + */ + +#import "DatabaseManager.h" +#import "Controller.h" +#import "OffsetController.h" + + +@implementation DatabaseManager + +- (id) init{ + self = [super init]; + if ( self != nil ){ + + _tables = [[NSMutableDictionary dictionary] retain]; + _dataLoaded = NO; + +// [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(offsetsLoaded:) name: OffsetsLoaded object: nil]; + } + return self; +} + +- (void)dealloc{ + [super dealloc]; +} + +#pragma mark - + +typedef struct ClientDb { + UInt32 _vtable; // 0x0 + UInt32 isLoaded; // 0x4 + UInt32 numRows; // 0x8 // 49379 + UInt32 maxIndex; // 0xC // 74445 + UInt32 minIndex; // 0x10 // 1 + UInt32 stringTablePtr; // 0x14 + UInt32 _vtable2; // 0x18 + // array of row pointers after this... + UInt32 row1; // 0x1C // this points to the first actual row in the database (in theory we could use this, then loop until we hit numRows and we have all the rows) + UInt32 row2; // 0x20 + +} ClientDb; + +// huge thanks to Apoc! Code below from him +- (BOOL)unPackRow:(UInt32)addressOfStruct withStruct:(void*)obj withStructSize:(size_t)structSize{ + + //NSLog(@"Obj address3: 0x%X", obj); + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory || ![memory isValid] ){ + return NO; + } + + Byte byteBuffer[0x5000] = {0}; + + byteBuffer[0] = [memory readInt:addressOfStruct withSize:sizeof(Byte)]; + int currentAddress = 1; + int i = 0; + const int size = 0x2C0; + + for ( i = addressOfStruct + 1; currentAddress < size; ++i ){ + + byteBuffer[currentAddress++] = [memory readInt:i withSize:sizeof(Byte)]; + + Byte atI = [memory readInt:i withSize:sizeof(Byte)]; + Byte prevI = [memory readInt:i - 1 withSize:sizeof(Byte)]; + + if ( atI == prevI ){ + + Byte j = 0; + for ( j = [memory readInt:i + 1 withSize:sizeof(Byte)]; j != 0; byteBuffer[currentAddress++] = [memory readInt:i withSize:sizeof(Byte)] ){ + j--; + } + i += 2; + if ( currentAddress < size ){ + byteBuffer[currentAddress++] = [memory readInt:i withSize:sizeof(Byte)]; + } + } + } + + memcpy( obj, &byteBuffer, structSize); + + return YES; +} + +- (BOOL)getObjectForRow:(int)index withTable:(ClientDbType)tableOffset withStruct:(void*)obj withStructSize:(size_t)structSize{ + + NSNumber *table = [NSNumber numberWithInt:tableOffset]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory || ![memory isValid] ){ + return NO; + } + + //NSLog(@"Obj address2: 0x%X", obj); + + // snag our address + NSNumber *addr = [_tables objectForKey:table]; + UInt32 dbAddress = 0x0; + if ( addr ){ + dbAddress = [addr unsignedIntValue]; + } + + //NSLog(@"[Db] Loading data for index %d", index); + + // time to load our data + ClientDb db; + if ( dbAddress && [memory loadDataForObject:self atAddress:dbAddress Buffer:(Byte *)&db BufLength:sizeof(db)] ){ + //NSLog(@"[Db] Loaded database '%@' with base pointer 0x%X and row2: 0x%X", table, dbAddress, db.row2); + + // time to snag our row! + if ( index >= db.minIndex && index <= db.maxIndex ){ + + UInt32 rowPointer = db.row2 + ( 4 * (index - db.minIndex) ); + //NSLog(@"[Db] Row pointer: 0x%X %d", rowPointer, (index - db.minIndex)); + UInt32 structAddress = [memory readInt:rowPointer withSize:sizeof(UInt32)]; + + // we don't have a pointer to a struct, quite unfortunate + if ( structAddress == 0 ){ + return NO; + } + + //NSLog(@"[Db] We have a valid struct address! Row is pointing to 0x%X", structAddress); + + if ( tableOffset == Spell_ ){ + if ( [self unPackRow:structAddress withStruct:obj withStructSize:structSize] ){ + return YES; + } + } + // no unpacking necessary! + else{ + PGLog(@"loading at 0x%X", structAddress); + [memory loadDataForObject:self atAddress:structAddress Buffer:obj BufLength:structSize]; + return YES; + } + } + } + + return NO; +} + +#pragma mark Notifications + +- (void)offsetsLoaded: (NSNotification*)notification { + + if ( _dataLoaded ) + return; + + // lets load all of our valid offsets for all of our client DBs! (should be pretty patch safe, time will tell!) + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( memory && [memory isValid] ){ + + UInt32 firstOffset = [offsetController offset:@"ClientDb_RegisterBase"] + 0x21; + NSLog(@"first is what? 0x%X", firstOffset); + + int i = 0; + for ( ; i < 0xEC; i++ ){ + UInt32 ptr = [memory readInt:firstOffset + (0x29*i) withSize:sizeof(UInt32)]; + UInt32 offset = [memory readInt:firstOffset + (0x29*i) + 0x8 withSize:sizeof(UInt32)]; + UInt32 tableAddress = [memory readInt:ptr withSize:sizeof(UInt32)]; + + [_tables setObject:[NSNumber numberWithUnsignedInt:tableAddress] forKey:[NSNumber numberWithInt:offset]]; // 0x194 + + PGLog(@"[%d] Adding address 0x%X for 0x%X", i, tableAddress, offset); + } + } + + _dataLoaded = YES; +} + +@end \ No newline at end of file diff --git a/Dead.png b/Dead.png new file mode 100644 index 0000000..b4096cf Binary files /dev/null and b/Dead.png differ diff --git a/DeathKnight.png b/DeathKnight.png new file mode 100644 index 0000000..bd7fe5b Binary files /dev/null and b/DeathKnight.png differ diff --git a/DeathKnight_Small.gif b/DeathKnight_Small.gif new file mode 100644 index 0000000..0b87a05 Binary files /dev/null and b/DeathKnight_Small.gif differ diff --git a/Defines.h b/Defines.h new file mode 100644 index 0000000..c436bba --- /dev/null +++ b/Defines.h @@ -0,0 +1,502 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: Defines.h 315 2010-04-12 04:12:45Z Tanaris4 $ + * + */ + +// from http://trinitycore.googlecode.com/hg/src/game/SharedDefines.h + + +// Spell.dbc + +enum Powers +{ + POWER_MANA = 0, + POWER_RAGE = 1, + POWER_FOCUS = 2, + POWER_ENERGY = 3, + POWER_HAPPINESS = 4, + POWER_RUNE = 5, + POWER_RUNIC_POWER = 6, + MAX_POWERS = 7, + POWER_ALL = 127, // default for class? + POWER_HEALTH = 0xFFFFFFFE // (-2 as signed value) +}; + +enum SpellSchools +{ + SPELL_SCHOOL_NORMAL = 0, + SPELL_SCHOOL_HOLY = 1, + SPELL_SCHOOL_FIRE = 2, + SPELL_SCHOOL_NATURE = 3, + SPELL_SCHOOL_FROST = 4, + SPELL_SCHOOL_SHADOW = 5, + SPELL_SCHOOL_ARCANE = 6 +}; + +#define MAX_SPELL_SCHOOL 7 + +enum SpellSchoolMask +{ + SPELL_SCHOOL_MASK_NONE = 0x00, // not exist + SPELL_SCHOOL_MASK_NORMAL = (1 << SPELL_SCHOOL_NORMAL), // PHYSICAL (Armor) + SPELL_SCHOOL_MASK_HOLY = (1 << SPELL_SCHOOL_HOLY), + SPELL_SCHOOL_MASK_FIRE = (1 << SPELL_SCHOOL_FIRE), + SPELL_SCHOOL_MASK_NATURE = (1 << SPELL_SCHOOL_NATURE), + SPELL_SCHOOL_MASK_FROST = (1 << SPELL_SCHOOL_FROST), + SPELL_SCHOOL_MASK_SHADOW = (1 << SPELL_SCHOOL_SHADOW), + SPELL_SCHOOL_MASK_ARCANE = (1 << SPELL_SCHOOL_ARCANE), + + // unions + + // 124, not include normal and holy damage + SPELL_SCHOOL_MASK_SPELL = (SPELL_SCHOOL_MASK_FIRE | + SPELL_SCHOOL_MASK_NATURE | SPELL_SCHOOL_MASK_FROST | + SPELL_SCHOOL_MASK_SHADOW | SPELL_SCHOOL_MASK_ARCANE), + // 126 + SPELL_SCHOOL_MASK_MAGIC = (SPELL_SCHOOL_MASK_HOLY | SPELL_SCHOOL_MASK_SPELL), + + // 127 + SPELL_SCHOOL_MASK_ALL = (SPELL_SCHOOL_MASK_NORMAL | SPELL_SCHOOL_MASK_MAGIC) +}; + +enum SpellCategory +{ + SPELL_CATEGORY_FOOD = 11, + SPELL_CATEGORY_DRINK = 59, +}; + + +// *********************************** +// Spell Attributes definitions +// *********************************** + +#define SPELL_ATTR_UNK0 0x00000001 // 0 +#define SPELL_ATTR_REQ_AMMO 0x00000002 // 1 +#define SPELL_ATTR_ON_NEXT_SWING 0x00000004 // 2 on next swing +#define SPELL_ATTR_UNK3 0x00000008 // 3 not set in 3.0.3 +#define SPELL_ATTR_UNK4 0x00000010 // 4 +#define SPELL_ATTR_TRADESPELL 0x00000020 // 5 trade spells, will be added by client to a sublist of profession spell +#define SPELL_ATTR_PASSIVE 0x00000040 // 6 Passive spell +#define SPELL_ATTR_UNK7 0x00000080 // 7 visible? +#define SPELL_ATTR_UNK8 0x00000100 // 8 +#define SPELL_ATTR_UNK9 0x00000200 // 9 +#define SPELL_ATTR_UNK10 0x00000400 // 10 on next swing 2 +#define SPELL_ATTR_UNK11 0x00000800 // 11 +#define SPELL_ATTR_DAYTIME_ONLY 0x00001000 // 12 only useable at daytime, not set in 2.4.2 +#define SPELL_ATTR_NIGHT_ONLY 0x00002000 // 13 only useable at night, not set in 2.4.2 +#define SPELL_ATTR_INDOORS_ONLY 0x00004000 // 14 only useable indoors, not set in 2.4.2 +#define SPELL_ATTR_OUTDOORS_ONLY 0x00008000 // 15 Only useable outdoors. +#define SPELL_ATTR_NOT_SHAPESHIFT 0x00010000 // 16 Not while shapeshifted +#define SPELL_ATTR_ONLY_STEALTHED 0x00020000 // 17 Must be in stealth +#define SPELL_ATTR_UNK18 0x00040000 // 18 +#define SPELL_ATTR_LEVEL_DAMAGE_CALCULATION 0x00080000 // 19 spelldamage depends on caster level +#define SPELL_ATTR_STOP_ATTACK_TARGET 0x00100000 // 20 Stop attack after use this spell (and not begin attack if use) +#define SPELL_ATTR_IMPOSSIBLE_DODGE_PARRY_BLOCK 0x00200000 // 21 Cannot be dodged/parried/blocked +#define SPELL_ATTR_UNK22 0x00400000 // 22 shoot spells +#define SPELL_ATTR_CASTABLE_WHILE_DEAD 0x00800000 // 23 castable while dead? +#define SPELL_ATTR_CASTABLE_WHILE_MOUNTED 0x01000000 // 24 castable while mounted +#define SPELL_ATTR_DISABLED_WHILE_ACTIVE 0x02000000 // 25 Activate and start cooldown after aura fade or remove summoned creature or go +#define SPELL_ATTR_NEGATIVE_1 0x04000000 // 26 Many negative spells have this attr +#define SPELL_ATTR_CASTABLE_WHILE_SITTING 0x08000000 // 27 castable while sitting +#define SPELL_ATTR_CANT_USED_IN_COMBAT 0x10000000 // 28 Cannot be used in combat +#define SPELL_ATTR_UNAFFECTED_BY_INVULNERABILITY 0x20000000 // 29 unaffected by invulnerability (hmm possible not...) +#define SPELL_ATTR_BREAKABLE_BY_DAMAGE 0x40000000 // 30 +#define SPELL_ATTR_CANT_CANCEL 0x80000000 // 31 positive aura can't be canceled + +#define SPELL_ATTR_EX_DISMISS_PET 0x00000001 // 0 dismiss pet and not allow to summon new one? +#define SPELL_ATTR_EX_DRAIN_ALL_POWER 0x00000002 // 1 use all power (Only paladin Lay of Hands and Bunyanize) +#define SPELL_ATTR_EX_CHANNELED_1 0x00000004 // 2 channeled target +#define SPELL_ATTR_EX_PUT_CASTER_IN_COMBAT 0x00000008 // 3 spells that cause a caster to enter a combat +#define SPELL_ATTR_EX_UNK4 0x00000010 // 4 stealth and whirlwind +#define SPELL_ATTR_EX_NOT_BREAK_STEALTH 0x00000020 // 5 Not break stealth +#define SPELL_ATTR_EX_CHANNELED_2 0x00000040 // 6 channeled self +#define SPELL_ATTR_EX_NEGATIVE 0x00000080 // 7 +#define SPELL_ATTR_EX_NOT_IN_COMBAT_TARGET 0x00000100 // 8 Spell req target not to be in combat state +#define SPELL_ATTR_EX_UNK9 0x00000200 // 9 melee spells +#define SPELL_ATTR_EX_UNK10 0x00000400 // 10 no generates threat on cast 100%? (old NO_INITIAL_AGGRO) +#define SPELL_ATTR_EX_UNK11 0x00000800 // 11 aura +#define SPELL_ATTR_EX_UNK12 0x00001000 // 12 +#define SPELL_ATTR_EX_UNK13 0x00002000 // 13 +#define SPELL_ATTR_EX_STACK_FOR_DIFF_CASTERS 0x00004000 // 14 +#define SPELL_ATTR_EX_DISPEL_AURAS_ON_IMMUNITY 0x00008000 // 15 remove auras on immunity +#define SPELL_ATTR_EX_UNAFFECTED_BY_SCHOOL_IMMUNE 0x00010000 // 16 on immuniy +#define SPELL_ATTR_EX_UNAUTOCASTABLE_BY_PET 0x00020000 // 17 +#define SPELL_ATTR_EX_UNK18 0x00040000 // 18 +#define SPELL_ATTR_EX_CANT_TARGET_SELF 0x00080000 // 19 Applies only to unit target - for example Divine Intervention (19752) +#define SPELL_ATTR_EX_REQ_COMBO_POINTS1 0x00100000 // 20 Req combo points on target +#define SPELL_ATTR_EX_UNK21 0x00200000 // 21 +#define SPELL_ATTR_EX_REQ_COMBO_POINTS2 0x00400000 // 22 Req combo points on target +#define SPELL_ATTR_EX_UNK23 0x00800000 // 23 +#define SPELL_ATTR_EX_UNK24 0x01000000 // 24 Req fishing pole?? +#define SPELL_ATTR_EX_UNK25 0x02000000 // 25 +#define SPELL_ATTR_EX_UNK26 0x04000000 // 26 works correctly with [target=focus] and [target=mouseover] macros? +#define SPELL_ATTR_EX_UNK27 0x08000000 // 27 +#define SPELL_ATTR_EX_IGNORE_IMMUNITY 0x10000000 // 28 removed from Chains of Ice 3.3.0 +#define SPELL_ATTR_EX_UNK29 0x20000000 // 29 +#define SPELL_ATTR_EX_ENABLE_AT_DODGE 0x40000000 // 30 Overpower, Wolverine Bite +#define SPELL_ATTR_EX_UNK31 0x80000000 // 31 + +#define SPELL_ATTR_EX2_UNK0 0x00000001 // 0 +#define SPELL_ATTR_EX2_UNK1 0x00000002 // 1 ? many triggered spells have this flag +#define SPELL_ATTR_EX2_CANT_REFLECTED 0x00000004 // 2 ? used for detect can or not spell reflected +#define SPELL_ATTR_EX2_UNK3 0x00000008 // 3 +#define SPELL_ATTR_EX2_UNK4 0x00000010 // 4 +#define SPELL_ATTR_EX2_AUTOREPEAT_FLAG 0x00000020 // 5 +#define SPELL_ATTR_EX2_UNK6 0x00000040 // 6 +#define SPELL_ATTR_EX2_UNK7 0x00000080 // 7 +#define SPELL_ATTR_EX2_UNK8 0x00000100 // 8 not set in 3.0.3 +#define SPELL_ATTR_EX2_UNK9 0x00000200 // 9 +#define SPELL_ATTR_EX2_UNK10 0x00000400 // 10 +#define SPELL_ATTR_EX2_HEALTH_FUNNEL 0x00000800 // 11 +#define SPELL_ATTR_EX2_UNK12 0x00001000 // 12 +#define SPELL_ATTR_EX2_UNK13 0x00002000 // 13 Items enchanted by spells with this flag preserve the enchant to arenas +#define SPELL_ATTR_EX2_UNK14 0x00004000 // 14 +#define SPELL_ATTR_EX2_UNK15 0x00008000 // 15 not set in 3.0.3 +#define SPELL_ATTR_EX2_TAME_BEAST 0x00010000 // 16 +#define SPELL_ATTR_EX2_NOT_RESET_AUTOSHOT 0x00020000 // 17 Hunters Shot and Stings only have this flag +#define SPELL_ATTR_EX2_UNK18 0x00040000 // 18 Only Revive pet - possible req dead pet +#define SPELL_ATTR_EX2_NOT_NEED_SHAPESHIFT 0x00080000 // 19 does not necessarly need shapeshift +#define SPELL_ATTR_EX2_UNK20 0x00100000 // 20 +#define SPELL_ATTR_EX2_DAMAGE_REDUCED_SHIELD 0x00200000 // 21 for ice blocks, pala immunity buffs, priest absorb shields, but used also for other spells -> not sure! +#define SPELL_ATTR_EX2_UNK22 0x00400000 // 22 +#define SPELL_ATTR_EX2_UNK23 0x00800000 // 23 Only mage Arcane Concentration have this flag +#define SPELL_ATTR_EX2_UNK24 0x01000000 // 24 +#define SPELL_ATTR_EX2_UNK25 0x02000000 // 25 +#define SPELL_ATTR_EX2_UNK26 0x04000000 // 26 unaffected by school immunity +#define SPELL_ATTR_EX2_UNK27 0x08000000 // 27 +#define SPELL_ATTR_EX2_UNK28 0x10000000 // 28 no breaks stealth if it fails?? +#define SPELL_ATTR_EX2_CANT_CRIT 0x20000000 // 29 Spell can't crit +#define SPELL_ATTR_EX2_TRIGGERED_CAN_TRIGGER 0x40000000 // 30 spell can trigger even if triggered +#define SPELL_ATTR_EX2_FOOD_BUFF 0x80000000 // 31 Food or Drink Buff (like Well Fed) + +#define SPELL_ATTR_EX3_UNK0 0x00000001 // 0 +#define SPELL_ATTR_EX3_UNK1 0x00000002 // 1 +#define SPELL_ATTR_EX3_UNK2 0x00000004 // 2 +#define SPELL_ATTR_EX3_BLOCKABLE_SPELL 0x00000008 // 3 Only dmg class melee in 3.1.3 +#define SPELL_ATTR_EX3_UNK4 0x00000010 // 4 Druid Rebirth only this spell have this flag +#define SPELL_ATTR_EX3_UNK5 0x00000020 // 5 +#define SPELL_ATTR_EX3_UNK6 0x00000040 // 6 +#define SPELL_ATTR_EX3_STACK_FOR_DIFF_CASTERS 0x00000080 // 7 separate stack for every caster +#define SPELL_ATTR_EX3_PLAYERS_ONLY 0x00000100 // 8 Player only? +#define SPELL_ATTR_EX3_TRIGGERED_CAN_TRIGGER_2 0x00000200 // 9 triggered from effect? +#define SPELL_ATTR_EX3_MAIN_HAND 0x00000400 // 10 Main hand weapon required +#define SPELL_ATTR_EX3_BATTLEGROUND 0x00000800 // 11 Can casted only on battleground +#define SPELL_ATTR_EX3_UNK12 0x00001000 // 12 +#define SPELL_ATTR_EX3_UNK13 0x00002000 // 13 +#define SPELL_ATTR_EX3_UNK14 0x00004000 // 14 "Honorless Target" only this spells have this flag +#define SPELL_ATTR_EX3_UNK15 0x00008000 // 15 Auto Shoot, Shoot, Throw, - this is autoshot flag +#define SPELL_ATTR_EX3_UNK16 0x00010000 // 16 no triggers effects that trigger on casting a spell?? (15290 - 2.2ptr change) +#define SPELL_ATTR_EX3_NO_INITIAL_AGGRO 0x00020000 // 17 Soothe Animal, 39758, Mind Soothe +#define SPELL_ATTR_EX3_UNK18 0x00040000 // 18 added to Explosive Trap Effect 3.3.0, removed from Mutilate 3.3.0 +#define SPELL_ATTR_EX3_DISABLE_PROC 0x00080000 // 19 during aura proc no spells can trigger (20178, 20375) +#define SPELL_ATTR_EX3_DEATH_PERSISTENT 0x00100000 // 20 Death persistent spells +#define SPELL_ATTR_EX3_UNK21 0x00200000 // 21 +#define SPELL_ATTR_EX3_REQ_WAND 0x00400000 // 22 Req wand +#define SPELL_ATTR_EX3_UNK23 0x00800000 // 23 +#define SPELL_ATTR_EX3_REQ_OFFHAND 0x01000000 // 24 Req offhand weapon +#define SPELL_ATTR_EX3_UNK25 0x02000000 // 25 no cause spell pushback ? +#define SPELL_ATTR_EX3_CAN_PROC_TRIGGERED 0x04000000 // 26 +#define SPELL_ATTR_EX3_DRAIN_SOUL 0x08000000 // 27 only drain soul has this flag +#define SPELL_ATTR_EX3_UNK28 0x10000000 // 28 +#define SPELL_ATTR_EX3_NO_DONE_BONUS 0x20000000 // 29 Ignore caster spellpower and done damage mods? +#define SPELL_ATTR_EX3_UNK30 0x40000000 // 30 Shaman's Fire Nova 3.3.0, Sweeping Strikes 3.3.0 +#define SPELL_ATTR_EX3_UNK31 0x80000000 // 31 + +#define SPELL_ATTR_EX4_UNK0 0x00000001 // 0 +#define SPELL_ATTR_EX4_UNK1 0x00000002 // 1 proc on finishing move? +#define SPELL_ATTR_EX4_UNK2 0x00000004 // 2 +#define SPELL_ATTR_EX4_CANT_PROC_FROM_SELFCAST 0x00000008 // 3 +#define SPELL_ATTR_EX4_UNK4 0x00000010 // 4 This will no longer cause guards to attack on use?? +#define SPELL_ATTR_EX4_UNK5 0x00000020 // 5 +#define SPELL_ATTR_EX4_NOT_STEALABLE 0x00000040 // 6 although such auras might be dispellable, they cannot be stolen +#define SPELL_ATTR_EX4_UNK7 0x00000080 // 7 +#define SPELL_ATTR_EX4_FIXED_DAMAGE 0x00000100 // 8 decimate, share damage? +#define SPELL_ATTR_EX4_UNK9 0x00000200 // 9 +#define SPELL_ATTR_EX4_SPELL_VS_EXTEND_COST 0x00000400 // 10 Rogue Shiv have this flag +#define SPELL_ATTR_EX4_UNK11 0x00000800 // 11 +#define SPELL_ATTR_EX4_UNK12 0x00001000 // 12 +#define SPELL_ATTR_EX4_UNK13 0x00002000 // 13 +#define SPELL_ATTR_EX4_UNK14 0x00004000 // 14 +#define SPELL_ATTR_EX4_UNK15 0x00008000 // 15 +#define SPELL_ATTR_EX4_NOT_USABLE_IN_ARENA 0x00010000 // 16 not usable in arena +#define SPELL_ATTR_EX4_USABLE_IN_ARENA 0x00020000 // 17 usable in arena +#define SPELL_ATTR_EX4_UNK18 0x00040000 // 18 +#define SPELL_ATTR_EX4_UNK19 0x00080000 // 19 +#define SPELL_ATTR_EX4_NOT_CHECK_SELFCAST_POWER 0x00100000 // 20 supersedes message "More powerful spell applied" for self casts. +#define SPELL_ATTR_EX4_UNK21 0x00200000 // 21 +#define SPELL_ATTR_EX4_UNK22 0x00400000 // 22 +#define SPELL_ATTR_EX4_UNK23 0x00800000 // 23 +#define SPELL_ATTR_EX4_UNK24 0x01000000 // 24 +#define SPELL_ATTR_EX4_UNK25 0x02000000 // 25 pet scaling auras +#define SPELL_ATTR_EX4_CAST_ONLY_IN_OUTLAND 0x04000000 // 26 Can only be used in Outland. +#define SPELL_ATTR_EX4_UNK27 0x08000000 // 27 +#define SPELL_ATTR_EX4_UNK28 0x10000000 // 28 +#define SPELL_ATTR_EX4_UNK29 0x20000000 // 29 +#define SPELL_ATTR_EX4_UNK30 0x40000000 // 30 +#define SPELL_ATTR_EX4_UNK31 0x80000000 // 31 + +#define SPELL_ATTR_EX5_UNK0 0x00000001 // 0 +#define SPELL_ATTR_EX5_NO_REAGENT_WHILE_PREP 0x00000002 // 1 not need reagents if UNIT_FLAG_PREPARATION +#define SPELL_ATTR_EX5_UNK2 0x00000004 // 2 +#define SPELL_ATTR_EX5_USABLE_WHILE_STUNNED 0x00000008 // 3 usable while stunned +#define SPELL_ATTR_EX5_UNK4 0x00000010 // 4 +#define SPELL_ATTR_EX5_SINGLE_TARGET_SPELL 0x00000020 // 5 Only one target can be apply at a time +#define SPELL_ATTR_EX5_UNK6 0x00000040 // 6 +#define SPELL_ATTR_EX5_UNK7 0x00000080 // 7 +#define SPELL_ATTR_EX5_UNK8 0x00000100 // 8 +#define SPELL_ATTR_EX5_START_PERIODIC_AT_APPLY 0x00000200 // 9 begin periodic tick at aura apply +#define SPELL_ATTR_EX5_UNK10 0x00000400 // 10 +#define SPELL_ATTR_EX5_UNK11 0x00000800 // 11 +#define SPELL_ATTR_EX5_UNK12 0x00001000 // 12 +#define SPELL_ATTR_EX5_UNK13 0x00002000 // 13 +#define SPELL_ATTR_EX5_UNK14 0x00004000 // 14 +#define SPELL_ATTR_EX5_UNK15 0x00008000 // 15 +#define SPELL_ATTR_EX5_UNK16 0x00010000 // 16 +#define SPELL_ATTR_EX5_USABLE_WHILE_FEARED 0x00020000 // 17 usable while feared +#define SPELL_ATTR_EX5_USABLE_WHILE_CONFUSED 0x00040000 // 18 usable while confused +#define SPELL_ATTR_EX5_UNK19 0x00080000 // 19 +#define SPELL_ATTR_EX5_UNK20 0x00100000 // 20 +#define SPELL_ATTR_EX5_UNK21 0x00200000 // 21 +#define SPELL_ATTR_EX5_UNK22 0x00400000 // 22 +#define SPELL_ATTR_EX5_UNK23 0x00800000 // 23 +#define SPELL_ATTR_EX5_UNK24 0x01000000 // 24 +#define SPELL_ATTR_EX5_UNK25 0x02000000 // 25 +#define SPELL_ATTR_EX5_UNK26 0x04000000 // 26 +#define SPELL_ATTR_EX5_UNK27 0x08000000 // 27 +#define SPELL_ATTR_EX5_UNK28 0x10000000 // 28 +#define SPELL_ATTR_EX5_UNK29 0x20000000 // 29 +#define SPELL_ATTR_EX5_UNK30 0x40000000 // 30 +#define SPELL_ATTR_EX5_UNK31 0x80000000 // 31 Forces all nearby enemies to focus attacks caster + +#define SPELL_ATTR_EX6_UNK0 0x00000001 // 0 Only Move spell have this flag +#define SPELL_ATTR_EX6_ONLY_IN_ARENA 0x00000002 // 1 only usable in arena +#define SPELL_ATTR_EX6_IGNORE_CASTER_AURAS 0x00000004 // 2 +#define SPELL_ATTR_EX6_UNK3 0x00000008 // 3 +#define SPELL_ATTR_EX6_UNK4 0x00000010 // 4 +#define SPELL_ATTR_EX6_UNK5 0x00000020 // 5 +#define SPELL_ATTR_EX6_UNK6 0x00000040 // 6 +#define SPELL_ATTR_EX6_UNK7 0x00000080 // 7 +#define SPELL_ATTR_EX6_UNK8 0x00000100 // 8 +#define SPELL_ATTR_EX6_UNK9 0x00000200 // 9 +#define SPELL_ATTR_EX6_UNK10 0x00000400 // 10 +#define SPELL_ATTR_EX6_NOT_IN_RAID_INSTANCE 0x00000800 // 11 not usable in raid instance +#define SPELL_ATTR_EX6_UNK12 0x00001000 // 12 +#define SPELL_ATTR_EX6_UNK13 0x00002000 // 13 +#define SPELL_ATTR_EX6_UNK14 0x00004000 // 14 +#define SPELL_ATTR_EX6_UNK15 0x00008000 // 15 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK16 0x00010000 // 16 +#define SPELL_ATTR_EX6_UNK17 0x00020000 // 17 +#define SPELL_ATTR_EX6_UNK18 0x00040000 // 18 +#define SPELL_ATTR_EX6_UNK19 0x00080000 // 19 +#define SPELL_ATTR_EX6_UNK20 0x00100000 // 20 +#define SPELL_ATTR_EX6_CLIENT_UI_TARGET_EFFECTS 0x00200000 // 21 it's only client-side attribute +#define SPELL_ATTR_EX6_UNK22 0x00400000 // 22 +#define SPELL_ATTR_EX6_UNK23 0x00800000 // 23 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK24 0x01000000 // 24 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK25 0x02000000 // 25 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK26 0x04000000 // 26 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK27 0x08000000 // 27 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK28 0x10000000 // 28 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK29 0x20000000 // 29 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK30 0x40000000 // 30 not set in 3.0.3 +#define SPELL_ATTR_EX6_UNK31 0x80000000 // 31 not set in 3.0.3 + +#define SPELL_ATTR_EX7_UNK0 0x00000001 // 0 Shaman's new spells (Call of the ...), Feign Death. +#define SPELL_ATTR_EX7_UNK1 0x00000002 // 1 Not set in 3.2.2a. +#define SPELL_ATTR_EX7_REACTIVATE_AT_RESURRECT 0x00000004 // 2 Paladin's auras and 65607 only. +#define SPELL_ATTR_EX7_UNK3 0x00000008 // 3 Only 43574 test spell. +#define SPELL_ATTR_EX7_UNK4 0x00000010 // 4 Only 66109 test spell. +#define SPELL_ATTR_EX7_SUMMON_PLAYER_TOTEM 0x00000020 // 5 Only Shaman player totems. +#define SPELL_ATTR_EX7_UNK6 0x00000040 // 6 Dark Surge, Surge of Light, Burning Breath triggers (boss spells). +#define SPELL_ATTR_EX7_UNK7 0x00000080 // 7 66218 (Launch) spell. +#define SPELL_ATTR_EX7_UNK8 0x00000100 // 8 Teleports, mounts and other spells. +#define SPELL_ATTR_EX7_UNK9 0x00000200 // 9 Teleports, mounts and other spells. +#define SPELL_ATTR_EX7_DISPEL_CHARGES 0x00000400 // 10 Dispel and Spellsteal individual charges instead of whole aura. +#define SPELL_ATTR_EX7_INTERRUPT_ONLY_NONPLAYER 0x00000800 // 11 Only non-player casts interrupt, though Feral Charge - Bear has it. +#define SPELL_ATTR_EX7_UNK12 0x00001000 // 12 Not set in 3.2.2a. +#define SPELL_ATTR_EX7_UNK13 0x00002000 // 13 Not set in 3.2.2a. +#define SPELL_ATTR_EX7_UNK14 0x00004000 // 14 Only 52150 (Raise Dead - Pet) spell. +#define SPELL_ATTR_EX7_UNK15 0x00008000 // 15 Exorcism. Usable on players? 100% crit chance on undead and demons? +#define SPELL_ATTR_EX7_UNK16 0x00010000 // 16 Druid spells (29166, 54833, 64372, 68285). +#define SPELL_ATTR_EX7_UNK17 0x00020000 // 17 Only 27965 (Suicide) spell. +#define SPELL_ATTR_EX7_HAS_CHARGE_EFFECT 0x00040000 // 18 Only spells that have Charge among effects. +#define SPELL_ATTR_EX7_ZONE_TELEPORT 0x00080000 // 19 Teleports to specific zones. + +// Spell aura states +enum AuraState +{ // (C) used in caster aura state (T) used in target aura state + // (c) used in caster aura state-not (t) used in target aura state-not + AURA_STATE_NONE = 0, // C | + AURA_STATE_DEFENSE = 1, // C | + AURA_STATE_HEALTHLESS_20_PERCENT = 2, // CcT | + AURA_STATE_BERSERKING = 3, // C T | + AURA_STATE_FROZEN = 4, // c t| frozen target + AURA_STATE_JUDGEMENT = 5, // C | + //AURA_STATE_UNKNOWN6 = 6, // | not used + AURA_STATE_HUNTER_PARRY = 7, // C | + //AURA_STATE_UNKNOWN7 = 7, // c | creature cheap shot / focused bursts spells + //AURA_STATE_UNKNOWN8 = 8, // t| test spells + //AURA_STATE_UNKNOWN9 = 9, // | + AURA_STATE_WARRIOR_VICTORY_RUSH = 10, // C | warrior victory rush + //AURA_STATE_UNKNOWN11 = 11, // C t| 60348 - Maelstrom Ready!, test spells + AURA_STATE_FAERIE_FIRE = 12, // c t| + AURA_STATE_HEALTHLESS_35_PERCENT = 13, // C T | + AURA_STATE_CONFLAGRATE = 14, // T | + AURA_STATE_SWIFTMEND = 15, // T | + AURA_STATE_DEADLY_POISON = 16, // T | + AURA_STATE_ENRAGE = 17, // C | + AURA_STATE_BLEEDING = 18, // T| + //AURA_STATE_UNKNOWN19 = 19, // | not used + //AURA_STATE_UNKNOWN20 = 20, // c | only (45317 Suicide) + //AURA_STATE_UNKNOWN21 = 21, // | not used + //AURA_STATE_UNKNOWN22 = 22, // C t| varius spells (63884, 50240) + AURA_STATE_HEALTH_ABOVE_75_PERCENT = 23, // C | +}; + +// Spell mechanics +enum Mechanics +{ + MECHANIC_NONE = 0, + MECHANIC_CHARM = 1, + MECHANIC_DISORIENTED = 2, + MECHANIC_DISARM = 3, + MECHANIC_DISTRACT = 4, + MECHANIC_FEAR = 5, + MECHANIC_GRIP = 6, + MECHANIC_ROOT = 7, + MECHANIC_PACIFY = 8, //0 spells use this mechanic + MECHANIC_SILENCE = 9, + MECHANIC_SLEEP = 10, + MECHANIC_SNARE = 11, + MECHANIC_STUN = 12, + MECHANIC_FREEZE = 13, + MECHANIC_KNOCKOUT = 14, + MECHANIC_BLEED = 15, + MECHANIC_BANDAGE = 16, + MECHANIC_POLYMORPH = 17, + MECHANIC_BANISH = 18, + MECHANIC_SHIELD = 19, + MECHANIC_SHACKLE = 20, + MECHANIC_MOUNT = 21, + MECHANIC_INFECTED = 22, + MECHANIC_TURN = 23, + MECHANIC_HORROR = 24, + MECHANIC_INVULNERABILITY = 25, + MECHANIC_INTERRUPT = 26, + MECHANIC_DAZE = 27, + MECHANIC_DISCOVERY = 28, + MECHANIC_IMMUNE_SHIELD = 29, // Divine (Blessing) Shield/Protection and Ice Block + MECHANIC_SAPPED = 30, + MECHANIC_ENRAGED = 31 +}; + +// Spell dispell type +enum DispelType +{ + DISPEL_NONE = 0, + DISPEL_MAGIC = 1, + DISPEL_CURSE = 2, + DISPEL_DISEASE = 3, + DISPEL_POISON = 4, + DISPEL_STEALTH = 5, + DISPEL_INVISIBILITY = 6, + DISPEL_ALL = 7, + DISPEL_SPE_NPC_ONLY = 8, + DISPEL_ENRAGE = 9, + DISPEL_ZG_TICKET = 10, + DESPEL_OLD_UNUSED = 11 +}; + +//To all Immune system,if target has immunes, +//some spell that related to ImmuneToDispel or ImmuneToSchool or ImmuneToDamage type can't cast to it, +//some spell_effects that related to ImmuneToEffect(only this effect in the spell) can't cast to it, +//some aura(related to Mechanics or ImmuneToState) can't apply to it. +enum SpellImmunity +{ + IMMUNITY_EFFECT = 0, // enum SpellEffects + IMMUNITY_STATE = 1, // enum AuraType + IMMUNITY_SCHOOL = 2, // enum SpellSchoolMask + IMMUNITY_DAMAGE = 3, // enum SpellSchoolMask + IMMUNITY_DISPEL = 4, // enum DispelType + IMMUNITY_MECHANIC = 5, // enum Mechanics + IMMUNITY_ID = 6 +}; + +enum TotemCategory +{ + TC_SKINNING_SKIFE_OLD = 1, + TC_EARTH_TOTEM = 2, + TC_AIR_TOTEM = 3, + TC_FIRE_TOTEM = 4, + TC_WATER_TOTEM = 5, + TC_COPPER_ROD = 6, + TC_SILVER_ROD = 7, + TC_GOLDEN_ROD = 8, + TC_TRUESILVER_ROD = 9, + TC_ARCANITE_ROD = 10, + TC_MINING_PICK_OLD = 11, + TC_PHILOSOPHERS_STONE = 12, + TC_BLACKSMITH_HAMMER_OLD = 13, + TC_ARCLIGHT_SPANNER = 14, + TC_GYROMATIC_MA = 15, + TC_MASTER_TOTEM = 21, + TC_FEL_IRON_ROD = 41, + TC_ADAMANTITE_ROD = 62, + TC_ETERNIUM_ROD = 63, + TC_HOLLOW_QUILL = 81, + TC_RUNED_AZURITE_ROD = 101, + TC_VIRTUOSO_INKING_SET = 121, + TC_DRUMS = 141, + TC_GNOMISH_ARMY_KNIFE = 161, + TC_BLACKSMITH_HAMMER = 162, + TC_MINING_PICK = 165, + TC_SKINNING_KNIFE = 166, + TC_HAMMER_PICK = 167, + TC_BLADED_PICKAXE = 168, + TC_FLINT_AND_TINDER = 169, + TC_RUNED_COBALT_ROD = 189, + TC_RUNED_TITANIUM_ROD = 190 +}; + +enum SpellFamilyNames +{ + SPELLFAMILY_GENERIC = 0, + SPELLFAMILY_UNK1 = 1, // events, holidays + // 2 - unused + SPELLFAMILY_MAGE = 3, + SPELLFAMILY_WARRIOR = 4, + SPELLFAMILY_WARLOCK = 5, + SPELLFAMILY_PRIEST = 6, + SPELLFAMILY_DRUID = 7, + SPELLFAMILY_ROGUE = 8, + SPELLFAMILY_HUNTER = 9, + SPELLFAMILY_PALADIN = 10, + SPELLFAMILY_SHAMAN = 11, + SPELLFAMILY_UNK2 = 12, // 2 spells (silence resistance) + SPELLFAMILY_POTION = 13, + // 14 - unused + SPELLFAMILY_DEATHKNIGHT = 15, + // 16 - unused + SPELLFAMILY_PET = 17 +}; + diff --git a/DelayAction.xib b/DelayAction.xib new file mode 100644 index 0000000..17fad2d --- /dev/null +++ b/DelayAction.xib @@ -0,0 +1,1015 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + DelayActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{244, 3}, {56, 17}} + + YES + + 67239488 + 272630784 + seconds + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{103, 0}, {132, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 20.0 + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{32, 2}, {66, 17}} + + YES + + 67239488 + 272630784 + Delay for: + + + + + + + + + 268 + {{7, 0}, {21, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {317, 28} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + delayTextField + + + + 171 + + + + validateState: + + + + 172 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 166 + + + YES + + + + + + 167 + + + YES + + + + + + 168 + + + + + 169 + + + YES + + + + + + 170 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 166.IBPluginDependency + 167.IBPluginDependency + 168.IBNumberFormatterBehaviorMetadataKey + 168.IBNumberFormatterLocalizesFormatMetadataKey + 168.IBPluginDependency + 169.IBPluginDependency + 170.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{802, 625}, {317, 28}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 172 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + DelayActionController + ActionController + + delayTextField + NSTextField + + + IBProjectSource + DelayActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/DelayActionController.h b/DelayActionController.h new file mode 100644 index 0000000..3eaa0be --- /dev/null +++ b/DelayActionController.h @@ -0,0 +1,16 @@ +// +// DelayActionController.h +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface DelayActionController : ActionController { + IBOutlet NSTextField *delayTextField; +} + +@end diff --git a/DelayActionController.m b/DelayActionController.m new file mode 100644 index 0000000..c6d2a55 --- /dev/null +++ b/DelayActionController.m @@ -0,0 +1,50 @@ +// +// DelayActionController.m +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "DelayActionController.h" +#import "ActionController.h" + +@implementation DelayActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"DelayAction" owner: self]) { + log(LOG_GENERAL, @"Error loading DelayAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (void)setStateFromAction: (Action*)action{ + + [delayTextField setStringValue:[NSString stringWithFormat:@"%@", action.value]]; + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + NSNumber *delay = [NSNumber numberWithInt:[delayTextField intValue]]; + Action *action = [Action actionWithType:ActionType_Delay value:delay]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/DistanceCondition.xib b/DistanceCondition.xib new file mode 100644 index 0000000..e556ac4 --- /dev/null +++ b/DistanceCondition.xib @@ -0,0 +1,888 @@ + + + + 1050 + 9E17 + 629 + 949.33 + 352.00 + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + DistanceConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{351, 7}, {78, 22}} + + + YES + + -1804468671 + 138413056 + + + LucidaGrande + 1.300000e+01 + 1044 + + + + YES + + YES + allowsFloats + alwaysShowsDecimalSeparator + decimalSeparator + formatterBehavior + generatesDecimalNumbers + groupingSeparator + maximum + minimum + negativeFormat + numberStyle + positiveFormat + usesGroupingSeparator + + + YES + + + . + + + , + + + + + #,##0.0 + + + + + + + + + 0 + + YES + + YES + + + YES + + + + + + + + NaN + + + + + + + + YES + YES + YES + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + + textColor + + 3 + MAA + + + + + + + 268 + {{434, 10}, {39, 17}} + + + YES + + 67239488 + 272630784 + yards + + + + 6 + + controlColor + + 3 + MC42NjY2NjY2OQA + + + + 6 + + controlTextColor + + + + + + + 268 + {{7, 8}, {20, 19}} + + + YES + + 67239424 + 134217728 + + + + 1.200000e+01 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{32, 10}, {202, 17}} + + + YES + + 67239488 + 272630784 + VGFyZ2V0J3MgZGlzdGFuY2UgZnJvbSBQbGF5ZXIgaXM + + + + + + + + + 268 + {{236, 4}, {110, 26}} + + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + More Than + + 1048576 + 2147483647 + 1 + + + NSMenuCheckmark + + + + NSMenuMixedState + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + Exactly + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + Less Than + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + 1 + YES + YES + 2 + + + + {487, 36} + + + NSView + + + + + YES + + + view + + + + 17 + + + + valueText + + + + 21 + + + + validateState: + + + + 25 + + + + disableCondition: + + + + 36 + + + + disableButton + + + + 37 + + + + + + + + 38 + + + + comparatorPopUp + + + + 39 + + + + + YES + + 0 + + YES + + + + + + -2 + + + RmlsZSdzIE93bmVyA + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + + 3 + + + YES + + + + + + 12 + + + YES + + + + + + 14 + + + YES + + + + + + 15 + + + + + 16 + + + + + 26 + + + YES + + + + + + 27 + + + + + 28 + + + YES + + + + + + 29 + + + + + 30 + + + YES + + + + + + 31 + + + YES + + + + + + 32 + + + YES + + + + + + + + 33 + + + + + 34 + + + + + 35 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 12.IBPluginDependency + 14.IBPluginDependency + 15.IBPluginDependency + 16.IBPluginDependency + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 26.IBAttributePlaceholdersKey + 26.IBPluginDependency + 27.IBPluginDependency + 28.IBPluginDependency + 29.IBPluginDependency + 3.IBPluginDependency + 30.IBPluginDependency + 31.IBPluginDependency + 32.IBPluginDependency + 32.editorWindowContentRectSynchronizationRect + 33.IBAttributePlaceholdersKey + 33.IBPluginDependency + 34.IBAttributePlaceholdersKey + 34.IBPluginDependency + 35.IBAttributePlaceholdersKey + 35.IBPluginDependency + + + YES + + + + + + + + + {628, 654} + {{190, 364}, {487, 36}} + + ToolTip + + + + Disable this condition. + + + + + + + + + + + {{618, 206}, {142, 63}} + + + + + + + + + + + + + + + The same number + + + + + + + + + + + + + + + + YES + + YES + + + YES + + + + + YES + + YES + + + YES + + + + 39 + + + + YES + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + + + + + YES + + YES + _delegate + disableButton + view + + + YES + + NSButton + + + + + IBProjectSource + ConditionController.h + + + + DistanceConditionController + ConditionController + + YES + + YES + + + YES + + + + YES + + YES + comparatorPopUp + valueText + + + YES + NSPopUpButton + NSTextField + + + + + DistanceConditionController.h + + + + + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + Controller.h + + + + + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + BetterTableView.h + + + + + 0 + ../WoWWaypoint.xcodeproj + 3 + + YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA +AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxDHAAsADAAxADUANgA8AD0A +QQBFAFMAWwBrAHUACwB2AJkAoQCiAKUApgC7AMAAwQDGAMcAyADLAM8A0ADRANMA1ADaAOMA0ADkAO4A +0ADvAPMA9QD7AQIBAwEHAQwBFAEcAR0BLgEvAVEBbgFvAXABcQFyAXMBdAF1AXYBdwF4AXkBegCOAXsB +fABoAX4BfwGAAYEBhQGLAYwBkAGSAZUApQGYAZwBnQGgAaoBqwGsAbABsgG3AbgBuwG+AcEByQHKAdMB +1AHZAdoB3QHiAeMB6wHsAfkB/gICAgMCBQIHAg8CEAIXAhgACwEAAhkCHAIdAiICIwImAisCLAIxAjYC +NwI8Aj0CRAJFAkYCSQJOAlMCVAJZAm0CcAJxAnMChwKcArECsgKzArQCtQK2ArcCuAK5AroCuwK8Ar0C +vgK/AsACwQLCAsMCxgLJAukDCQMKAf0DCwDtAwwDDQMOAw8DEAMRAxIAigMTAxQDFQMWAxcDGAMZAxoD +GwMcAx0DHgMfAyADIQMiAyMDJgMpAyxVJG51bGzfEBIADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAa +ABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADBWTlNSb290ViRjbGFzc11O +U09iamVjdHNLZXlzXxAPTlNDbGFzc2VzVmFsdWVzXxAZTlNBY2Nlc3NpYmlsaXR5T2lkc1ZhbHVlc11O +U0Nvbm5lY3Rpb25zW05TTmFtZXNLZXlzW05TRnJhbWV3b3JrXU5TQ2xhc3Nlc0tleXNaTlNPaWRzS2V5 +c11OU05hbWVzVmFsdWVzXxAZTlNBY2Nlc3NpYmlsaXR5Q29ubmVjdG9yc11OU0ZvbnRNYW5hZ2VyXxAQ +TlNWaXNpYmxlV2luZG93c18QD05TT2JqZWN0c1ZhbHVlc18QF05TQWNjZXNzaWJpbGl0eU9pZHNLZXlz +WU5TTmV4dE9pZFxOU09pZHNWYWx1ZXOAAoDGgImAo4DFgAiAjoAFgKKApICPgMOAAIAGgI2AxBAtgKXS +AA4AMgAzADRbTlNDbGFzc05hbWWABIADXxAbRGlzdGFuY2VDb25kaXRpb25Db250cm9sbGVy0gA3ADgA +OQA6WCRjbGFzc2VzWiRjbGFzc25hbWWiADoAO15OU0N1c3RvbU9iamVjdFhOU09iamVjdF8QEElCQ29j +b2FGcmFtZXdvcmvSAA4APgA/AEBaTlMub2JqZWN0c4AHoNIANwA4AEIAQ6MAQwBEADtcTlNNdXRhYmxl +U2V0VU5TU2V00gAOAD4ARgBHgCarAEgASQBKAEsATABNAE4ATwBQAFEAUoAJgCyAd4B6gHyAfYB/gIGA +hYCGgIjUAA4AVABVAFYAVwBYAB8AWl1OU0Rlc3RpbmF0aW9uWE5TU291cmNlV05TTGFiZWyAK4AKgAKA +KtgAXAAOAF0AXgBfAGAAYQBiAGMAZABlAGYAZwBoAGkAY18QD05TTmV4dFJlc3BvbmRlcldOU0ZyYW1l +Vk5TQ2VsbFhOU3ZGbGFnc1lOU0VuYWJsZWRYTlNXaW5kb3dbTlNTdXBlcnZpZXeAC4ApgAyADhEBDAmA +DYAL2ABcAA4AbABfAG0AYQAyAGIAaQBvAHAAZwBxAGkAcwB0Wk5TU3Vidmlld3NbTlNGcmFtZVNpemWA +DYB1gC2AcoANgHSAc18QFXt7MjM2LCA0fSwgezExMCwgMjZ9fd8QEgB3AHgAeQB6AHsADgB8AH0AfgB/ +AIAAgQCCAIMAhACFAIYAhwCIAGgAigCLAIwAjQCOAIsAkACRAFgAjgBoAGgAlQCWAJcAmFtOU0NlbGxG +bGFnc18QGk5TTWVudUl0ZW1SZXNwZWN0QWxpZ25tZW50XxAPTlNBcnJvd1Bvc2l0aW9uXxATTlNBbHRl +cm5hdGVDb250ZW50c18QEk5TUGVyaW9kaWNJbnRlcnZhbF5OU0J1dHRvbkZsYWdzMl8QD05TS2V5RXF1 +aXZhbGVudFlOU1N1cHBvcnRaTlNNZW51SXRlbV1OU0NvbnRyb2xWaWV3XxAPTlNQcmVmZXJyZWRFZGdl +XxASTlNVc2VzSXRlbUZyb21NZW51XU5TQWx0ZXJzU3RhdGVfEA9OU1BlcmlvZGljRGVsYXlcTlNDZWxs +RmxhZ3MyVk5TTWVudV1OU0J1dHRvbkZsYWdzE/////+EQf5ACRACgBIQS4AoEAGAEoAPgBOACgkJEQGQ +EQgAgBQSBoJA/9QADgCaAJsAnACdAJ4AnwCgVk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OAESNAKgAAAAAA +AIAQEQQUXEx1Y2lkYUdyYW5kZdIANwA4AKMApKIApAA7Vk5TRm9udFDcAKcADgCoAKkAqgCrAKwArQCG +AK4ArwCwAGYAsgCzALQAiwC2ALcAuACXALoAjgCOWE5TVGFyZ2V0V05TVGl0bGVfEBFOU0tleUVxdWl2 +TW9kTWFza1pOU0tleUVxdWl2XU5TTW5lbW9uaWNMb2NZTlNPbkltYWdlXE5TTWl4ZWRJbWFnZVhOU0Fj +dGlvblVOU1RhZ1dOU1N0YXRlgA6AHYAVEgAQAACAEhJ/////gBaAGoAUgBzTAA4AqAC8AL0AvgC/W05T +TWVudUl0ZW1zgCeAHoAfWU1vcmUgVGhhbtMADgAyAMIAwwDEAMVeTlNSZXNvdXJjZU5hbWWAGYAXgBhX +TlNJbWFnZV8QD05TTWVudUNoZWNrbWFya9IANwA4AMkAyqIAygA7XxAQTlNDdXN0b21SZXNvdXJjZdMA +DgAyAMIAwwDEAM6AGYAXgBtfEBBOU01lbnVNaXhlZFN0YXRlXxARX3BvcFVwSXRlbUFjdGlvbjrSADcA +OADSAH+iAH8AO1pPdGhlclZpZXdz0gAOAD4ARgDWgCajAJEA2ADZgBOAIIAj2wCnAA4AqACpAKoAqwCs +AK0AhgCuAK8AZgCyAN0AtACLALYAtwC4AJcA4gCKgA6AHYAhgBKAFoAagBSAIldFeGFjdGx52wCnAA4A +qACpAKoAqwCsAK0AhgCuAK8AZgCyAOcAtACLALYAtwC4AJcA7ADtgA6AHYAkgBKAFoAagBSAJRADWUxl +c3MgVGhhbtIANwA4APAA8aMA8QDyADteTlNNdXRhYmxlQXJyYXlXTlNBcnJhedIANwA4APQAhqIAhgA7 +0gA3ADgA9gD3pgD3APgA+QD6AF4AO18QEU5TUG9wVXBCdXR0b25DZWxsXk5TTWVudUl0ZW1DZWxsXE5T +QnV0dG9uQ2VsbFxOU0FjdGlvbkNlbGzSADcAOAD8AP2mAP0A/gD/AQABAQA7XU5TUG9wVXBCdXR0b25Y +TlNCdXR0b25ZTlNDb250cm9sVk5TVmlld1tOU1Jlc3BvbmRlcl8QD2NvbXBhcmF0b3JQb3BVcNIANwA4 +AQQBBaMBBQEGADtfEBROU05pYk91dGxldENvbm5lY3Rvcl5OU05pYkNvbm5lY3RvctQADgBUAFUAVgBX +AGMAHwELgCuAC4ACgHbSAA4APgBGAQ6AJqUBDwEQAREBEgBYgC6AXYBmgG6ACtgAXAAOAF0AXgBfAGAA +YQBiAGMBFgEXARgAZwBoAGkAY4ALgFyAL4AwCYANgAtfEBR7ezM1MSwgN30sIHs3OCwgMjJ9fdsAdwAO +AR4BHwB+AIABIACFASEBIgEjASQBJQEmAScAkAEPASoBKwCOAGgBLV8QEU5TQmFja2dyb3VuZENvbG9y +Wk5TQ29udGVudHNbTlNGb3JtYXR0ZXJfEBBOU1RleHRCZXplbFN0eWxlXxARTlNEcmF3c0JhY2tncm91 +bmRbTlNUZXh0Q29sb3IT/////5Rx/kGAW4BTgDGAD4AugDISCEAEAAmAWCNAJAAAAAAAAN8QEQAOATAB +MQEyATMBNAE1ATYBNwE4ATkBOgE7ATwBPQE+AT8BQAFBAUIBQwArAUUAKwFHAUgBSQBoAIsAKwFNAU4A +aABoVk5TLm5pbFpOUy5kZWNpbWFsVk5TLm5hbltOUy5yb3VuZGluZ1dOUy56ZXJvXxAQTlMubmVnYXRp +dmVhdHRyc1ZOUy5tYXhdTlMuYXR0cmlidXRlc18QEU5TLnBvc2l0aXZlZm9ybWF0XxAPTlMuYWxsb3dz +ZmxvYXRzXxARTlMubmVnYXRpdmVmb3JtYXRfEBBOUy5wb3NpdGl2ZWF0dHJzW05TLnRob3VzYW5kVk5T +Lm1pblxOUy5sb2NhbGl6ZWRfEA9OUy5oYXN0aG91c2FuZHOAUoBOgEWAUIAAgEmAAIBCgDOAQwmAEoAA +gEeAQAkJ0wAOAVIAPgFTAVQBYVdOUy5rZXlzgEisAVUBVgFXAVgBWQFaAVsBXAFdAV4BXwFggDSANYA2 +gDeAOIA5gDqAO4A8gD2APoA/rAFOAWMBTgFjAUcAiwFJAWkBQgFrAU4BTYBAgEGAQIBBgEKAEoBDgESA +RYBGgECAR18QF2dlbmVyYXRlc0RlY2ltYWxOdW1iZXJzW251bWJlclN0eWxlV21pbmltdW1cYWxsb3dz +RmxvYXRzV21heGltdW1ebmVnYXRpdmVGb3JtYXRecG9zaXRpdmVGb3JtYXRfEBV1c2VzR3JvdXBpbmdT +ZXBhcmF0b3JfEBBkZWNpbWFsU2VwYXJhdG9yXxARZm9ybWF0dGVyQmVoYXZpb3JfEBthbHdheXNTaG93 +c0RlY2ltYWxTZXBhcmF0b3JfEBFncm91cGluZ1NlcGFyYXRvchAAI0BZAAAAAAAAVyMsIyMwLjAJUS4R +A+hRLNIANwA4AYIBg6MBgwGEADtfEBNOU011dGFibGVEaWN0aW9uYXJ5XE5TRGljdGlvbmFyedMADgGG +AYcBiAGJAYpcTlNBdHRyaWJ1dGVzWE5TU3RyaW5ngE2AS4BKUTDTAA4BUgA+AY0BjgGPgEygoNIANwA4 +AZEBhKIBhAA70gA3ADgBkwGUogGUADtfEBJOU0F0dHJpYnV0ZWRTdHJpbmfSAA4BhwGIAZeATYBP0wAO +AYYBhwGIAYkBm4BNgEuAUVNOYU7SADcAOAGeAZ+jAZ8BIAA7XxARTlNOdW1iZXJGb3JtYXR0ZXLVAA4B +oQGiAaMBpAGlAaYBpwGoAalXTlNDb2xvclxOU0NvbG9yU3BhY2VbTlNDb2xvck5hbWVdTlNDYXRhbG9n +TmFtZYBXgFYQBoBVgFRWU3lzdGVtXxATdGV4dEJhY2tncm91bmRDb2xvctMADgGiAa0BpQDtAa9XTlNX +aGl0ZYBXQjEA0gA3ADgBsQGhogGhADvVAA4BoQGiAaMBpAGlAbQBpwG1AamAV4BagFmAVFl0ZXh0Q29s +b3LTAA4BogGtAaUA7QG6gFdCMADSADcAOAG8Ab2kAb0A+gBeADtfEA9OU1RleHRGaWVsZENlbGzSADcA +OAG/AcClAcAA/wEAAQEAO1tOU1RleHRGaWVsZNgAXAAOAF0AXgBfAGAAYQBiAGMBFgHEAcUAZwBoAGkA +Y4ALgFyAXoBfCYANgAtfEBV7ezQzNCwgMTB9LCB7MzksIDE3fX3YAHcADgEeAR8AfgCAAIUBIwHLASUB +zQHOAJABEAHRAdISBAH+QIBbgGGAYIAPgF0SEEAEAIBkVXlhcmRz1QAOAaEBogGjAaQBpQHWAacB1wGp +gFeAY4BigFRcY29udHJvbENvbG9y0wAOAaIBrQGlAO0B3IBXSzAuNjY2NjY2NjkA1QAOAaEBogGjAaQB +pQG0AacB4AGpgFeAWoBlgFRfEBBjb250cm9sVGV4dENvbG9y2ABcAA4AXQBeAF8AYABhAGIAYwHlAeYB +5wBnAGgAaQBjgAuAbYBngGgJgA2AC18QEnt7NywgOH0sIHsyMCwgMTl9fd0AdwAOAHoB7QB7AHwAfQEf +AH4AgACEAIUAhwHuAe8AiwHxAIwB8gCLAIsB9QERAJUB9wH4XU5TTm9ybWFsSW1hZ2USBAH+AIBsgBKA +ahCtgBKAEoBpgGYSCAAAABP/////tvRA/9QADgCaAJsAnACdAfsAnwH9gBEjQCgAAAAAAACAEBAQ0wAO +ADIAwgDDAMQCAYAZgBeAa18QFk5TU3RvcFByb2dyZXNzVGVtcGxhdGXSADcAOAIEAPmkAPkA+gBeADvS +ADcAOAIGAP6lAP4A/wEAAQEAO9gAXAAOAF0AXgBfAGAAYQBiAGMBFgIKAgsAZwBoAGkAY4ALgFyAb4Bw +CYANgAtfEBV7ezMyLCAxMH0sIHsyMDIsIDE3fX3YAHcADgEeAR8AfgCAAIUBIwHLASUBzQITAJABEgHR +AdKAW4BhgHGAD4BugGRfECBUYXJnZXQncyBkaXN0YW5jZSBmcm9tIFBsYXllciBpc1l7NDg3LCAzNn3S +ADcAOAIaAhukAhsBAAEBADtcTlNDdXN0b21WaWV3VHZpZXfUAA4AVABVAFYCHgAfAFgCIYB5gAKACoB4 +XnZhbGlkYXRlU3RhdGU60gA3ADgCJAIlowIlAQYAO18QFU5TTmliQ29udHJvbENvbm5lY3RvctQADgBU +AFUAVgIeAB8BEQIqgHmAAoBmgHtfEBFkaXNhYmxlQ29uZGl0aW9uOtQADgBUAFUAVgIeAB8BDwIhgHmA +AoAugHjUAA4AVABVAFYAVwEPAB8CNYArgC6AAoB+WXZhbHVlVGV4dNQADgBUAFUAVgBXAREAHwI7gCuA +ZoACgIBdZGlzYWJsZUJ1dHRvbtQADgBUAj4CPwJAARECQgJDWE5TTWFya2VyVk5TRmlsZYCEgGaAg4CC +XxAQTlNUb29sVGlwSGVscEtleV8QF0Rpc2FibGUgdGhpcyBjb25kaXRpb24u0gA3ADgCRwJIogJIADtf +EBFOU0lCSGVscENvbm5lY3RvctQADgBUAj4CPwJAANkA5wJDgISAI4AkgILUAA4AVAI+Aj8CQADYAlEC +Q4CEgCCAh4CCXxAPVGhlIHNhbWUgbnVtYmVy1AAOAFQCPgI/AkAAkQCzAkOAhIATgBWAgtIADgA+AloC +W4CMrxARARIBKgBmAJcBDwDYAcUCCwDZAREAkQBYARgCaQBjARAB54BugDKADoAUgC6AIIBfgHCAI4Bm +gBOACoAwgIqAC4BdgGjSAA4AMgAzAm+ABICLXU5TQXBwbGljYXRpb27SADcAOAJyAPKiAPIAO9IADgA+ +AloCdYCMrxARAGMBGABYAGYAYwCXARABEgCXAGMAlwBjAQ8AHwAfAGMBEYALgDCACoAOgAuAFIBdgG6A +FIALgBSAC4AugAKAAoALgGbSAA4APgJaAomAjK8QEgESASoAZgCXAQ8A2AHFAgsA2QERAJEAWAEYAmkA +HwBjARAB54BugDKADoAUgC6AIIBfgHCAI4BmgBOACoAwgIqAAoALgF2AaNIADgA+AloCnoCMrxASAp8C +oAKhAqICowKkAqUCpgKnAqgCqQKqAqsCrAKtAq4CrwKwgJCAkYCSgJOAlICVgJaAl4CYgJmAmoCbgJyA +nYCegJ+AoIChXxAuU3RhdGljIFRleHQgKFRhcmdldCdzIGRpc3RhbmNlIGZyb20gUGxheWVyIGlzKV8Q +EE51bWJlciBGb3JtYXR0ZXJfEB5Qb3AgVXAgQnV0dG9uIENlbGwgKE1vcmUgVGhhbilfEBFNZW51IChP +dGhlclZpZXdzKV8QGVJvdW5kZWQgVGV4dCBGaWVsZCAoMTAuMClfEBNNZW51IEl0ZW0gKEV4YWN0bHkp +XxAXVGV4dCBGaWVsZCBDZWxsICh5YXJkcylfEDJUZXh0IEZpZWxkIENlbGwgKFRhcmdldCdzIGRpc3Rh +bmNlIGZyb20gUGxheWVyIGlzKV8QFU1lbnUgSXRlbSAoTGVzcyBUaGFuKV8QKFJlY2Vzc2VkIEJ1dHRv +biAoTlNTdG9wUHJvZ3Jlc3NUZW1wbGF0ZSlfEBVNZW51IEl0ZW0gKE1vcmUgVGhhbilfEBhQb3B1cCBC +dXR0b24gKE1vcmUgVGhhbilfEBZUZXh0IEZpZWxkIENlbGwgKDEwLjApW0FwcGxpY2F0aW9uXEZpbGUn +cyBPd25lcltDdXN0b20gVmlld18QE1N0YXRpYyBUZXh0ICh5YXJkcylfECRCdXR0b24gQ2VsbCAoTlNT +dG9wUHJvZ3Jlc3NUZW1wbGF0ZSnSAA4APgJaAsWAjKDSAA4APgJaAsiAjKDSAA4APgJaAsuAjK8QHQES +AE8BKgCXAQ8A2AHFAFEASwBSARgCaQBjAecATQBmAEwCCwDZAFABEQCRAEgAWABJAB8BEABOAEqAboCB +gDKAFIAugCCAX4CGgHqAiIAwgIqAC4BogH2ADoB8gHCAI4CFgGaAE4AJgAqALIACgF2Af4B30gAOAD4C +WgLrgIyvEB0C7ALtAu4C7wLwAvEC8gLzAvQC9QL2AvcC+AL5AvoC+wL8Av0C/gL/AwADAQMCAwMDBAMF +AwYDBwMIgKaAp4CogKmAqoCrgKyArYCugK+AsICxgLKAs4C0gLWAtoC3gLiAuYC6gLuAvIC9gL6Av4DA +gMGAwhAcECkQIBAiEA8QKxAkECwQDBP//////////RAbEBUQHxAZEB0QIRAqEBoQIxAnEB4QERAoEA4Q +JRAm0gAOAD4ARgMlgCag0gAOAD4CWgMogIyg0gAOAD4CWgMrgIyg0gA3ADgDLQMuogMuADteTlNJQk9i +amVjdERhdGEACAAZACIAJwAxADoAPwBEAFIAVABmAfcB/QJIAk8CVgJkAnYCkgKgAqwCuALGAtEC3wL7 +AwkDHAMuA0gDUgNfA2EDYwNlA2cDaQNrA20DbwNxA3MDdQN3A3kDewN9A38DgQODA4wDmAOaA5wDugPD +A8wD1wPcA+sD9AQHBBAEGwQdBB4EJwQuBDsEQQRKBEwEYwRlBGcEaQRrBG0EbwRxBHMEdQR3BHkEigSY +BKEEqQSrBK0ErwSxBNIE5ATsBPME/AUGBQ8FGwUdBR8FIQUjBSYFJwUpBSsFTAVXBWMFZQVnBWkFawVt +BW8FcQWJBdQF4AX9Bg8GJQY6BkkGWwZlBnAGfgaQBqUGswbFBtIG2QbnBvAG8QbzBvUG9wb5BvsG/Qb/ +BwEHAwcEBwUHCAcLBw0HEgcjByoHMQc6BzwHRQdHB0oHVwdgB2UHbAdtB54HpwevB8MHzgfcB+YH8wf8 +CAIICggMCA4IEAgVCBcIHAgeCCAIIggkCDEIPQg/CEEIQwhNCFoIaQhrCG0Ibwh3CIkIkgiXCKoItwi5 +CLsIvQjQCOQI7QjyCP0JBgkICQ8JEQkTCRUJQglECUYJSAlKCUwJTglQCVIJWgmHCYkJiwmNCY8JkQmT +CZUJlwmZCaMJrAmzCcIJygnTCdgJ4QnuCgIKEQoeCisKNApBCk8KWApiCmkKdQqHCpAKlwquCr0KzgrQ +CtIK1ArWCt8K4QrsCu4K8AryCvQK9gsXCxkLGwsdCx8LIAsiCyQLOwtoC3wLhwuTC6YLugvGC88L0QvT +C9UL1wvZC9sL4AvhC+ML7AwzDDoMRQxMDFgMYAxzDHoMiAycDK4MwgzVDOEM6Az1DQcNCQ0LDQ0NDw0R +DRMNFQ0XDRkNGw0cDR4NIA0iDSQNJQ0mDTMNOw09DVYNWA1aDVwNXg1gDWINZA1mDWgNag1sDW4Nhw2J +DYsNjQ2PDZENkw2VDZcNmQ2bDZ0Nnw25DcUNzQ3aDeIN8Q4ADhgOKw4/Dl0OcQ5zDnwOhA6FDocOig6M +DpUOnA6yDr8OzA7ZDuIO5A7mDugO6g73DvkO+g77DwQPCQ8SDxcPLA81DzcPOQ9GD0gPSg9MD1APWQ9g +D3QPiQ+RD54Pqg+4D7oPvA++D8APwg/JD98P7A/0D/YP+RACEAcQHBAeECAQIhAkEC4QOxA9EEAQSRBS +EGQQbRB4EIQQpRCnEKkQqxCtEK4QsBCyEMoQ6xDwEPIQ9BD2EPgQ+hD/EQERBxEcER4RIBEiESQRMRE+ +EUARTBFhEWMRZRFnEWkRfBGdEZ8RoRGjEaURphGoEaoRvxH0EgISBxIJEgsSDRIPEhESExIVEhcSHBIl +EjYSOBJBEkMSRRJSElQSVhJYEnESehKDEowSlxK4EroSvBK+EsASwRLDEsUS3RL+EwATAhMEEwYTCBMK +Ey0TNxNAE0kTVhNbE2wTbhNwE3ITdBODE4wTkxOrE7wTvhPAE8ITxBPYE+kT6xPtE+8T8RQCFAQUBhQI +FAoUFBQlFCcUKRQrFC0UOxRMFFUUXBReFGAUYhRkFHcUkRSaFJ8UsxTEFMYUyBTKFMwU3RTfFOEU4xTl +FPcVCBUKFQwVDhUQFRkVGxVAFUIVRBVGFUgVShVMFU4VUBVSFVQVVhVYFVoVXBVeFWAVYhVrFW0VbxV9 +FYYVixWUFZYVuxW9Fb8VwRXDFcUVxxXJFcsVzRXPFdEV0xXVFdcV2RXbFd0V5hXoFg8WERYTFhUWFxYZ +FhsWHRYfFiEWIxYlFicWKRYrFi0WLxYxFjMWPBY+FmUWZxZpFmsWbRZvFnEWcxZ1FncWeRZ7Fn0WfxaB +FoMWhRaHFokWuhbNFu4XAhceFzQXTheDF5sXxhfeF/kYEhgeGCsYNxhNGHQYfRh/GIAYiRiLGIwYlRiX +GNQY1hjYGNoY3BjeGOAY4hjkGOYY6BjqGOwY7hjwGPIY9Bj2GPgY+hj8GP4ZABkCGQQZBhkIGQoZDBkO +GRcZGRlWGVgZWhlcGV4ZYBliGWQZZhloGWoZbBluGXAZchl0GXYZeBl6GXwZfhmAGYIZhBmGGYgZihmM +GY4ZkBmSGZQZlhmYGZoZnBmeGaAZohmrGa0ZrxmxGbMZtRm3GbkZuxm9Gb8ZwRnDGcUZxxnJGcsZ1BnW +GdcZ4BniGeMZ7BnuGe8Z+Bn9AAAAAAAAAgIAAAAAAAADLwAAAAAAAAAAAAAAAAAAGgw + + + diff --git a/DistanceConditionController.h b/DistanceConditionController.h new file mode 100644 index 0000000..9b4bdce --- /dev/null +++ b/DistanceConditionController.h @@ -0,0 +1,23 @@ +// +// DistanceConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/18/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface DistanceConditionController : ConditionController { + //IBOutlet BetterSegmentedControl *unitSegment; + //IBOutlet BetterSegmentedControl *qualitySegment; + //IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSPopUpButton *comparatorPopUp; + + IBOutlet NSTextField *valueText; +} + +@end diff --git a/DistanceConditionController.m b/DistanceConditionController.m new file mode 100644 index 0000000..4d03afb --- /dev/null +++ b/DistanceConditionController.m @@ -0,0 +1,69 @@ +// +// DistanceConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/18/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "DistanceConditionController.h" +#import "ConditionController.h" +#import "BetterSegmentedControl.h" + + +@implementation DistanceConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"DistanceCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading DistanceCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + //[qualitySegment selectSegmentWithTag: QualityDistance]; +} + +- (Condition*)condition { + [self validateState: nil]; + + id value = [NSNumber numberWithFloat: [valueText floatValue]]; + + Condition *condition = [Condition conditionWithVariety: VarietyDistance + unit: UnitTarget + quality: QualityDistance + comparator: [[comparatorPopUp selectedItem] tag] + state: StateNone + type: TypeNone + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyDistance) return; + + //[unitSegment selectSegmentWithTag: [condition unit]]; + //[qualitySegment selectSegmentWithTag: [condition quality]]; + //[comparatorSegment selectSegmentWithTag: [condition comparator]]; + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareMore]; + } + + if( [condition value] ) + [valueText setStringValue: [[condition value] stringValue]]; + else + [valueText setStringValue: @"10.0"]; +} + +@end diff --git a/Draenei-Female.png b/Draenei-Female.png new file mode 100644 index 0000000..1066f97 Binary files /dev/null and b/Draenei-Female.png differ diff --git a/Draenei-Female_Small.gif b/Draenei-Female_Small.gif new file mode 100644 index 0000000..74adbd9 Binary files /dev/null and b/Draenei-Female_Small.gif differ diff --git a/Draenei-Male.png b/Draenei-Male.png new file mode 100644 index 0000000..9c972e1 Binary files /dev/null and b/Draenei-Male.png differ diff --git a/Draenei-Male_Small.gif b/Draenei-Male_Small.gif new file mode 100644 index 0000000..6f743be Binary files /dev/null and b/Draenei-Male_Small.gif differ diff --git a/Druid.png b/Druid.png new file mode 100644 index 0000000..9c54242 Binary files /dev/null and b/Druid.png differ diff --git a/Druid_Small.gif b/Druid_Small.gif new file mode 100644 index 0000000..c0d5757 Binary files /dev/null and b/Druid_Small.gif differ diff --git a/DurabilityCondition.xib b/DurabilityCondition.xib new file mode 100644 index 0000000..dc5b043 --- /dev/null +++ b/DurabilityCondition.xib @@ -0,0 +1,1098 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + DurabilityConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{195, 6}, {86, 24}} + + YES + + -2080244224 + 0 + + LucidaGrande + 13 + 1044 + + + + YES + + 26 + > + 1 + 0 + + + 26 + = + 2 + 0 + + + 26 + < + 3 + YES + 0 + + + 2 + 1 + + + + + 268 + {{353, 10}, {13, 17}} + + YES + + 68288064 + 272630784 + % + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{32, 10}, {160, 17}} + + YES + + 68288064 + 272630784 + Players total durability is + + + + + + + + + 268 + {{287, 7}, {61, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + YES + YES + YES + + 10 + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {383, 36} + + NSView + + + + + YES + + + view + + + + 62 + + + + validateState: + + + + 66 + + + + disableButton + + + + 102 + + + + comparatorSegment + + + + 105 + + + + quantityText + + + + 106 + + + + validateState: + + + + 107 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + 16 + + + YES + + + + + + 17 + + + YES + + + + + + 68 + + + + + 83 + + + YES + + + + + + 86 + + + + + 92 + + + YES + + + + + + 93 + + + + + 100 + + + YES + + + + + + 101 + + + + + 103 + + + YES + + + + + + 104 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -2.showNotes + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 100.IBPluginDependency + 101.IBPluginDependency + 103.CustomClassName + 103.IBPluginDependency + 104.IBPluginDependency + 16.IBPluginDependency + 17.IBPluginDependency + 68.IBNumberFormatterBehaviorMetadataKey + 68.IBNumberFormatterLocalizesFormatMetadataKey + 68.IBPluginDependency + 83.IBAttributePlaceholdersKey + 83.IBPluginDependency + 86.IBPluginDependency + 92.IBPluginDependency + 93.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{394, 422}, {383, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{189, 314}, {582, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 107 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + ConditionController + NSObject + + IBUserSource + + + + + DurabilityConditionController + ConditionController + + YES + + YES + comparatorSegment + quantityText + + + YES + BetterSegmentedControl + NSTextField + + + + IBProjectSource + DurabilityConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/DurabilityConditionController.h b/DurabilityConditionController.h new file mode 100644 index 0000000..256272d --- /dev/null +++ b/DurabilityConditionController.h @@ -0,0 +1,19 @@ +// +// DurabilityConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface DurabilityConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *quantityText; +} + +@end diff --git a/DurabilityConditionController.m b/DurabilityConditionController.m new file mode 100644 index 0000000..fecab2e --- /dev/null +++ b/DurabilityConditionController.m @@ -0,0 +1,59 @@ +// +// DurabilityConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "DurabilityConditionController.h" +#import "ConditionController.h" +#import "Condition.h" + +#import "BetterSegmentedControl.h" + +@implementation DurabilityConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"DurabilityCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading DurabilityCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyDurability + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeValue + value: [NSNumber numberWithInt:[quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyDurability) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + +@end diff --git a/Dwarf-Female.png b/Dwarf-Female.png new file mode 100644 index 0000000..f6c90b7 Binary files /dev/null and b/Dwarf-Female.png differ diff --git a/Dwarf-Female_Small.gif b/Dwarf-Female_Small.gif new file mode 100644 index 0000000..a5794d3 Binary files /dev/null and b/Dwarf-Female_Small.gif differ diff --git a/Dwarf-Male.png b/Dwarf-Male.png new file mode 100644 index 0000000..c232616 Binary files /dev/null and b/Dwarf-Male.png differ diff --git a/Dwarf-Male_Small.gif b/Dwarf-Male_Small.gif new file mode 100644 index 0000000..7ccdce5 Binary files /dev/null and b/Dwarf-Male_Small.gif differ diff --git a/English.lproj/.svn/all-wcprops b/English.lproj/.svn/all-wcprops new file mode 100644 index 0000000..55811ec --- /dev/null +++ b/English.lproj/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 37 +/svn/!svn/ver/445/trunk/English.lproj +END +InfoPlist.strings +K 25 +svn:wc:ra_dav:version-url +V 55 +/svn/!svn/ver/445/trunk/English.lproj/InfoPlist.strings +END +Gathering.plist +K 25 +svn:wc:ra_dav:version-url +V 53 +/svn/!svn/ver/445/trunk/English.lproj/Gathering.plist +END diff --git a/English.lproj/.svn/entries b/English.lproj/.svn/entries new file mode 100644 index 0000000..c79b0ed --- /dev/null +++ b/English.lproj/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/English.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +InfoPlist.strings +file + + + + +2010-04-24T16:43:04.000000Z +5fe7585b80f50343b7b7d36588472f8b +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +216 + +Gathering.plist +file + + + + +2010-04-24T16:43:04.000000Z +ee6e6e40550f19872d80b9959261c28c +2009-02-07T22:30:04.324032Z +12 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +11661 + diff --git a/English.lproj/.svn/prop-base/InfoPlist.strings.svn-base b/English.lproj/.svn/prop-base/InfoPlist.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/English.lproj/.svn/prop-base/InfoPlist.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/English.lproj/.svn/text-base/Gathering.plist.svn-base b/English.lproj/.svn/text-base/Gathering.plist.svn-base new file mode 100644 index 0000000..d1e0d25 --- /dev/null +++ b/English.lproj/.svn/text-base/Gathering.plist.svn-base @@ -0,0 +1,579 @@ + + + + + Herbalism + + Firethorn + + Type + Herbalism + Skill + 360 + + Goldclover + + Type + Herbalism + Skill + 350 + + Frost Lotus + + Type + Herbalism + Skill + 450 + + Icethorn + + Type + Herbalism + Skill + 435 + + Lichbloom + + Type + Herbalism + Skill + 425 + + Adder's Tongue + + Type + Herbalism + Skill + 400 + + Frozen Herb + + Type + Herbalism + Skill + 400 + + Tiger Lily + + Type + Herbalism + Skill + 400 + + Talandra's Rose + + Type + Herbalism + Skill + 385 + + Purple Lotus + + Type + Herbalism + Skill + 210 + + Arthas' Tears + + Type + Herbalism + Skill + 220 + + Sungrass + + Type + Herbalism + Skill + 230 + + Blindweed + + Type + Herbalism + Skill + 235 + + Ghost Mushroom + + Type + Herbalism + Skill + 245 + + Gromsblood + + Type + Herbalism + Skill + 250 + + Silverleaf + + Type + Herbalism + Skill + 1 + + Peacebloom + + Type + Herbalism + Skill + 1 + + Earthroot + + Type + Herbalism + Skill + 15 + + Mageroyal + + Type + Herbalism + Skill + 50 + + Briarthorn + + Type + Herbalism + Skill + 70 + + Bruiseweed + + Type + Herbalism + Skill + 100 + + Wild Steelbloom + + Type + Herbalism + Skill + 115 + + Kingsblood + + Type + Herbalism + Skill + 125 + + Grave Moss + + Type + Herbalism + Skill + 120 + + Golden Sansam + + Type + Herbalism + Skill + 260 + + Dreamfoil + + Type + Herbalism + Skill + 270 + + Mountain Silversage + + Type + Herbalism + Skill + 280 + + Plaguebloom + + Type + Herbalism + Skill + 285 + + Icecap + + Type + Herbalism + Skill + 290 + + Black Lotus + + Type + Herbalism + Skill + 300 + + Bloodthistle + + Type + Herbalism + Skill + 1 + + Felweed + + Type + Herbalism + Skill + 300 + + Dreaming Glory + + Type + Herbalism + Skill + 315 + + Ragveil + + Type + Herbalism + Skill + 325 + + Flame Cap + + Type + Herbalism + Skill + 335 + + Terocone + + Type + Herbalism + Skill + 325 + + Ancient Lichen + + Type + Herbalism + Skill + 340 + + Netherbloom + + Type + Herbalism + Skill + 350 + + Nightmare Vine + + Type + Herbalism + Skill + 365 + + Mana Thistle + + Type + Herbalism + Skill + 375 + + Netherdust Bush + + Type + Herbalism + Skill + 350 + + Liferoot + + Type + Herbalism + Skill + 150 + + Fadeleaf + + Type + Herbalism + Skill + 160 + + Khadgar's Whisker + + Type + Herbalism + Skill + 185 + + Wintersbite + + Type + Herbalism + Skill + 195 + + Stranglekelp + + Type + Herbalism + Skill + 85 + + Goldthorn + + Type + Herbalism + Skill + 170 + + Firebloom + + Type + Herbalism + Skill + 205 + + + Mining + + Titanium Vein + + Type + Mining + Skill + 450 + + Rich Saronite Deposit + + Type + Mining + Skill + 425 + + Rich Cobalt Deposit + + Type + Mining + Skill + 375 + + Cobalt Deposit + + Type + Mining + Skill + 350 + + Ooze Covered Truesilver Deposit + + Type + Mining + Skill + 230 + + Ooze Covered Mithril Deposit + + Type + Mining + Skill + 175 + + Ooze Covered Thorium Vein + + Type + Mining + Skill + 245 + + Incendicite Mineral Vein + + Type + Mining + Skill + 65 + + Dark Iron Deposit + + Type + Mining + Skill + 230 + + Copper Vein + + Type + Mining + Skill + 1 + + Tin Vein + + Type + Mining + Skill + 65 + + Silver Vein + + Type + Mining + Skill + 75 + + Gold Vein + + Type + Mining + Skill + 155 + + Iron Deposit + + Type + Mining + Skill + 125 + + Rich Thorium Vein + + Type + Mining + Skill + 275 + + Ooze Covered Rich Thorium Vein + + Type + Mining + Skill + 275 + + Hakkari Thorium Vein + + Type + Mining + Skill + 275 + + Small Obsidian Chunk + + Type + Mining + Skill + 305 + + Large Obsidian Chunk + + Type + Mining + Skill + 305 + + Fel Iron Deposit + + Type + Mining + Skill + 300 + + Adamantite Deposit + + Type + Mining + Skill + 325 + + Khorium Vein + + Type + Mining + Skill + 375 + + Rich Adamantite Deposit + + Type + Mining + Skill + 350 + + Ancient Gem Vein + + Type + Mining + Skill + 375 + + Nethercite Deposit + + Type + Mining + Skill + 350 + + Indurium Mineral Vein + + Type + Mining + Skill + 150 + + Mithril Deposit + + Type + Mining + Skill + 175 + + Truesilver Deposit + + Type + Mining + Skill + 230 + + Lesser Bloodstone Deposit + + Type + Mining + Skill + 75 + + Small Thorium Vein + + Type + Mining + Skill + 245 + + Ooze Covered Silver Vein + + Type + Mining + Skill + 75 + + Ooze Covered Gold Vein + + Type + Mining + Skill + 155 + + Saronite Deposit + + Type + Mining + Skill + 400 + + + + diff --git a/English.lproj/.svn/text-base/InfoPlist.strings.svn-base b/English.lproj/.svn/text-base/InfoPlist.strings.svn-base new file mode 100644 index 0000000..6c6705b Binary files /dev/null and b/English.lproj/.svn/text-base/InfoPlist.strings.svn-base differ diff --git a/English.lproj/Gathering.plist b/English.lproj/Gathering.plist new file mode 100644 index 0000000..d1e0d25 --- /dev/null +++ b/English.lproj/Gathering.plist @@ -0,0 +1,579 @@ + + + + + Herbalism + + Firethorn + + Type + Herbalism + Skill + 360 + + Goldclover + + Type + Herbalism + Skill + 350 + + Frost Lotus + + Type + Herbalism + Skill + 450 + + Icethorn + + Type + Herbalism + Skill + 435 + + Lichbloom + + Type + Herbalism + Skill + 425 + + Adder's Tongue + + Type + Herbalism + Skill + 400 + + Frozen Herb + + Type + Herbalism + Skill + 400 + + Tiger Lily + + Type + Herbalism + Skill + 400 + + Talandra's Rose + + Type + Herbalism + Skill + 385 + + Purple Lotus + + Type + Herbalism + Skill + 210 + + Arthas' Tears + + Type + Herbalism + Skill + 220 + + Sungrass + + Type + Herbalism + Skill + 230 + + Blindweed + + Type + Herbalism + Skill + 235 + + Ghost Mushroom + + Type + Herbalism + Skill + 245 + + Gromsblood + + Type + Herbalism + Skill + 250 + + Silverleaf + + Type + Herbalism + Skill + 1 + + Peacebloom + + Type + Herbalism + Skill + 1 + + Earthroot + + Type + Herbalism + Skill + 15 + + Mageroyal + + Type + Herbalism + Skill + 50 + + Briarthorn + + Type + Herbalism + Skill + 70 + + Bruiseweed + + Type + Herbalism + Skill + 100 + + Wild Steelbloom + + Type + Herbalism + Skill + 115 + + Kingsblood + + Type + Herbalism + Skill + 125 + + Grave Moss + + Type + Herbalism + Skill + 120 + + Golden Sansam + + Type + Herbalism + Skill + 260 + + Dreamfoil + + Type + Herbalism + Skill + 270 + + Mountain Silversage + + Type + Herbalism + Skill + 280 + + Plaguebloom + + Type + Herbalism + Skill + 285 + + Icecap + + Type + Herbalism + Skill + 290 + + Black Lotus + + Type + Herbalism + Skill + 300 + + Bloodthistle + + Type + Herbalism + Skill + 1 + + Felweed + + Type + Herbalism + Skill + 300 + + Dreaming Glory + + Type + Herbalism + Skill + 315 + + Ragveil + + Type + Herbalism + Skill + 325 + + Flame Cap + + Type + Herbalism + Skill + 335 + + Terocone + + Type + Herbalism + Skill + 325 + + Ancient Lichen + + Type + Herbalism + Skill + 340 + + Netherbloom + + Type + Herbalism + Skill + 350 + + Nightmare Vine + + Type + Herbalism + Skill + 365 + + Mana Thistle + + Type + Herbalism + Skill + 375 + + Netherdust Bush + + Type + Herbalism + Skill + 350 + + Liferoot + + Type + Herbalism + Skill + 150 + + Fadeleaf + + Type + Herbalism + Skill + 160 + + Khadgar's Whisker + + Type + Herbalism + Skill + 185 + + Wintersbite + + Type + Herbalism + Skill + 195 + + Stranglekelp + + Type + Herbalism + Skill + 85 + + Goldthorn + + Type + Herbalism + Skill + 170 + + Firebloom + + Type + Herbalism + Skill + 205 + + + Mining + + Titanium Vein + + Type + Mining + Skill + 450 + + Rich Saronite Deposit + + Type + Mining + Skill + 425 + + Rich Cobalt Deposit + + Type + Mining + Skill + 375 + + Cobalt Deposit + + Type + Mining + Skill + 350 + + Ooze Covered Truesilver Deposit + + Type + Mining + Skill + 230 + + Ooze Covered Mithril Deposit + + Type + Mining + Skill + 175 + + Ooze Covered Thorium Vein + + Type + Mining + Skill + 245 + + Incendicite Mineral Vein + + Type + Mining + Skill + 65 + + Dark Iron Deposit + + Type + Mining + Skill + 230 + + Copper Vein + + Type + Mining + Skill + 1 + + Tin Vein + + Type + Mining + Skill + 65 + + Silver Vein + + Type + Mining + Skill + 75 + + Gold Vein + + Type + Mining + Skill + 155 + + Iron Deposit + + Type + Mining + Skill + 125 + + Rich Thorium Vein + + Type + Mining + Skill + 275 + + Ooze Covered Rich Thorium Vein + + Type + Mining + Skill + 275 + + Hakkari Thorium Vein + + Type + Mining + Skill + 275 + + Small Obsidian Chunk + + Type + Mining + Skill + 305 + + Large Obsidian Chunk + + Type + Mining + Skill + 305 + + Fel Iron Deposit + + Type + Mining + Skill + 300 + + Adamantite Deposit + + Type + Mining + Skill + 325 + + Khorium Vein + + Type + Mining + Skill + 375 + + Rich Adamantite Deposit + + Type + Mining + Skill + 350 + + Ancient Gem Vein + + Type + Mining + Skill + 375 + + Nethercite Deposit + + Type + Mining + Skill + 350 + + Indurium Mineral Vein + + Type + Mining + Skill + 150 + + Mithril Deposit + + Type + Mining + Skill + 175 + + Truesilver Deposit + + Type + Mining + Skill + 230 + + Lesser Bloodstone Deposit + + Type + Mining + Skill + 75 + + Small Thorium Vein + + Type + Mining + Skill + 245 + + Ooze Covered Silver Vein + + Type + Mining + Skill + 75 + + Ooze Covered Gold Vein + + Type + Mining + Skill + 155 + + Saronite Deposit + + Type + Mining + Skill + 400 + + + + diff --git a/English.lproj/InfoPlist.strings b/English.lproj/InfoPlist.strings new file mode 100644 index 0000000..6c6705b Binary files /dev/null and b/English.lproj/InfoPlist.strings differ diff --git a/Errors.h b/Errors.h new file mode 100644 index 0000000..4e17dc0 --- /dev/null +++ b/Errors.h @@ -0,0 +1,64 @@ +/* + * Errors.h + * Pocket Gnome + * + * Created by Josh on 6/9/09. + * Copyright 2007 Savory Software, LLC. All rights reserved. + * + */ + +// Return types for performAction +// More errors here: http://www.wowwiki.com/WoW_Constants/Errors +typedef enum CastError { + ErrNone = 0, + ErrNotFound = 1, + ErrInventoryFull = 2, // @"Inventory is Full" + ErrTargetNotInLOS = 3, + ErrCantMove = 4, + ErrTargetNotInFrnt = 5, + ErrWrng_Way = 6, + ErrSpell_Cooldown = 7, + ErrAttack_Stunned = 8, + ErrSpellNot_Ready = 9, + ErrTargetOutRange = 10, + ErrYouAreTooFarAway = 11, + //ErrSpellNot_Ready2 = 12, + ErrSpellNotReady = 13, + ErrInvalidTarget = 14, + ErrTargetDead = 15, + ErrCantAttackMounted = 16, + ErrYouAreMounted = 17, + ErrMorePowerfullSpellActive = 18, + ErrHaveNoTarget = 19, + ErrCantDoThatWhileStunned = 20, + ErrCantDoThatWhileSilenced = 21, + ErrCantDoThatWhileIncapacitated= 22, + +} CastError; + +#define INV_FULL @"Inventory is full." +#define TARGET_LOS @"Target not in line of sight" +#define SPELL_NOT_READY @"Spell is not ready yet." +#define CANT_MOVE @"Can't do that while moving" +#define TARGET_FRNT @"Target needs to be in front of you." +#define WRNG_WAY @"You are facing the wrong way!" +#define NOT_YET @"You can't do that yet" +#define SPELL_NOT_READY2 @"Spell is not ready yet." +#define NOT_RDY2 @"Ability is not ready yet." +#define ATTACK_STUNNED @"Can't attack while stunned." +#define TARGET_RNGE @"Out of range." +#define TARGET_RNGE2 @"You are too far away!" +#define INVALID_TARGET @"Invalid target" +#define TARGET_DEAD @"Your target is dead" +#define CANT_ATTACK_MOUNTED @"Can't attack while mounted." +#define YOU_ARE_MOUNTED @"You are mounted." +#define CANT_ATTACK_TARGET @"You cannot attack that target." +#define HAVE_NO_TARGET @"You have no target." +#define MORE_POWERFUL_SPELL_ACTIVE @"A more powerful spell is already active" +#define CANT_DO_THAT_WHILE_STUNNED @"Can't do that while stunned" +#define CANT_DO_THAT_WHILE_SILENCED @"Can't do that while silenced" +#define CANT_DO_THAT_WHILE_INCAPACITATED @"Can't do that while incapacitated" + +//Must have a Fishing Pole equipped +//Not enough mana +//Not enough energy diff --git a/EventController.h b/EventController.h new file mode 100644 index 0000000..b63789a --- /dev/null +++ b/EventController.h @@ -0,0 +1,39 @@ +// +// EventController.h +// Pocket Gnome +// +// Created by Josh on 11/23/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +#define EventZoneChanged @"EventZoneChanged" +#define EventBattlegroundStatusChange @"EventBattlegroundStatusChange" + +@class Controller; +@class BotController; +@class PlayerDataController; +@class OffsetController; + +@class MemoryAccess; + +@interface EventController : NSObject { + IBOutlet Controller *controller; + IBOutlet BotController *botController; + IBOutlet PlayerDataController *playerController; + IBOutlet OffsetController *offsetController; + + NSTimer *_uberQuickTimer; + NSTimer *_oneSecondTimer; + NSTimer *_fiveSecondTimer; + NSTimer *_twentySecondTimer; + + int _lastPlayerZone; + int _lastBGStatus; + int _lastBattlefieldWinnerStatus; + + MemoryAccess *_memory; +} + +@end diff --git a/EventController.m b/EventController.m new file mode 100644 index 0000000..063d9a9 --- /dev/null +++ b/EventController.m @@ -0,0 +1,127 @@ +// +// EventController.m +// Pocket Gnome +// +// Created by Josh on 11/23/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "EventController.h" +#import "Controller.h" +#import "BotController.h" +#import "PlayerDataController.h" +#import "OffsetController.h" + +#import "Player.h" +#import "MemoryAccess.h" + +@interface EventController (Internal) + +@end + +@implementation EventController + +- (id) init{ + self = [super init]; + if (self != nil) { + + _uberQuickTimer = nil; + _oneSecondTimer = nil; + _fiveSecondTimer = nil; + _twentySecondTimer = nil; + + _lastPlayerZone = -1; + _lastBGStatus = -1; + _lastBattlefieldWinnerStatus = -1; + _memory = nil; + + // Notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsInvalid:) + name: PlayerIsInvalidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(memoryValid:) + name: MemoryAccessValidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(memoryInvalid:) + name: MemoryAccessInvalidNotification + object: nil]; + + } + return self; +} + +- (void) dealloc{ + [_memory release]; _memory = nil; + [super dealloc]; +} + +#pragma mark Notifications + +- (void)playerIsValid: (NSNotification*)not { + _uberQuickTimer = [NSTimer scheduledTimerWithTimeInterval: 0.1f target: self selector: @selector(uberQuickTimer:) userInfo: nil repeats: YES]; + //_oneSecondTimer = [NSTimer scheduledTimerWithTimeInterval: 1.0f target: self selector: @selector(oneSecondTimer:) userInfo: nil repeats: YES]; + //_fiveSecondTimer = [NSTimer scheduledTimerWithTimeInterval: 5.0f target: self selector: @selector(fiveSecondTimer:) userInfo: nil repeats: YES]; + //_twentySecondTimer = [NSTimer scheduledTimerWithTimeInterval: 10.0f target: self selector: @selector(twentySecondTimer:) userInfo: nil repeats: YES]; +} + +- (void)playerIsInvalid: (NSNotification*)not { + [_uberQuickTimer invalidate]; _uberQuickTimer = nil; + [_fiveSecondTimer invalidate]; _fiveSecondTimer = nil; + [_oneSecondTimer invalidate]; _oneSecondTimer = nil; + [_twentySecondTimer invalidate]; _twentySecondTimer = nil; +} + +- (void)memoryValid: (NSNotification*)not { + _memory = [[controller wowMemoryAccess] retain]; +} + +- (void)memoryInvalid: (NSNotification*)not { + [_memory release]; _memory = nil; +} + +#pragma mark Timers + +- (void)twentySecondTimer: (NSTimer*)timer { + +} + +- (void)oneSecondTimer: (NSTimer*)timer { + +} + +- (void)fiveSecondTimer: (NSTimer*)timer { + +} + +- (void)uberQuickTimer: (NSTimer*)timer { + + // check for a zone change! + int currentZone = [playerController zone]; + if ( _lastPlayerZone != currentZone ){ + // only send notification if the zone had been set already! + if ( _lastPlayerZone != -1 ){ + [[NSNotificationCenter defaultCenter] postNotificationName: EventZoneChanged object: [NSNumber numberWithInt:_lastPlayerZone]]; + } + } + + int bgStatus = [playerController battlegroundStatus]; + if ( _lastBGStatus != bgStatus ){ + // only send notification if the zone had been set already! + if ( _lastBGStatus != -1 ){ + [[NSNotificationCenter defaultCenter] postNotificationName: EventBattlegroundStatusChange object: [NSNumber numberWithInt:bgStatus]]; + } + log(LOG_DEV, @"[Events] BGStatus change from %d to %d", _lastBGStatus, bgStatus); + } + + _lastBGStatus = bgStatus; + _lastPlayerZone = currentZone; +} + +@end diff --git a/FactionTemplate.plist b/FactionTemplate.plist new file mode 100644 index 0000000..31d2323 --- /dev/null +++ b/FactionTemplate.plist @@ -0,0 +1,12523 @@ + + + + + 1 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 10 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 100 + + EnemyFactions + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 101 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 8 + ReactMask + 0 + + 1014 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 629 + + FriendMask + 0 + ReactMask + 0 + + 1015 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 629 + + FriendMask + 0 + ReactMask + 0 + + 102 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 8 + ReactMask + 0 + + 103 + + EnemyFactions + + 689 + + EnemyMask + 1 + FriendFactions + + 80 + + FriendMask + 0 + ReactMask + 8 + + 1034 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 4 + + 104 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 105 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1054 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 3 + + 1055 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 2 + + 106 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 107 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1074 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1075 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 108 + + FriendMask + 2 + ReactMask + 2 + + 1076 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1077 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 108 + + FriendMask + 2 + ReactMask + 2 + + 1078 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 108 + + EnemyFactions + + 79 + + EnemyMask + 0 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 0 + + 1080 + + EnemyFactions + + 74 + + EnemyMask + 0 + FriendFactions + + 31 + 649 + + FriendMask + 1 + ReactMask + 0 + + 1081 + + EnemyFactions + + 649 + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 109 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 110 + 111 + + FriendMask + 0 + ReactMask + 8 + + 1094 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1095 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1096 + + EnemyFactions + + 679 + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1097 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 11 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 110 + + EnemyFactions + + 85 + + EnemyMask + 1 + FriendFactions + + 110 + + FriendMask + 0 + ReactMask + 8 + + 111 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 85 + 111 + + FriendMask + 0 + ReactMask + 8 + + 1114 + + EnemyFactions + + 80 + + EnemyMask + 1 + FriendFactions + + 689 + + FriendMask + 0 + ReactMask + 8 + + 112 + + EnemyFactions + + 110 + + EnemyMask + 1 + FriendFactions + + 85 + 111 + + FriendMask + 0 + ReactMask + 8 + + 113 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 1 + ReactMask + 1 + + 1134 + + EnemyFactions + + 679 + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 114 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 115 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1154 + + EnemyFactions + + 679 + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 116 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1174 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 118 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 119 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 87 + + FriendMask + 0 + ReactMask + 8 + + 1194 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 12 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 120 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 21 + + FriendMask + 0 + ReactMask + 0 + + 121 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 21 + + FriendMask + 0 + ReactMask + 1 + + 1214 + + EnemyFactions + + 730 + + EnemyMask + 10 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 5 + + 1215 + + EnemyFactions + + 730 + + EnemyMask + 2 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 4 + + 1216 + + EnemyFactions + + 729 + + EnemyMask + 12 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 3 + + 1217 + + EnemyFactions + + 729 + + EnemyMask + 4 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 2 + + 122 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 123 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1234 + + EnemyFactions + + 749 + + EnemyMask + 1 + FriendFactions + + 750 + + FriendMask + 0 + ReactMask + 8 + + 1235 + + EnemyFactions + + 749 + + EnemyMask + 1 + FriendFactions + + 750 + + FriendMask + 0 + ReactMask + 8 + + 1236 + + EnemyFactions + + 749 + + EnemyMask + 1 + FriendFactions + + 750 + + FriendMask + 0 + ReactMask + 8 + + 124 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 125 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1254 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 1 + + 126 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 127 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1274 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1275 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 128 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 88 + + FriendMask + 0 + ReactMask + 8 + + 129 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 89 + + FriendMask + 0 + ReactMask + 8 + + 1294 + + EnemyFactions + + 770 + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 130 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 90 + + FriendMask + 0 + ReactMask + 8 + + 131 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 91 + + FriendMask + 0 + ReactMask + 8 + + 1314 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1315 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 132 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 92 + + FriendMask + 0 + ReactMask + 8 + + 133 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 93 + + FriendMask + 0 + ReactMask + 8 + + 1334 + + EnemyFactions + + 729 + + EnemyMask + 4 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 2 + + 1335 + + EnemyFactions + + 730 + + EnemyMask + 2 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 4 + + 134 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 94 + + FriendMask + 0 + ReactMask + 8 + + 1354 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 809 + + FriendMask + 0 + ReactMask + 0 + + 1355 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 809 + + FriendMask + 0 + ReactMask + 0 + + 1374 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 38 + + FriendMask + 0 + ReactMask + 8 + + 1375 + + EnemyFactions + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1394 + + EnemyFactions + + 689 + 47 + + EnemyMask + 1 + FriendFactions + + 80 + + FriendMask + 0 + ReactMask + 8 + + 1395 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 916 + + FriendMask + 0 + ReactMask + 8 + + 14 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1414 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1415 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1434 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 869 + + FriendMask + 0 + ReactMask + 8 + + 1454 + + EnemyFactions + + 35 + + EnemyMask + 0 + FriendFactions + + 36 + + FriendMask + 1 + ReactMask + 0 + + 1474 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 59 + + FriendMask + 0 + ReactMask + 0 + + 1475 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 59 + + FriendMask + 0 + ReactMask + 0 + + 148 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 149 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1494 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 66 + + FriendMask + 4 + ReactMask + 4 + + 1495 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + 66 + + FriendMask + 4 + ReactMask + 5 + + 1496 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 66 + + FriendMask + 4 + ReactMask + 4 + + 15 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 7 + + FriendMask + 0 + ReactMask + 0 + + 150 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 151 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 2 + + 1514 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1515 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 152 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 109 + 111 + + FriendMask + 0 + ReactMask + 8 + + 153 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 109 + 111 + + FriendMask + 0 + ReactMask + 8 + + 1534 + + EnemyFactions + + 729 + + EnemyMask + 4 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 2 + + 154 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 109 + 85 + 111 + 110 + + FriendMask + 0 + ReactMask + 8 + + 1554 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1555 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 909 + + FriendMask + 0 + ReactMask + 0 + + 1574 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 270 + + FriendMask + 0 + ReactMask + 0 + + 1575 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1576 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 269 + + FriendMask + 2 + ReactMask + 2 + + 1577 + + EnemyFactions + + 510 + + EnemyMask + 4 + FriendFactions + + 509 + + FriendMask + 2 + ReactMask + 2 + + 1594 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1595 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1596 + + EnemyFactions + + 729 + + EnemyMask + 12 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 3 + + 1597 + + EnemyFactions + + 730 + + EnemyMask + 10 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 5 + + 1598 + + EnemyFactions + + 509 + + EnemyMask + 2 + FriendFactions + + 510 + + FriendMask + 4 + ReactMask + 4 + + 1599 + + EnemyFactions + + 510 + + EnemyMask + 4 + FriendFactions + + 509 + + FriendMask + 2 + ReactMask + 2 + + 16 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1600 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1601 + + EnemyFactions + + 249 + 80 + + EnemyMask + 0 + FriendFactions + + 910 + 531 + + FriendMask + 0 + ReactMask + 0 + + 1602 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1603 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1604 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1605 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 531 + + FriendMask + 0 + ReactMask + 0 + + 1606 + + EnemyFactions + + 7 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 0 + + 1607 + + EnemyFactions + + 7 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 0 + + 1608 + + EnemyFactions + + 249 + + EnemyMask + 8 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 1 + + 1610 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1611 + + EnemyFactions + + 916 + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1612 + + EnemyFactions + + 916 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1613 + + EnemyFactions + + 915 + + EnemyMask + 0 + FriendFactions + + 912 + + FriendMask + 1 + ReactMask + 1 + + 1614 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1615 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 21 + 577 + 369 + + FriendMask + 0 + ReactMask + 1 + + 1616 + + EnemyFactions + + 918 + + EnemyMask + 0 + FriendFactions + + 919 + + FriendMask + 15 + ReactMask + 0 + + 1617 + + EnemyFactions + + 919 + + EnemyMask + 1 + FriendFactions + + 918 + + FriendMask + 0 + ReactMask + 0 + + 1618 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1619 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1620 + + EnemyFactions + + EnemyMask + 15 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1621 + + EnemyFactions + + 920 + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 2 + + 1622 + + EnemyFactions + + 921 + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 2 + + 1623 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1624 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 1625 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 1626 + + EnemyFactions + + 679 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1627 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1628 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1629 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1630 + + EnemyFactions + + 14 + 148 + + EnemyMask + 7 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 1634 + + EnemyFactions + + 68 + 72 + + EnemyMask + 0 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 1635 + + EnemyFactions + + 891 + + EnemyMask + 0 + FriendFactions + + 169 + 892 + + FriendMask + 0 + ReactMask + 0 + + 1636 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1637 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1638 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1639 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1640 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1641 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1642 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1643 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 937 + + FriendMask + 0 + ReactMask + 8 + + 1644 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1645 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1646 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1647 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1648 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1649 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1650 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1651 + + EnemyFactions + + 28 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1652 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1653 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1654 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1655 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1656 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1657 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1658 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1659 + + EnemyFactions + + 60 + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1660 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1661 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1662 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1663 + + EnemyFactions + + 945 + + EnemyMask + 1 + FriendFactions + + 944 + + FriendMask + 0 + ReactMask + 8 + + 1664 + + EnemyFactions + + 944 + + EnemyMask + 1 + FriendFactions + + 945 + + FriendMask + 0 + ReactMask + 8 + + 1665 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 7 + ReactMask + 1 + + 1666 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1667 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1668 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1669 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1670 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1671 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1672 + + EnemyFactions + + 952 + + EnemyMask + 0 + FriendFactions + + 949 + + FriendMask + 7 + ReactMask + 1 + + 1673 + + EnemyFactions + + 951 + + EnemyMask + 0 + FriendFactions + + 950 + + FriendMask + 0 + ReactMask + 0 + + 1674 + + EnemyFactions + + 951 + + EnemyMask + 0 + FriendFactions + + 950 + 953 + + FriendMask + 15 + ReactMask + 0 + + 1675 + + EnemyFactions + + 949 + + EnemyMask + 0 + FriendFactions + + 952 + + FriendMask + 15 + ReactMask + 0 + + 1676 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 954 + + FriendMask + 15 + ReactMask + 0 + + 1677 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 954 + + FriendMask + 15 + ReactMask + 0 + + 1678 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1679 + + EnemyFactions + + 40 + + EnemyMask + 1 + FriendFactions + + 955 + + FriendMask + 0 + ReactMask + 8 + + 168 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1680 + + EnemyFactions + + 957 + + EnemyMask + 0 + FriendFactions + + 74 + + FriendMask + 1 + ReactMask + 0 + + 1681 + + EnemyFactions + + 74 + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 1682 + + EnemyFactions + + 958 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1683 + + EnemyFactions + + 960 + + EnemyMask + 0 + FriendFactions + + 959 + + FriendMask + 0 + ReactMask + 0 + + 1684 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 1685 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 961 + + FriendMask + 0 + ReactMask + 2 + + 1686 + + EnemyFactions + + 962 + + EnemyMask + 4 + FriendFactions + + 961 + + FriendMask + 2 + ReactMask + 2 + + 1687 + + EnemyFactions + + 961 + + EnemyMask + 1 + FriendFactions + + 962 + + FriendMask + 0 + ReactMask + 8 + + 1688 + + EnemyFactions + + 964 + + EnemyMask + 0 + FriendFactions + + 963 + + FriendMask + 1 + ReactMask + 0 + + 1689 + + EnemyFactions + + 963 + + EnemyMask + 0 + FriendFactions + + 964 + + FriendMask + 1 + ReactMask + 0 + + 1690 + + EnemyFactions + + 964 + + EnemyMask + 0 + FriendFactions + + 963 + + FriendMask + 1 + ReactMask + 0 + + 1691 + + EnemyFactions + + 963 + + EnemyMask + 0 + FriendFactions + + 964 + + FriendMask + 1 + ReactMask + 0 + + 1692 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1693 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1694 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1695 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1696 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 967 + + FriendMask + 0 + ReactMask + 0 + + 1697 + + EnemyFactions + + 946 + 947 + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1698 + + EnemyFactions + + 968 + + EnemyMask + 4 + FriendFactions + + 930 + + FriendMask + 2 + ReactMask + 2 + + 1699 + + EnemyFactions + + 968 + + EnemyMask + 4 + FriendFactions + + 930 + + FriendMask + 2 + ReactMask + 2 + + 17 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 15 + + FriendMask + 0 + ReactMask + 8 + + 1700 + + EnemyFactions + + 968 + + EnemyMask + 4 + FriendFactions + + 930 + + FriendMask + 2 + ReactMask + 2 + + 1701 + + EnemyFactions + + 930 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1702 + + EnemyFactions + + 930 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1703 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1704 + + EnemyFactions + + 679 + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1705 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 943 + 679 + + FriendMask + 0 + ReactMask + 8 + + 1706 + + EnemyFactions + + 970 + + EnemyMask + 1 + FriendFactions + + 971 + + FriendMask + 0 + ReactMask + 8 + + 1707 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1708 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1709 + + EnemyFactions + + 971 + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1710 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1711 + + EnemyFactions + + 974 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 1712 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 1713 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 1714 + + EnemyFactions + + 930 + 975 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1715 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 975 + + FriendMask + 0 + ReactMask + 8 + + 1716 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1717 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1718 + + EnemyFactions + + 977 + + EnemyMask + 0 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1719 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1720 + + EnemyFactions + + 976 + + EnemyMask + 1 + FriendFactions + + 977 + + FriendMask + 0 + ReactMask + 8 + + 1721 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 3 + + 1722 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 2 + + 1723 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 2 + + 1724 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 2 + + 1725 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 469 + 67 + + FriendMask + 7 + ReactMask + 0 + + 1726 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 469 + 67 + + FriendMask + 7 + ReactMask + 0 + + 1727 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 469 + 67 + + FriendMask + 7 + ReactMask + 0 + + 1728 + + EnemyFactions + + 14 + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1729 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1730 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1731 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1732 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1733 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1734 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1735 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1736 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1737 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1738 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 981 + + FriendMask + 0 + ReactMask + 8 + + 1739 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 982 + + FriendMask + 0 + ReactMask + 0 + + 1740 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 982 + + FriendMask + 0 + ReactMask + 0 + + 1741 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 935 + + FriendMask + 0 + ReactMask + 1 + + 1742 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 984 + + FriendMask + 0 + ReactMask + 0 + + 1743 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1744 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1745 + + EnemyFactions + + 679 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1746 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1747 + + EnemyFactions + + 986 + 987 + + EnemyMask + 0 + FriendFactions + + 985 + + FriendMask + 1 + ReactMask + 1 + + 1748 + + EnemyFactions + + 985 + + EnemyMask + 1 + FriendFactions + + 986 + + FriendMask + 0 + ReactMask + 8 + + 1749 + + EnemyFactions + + 985 + + EnemyMask + 0 + FriendFactions + + 987 + + FriendMask + 0 + ReactMask + 0 + + 1750 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1751 + + EnemyFactions + + 932 + 935 + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1752 + + EnemyFactions + + 991 + 992 + 943 + 529 + + EnemyMask + 7 + FriendFactions + + 993 + + FriendMask + 0 + ReactMask + 8 + + 1753 + + EnemyFactions + + 991 + 992 + 943 + 529 + + EnemyMask + 7 + FriendFactions + + 993 + + FriendMask + 0 + ReactMask + 8 + + 1754 + + EnemyFactions + + 991 + 992 + 943 + 529 + + EnemyMask + 7 + FriendFactions + + 993 + + FriendMask + 0 + ReactMask + 8 + + 1755 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 991 + 992 + + FriendMask + 2 + ReactMask + 2 + + 1756 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 991 + 992 + + FriendMask + 2 + ReactMask + 2 + + 1757 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 991 + 992 + + FriendMask + 2 + ReactMask + 2 + + 1758 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 992 + 991 + + FriendMask + 4 + ReactMask + 4 + + 1759 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 992 + 991 + + FriendMask + 4 + ReactMask + 4 + + 1760 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 992 + 991 + + FriendMask + 4 + ReactMask + 4 + + 1761 + + EnemyFactions + + 994 + + EnemyMask + 15 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1762 + + EnemyFactions + + 996 + 997 + 998 + 994 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1763 + + EnemyFactions + + 997 + 998 + 994 + 995 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1764 + + EnemyFactions + + 998 + 994 + 995 + 996 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1765 + + EnemyFactions + + 994 + 995 + 996 + 997 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1766 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 0 + + 1767 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 0 + + 1768 + + EnemyFactions + + 14 + 529 + + EnemyMask + 15 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 0 + + 1769 + + EnemyFactions + + 14 + 529 + + EnemyMask + 15 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 0 + + 1770 + + EnemyFactions + + 960 + + EnemyMask + 0 + FriendFactions + + 959 + + FriendMask + 1 + ReactMask + 0 + + 1771 + + EnemyFactions + + 959 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 1772 + + EnemyFactions + + 968 + + EnemyMask + 1 + FriendFactions + + 999 + + FriendMask + 0 + ReactMask + 8 + + 1773 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1000 + + FriendMask + 1 + ReactMask + 0 + + 1774 + + EnemyFactions + + 1000 + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1775 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 935 + + FriendMask + 0 + ReactMask + 1 + + 1776 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1777 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1778 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 990 + + FriendMask + 0 + ReactMask + 0 + + 1779 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 989 + + FriendMask + 0 + ReactMask + 0 + + 1780 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1781 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1782 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1783 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1784 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1785 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1786 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 1787 + + EnemyFactions + + 994 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1788 + + EnemyFactions + + 968 + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1789 + + EnemyFactions + + 933 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1790 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1791 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1792 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1793 + + EnemyFactions + + 930 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1794 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 0 + + 1795 + + EnemyFactions + + 956 + + EnemyMask + 0 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 0 + + 1796 + + EnemyFactions + + 1003 + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1797 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 0 + + 1798 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 968 + 1004 + + FriendMask + 0 + ReactMask + 8 + + 1799 + + EnemyFactions + + 956 + + EnemyMask + 1 + FriendFactions + + 1002 + + FriendMask + 0 + ReactMask + 8 + + 18 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 19 + + FriendMask + 0 + ReactMask + 8 + + 1800 + + EnemyFactions + + 1002 + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1801 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1802 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1803 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1804 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1805 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 1 + ReactMask + 1 + + 1806 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1807 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 1 + + 1808 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1007 + + FriendMask + 0 + ReactMask + 8 + + 1809 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1009 + + FriendMask + 0 + ReactMask + 8 + + 1810 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1006 + + FriendMask + 0 + ReactMask + 8 + + 1811 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1008 + + FriendMask + 0 + ReactMask + 8 + + 1812 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1813 + + EnemyFactions + + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1814 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1815 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 29 + + FriendMask + 0 + ReactMask + 8 + + 1816 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1818 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1011 + + FriendMask + 0 + ReactMask + 0 + + 1819 + + EnemyFactions + + 73 + + EnemyMask + 12 + FriendFactions + + 471 + + FriendMask + 2 + ReactMask + 2 + + 1820 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1012 + + FriendMask + 0 + ReactMask + 0 + + 1821 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1013 + + FriendMask + 1 + ReactMask + 0 + + 1822 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1013 + + FriendMask + 1 + ReactMask + 0 + + 1823 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1824 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1015 + + FriendMask + 0 + ReactMask + 0 + + 1825 + + EnemyFactions + + 14 + 529 + + EnemyMask + 15 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 0 + + 1826 + + EnemyFactions + + 73 + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1827 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1016 + + FriendMask + 0 + ReactMask + 8 + + 1828 + + EnemyFactions + + 1016 + + EnemyMask + 0 + FriendFactions + + 1017 + + FriendMask + 0 + ReactMask + 0 + + 1829 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1018 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1830 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1019 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1831 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1020 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1832 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1021 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1833 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1022 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1834 + + EnemyFactions + + 14 + 1010 + + EnemyMask + 15 + FriendFactions + + 1023 + + FriendMask + 0 + ReactMask + 0 + + 1835 + + EnemyFactions + + 73 + + EnemyMask + 10 + FriendFactions + + 471 + + FriendMask + 4 + ReactMask + 4 + + 1836 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1837 + + EnemyFactions + + 971 + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1838 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1839 + + EnemyFactions + + 1025 + + EnemyMask + 1 + FriendFactions + + 1024 + + FriendMask + 0 + ReactMask + 8 + + 1840 + + EnemyFactions + + 1024 + + EnemyMask + 0 + FriendFactions + + 1025 + + FriendMask + 7 + ReactMask + 1 + + 1841 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1026 + + FriendMask + 1 + ReactMask + 0 + + 1842 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1843 + + EnemyFactions + + 932 + 934 + 1033 + 1012 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1844 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1845 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1846 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1028 + + FriendMask + 0 + ReactMask + 8 + + 1847 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1848 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1849 + + EnemyFactions + + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1850 + + EnemyFactions + + 52 + + EnemyMask + 0 + FriendFactions + + 1015 + + FriendMask + 0 + ReactMask + 0 + + 1851 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1011 + + FriendMask + 0 + ReactMask + 1 + + 1852 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 963 + 964 + 1029 + + FriendMask + 1 + ReactMask + 0 + + 1853 + + EnemyFactions + + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1854 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + + FriendMask + 0 + ReactMask + 0 + + 1855 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 934 + 932 + + FriendMask + 0 + ReactMask + 0 + + 1856 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1031 + + FriendMask + 0 + ReactMask + 1 + + 1857 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1032 + + FriendMask + 1 + ReactMask + 1 + + 1858 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1859 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1860 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1034 + + FriendMask + 1 + ReactMask + 0 + + 1862 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1863 + + EnemyFactions + + 1015 + 1036 + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1864 + + EnemyFactions + + 52 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1865 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1866 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 1012 + + FriendMask + 0 + ReactMask + 1 + + 1867 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1868 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + 966 + + FriendMask + 1 + ReactMask + 0 + + 1869 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1870 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1031 + + FriendMask + 0 + ReactMask + 1 + + 1871 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1872 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1038 + + FriendMask + 0 + ReactMask + 1 + + 1873 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1024 + + FriendMask + 0 + ReactMask + 8 + + 1874 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1038 + + FriendMask + 0 + ReactMask + 1 + + 1875 + + EnemyFactions + + 52 + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1876 + + EnemyFactions + + 52 + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1877 + + EnemyFactions + + 1015 + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1878 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1041 + + FriendMask + 0 + ReactMask + 8 + + 1879 + + EnemyFactions + + 1031 + + EnemyMask + 1 + FriendFactions + + 1042 + + FriendMask + 0 + ReactMask + 8 + + 188 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 148 + 28 + + FriendMask + 0 + ReactMask + 0 + + 1880 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1881 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1882 + + EnemyFactions + + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1883 + + EnemyFactions + + EnemyMask + 7 + FriendFactions + + 1044 + + FriendMask + 0 + ReactMask + 8 + + 1884 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 8 + ReactMask + 8 + + 1885 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1886 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 7 + + FriendMask + 0 + ReactMask + 8 + + 1887 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 7 + 7 + + FriendMask + 0 + ReactMask + 8 + + 1888 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1046 + + FriendMask + 8 + ReactMask + 8 + + 1889 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1048 + + FriendMask + 0 + ReactMask + 8 + + 189 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1890 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1049 + + FriendMask + 0 + ReactMask + 8 + + 1891 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1892 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 1893 + + EnemyFactions + + 1045 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1894 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1895 + + EnemyFactions + + 1050 + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1896 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1032 + + FriendMask + 1 + ReactMask + 1 + + 1897 + + EnemyFactions + + 1045 + 1050 + + EnemyMask + 2 + FriendFactions + + 1052 + 1067 + + FriendMask + 4 + ReactMask + 4 + + 1898 + + EnemyFactions + + 1067 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 1899 + + EnemyFactions + + 1067 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 19 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 17 + + FriendMask + 0 + ReactMask + 8 + + 190 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1900 + + EnemyFactions + + 1053 + + EnemyMask + 2 + FriendFactions + + 1052 + 1067 + + FriendMask + 4 + ReactMask + 4 + + 1901 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1052 + + FriendMask + 4 + ReactMask + 4 + + 1902 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1904 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1905 + + EnemyFactions + + 1054 + + EnemyMask + 0 + FriendFactions + + 1055 + + FriendMask + 0 + ReactMask + 0 + + 1906 + + EnemyFactions + + 1055 + + EnemyMask + 1 + FriendFactions + + 1054 + + FriendMask + 0 + ReactMask + 8 + + 1907 + + EnemyFactions + + 949 + + EnemyMask + 8 + FriendFactions + + 948 + + FriendMask + 0 + ReactMask + 1 + + 1908 + + EnemyFactions + + 949 + + EnemyMask + 0 + FriendFactions + + 948 + + FriendMask + 0 + ReactMask + 1 + + 1909 + + EnemyFactions + + 14 + + EnemyMask + 9 + FriendFactions + + 42 + + FriendMask + 0 + ReactMask + 0 + + 1910 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1056 + + FriendMask + 1 + ReactMask + 0 + + 1911 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1057 + + FriendMask + 1 + ReactMask + 0 + + 1912 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1058 + + FriendMask + 1 + ReactMask + 1 + + 1913 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1059 + + FriendMask + 7 + ReactMask + 0 + + 1914 + + EnemyFactions + + 1067 + 1085 + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1915 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1060 + + FriendMask + 0 + ReactMask + 0 + + 1916 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1917 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 7 + + FriendMask + 0 + ReactMask + 0 + + 1918 + + EnemyFactions + + 679 + + EnemyMask + 2 + FriendFactions + + 1052 + + FriendMask + 4 + ReactMask + 4 + + 1919 + + EnemyFactions + + 1063 + + EnemyMask + 1 + FriendFactions + + 1062 + + FriendMask + 0 + ReactMask + 8 + + 1920 + + EnemyFactions + + 1062 + + EnemyMask + 4 + FriendFactions + + 1063 + + FriendMask + 0 + ReactMask + 3 + + 1921 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 1922 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 1923 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 1924 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1065 + + FriendMask + 0 + ReactMask + 8 + + 1925 + + EnemyFactions + + 14 + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1926 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1068 + + FriendMask + 0 + ReactMask + 2 + + 1927 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1068 + + FriendMask + 0 + ReactMask + 2 + + 1928 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1067 + 1052 + + FriendMask + 0 + ReactMask + 4 + + 1929 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1067 + 1052 + + FriendMask + 0 + ReactMask + 4 + + 1930 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1069 + + FriendMask + 0 + ReactMask + 0 + + 1931 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1070 + + FriendMask + 0 + ReactMask + 0 + + 1932 + + EnemyFactions + + 14 + + EnemyMask + 15 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 0 + + 1933 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 4 + ReactMask + 0 + + 1934 + + EnemyFactions + + 960 + + EnemyMask + 4 + FriendFactions + + 959 + + FriendMask + 2 + ReactMask + 2 + + 1935 + + EnemyFactions + + 960 + + EnemyMask + 2 + FriendFactions + + 959 + + FriendMask + 4 + ReactMask + 4 + + 1936 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1937 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1938 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1939 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1940 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1941 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1942 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 1943 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1944 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1945 + + EnemyFactions + + EnemyMask + 15 + FriendFactions + + 1071 + 551 + 189 + + FriendMask + 15 + ReactMask + 15 + + 1947 + + EnemyFactions + + EnemyMask + 15 + FriendFactions + + 1071 + 551 + 189 + + FriendMask + 15 + ReactMask + 15 + + 1948 + + EnemyFactions + + 469 + + EnemyMask + 1 + FriendFactions + + 921 + + FriendMask + 2 + ReactMask + 1 + + 1949 + + EnemyFactions + + 1046 + + EnemyMask + 0 + FriendFactions + + 1073 + + FriendMask + 0 + ReactMask + 0 + + 1950 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1073 + + FriendMask + 0 + ReactMask + 0 + + 1951 + + EnemyFactions + + 22 + 29 + + EnemyMask + 12 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1952 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1074 + + FriendMask + 1 + ReactMask + 0 + + 1953 + + EnemyFactions + + 974 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 1954 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1076 + + FriendMask + 0 + ReactMask + 8 + + 1955 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1076 + + FriendMask + 0 + ReactMask + 8 + + 1956 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1077 + + FriendMask + 0 + ReactMask + 1 + + 1957 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1077 + + FriendMask + 0 + ReactMask + 1 + + 1958 + + EnemyFactions + + 959 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 8 + + 1959 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 1 + ReactMask + 0 + + 1960 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1077 + + FriendMask + 0 + ReactMask + 1 + + 1961 + + EnemyFactions + + 1078 + + EnemyMask + 0 + FriendFactions + + FriendMask + 15 + ReactMask + 0 + + 1962 + + EnemyFactions + + 73 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1963 + + EnemyFactions + + 20 + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 1964 + + EnemyFactions + + 73 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1965 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1966 + + EnemyFactions + + 60 + + EnemyMask + 0 + FriendFactions + + 19 + + FriendMask + 0 + ReactMask + 8 + + 1967 + + EnemyFactions + + 1077 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 1 + + 1968 + + EnemyFactions + + 19 + + EnemyMask + 8 + FriendFactions + + 1079 + + FriendMask + 0 + ReactMask + 0 + + 1969 + + EnemyFactions + + 1079 + + EnemyMask + 1 + FriendFactions + + 19 + + FriendMask + 0 + ReactMask + 8 + + 1970 + + EnemyFactions + + 1079 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1971 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1080 + + FriendMask + 1 + ReactMask + 0 + + 1972 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1973 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1974 + + EnemyFactions + + 1084 + 20 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 1975 + + EnemyFactions + + 1050 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1976 + + EnemyFactions + + 679 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1977 + + EnemyFactions + + 1050 + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1978 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1979 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1980 + + EnemyFactions + + 20 + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1981 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1982 + + EnemyFactions + + 1085 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1983 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1984 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1985 + + EnemyFactions + + 20 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1986 + + EnemyFactions + + 1057 + 1058 + 1056 + + EnemyMask + 8 + FriendFactions + + 40 + + FriendMask + 1 + ReactMask + 1 + + 1987 + + EnemyFactions + + 1086 + + EnemyMask + 8 + FriendFactions + + 942 + 148 + + FriendMask + 0 + ReactMask + 1 + + 1988 + + EnemyFactions + + 1050 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1989 + + EnemyFactions + + 148 + 942 + + EnemyMask + 1 + FriendFactions + + 1086 + + FriendMask + 0 + ReactMask + 8 + + 1990 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 148 + 942 + + FriendMask + 0 + ReactMask + 8 + + 1991 + + EnemyFactions + + 14 + 148 + + EnemyMask + 7 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 0 + + 1992 + + EnemyFactions + + 14 + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1993 + + EnemyFactions + + 966 + + EnemyMask + 4 + FriendFactions + + 965 + + FriendMask + 2 + ReactMask + 2 + + 1994 + + EnemyFactions + + 965 + + EnemyMask + 4 + FriendFactions + + 966 + + FriendMask + 2 + ReactMask + 2 + + 1995 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1059 + + FriendMask + 5 + ReactMask + 0 + + 1997 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1059 + + FriendMask + 3 + ReactMask + 0 + + 1998 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1087 + + FriendMask + 0 + ReactMask + 8 + + 1999 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 2 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 20 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 16 + + FriendMask + 0 + ReactMask + 8 + + 2000 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 2001 + + EnemyFactions + + 1089 + + EnemyMask + 1 + FriendFactions + + 1088 + + FriendMask + 8 + ReactMask + 8 + + 2003 + + EnemyFactions + + 1088 + + EnemyMask + 1 + FriendFactions + + 1089 + + FriendMask + 8 + ReactMask + 8 + + 2004 + + EnemyFactions + + 20 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 2005 + + EnemyFactions + + 1050 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2006 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2007 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2008 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2009 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2010 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2011 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2012 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2013 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2014 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1092 + + FriendMask + 0 + ReactMask + 0 + + 2016 + + EnemyFactions + + 20 + + EnemyMask + 0 + FriendFactions + + 1092 + + FriendMask + 0 + ReactMask + 0 + + 2017 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1092 + + FriendMask + 0 + ReactMask + 0 + + 2018 + + EnemyFactions + + 1092 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2019 + + EnemyFactions + + 20 + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 2020 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 4 + ReactMask + 4 + + 2021 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1082 + + FriendMask + 2 + ReactMask + 3 + + 2022 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2023 + + EnemyFactions + + 14 + 148 + + EnemyMask + 7 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 2024 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1067 + + FriendMask + 0 + ReactMask + 5 + + 2025 + + EnemyFactions + + 67 + + EnemyMask + 4 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2026 + + EnemyFactions + + 67 + + EnemyMask + 4 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2027 + + EnemyFactions + + 67 + + EnemyMask + 4 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2028 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 1 + ReactMask + 0 + + 2029 + + EnemyFactions + + 974 + 28 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 2030 + + EnemyFactions + + 974 + 28 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 2031 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 148 + + FriendMask + 4 + ReactMask + 4 + + 2032 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1095 + + FriendMask + 2 + ReactMask + 0 + + 2033 + + EnemyFactions + + 56 + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 2034 + + EnemyFactions + + 1095 + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 2035 + + EnemyFactions + + 31 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2036 + + EnemyFactions + + 20 + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 2037 + + EnemyFactions + + 148 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 2038 + + EnemyFactions + + 1050 + + EnemyMask + 0 + FriendFactions + + 148 + + FriendMask + 0 + ReactMask + 8 + + 2039 + + EnemyFactions + + 1050 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2040 + + EnemyFactions + + 14 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 2041 + + EnemyFactions + + 20 + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2042 + + EnemyFactions + + 1091 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2043 + + EnemyFactions + + 1050 + 1085 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2044 + + EnemyFactions + + 20 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 1 + + 2045 + + EnemyFactions + + 20 + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 4 + ReactMask + 0 + + 2046 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 2047 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 2048 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 2049 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 0 + + 2050 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1098 + + FriendMask + 0 + ReactMask + 1 + + 2051 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1098 + + FriendMask + 0 + ReactMask + 1 + + 2052 + + EnemyFactions + + 1050 + 1085 + 1101 + 1100 + + EnemyMask + 0 + FriendFactions + + 1099 + + FriendMask + 1 + ReactMask + 8 + + 2053 + + EnemyFactions + + 20 + 1099 + + EnemyMask + 0 + FriendFactions + + 1100 + + FriendMask + 6 + ReactMask + 1 + + 2054 + + EnemyFactions + + 20 + 1099 + + EnemyMask + 0 + FriendFactions + + 1101 + + FriendMask + 6 + ReactMask + 0 + + 2055 + + EnemyFactions + + 966 + + EnemyMask + 2 + FriendFactions + + 965 + + FriendMask + 4 + ReactMask + 4 + + 2056 + + EnemyFactions + + 965 + + EnemyMask + 2 + FriendFactions + + 966 + + FriendMask + 4 + ReactMask + 4 + + 2057 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1066 + + FriendMask + 0 + ReactMask + 8 + + 2058 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1102 + + FriendMask + 7 + ReactMask + 0 + + 2059 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1103 + + FriendMask + 7 + ReactMask + 0 + + 2060 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1104 + + FriendMask + 0 + ReactMask + 0 + + 2061 + + EnemyFactions + + 1105 + + EnemyMask + 0 + FriendFactions + + 1104 + + FriendMask + 0 + ReactMask + 0 + + 2062 + + EnemyFactions + + 1105 + + EnemyMask + 0 + FriendFactions + + 1104 + + FriendMask + 0 + ReactMask + 0 + + 2063 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2064 + + EnemyFactions + + 1104 + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2065 + + EnemyFactions + + 14 + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2066 + + EnemyFactions + + 1104 + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2067 + + EnemyFactions + + 14 + + EnemyMask + 8 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2068 + + EnemyFactions + + 1107 + 1106 + 959 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2069 + + EnemyFactions + + 1106 + 20 + + EnemyMask + 7 + FriendFactions + + 1107 + + FriendMask + 0 + ReactMask + 8 + + 2070 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2071 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2072 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2073 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2074 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 986 + 987 + + FriendMask + 0 + ReactMask + 8 + + 2075 + + EnemyFactions + + 1108 + + EnemyMask + 1 + FriendFactions + + 1110 + + FriendMask + 0 + ReactMask + 8 + + 2076 + + EnemyFactions + + 1110 + 1109 + + EnemyMask + 0 + FriendFactions + + 1108 + + FriendMask + 1 + ReactMask + 0 + + 2077 + + EnemyFactions + + 1110 + 1109 + + EnemyMask + 0 + FriendFactions + + 1108 + + FriendMask + 1 + ReactMask + 0 + + 2078 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1109 + + FriendMask + 0 + ReactMask + 0 + + 2079 + + EnemyFactions + + 1110 + 1109 + + EnemyMask + 0 + FriendFactions + + 1108 + + FriendMask + 1 + ReactMask + 0 + + 208 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 168 + + FriendMask + 2 + ReactMask + 2 + + 2080 + + EnemyFactions + + 1111 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2081 + + EnemyFactions + + 20 + + EnemyMask + 0 + FriendFactions + + 1111 + + FriendMask + 1 + ReactMask + 0 + + 2082 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2083 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2084 + + EnemyFactions + + 529 + 56 + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2085 + + EnemyFactions + + 529 + 56 + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2086 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 8 + + 2087 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 8 + + 2088 + + EnemyFactions + + 20 + 56 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 2089 + + EnemyFactions + + 20 + 529 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 209 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 168 + + FriendMask + 2 + ReactMask + 2 + + 2090 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1112 + + FriendMask + 0 + ReactMask + 2 + + 2091 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1113 + + FriendMask + 0 + ReactMask + 4 + + 2092 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1114 + + FriendMask + 1 + ReactMask + 0 + + 2093 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2094 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2095 + + EnemyFactions + + 20 + 529 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 2096 + + EnemyFactions + + 20 + 529 + + EnemyMask + 0 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 0 + + 2097 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2098 + + EnemyFactions + + 1115 + + EnemyMask + 1 + FriendFactions + + 1116 + + FriendMask + 0 + ReactMask + 8 + + 2099 + + EnemyFactions + + 1116 + + EnemyMask + 1 + FriendFactions + + 1115 + + FriendMask + 0 + ReactMask + 8 + + 21 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 210 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 2 + + 2100 + + EnemyFactions + + 529 + 56 + + EnemyMask + 8 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2101 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 1 + ReactMask + 0 + + 2102 + + EnemyFactions + + 959 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 2103 + + EnemyFactions + + 20 + 529 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 2104 + + EnemyFactions + + 966 + + EnemyMask + 0 + FriendFactions + + 965 + + FriendMask + 1 + ReactMask + 1 + + 2105 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + 966 + + FriendMask + 1 + ReactMask + 1 + + 2106 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 148 + + FriendMask + 0 + ReactMask + 8 + + 2107 + + EnemyFactions + + 1120 + 1121 + + EnemyMask + 0 + FriendFactions + + 1119 + + FriendMask + 0 + ReactMask + 8 + + 2108 + + EnemyFactions + + 1119 + + EnemyMask + 1 + FriendFactions + + 1120 + + FriendMask + 0 + ReactMask + 8 + + 2109 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2110 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 2111 + + EnemyFactions + + 31 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2112 + + EnemyFactions + + 1121 + + EnemyMask + 0 + FriendFactions + + 1119 + + FriendMask + 0 + ReactMask + 8 + + 2113 + + EnemyFactions + + 1119 + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2114 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + 20 + + FriendMask + 0 + ReactMask + 8 + + 2115 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 8 + FriendFactions + + 959 + + FriendMask + 1 + ReactMask + 0 + + 2116 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 2117 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 8 + FriendFactions + + 959 + + FriendMask + 1 + ReactMask + 0 + + 2118 + + EnemyFactions + + 1120 + + EnemyMask + 0 + FriendFactions + + 1122 + + FriendMask + 0 + ReactMask + 0 + + 2119 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 965 + 966 + 1123 + + FriendMask + 0 + ReactMask + 8 + + 2120 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 965 + 966 + 1123 + + FriendMask + 0 + ReactMask + 8 + + 2121 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2122 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2123 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2124 + + EnemyFactions + + 1119 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2125 + + EnemyFactions + + 148 + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2126 + + EnemyFactions + + 148 + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2127 + + EnemyFactions + + 1121 + + EnemyMask + 0 + FriendFactions + + 148 + + FriendMask + 0 + ReactMask + 0 + + 2128 + + EnemyFactions + + 1125 + + EnemyMask + 0 + FriendFactions + + 1125 + + FriendMask + 1 + ReactMask + 0 + + 2129 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2130 + + EnemyFactions + + 67 + + EnemyMask + 12 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2131 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 22 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 22 + + FriendMask + 0 + ReactMask + 8 + + 23 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 230 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 573 + + FriendMask + 0 + ReactMask + 8 + + 231 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 232 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 233 + + EnemyFactions + + 68 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 24 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 24 + + FriendMask + 0 + ReactMask + 8 + + 25 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 25 + + FriendMask + 0 + ReactMask + 8 + + 250 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 1 + ReactMask + 1 + + 26 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 25 + + FriendMask + 0 + ReactMask + 8 + + 27 + + EnemyFactions + + 1 + + EnemyMask + 1 + FriendFactions + + 15 + + FriendMask + 0 + ReactMask + 8 + + 270 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 229 + + FriendMask + 0 + ReactMask + 8 + + 28 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 26 + + FriendMask + 0 + ReactMask + 8 + + 29 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 290 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 1 + ReactMask + 1 + + 3 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 30 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 27 + + FriendMask + 0 + ReactMask + 8 + + 31 + + EnemyFactions + + 973 + + EnemyMask + 0 + FriendFactions + + 148 + 28 + + FriendMask + 0 + ReactMask + 0 + + 310 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 249 + + FriendMask + 0 + ReactMask + 8 + + 311 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 249 + + FriendMask + 0 + ReactMask + 8 + + 312 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 22 + + FriendMask + 0 + ReactMask + 8 + + 32 + + EnemyFactions + + 28 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 33 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 330 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 229 + + FriendMask + 0 + ReactMask + 8 + + 34 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 15 + + FriendMask + 0 + ReactMask + 8 + + 35 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 350 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 88 + + FriendMask + 0 + ReactMask + 8 + + 36 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 32 + + FriendMask + 0 + ReactMask + 0 + + 37 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 33 + + FriendMask + 0 + ReactMask + 8 + + 370 + + EnemyFactions + + 912 + + EnemyMask + 1 + FriendFactions + + 915 + + FriendMask + 8 + ReactMask + 8 + + 371 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 269 + + FriendMask + 2 + ReactMask + 2 + + 38 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 29 + + FriendMask + 0 + ReactMask + 8 + + 39 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 18 + + FriendMask + 0 + ReactMask + 8 + + 390 + + EnemyFactions + + 60 + + EnemyMask + 0 + FriendFactions + + 21 + + FriendMask + 0 + ReactMask + 0 + + 4 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 40 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 34 + + FriendMask + 0 + ReactMask + 8 + + 41 + + EnemyFactions + + 36 + + EnemyMask + 1 + FriendFactions + + 35 + + FriendMask + 0 + ReactMask + 8 + + 410 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 43 + + FriendMask + 0 + ReactMask + 8 + + 411 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 310 + + FriendMask + 0 + ReactMask + 8 + + 412 + + EnemyFactions + + 509 + + EnemyMask + 2 + FriendFactions + + 510 + + FriendMask + 4 + ReactMask + 4 + + 413 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 309 + + FriendMask + 0 + ReactMask + 8 + + 414 + + EnemyFactions + + 65 + + EnemyMask + 1 + FriendFactions + + 576 + + FriendMask + 0 + ReactMask + 8 + + 415 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 311 + + FriendMask + 0 + ReactMask + 8 + + 416 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 42 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 36 + + FriendMask + 1 + ReactMask + 1 + + 43 + + EnemyFactions + + 36 + + EnemyMask + 0 + FriendFactions + + 35 + + FriendMask + 0 + ReactMask + 8 + + 430 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 44 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 37 + + FriendMask + 0 + ReactMask + 8 + + 45 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 38 + + FriendMask + 0 + ReactMask + 8 + + 450 + + EnemyFactions + + 40 + + EnemyMask + 1 + FriendFactions + + 229 + + FriendMask + 0 + ReactMask + 8 + + 46 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 39 + + FriendMask + 0 + ReactMask + 8 + + 47 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 41 + + FriendMask + 0 + ReactMask + 8 + + 470 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 471 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 349 + + FriendMask + 0 + ReactMask + 0 + + 472 + + EnemyFactions + + 349 + + EnemyMask + 1 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 8 + + 473 + + EnemyFactions + + 70 + + EnemyMask + 0 + FriendFactions + + 349 + + FriendMask + 0 + ReactMask + 0 + + 474 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 369 + + FriendMask + 0 + ReactMask + 0 + + 475 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 369 + + FriendMask + 0 + ReactMask + 1 + + 48 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 42 + + FriendMask + 0 + ReactMask + 8 + + 49 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 43 + + FriendMask + 0 + ReactMask + 8 + + 494 + + EnemyFactions + + 53 + + EnemyMask + 1 + FriendFactions + + 389 + + FriendMask + 0 + ReactMask + 8 + + 495 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 40 + + FriendMask + 1 + ReactMask + 1 + + 5 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 50 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 44 + + FriendMask + 0 + ReactMask + 8 + + 51 + + EnemyFactions + + 46 + 40 + + EnemyMask + 1 + FriendFactions + + 45 + + FriendMask + 0 + ReactMask + 8 + + 514 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 409 + + FriendMask + 0 + ReactMask + 8 + + 52 + + EnemyFactions + + 770 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 53 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 49 + + FriendMask + 2 + ReactMask + 2 + + 534 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 54 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 48 + + FriendMask + 0 + ReactMask + 8 + + 55 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 47 + + FriendMask + 2 + ReactMask + 2 + + 554 + + EnemyFactions + + EnemyMask + 7 + FriendFactions + + 429 + + FriendMask + 0 + ReactMask + 8 + + 56 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 49 + + FriendMask + 2 + ReactMask + 2 + + 57 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 574 + + EnemyFactions + + 450 + + EnemyMask + 1 + FriendFactions + + 449 + + FriendMask + 0 + ReactMask + 8 + + 575 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 450 + + FriendMask + 0 + ReactMask + 8 + + 58 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 59 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 32 + + FriendMask + 0 + ReactMask + 8 + + 594 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 6 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 60 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 50 + + FriendMask + 0 + ReactMask + 8 + + 61 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 51 + + FriendMask + 0 + ReactMask + 8 + + 614 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 36 + + FriendMask + 1 + ReactMask + 0 + + 62 + + EnemyFactions + + 1015 + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 63 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 53 + + FriendMask + 0 + ReactMask + 8 + + 634 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 635 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 0 + + 636 + + EnemyFactions + + 65 + + EnemyMask + 1 + FriendFactions + + 576 + + FriendMask + 0 + ReactMask + 8 + + 637 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 470 + + FriendMask + 0 + ReactMask + 1 + + 64 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 65 + + EnemyFactions + + 45 + + EnemyMask + 0 + FriendFactions + + 76 + + FriendMask + 0 + ReactMask + 0 + + 654 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 82 + + FriendMask + 0 + ReactMask + 8 + + 655 + + EnemyFactions + + EnemyMask + 5 + FriendFactions + + 90 + + FriendMask + 0 + ReactMask + 8 + + 66 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 55 + + FriendMask + 0 + ReactMask + 8 + + 67 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 674 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 48 + + FriendMask + 0 + ReactMask + 0 + + 68 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 69 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 470 + + FriendMask + 0 + ReactMask + 0 + + 694 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 2 + + 695 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 749 + + FriendMask + 0 + ReactMask + 0 + + 7 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 70 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 57 + + FriendMask + 0 + ReactMask + 8 + + 71 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 714 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 72 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 58 + + FriendMask + 0 + ReactMask + 8 + + 73 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 669 + + FriendMask + 0 + ReactMask + 8 + + 734 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 48 + + FriendMask + 1 + ReactMask + 1 + + 735 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 489 + + FriendMask + 1 + ReactMask + 1 + + 736 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 489 + + FriendMask + 0 + ReactMask + 8 + + 74 + + EnemyFactions + + 289 + + EnemyMask + 1 + FriendFactions + + 60 + + FriendMask + 0 + ReactMask + 8 + + 754 + + EnemyFactions + + 34 + + EnemyMask + 1 + FriendFactions + + 48 + + FriendMask + 0 + ReactMask + 8 + + 76 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 61 + + FriendMask + 2 + ReactMask + 0 + + 77 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 774 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 775 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 776 + + EnemyFactions + + 249 + 80 + + EnemyMask + 0 + FriendFactions + + 910 + 531 + + FriendMask + 0 + ReactMask + 0 + + 777 + + EnemyFactions + + 915 + + EnemyMask + 0 + FriendFactions + + 912 + + FriendMask + 1 + ReactMask + 1 + + 778 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 511 + + FriendMask + 0 + ReactMask + 8 + + 78 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 79 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 794 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 795 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 572 + + FriendMask + 0 + ReactMask + 8 + + 80 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 81 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 64 + + FriendMask + 0 + ReactMask + 8 + + 814 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 82 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 65 + + FriendMask + 0 + ReactMask + 8 + + 83 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 834 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 84 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 85 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 854 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 577 + + FriendMask + 0 + ReactMask + 1 + + 855 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 577 + + FriendMask + 0 + ReactMask + 0 + + 86 + + EnemyFactions + + 769 + + EnemyMask + 0 + FriendFactions + + 771 + + FriendMask + 1 + ReactMask + 0 + + 87 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 8 + + 874 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 875 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 876 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 877 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 88 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 71 + + FriendMask + 2 + ReactMask + 2 + + 89 + + EnemyFactions + + 20 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 894 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 108 + + FriendMask + 2 + ReactMask + 2 + + 90 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 91 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 914 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 92 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 93 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 934 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 575 + + FriendMask + 0 + ReactMask + 8 + + 94 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 8 + ReactMask + 0 + + 95 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 78 + + FriendMask + 0 + ReactMask + 8 + + 954 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 96 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 97 + + EnemyFactions + + 79 + + EnemyMask + 0 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 8 + + 974 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 98 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 99 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 994 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 0 + + 995 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 996 + + EnemyFactions + + 249 + + EnemyMask + 8 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 1 + + + diff --git a/Female.png b/Female.png new file mode 100644 index 0000000..cf47eeb Binary files /dev/null and b/Female.png differ diff --git a/FileController.h b/FileController.h new file mode 100644 index 0000000..b08d461 --- /dev/null +++ b/FileController.h @@ -0,0 +1,60 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: FileController.m 315 2010-04-23 04:12:45Z Tanaris4 $ + * + */ + +#import + +@class FileObject; + +@interface FileController : NSObject { + +} + +// we shouldn't really use this ++ (FileController*)sharedFileController; + +// save all objects in the array +- (BOOL)saveObjects:(NSArray*)objects; + +// save one object +- (BOOL)saveObject:(FileObject*)obj; + +// get all objects with the extension +- (NSArray*)getObjectsWithClass:(Class)class; + +// delete the object with this file name +- (BOOL)deleteObjectWithFilename:(NSString*)filename; + +// delete an object +- (BOOL)deleteObject:(FileObject*)obj; + +// gets the filename (not path) for an object +- (NSString*)filenameForObject:(FileObject*)obj; + +// old method +- (NSArray*)dataForKey: (NSString*)key withClass:(Class)class; + +// just show an object in the finder +- (void)showInFinder: (id)object; +@end diff --git a/FileController.m b/FileController.m new file mode 100644 index 0000000..48a30a7 --- /dev/null +++ b/FileController.m @@ -0,0 +1,320 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: FileController.h 315 2010-04-23 04:12:45Z Tanaris4 $ + * + */ + +#import "FileController.h" +#import "FileObject.h" + +// types of files we're saving +#import "RouteCollection.h" +#import "CombatProfile.h" +#import "MailActionProfile.h" +#import "Behavior.h" +#import "PvPBehavior.h" +#import "RouteSet.h" + +#define APPLICATION_SUPPORT_FOLDER @"~/Library/Application Support/PocketGnome/" + +@interface FileController (Internal) +- (NSString*)applicationSupportFolder; +- (NSString*)pathWithFilename:(NSString*)filename; +- (BOOL)saveObject:(FileObject*)obj; +- (NSString*)pathForObject:(FileObject*)obj; +- (NSString*)extensionForClass:(Class)class; +- (id)getObject:(NSString*)filename; +@end + +@implementation FileController + +static FileController *_sharedFileController = nil; + ++ (FileController*)sharedFileController{ + if (_sharedFileController == nil) + _sharedFileController = [[[self class] alloc] init]; + return _sharedFileController; +} + +- (id) init { + self = [super init]; + if ( self != nil ) { + + // create directory? + NSFileManager *fileManager = [NSFileManager defaultManager]; + NSString *folder = [self applicationSupportFolder]; + + // create folder? + if ( [fileManager fileExistsAtPath: folder] == NO ) { + PGLog(@"[FileManager] Save data folder does not exist! Creating %@", folder); + [fileManager createDirectoryAtPath: folder attributes: nil]; + } + } + + return self; +} + +#pragma mark Public + + +// save all objects in the array +- (BOOL)saveObjects:(NSArray*)objects{ + + for ( FileObject *obj in objects ){ + if ( obj.changed ){ + [self saveObject:obj]; + } + } + + return YES; +} + +// get all objects with the extension +- (NSArray*)getObjectsWithClass:(Class)class{ + + // load a list of files at the directory + NSError *error = nil; + NSFileManager *fileManager = [NSFileManager defaultManager]; + NSArray *directoryList = [fileManager contentsOfDirectoryAtPath:[self applicationSupportFolder] error:&error]; + if ( error ){ + PGLog(@"[FileManager] Error when reading your objects from %@! %@", directoryList, error); + return nil; + } + + NSMutableArray *objectList = [NSMutableArray array]; + NSString *ext = [self extensionForClass:class]; + + // if we get here then we're good! + if ( directoryList && [directoryList count] ){ + + // loop through directory list + for ( NSString *fileName in directoryList ){ + + // valid object file + if ( [[fileName pathExtension] isEqualToString: ext] ){ + + id object = [self getObject:fileName]; + + // we JUST loaded this from the disk, we need to make sure we know it's not changed + [(FileObject*)object setChanged:NO]; + + // valid route - add it! + if ( object != nil ){ + [objectList addObject:object]; + } + } + } + } + + return [[objectList retain] autorelease]; +} + +- (BOOL)deleteObject:(FileObject*)obj{ + NSString *filename = [self filenameForObject:obj]; + return [self deleteObjectWithFilename:filename]; +} + +// delete the object with this file name +- (BOOL)deleteObjectWithFilename:(NSString*)filename{ + NSFileManager *fileManager = [NSFileManager defaultManager]; + NSString *filePath = [self pathWithFilename:filename]; + + log(LOG_FILEMANAGER, @"deleting %@", filePath); + + if ( [fileManager fileExistsAtPath: filePath] ){ + NSError *error = nil; + if ( ![fileManager removeItemAtPath:filePath error:&error] ){ + PGLog(@"[FileManager] Error %@ when trying to delete object %@", error, filePath); + return NO; + } + } + return YES; +} + +// old method, before we started storing them in files +- (NSArray*)dataForKey: (NSString*)key withClass:(Class)class{ + + // do we have data? + id data = [[NSUserDefaults standardUserDefaults] objectForKey: key]; + + if ( data ){ + NSArray *allData = [NSKeyedUnarchiver unarchiveObjectWithData: data]; + + // do a check to see if this is old-style information (not stored in files) + if ( allData != nil && [allData count] > 0 ){ + + // is this the correct kind of class? + if ( [[allData objectAtIndex:0] isKindOfClass:class] ){ + + NSMutableArray *objects = [NSMutableArray array]; + + for ( FileObject *obj in allData ){ + obj.changed = YES; + [objects addObject:obj]; + } + + PGLog(@"[FileManager] Imported %d objects of type %@", [objects count], [self extensionForClass:class]); + + return [[objects retain] autorelease]; + } + } + } + + return nil; +} + +#pragma mark Save/Get + +// save an object +- (BOOL)saveObject:(FileObject*)obj{ + NSString *filePath = [self pathForObject:obj]; + if ( !filePath || [filePath length] == 0 ){ + PGLog(@"[FileManager] Unable to save object %@", obj); + return NO; + } + + PGLog(@"[FileManager] Saving %@ to %@", obj, filePath); + [NSKeyedArchiver archiveRootObject: obj toFile: filePath]; + [obj setChanged:NO]; + return YES; +} + +// grab a single object +- (id)getObject:(NSString*)filename{ + NSString *path = [self pathWithFilename:filename]; + + // verify the file exists + NSFileManager *fileManager = [NSFileManager defaultManager]; + if ( [fileManager fileExistsAtPath: path] == NO ) { + PGLog(@"[FileManager] Object %@ is missing! Unable to load", filename); + return nil; + } + + id object = [NSKeyedUnarchiver unarchiveObjectWithFile:path]; + + // not sure why i saved it as a dictionary before, i am r tard + if ( [object isKindOfClass:[NSDictionary class]] ){ + object = [object valueForKey:@"Route"]; + } + + return [object retain]; +} + +// delete all objects with a given extension +- (void)deleteAllWithExtension:(NSString*)ext{ + NSError *error = nil; + NSFileManager *fileManager = [NSFileManager defaultManager]; + NSString *dir = [self applicationSupportFolder]; + NSArray *directoryList = [fileManager contentsOfDirectoryAtPath:dir error:&error]; + if ( error ){ + PGLog(@"[FileManager] Error when deleting your objects from %@! %@", directoryList, error); + return; + } + + // if we get here then we're good! + if ( directoryList && [directoryList count] ){ + + // loop through directory list + for ( NSString *fileName in directoryList ){ + + // valid object file + if ( [[fileName pathExtension] isEqualToString: ext] ){ + + NSString *filePath = [dir stringByAppendingPathComponent: fileName]; + + PGLog(@"[FileManager] Removing %@", filePath); + if ( ![fileManager removeItemAtPath:filePath error:&error] ){ + PGLog(@"[FileManager] Error %@ when trying to delete object %@", error, filePath); + } + } + } + } +} + +#pragma mark Helpers + +// extension for a given object class +- (NSString*)extensionForClass:(Class)class{ + + // route (we shouldn't really have these SAVED anymore, but could find some) + if ( class == [RouteSet class] ){ + return @"route"; + } + // route collection + else if ( class == [RouteCollection class] ){ + return @"routecollection"; + } + // combat profile + else if ( class == [CombatProfile class] ){ + return @"combatprofile"; + } + // behavior + else if ( class == [Behavior class] ){ + return @"behavior"; + } + else if ( class == [PvPBehavior class] ){ + return @"pvpbehavior"; + } + else if ( class == [MailActionProfile class] ){ + return @"mailprofile"; + } + + return nil; +} + +// our app support folder +- (NSString*)applicationSupportFolder{ + NSString *folder = APPLICATION_SUPPORT_FOLDER; + folder = [folder stringByExpandingTildeInPath]; + return [[folder retain] autorelease]; +} + +// filename with extension for an object +- (NSString*)filenameForObject:(FileObject*)obj{ + NSString *ext = [self extensionForClass:[obj class]]; + return [[[NSString stringWithFormat:@"%@.%@", [obj name], ext] retain] autorelease]; +} + +// full path with the filename +- (NSString*)pathWithFilename:(NSString*)filename{ + NSString *folder = [self applicationSupportFolder]; + return [[[folder stringByAppendingPathComponent: filename] retain] autorelease]; +} + +// full path to an object +- (NSString*)pathForObject:(FileObject*)obj{ + NSString *filename = [self filenameForObject:obj]; + return [[[self pathWithFilename:filename] retain] autorelease]; +} + +#pragma mark UI Options (optional) + +- (void)showInFinder: (id)object{ + + NSString *filePath = [self applicationSupportFolder]; + + // show in finder! + NSWorkspace *ws = [NSWorkspace sharedWorkspace]; + [ws openFile: filePath]; +} + +@end diff --git a/FileObject.h b/FileObject.h new file mode 100644 index 0000000..4a0773d --- /dev/null +++ b/FileObject.h @@ -0,0 +1,44 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: FileObject.h 315 2010-04-23 04:12:45Z Tanaris4 $ + * + */ + +#import + + +@interface FileObject : NSObject { + NSString *_UUID; // unique ID + NSString *_name; + + NSArray *_observers; + + BOOL _changed; // use so we know if we should re-save or not +} + +@property (readwrite, assign) BOOL changed; +@property (readonly, retain) NSString *UUID; +@property (readwrite, copy) NSString *name; + +- (void)updateUUUID; + +@end diff --git a/FileObject.m b/FileObject.m new file mode 100644 index 0000000..73a0e1b --- /dev/null +++ b/FileObject.m @@ -0,0 +1,128 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: FileObject.m 315 2010-04-23 04:12:45Z Tanaris4 $ + * + */ + +#import "FileObject.h" + +@interface FileObject () +@property (readwrite, retain) NSString *UUID; + +- (NSString*)generateUUID; +@end + +@implementation FileObject + +- (id) init{ + self = [super init]; + if (self != nil) { + self.changed = NO; + self.name = nil; + + // create a new UUID + self.UUID = [self generateUUID]; + + _observers = nil; + + // start observing! (so we can detect changes) + [self performSelector:@selector(addObservers) withObject:nil afterDelay:1.0f]; + } + + return self; +} + +- (void)dealloc{ + [self removeObserver:self forKeyPath:@"name"]; + for ( NSString *observer in _observers ){ + [self removeObserver:self forKeyPath:observer]; + } + + [_observers release]; _observers = nil; + [super dealloc]; +} + +@synthesize changed = _changed; +@synthesize UUID = _UUID; +@synthesize name = _name; + +// called when loading from disk! +- (id)initWithCoder:(NSCoder *)decoder{ + if ( !self ){ + self = [self init]; + } + + if ( self ) { + self.UUID = [decoder decodeObjectForKey: @"UUID"]; + self.name = [decoder decodeObjectForKey: @"Name"]; + + // create a new UUID? + if ( !self.UUID || [self.UUID length] == 0 ){ + self.UUID = [self generateUUID]; + self.changed = YES; + } + } + + return self; +} + +// called when we're saving a file +- (void)encodeWithCoder:(NSCoder *)coder{ + [coder encodeObject: self.UUID forKey: @"UUID"]; + [coder encodeObject: self.name forKey: @"Name"]; +} + +- (id)copyWithZone:(NSZone *)zone{ + return nil; +} + +- (NSString*)generateUUID{ + CFUUIDRef uuidObj = CFUUIDCreate(nil); + NSString *uuid = (NSString*)CFUUIDCreateString(nil, uuidObj); + CFRelease(uuidObj); + + return [uuid retain]; +} + +- (void)updateUUUID{ + self.UUID = [self generateUUID]; +} + +- (void)setChanged:(BOOL)val{ + //PGLog(@"[Changed] Set from %d to %d for %@", _changed, val, self); + _changed = val; +} + +// observations (to detect when an object changes) +- (void)addObservers{ + [self addObserver: self forKeyPath: @"name" options: NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context: nil]; + for ( NSString *observer in _observers ){ + [self addObserver: self forKeyPath: observer options: NSKeyValueObservingOptionNew | NSKeyValueObservingOptionOld context: nil]; + } +} + +- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{ + PGLog(@"%@ changed! %@ %@", self, keyPath, change); + self.changed = YES; +} + +@end diff --git a/FishController.h b/FishController.h new file mode 100644 index 0000000..c71e07b --- /dev/null +++ b/FishController.h @@ -0,0 +1,74 @@ +// +// FishController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/23/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + +@class SRRecorderControl; + +@class Controller; +@class NodeController; +@class PlayerDataController; +@class MemoryAccess; +@class ChatController; +@class BotController; +@class InventoryController; +@class MemoryViewController; +@class LootController; +@class SpellController; +@class MovementController; + +@class PTHotKey; + +@class Node; + +@interface FishController : NSObject { + IBOutlet Controller *controller; + IBOutlet NodeController *nodeController; + IBOutlet PlayerDataController *playerController; + IBOutlet BotController *botController; + IBOutlet InventoryController *itemController; + IBOutlet LootController *lootController; + IBOutlet SpellController *spellController; + IBOutlet MovementController *movementController; + + BOOL _optApplyLure; + BOOL _optUseContainers; + BOOL _optRecast; + int _optLureItemID; + + BOOL _isFishing; + BOOL _ignoreIsFishing; + + int _applyLureAttempts; + int _totalFishLooted; + int _castNumber; + int _lootAttempt; + + UInt32 _fishingSpellID; + UInt64 _playerGUID; + + Node *_nearbySchool; + //Node *_bobber; + NSDate *_castStartTime; + + NSMutableArray *_facedSchool; +} + +@property (readonly) BOOL isFishing; + +- (void)fish: (BOOL)optApplyLure + withRecast:(BOOL)optRecast + withUse:(BOOL)optUseContainers + withLure:(int)optLureID + withSchool:(Node*)nearbySchool; + +- (void)stopFishing; + +- (Node*)nearbySchool; + +@end diff --git a/FishController.m b/FishController.m new file mode 100644 index 0000000..4e738a6 --- /dev/null +++ b/FishController.m @@ -0,0 +1,596 @@ +// +// FishController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/23/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "FishController.h" +#import "Controller.h" +#import "NodeController.h" +#import "PlayerDataController.h" +#import "BotController.h" +#import "InventoryController.h" +#import "LootController.h" +#import "SpellController.h" +#import "ActionMenusController.h" +#import "MovementController.h" + +#import "Offsets.h" +#import "Errors.h" + +#import "Node.h" +#import "Position.h" +#import "MemoryAccess.h" +#import "Player.h" +#import "Item.h" +#import "Spell.h" + +#import "PTHeader.h" + +#import +#import + +#define ITEM_REINFORCED_CRATE 44475 + +#define OFFSET_MOVED 0xCC // When this is 1 the bobber has moved! Offset from the base address +#define OFFSET_STATUS 0xCE // This is 132 when the bobber is normal, shortly after it moves it's 148, then finally finishes at 133 (is it animation state?) +#define STATUS_NORMAL 132 +#define OFFSET_VISIBILITY 0xD8 // Set this to 0 to hide the bobber! + +// TO DO: +// Log out on full inventory +// Add a check for hostile players near you +// Add a check for friendly players near you (and whisper check?) +// Check for GMs? +// Add a check for the following items: "Reinforced Crate", "Borean Leather Scraps", then /use them :-) +// Select a route to run back in case you are killed (add a delay until res option as well?) +// /use Bloated Mud Snapper +// Recast if didn't land near the school? +// new bobber detection method? fire event when it's found? Can check for invalid by firing off [node validToLoot] +// turn on keyboard turning if we're facing a node? +// make sure user has bobbers in inventory +// closing wow will crash PG - fix this + +@interface FishController (Internal) +- (void)stopFishing; +- (void)fishCast; +- (BOOL)applyLure; +- (void)monitorBobber:(Node*)bobber; +- (BOOL)isPlayerFishing; +- (void)facePool:(Node*)school; +- (void)verifyLoot; +@end + + +@implementation FishController + +- (id)init{ + self = [super init]; + if (self != nil) { + _isFishing = NO; + _totalFishLooted = 0; + _ignoreIsFishing = NO; + //_blockActions = NO; + _lootAttempt = 0; + + _nearbySchool = nil; + _facedSchool = [[NSMutableArray array] retain]; + _castStartTime = nil; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(fishLooted:) + name: ItemLootedNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerHasDied:) + name: PlayerHasDiedNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsInvalid:) + name: PlayerIsInvalidNotification + object: nil]; + } + return self; +} + +- (void) dealloc +{ + [_facedSchool release]; + [super dealloc]; +} + +@synthesize isFishing = _isFishing; + + +/* + _doFishing = [fishingCheckbox state]; + _fishingGatherDistance = [fishingGatherDistanceText floatValue]; + _fishingApplyLure = [fishingApplyLureCheckbox state]; + _fishingOnlySchools = [fishingOnlySchoolsCheckbox state]; + _fishingRecast = [fishingRecastCheckbox state]; + _fishingUseContainers = [fishingUseContainersCheckbox state]; + _fishingHideBobbers = [fishingHideBobbersCheckbox state]; + _fishingLureSpellID = [fishingLurePopUpButton selectedTag];*/ + +- (void)fish: (BOOL)optApplyLure + withRecast:(BOOL)optRecast + withUse:(BOOL)optUseContainers + withLure:(int)optLureID + withSchool:(Node*)nearbySchool +{ + + log(LOG_DEV, @"[Fishing] Fishing..."); + + if ( nearbySchool && [nearbySchool isValid] ){ + [self facePool:nearbySchool]; + } + + // Reload spells, since they may have just trained fishing! + [spellController reloadPlayerSpells]; + + // Get our fishing spell ID! + Spell *fishingSpell = [spellController playerSpellForName: @"Fishing"]; + if ( fishingSpell ){ + _fishingSpellID = [[fishingSpell ID] intValue]; + + } + else{ + [controller setCurrentStatus:@"Bot: You need to learn fishing!"]; + return; + } + + // set options + _optApplyLure = optApplyLure; + _optUseContainers = optUseContainers; + _optRecast = optRecast; + _optLureItemID = optLureID; + _nearbySchool = [nearbySchool retain]; + + _isFishing = YES; + + // Reset our fishing variables! + _applyLureAttempts = 0; + _ignoreIsFishing = NO; + _castNumber = 0; + _totalFishLooted = 0; + _playerGUID = [[playerController player] GUID]; + + // are we on the ground? if not lets delay our cast a bit + if ( ![[playerController player] isOnGround] ){ + log(LOG_FISHING, @"Falling, fishing soon..."); + [self performSelector:@selector(fishCast) withObject:nil afterDelay:2.0f]; + } + // start fishing if we're on the ground + else{ + log(LOG_DEV, @"[Fishing] On ground, fishing!"); + [self fishCast]; + } +} + +- (void)stopFishing{ + _isFishing = NO; + + [_nearbySchool release]; _nearbySchool = nil; +} + +- (void)fishCast{ + + if ( !_isFishing || ![botController isBotting] ){ + return; + } + + // loot window open? check again shortly + if ( [lootController isLootWindowOpen] ){ + log(LOG_FISHING, @"Loot window is open! Attempting to loot"); + + // cancel previous requests if any + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + + // need to loot soon? + _lootAttempt = 0; + [self verifyLoot]; + + return; + } + + // school is gone! + if ( _nearbySchool && ![_nearbySchool isValid] ){ + + [self stopFishing]; + + log(LOG_FISHING, @"[Eval] Fishing - school gone"); + [botController evaluateSituation]; + return; + } + + // use containers? + if ( _optUseContainers ){ + + Item *item = [itemController itemForID:[NSNumber numberWithInt:ITEM_REINFORCED_CRATE]]; + + if ( item && [itemController collectiveCountForItem:item] > 0 ){ + // Use our crate! + [botController performAction:(USE_ITEM_MASK + ITEM_REINFORCED_CRATE)]; + + // Wait a bit so we can loot it! + usleep([controller refreshDelay]*2); + } + } + + // Lets apply some lure if we need to! + [self applyLure]; + + // We don't want to start fishing if we already are! + if ( ![playerController isCasting] || _ignoreIsFishing ){ + + // Reset this! We only want this to be YES when we have to re-cast b/c we're not close to a school! + _ignoreIsFishing = NO; + + // Time to fish! + [botController performAction: _fishingSpellID]; + _castStartTime = [[NSDate date] retain]; + [controller setCurrentStatus: @"Bot: Fishing"]; + log(LOG_FISHING, @"Casting!"); + + // find out bobber so we can monitor it! + [self performSelector:@selector(findBobber) withObject:nil afterDelay:2.0f]; + + _castNumber++; + } + else{ + if ( ![playerController isCasting] ) log(LOG_FISHING, @"Cast attempted failed. Trying again in 2 seconds..."); + // try again soon? + [NSObject cancelPreviousPerformRequestsWithTarget:self selector:_cmd object:nil]; + [self performSelector:@selector(fishCast) withObject:nil afterDelay:2.0f]; + } +} + +- (BOOL)applyLure{ + + NSLog(@"applying lure? %d", _optApplyLure); + if ( !_optApplyLure ){ + return NO; + } + + // check to see if we even have any of the lure in our bags + NSArray *itemsInInventory = [itemController itemsInBags]; + BOOL foundLure = NO; + for ( Item *item in itemsInInventory ){ + if ( [item entryID] == _optLureItemID ){ + foundLure = YES; + break; + } + } + + NSLog(@"Do we have any? %d", foundLure); + + // lure still in bags or we're using the hat! + if ( foundLure || _optLureItemID == 33820 ){ + + Item *item = [itemController itemForGUID: [[playerController player] itemGUIDinSlot: SLOT_MAIN_HAND]]; + if ( ![item hasTempEnchantment] && _applyLureAttempts < 3 ){ + + log(LOG_DEV, @"[Fishing] Using lure: %d on item %d", _optLureItemID, [item entryID]); + + // Lets actually use the item we want to apply! + [botController performAction:(USE_ITEM_MASK + _optLureItemID)]; + + // Wait a bit before we cast the next one! + usleep([controller refreshDelay]*2); + + // don't need to use the pole if we're casting a spell! + if ( _optLureItemID != 33820 ){ + // Now use our fishing pole so it's applied! + [botController performAction:(USE_ITEM_MASK + [item entryID])]; + + // we may need this? + usleep([controller refreshDelay]); + } + + // Are we casting the lure on our fishing pole? + if ( [playerController spellCasting] > 0 && ![self isPlayerFishing] ){ + _applyLureAttempts = 0; + + log(LOG_FISHING, @"Applying lure"); + + // This will "pause" our main thread until this is complete! + usleep(3500000); + } + else{ + log(LOG_FISHING, @"Lure application failed!"); + _applyLureAttempts++; + } + + return YES; + } + } + else{ + log(LOG_FISHING, @"Player is out of lures, not applying..."); + } + + return NO; +} + +- (void)facePool:(Node*)school{ + // turn toward + if ( ![_facedSchool containsObject:school] ){ + log(LOG_FISHING, @"Turning toward %@", school); + [movementController turnTowardObject:school]; + } + + [_facedSchool addObject:[school retain]]; +} + +// simply searches for our player's bobber +- (void)findBobber{ + if ( !_isFishing || ![botController isBotting] ) + return; + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return; + + UInt16 status = 0; + for ( Node *bobber in [nodeController nodesOfType:GAMEOBJECT_TYPE_FISHING_BOBBER shouldLock:YES] ){ + + // if we don't do this check we could find an old node (i believe status is animation state, not sure) + if ( [memory loadDataForObject: self atAddress: ([bobber baseAddress] + OFFSET_STATUS) Buffer: (Byte *)&status BufLength: sizeof(status)] ){ + + // bobber found! we're done + if ( [bobber owner] == _playerGUID ){ + + // Is our bobber normal yet? + if ( status == STATUS_NORMAL ){ + + log(LOG_FISHING, @"Bobber found, monitoring"); + [self monitorBobber:[bobber retain]]; + return; + } + } + } + } + + // only keep looking if we're fishing + if ( [self isPlayerFishing] ){ + log(LOG_FISHING, @"Bobber, not found, searching again..."); + [self performSelector:@selector(findBobber) withObject:nil afterDelay:0.1f]; + } + else{ + log(LOG_FISHING, @"No longer fishing, bobber scan stopped"); + + // fish again! + _ignoreIsFishing = YES; + [self fishCast]; + } +} + +// monitors our bobber + clicks as needed +- (void)monitorBobber:(Node*)bobber{ + if ( !_isFishing || ![botController isBotting] ) + return; + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return; + + // verify our bobber is still good! + if ( !bobber || ![bobber isValid] ){ + log(LOG_FISHING, @"Our bobber is invalid :("); + + // make sure we don't try to watch this node next + //[nodeController finishedNode:bobber]; + + // fish again + _ignoreIsFishing = YES; // probably not necessary, but just in case it goes invalid while we're casting (probably not possible)? + [self fishCast]; + + return; + } + + // do we have to make sure it landed in a pool + if ( _optRecast && _nearbySchool ){ + float distance = [[bobber position] distanceToPosition: [_nearbySchool position]]; + + // Fish again! Didn't land in the school! + if ( distance > 2.6f ){ + _ignoreIsFishing = YES; + + [self fishCast]; + return; + } + } + + // check to see if it's bouncing + UInt16 bouncing=0; + if ( [memory loadDataForObject: self atAddress: ([bobber baseAddress] + OFFSET_MOVED) Buffer: (Byte *)&bouncing BufLength: sizeof(bouncing)] ){ + + log(LOG_DEV, @"[Fishing] Bobber Bouncing: %d", bouncing); + if (bouncing) log(LOG_FISHING, @"The bobber is Bouncing!"); + + // it's bouncing! + if ( bouncing ){ + + // click our bobber! + [botController interactWithMouseoverGUID: [bobber GUID]]; + + + // TO DO: replace finished?? + // make sure we don't try to watch this node next + //[nodeController finishedNode:bobber]; + + // make sure the fish was looted! + _lootAttempt = 0; + [self performSelector:@selector(verifyLoot) withObject:nil afterDelay:0.3f]; + + return; + } + } + + // another check to make sure the bobber is still valid (i believe status is animation state) + UInt16 status=0; + if ( [memory loadDataForObject: self atAddress: ([bobber baseAddress] + OFFSET_STATUS) Buffer: (Byte *)&status BufLength: sizeof(status)] ){ + + // bobber is no longer valid :/ (player could move or stop casting) + if ( status != STATUS_NORMAL ){ + log(LOG_FISHING, @"Bobber invalid, re-casting"); + _ignoreIsFishing = YES; + + [self fishCast]; + return; + } + } + + [self performSelector:@selector(monitorBobber:) withObject:bobber afterDelay:0.1f]; +} + +- (BOOL)isPlayerFishing{ + return ([playerController spellCasting] == _fishingSpellID); +} + +- (void)verifyLoot{ + + if ( !_isFishing ) + return; + + // Sometimes the loot window sticks, i hate it, lets add a fix! + if ( [lootController isLootWindowOpen] ){ + + _lootAttempt++; + + // Loot window has been open too long lets accept it! + if ( _lootAttempt > 10 ){ + [lootController acceptLoot]; + } + + log(LOG_DEV, @"Verifying loot attempt %d", _lootAttempt); + + [self performSelector:@selector(verifyLoot) withObject:nil afterDelay:0.1f]; + } + + // just in case the item notification doesn't fire off + else{ + log(LOG_DEV, @"Attempting to cast in 3.0 seconds"); + [self performSelector:@selector(fishCast) withObject:nil afterDelay:3.0f]; + } +} + + +#pragma mark Notifications + +// Called whenever ANY item is looted +- (void)fishLooted: (NSNotification*)notification { + + if ( !_isFishing ) + return; + + _totalFishLooted++; + + NSDate *currentTime = [NSDate date]; + log(LOG_FISHING, @"Fish looted after %0.2f seconds.", [currentTime timeIntervalSinceDate: _castStartTime]); + + [self performSelector:@selector(fishCast) withObject:nil afterDelay:0.1f]; +} + +- (void)playerHasDied: (NSNotification*)not { + if ( _isFishing ){ + [self stopFishing]; + } +} + +- (void)playerIsInvalid: (NSNotification*)not { + if( _isFishing ) { + [self stopFishing]; + } +} + +/*- (void)joinWG{ + + if ( !_isFishing ){ + return; + } + + // If we have this enabled! + if ( 1 == 0 ){ + // The data structure CGPoint represents a point in a two-dimensional + // coordinate system. Here, X and Y distance from upper left, in pixels. + // + CGPoint pt; + CGRect wowSize = [controller wowWindowRect]; + + // Constants - ZOMG SO COMPLICATED TEH MATHSZ + float yUpperConst = .2238; + float yLowerConst = .238443; + float xLeftConst = .40456; + float xRightConst = .4936; + + float yPosToClick = wowSize.origin.y + ( ((wowSize.size.height * yUpperConst) + (wowSize.size.height * yLowerConst)) / 2 ); + float xPosToClick = wowSize.origin.x + ( ((wowSize.size.width * xLeftConst) + (wowSize.size.width * xRightConst)) / 2 ); + pt.y = yPosToClick; + pt.x = xPosToClick; + + + log(LOG_FISHING, @"Origin: {%0.2f, %0.2f} Dimensions: {%0.2f, %0.2f}", wowSize.origin.x, wowSize.origin.y, wowSize.size.width, wowSize.size.height); + + log(LOG_FISHING, @"Clicking {%0.2f, %0.2f}", xPosToClick, yPosToClick); + + if ( ![controller isWoWFront] ){ + [controller makeWoWFront]; + usleep(10000); + } + + + // This is where the magic happens. See CGRemoteOperation.h for details. + // + // CGPostMouseEvent( CGPoint mouseCursorPosition, + // boolean_t updateMouseCursorPosition, + // CGButtonCount buttonCount, + // boolean_t mouseButtonDown, ... ) + // + // So, we feed coordinates to CGPostMouseEvent, put the mouse there, + // then click and release. + // + + if( pt.x && pt.y && [controller isWoWFront] ){ + + CGInhibitLocalEvents(YES); + + CGPostMouseEvent( pt, TRUE, 1, TRUE ); + + // Click a few times just to be safe! + int i = 0; + for ( i = 0; i < 5; i++ ){ + usleep(100000); + CGPostMouseEvent( pt, TRUE, 1, FALSE ); + } + + CGInhibitLocalEvents(NO); + } + + + // right click on the loot point to skin + BOOL weSkinned = NO; + if(clickPt.x && clickPt.y && [controller isWoWFront]) { + // move the mouse into position and click + weSkinned = YES; + CGInhibitLocalEvents(YES); + CGPostMouseEvent(clickPt, FALSE, 2, FALSE, FALSE); + PostMouseEvent(kCGEventMouseMoved, kCGMouseButtonLeft, clickPt, wowProcess); + usleep(100000); // wait + PostMouseEvent(kCGEventRightMouseDown, kCGMouseButtonRight, clickPt, wowProcess); + usleep(30000); + PostMouseEvent(kCGEventRightMouseUp, kCGMouseButtonRight, clickPt, wowProcess); + usleep(100000); // wait + CGInhibitLocalEvents(NO); + } + + + } + }*/ + +- (Node*)nearbySchool{ + return [[_nearbySchool retain] autorelease]; +} + +@end diff --git a/French.lproj/.svn/all-wcprops b/French.lproj/.svn/all-wcprops new file mode 100644 index 0000000..a62df11 --- /dev/null +++ b/French.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 36 +/svn/!svn/ver/445/trunk/French.lproj +END +Gathering.plist +K 25 +svn:wc:ra_dav:version-url +V 52 +/svn/!svn/ver/445/trunk/French.lproj/Gathering.plist +END diff --git a/French.lproj/.svn/entries b/French.lproj/.svn/entries new file mode 100644 index 0000000..f97351a --- /dev/null +++ b/French.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/French.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Gathering.plist +file + + + + +2010-04-24T16:43:03.000000Z +a653d6a93d05779064e1c954406d7537 +2010-01-07T23:03:03.175722Z +147 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +11218 + diff --git a/French.lproj/.svn/text-base/Gathering.plist.svn-base b/French.lproj/.svn/text-base/Gathering.plist.svn-base new file mode 100644 index 0000000..628835a --- /dev/null +++ b/French.lproj/.svn/text-base/Gathering.plist.svn-base @@ -0,0 +1,544 @@ + + + + + Herbalism + + Fleur-de-liche + + Type + Herbalism + Skill + 425 + + Glacépine + + Type + Herbalism + Skill + 435 + + Lotus pourpre + + Type + Herbalism + Skill + 210 + + Larmes d'Arthas + + Type + Herbalism + Skill + 220 + + Soleillette + + Type + Herbalism + Skill + 230 + + Aveuglette + + Type + Herbalism + Skill + 235 + + Champignon fantôme + + Type + Herbalism + Skill + 245 + + Gromsang + + Type + Herbalism + Skill + 250 + + Feuillargent + + Type + Herbalism + Skill + 1 + + Pacifique + + Type + Herbalism + Skill + 1 + + Terrestrine + + Type + Herbalism + Skill + 15 + + Mage royal + + Type + Herbalism + Skill + 50 + + Eglantine + + Type + Herbalism + Skill + 70 + + Doulourante + + Type + Herbalism + Skill + 100 + + Aciérite sauvage + + Type + Herbalism + Skill + 115 + + Sang-royal + + Type + Herbalism + Skill + 125 + + Tombeline + + Type + Herbalism + Skill + 120 + + Sansam doré + + Type + Herbalism + Skill + 260 + + Feuillerêve + + Type + Herbalism + Skill + 270 + + Sauge-argent des montagnes + + Type + Herbalism + Skill + 280 + + Fleur de peste + + Type + Herbalism + Skill + 285 + + Calot de glace + + Type + Herbalism + Skill + 290 + + Lotus noir + + Type + Herbalism + Skill + 300 + + Chardon sanglant + + Type + Herbalism + Skill + 1 + + Gangrelette + + Type + Herbalism + Skill + 300 + + Glaurier + + Type + Herbalism + Skill + 315 + + Voile-misère + + Type + Herbalism + Skill + 325 + + Chapeflamme + + Type + Herbalism + Skill + 335 + + Terocône + + Type + Herbalism + Skill + 325 + + Lichen ancien + + Type + Herbalism + Skill + 340 + + Néantine + + Type + Herbalism + Skill + 350 + + Cauchemardelle + + Type + Herbalism + Skill + 365 + + Chardon de mana + + Type + Herbalism + Skill + 375 + + Buisson de pruinéante + + Type + Herbalism + Skill + 350 + + Vietérule + + Type + Herbalism + Skill + 150 + + Pâlerette + + Type + Herbalism + Skill + 160 + + Moustache de Khadgar + + Type + Herbalism + Skill + 185 + + Hivernale + + Type + Herbalism + Skill + 195 + + Etouffante + + Type + Herbalism + Skill + 85 + + Trèfle doré + + Type + Herbalism + Skill + 220 + + Verpérenne + + Type + Herbalism + Skill + 220 + + Langue de serpent + + Type + Herbalism + Skill + 220 + + Lys tigré + + Type + Herbalism + Skill + 220 + + Dorépine + + Type + Herbalism + Skill + 170 + + Fleur de feu + + Type + Herbalism + Skill + 205 + + + Mining + + Gisement de vrai-argent couvert de vase + + Type + Mining + Skill + 230 + + Gisement de mithril couvert de vase + + Type + Mining + Skill + 175 + + Filon de thorium couvert de limon + + Type + Mining + Skill + 245 + + Filon d'incendicite + + Type + Mining + Skill + 65 + + Gisement de sombrefer + + Type + Mining + Skill + 230 + + Filon de cuivre + + Type + Mining + Skill + 1 + + Filon d'étain + + Type + Mining + Skill + 65 + + Filon d'argent + + Type + Mining + Skill + 75 + + Filon d'or + + Type + Mining + Skill + 155 + + Gisement de fer + + Type + Mining + Skill + 125 + + Riche filon de thorium + + Type + Mining + Skill + 275 + + Riche filon de thorium couvert de limon + + Type + Mining + Skill + 275 + + Filon de thorium Hakkari + + Type + Mining + Skill + 275 + + Petit morceau d'obsidienne + + Type + Mining + Skill + 305 + + Grand morceau d'obsidienne + + Type + Mining + Skill + 305 + + Gisement de gangrefer + + Type + Mining + Skill + 300 + + Gisement d'adamantite + + Type + Mining + Skill + 325 + + Filon de khorium + + Type + Mining + Skill + 375 + + Riche gisement d'adamantite + + Type + Mining + Skill + 350 + + Ancien filon de gemmes + + Type + Mining + Skill + 375 + + Gisement de néanticite + + Type + Mining + Skill + 350 + + Filon d'indurium + + Type + Mining + Skill + 150 + + Gisement de mithril + + Type + Mining + Skill + 175 + + Gisement de vrai-argent + + Type + Mining + Skill + 230 + + Gisement de pierre de sang inférieure + + Type + Mining + Skill + 75 + + Petit filon de thorium + + Type + Mining + Skill + 245 + + Filon d'argent couvert de limon + + Type + Mining + Skill + 75 + + Filon d'or couvert de limon + + Type + Mining + Skill + 155 + + Gisement de saronite + + Type + Mining + Skill + 400 + + Riche gisement de saronite + + Type + Mining + Skill + 400 + + Veine de titane + + Type + Mining + Skill + 400 + + + + diff --git a/French.lproj/Gathering.plist b/French.lproj/Gathering.plist new file mode 100644 index 0000000..628835a --- /dev/null +++ b/French.lproj/Gathering.plist @@ -0,0 +1,544 @@ + + + + + Herbalism + + Fleur-de-liche + + Type + Herbalism + Skill + 425 + + Glacépine + + Type + Herbalism + Skill + 435 + + Lotus pourpre + + Type + Herbalism + Skill + 210 + + Larmes d'Arthas + + Type + Herbalism + Skill + 220 + + Soleillette + + Type + Herbalism + Skill + 230 + + Aveuglette + + Type + Herbalism + Skill + 235 + + Champignon fantôme + + Type + Herbalism + Skill + 245 + + Gromsang + + Type + Herbalism + Skill + 250 + + Feuillargent + + Type + Herbalism + Skill + 1 + + Pacifique + + Type + Herbalism + Skill + 1 + + Terrestrine + + Type + Herbalism + Skill + 15 + + Mage royal + + Type + Herbalism + Skill + 50 + + Eglantine + + Type + Herbalism + Skill + 70 + + Doulourante + + Type + Herbalism + Skill + 100 + + Aciérite sauvage + + Type + Herbalism + Skill + 115 + + Sang-royal + + Type + Herbalism + Skill + 125 + + Tombeline + + Type + Herbalism + Skill + 120 + + Sansam doré + + Type + Herbalism + Skill + 260 + + Feuillerêve + + Type + Herbalism + Skill + 270 + + Sauge-argent des montagnes + + Type + Herbalism + Skill + 280 + + Fleur de peste + + Type + Herbalism + Skill + 285 + + Calot de glace + + Type + Herbalism + Skill + 290 + + Lotus noir + + Type + Herbalism + Skill + 300 + + Chardon sanglant + + Type + Herbalism + Skill + 1 + + Gangrelette + + Type + Herbalism + Skill + 300 + + Glaurier + + Type + Herbalism + Skill + 315 + + Voile-misère + + Type + Herbalism + Skill + 325 + + Chapeflamme + + Type + Herbalism + Skill + 335 + + Terocône + + Type + Herbalism + Skill + 325 + + Lichen ancien + + Type + Herbalism + Skill + 340 + + Néantine + + Type + Herbalism + Skill + 350 + + Cauchemardelle + + Type + Herbalism + Skill + 365 + + Chardon de mana + + Type + Herbalism + Skill + 375 + + Buisson de pruinéante + + Type + Herbalism + Skill + 350 + + Vietérule + + Type + Herbalism + Skill + 150 + + Pâlerette + + Type + Herbalism + Skill + 160 + + Moustache de Khadgar + + Type + Herbalism + Skill + 185 + + Hivernale + + Type + Herbalism + Skill + 195 + + Etouffante + + Type + Herbalism + Skill + 85 + + Trèfle doré + + Type + Herbalism + Skill + 220 + + Verpérenne + + Type + Herbalism + Skill + 220 + + Langue de serpent + + Type + Herbalism + Skill + 220 + + Lys tigré + + Type + Herbalism + Skill + 220 + + Dorépine + + Type + Herbalism + Skill + 170 + + Fleur de feu + + Type + Herbalism + Skill + 205 + + + Mining + + Gisement de vrai-argent couvert de vase + + Type + Mining + Skill + 230 + + Gisement de mithril couvert de vase + + Type + Mining + Skill + 175 + + Filon de thorium couvert de limon + + Type + Mining + Skill + 245 + + Filon d'incendicite + + Type + Mining + Skill + 65 + + Gisement de sombrefer + + Type + Mining + Skill + 230 + + Filon de cuivre + + Type + Mining + Skill + 1 + + Filon d'étain + + Type + Mining + Skill + 65 + + Filon d'argent + + Type + Mining + Skill + 75 + + Filon d'or + + Type + Mining + Skill + 155 + + Gisement de fer + + Type + Mining + Skill + 125 + + Riche filon de thorium + + Type + Mining + Skill + 275 + + Riche filon de thorium couvert de limon + + Type + Mining + Skill + 275 + + Filon de thorium Hakkari + + Type + Mining + Skill + 275 + + Petit morceau d'obsidienne + + Type + Mining + Skill + 305 + + Grand morceau d'obsidienne + + Type + Mining + Skill + 305 + + Gisement de gangrefer + + Type + Mining + Skill + 300 + + Gisement d'adamantite + + Type + Mining + Skill + 325 + + Filon de khorium + + Type + Mining + Skill + 375 + + Riche gisement d'adamantite + + Type + Mining + Skill + 350 + + Ancien filon de gemmes + + Type + Mining + Skill + 375 + + Gisement de néanticite + + Type + Mining + Skill + 350 + + Filon d'indurium + + Type + Mining + Skill + 150 + + Gisement de mithril + + Type + Mining + Skill + 175 + + Gisement de vrai-argent + + Type + Mining + Skill + 230 + + Gisement de pierre de sang inférieure + + Type + Mining + Skill + 75 + + Petit filon de thorium + + Type + Mining + Skill + 245 + + Filon d'argent couvert de limon + + Type + Mining + Skill + 75 + + Filon d'or couvert de limon + + Type + Mining + Skill + 155 + + Gisement de saronite + + Type + Mining + Skill + 400 + + Riche gisement de saronite + + Type + Mining + Skill + 400 + + Veine de titane + + Type + Mining + Skill + 400 + + + + diff --git a/Friendly.png b/Friendly.png new file mode 100644 index 0000000..7a8fdb2 Binary files /dev/null and b/Friendly.png differ diff --git a/GateCondition.xib b/GateCondition.xib new file mode 100644 index 0000000..8d526db --- /dev/null +++ b/GateCondition.xib @@ -0,0 +1,1134 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + GateConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{32, 6}, {221, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 129 + + + 400 + 75 + + + Chamber of the Ancients + + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + 30 + + + YES + + OtherViews + + YES + + + + Gate of the Blue Sapphire + + 2147483647 + + + _popUpItemAction: + 25 + + + + + Gate of the Green Emerald + + 2147483647 + + + _popUpItemAction: + 26 + + + + + Gate of the Purple Amethyst + + 2147483647 + + + _popUpItemAction: + 27 + + + + + Gate of the Red Sun + + 2147483647 + + + _popUpItemAction: + 28 + + + + + Gate of the Yellow Moon + + 2147483647 + + + _popUpItemAction: + 29 + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{256, 7}, {87, 24}} + + YES + + 67239424 + 0 + + + + YES + + 40 + Is + 4 + YES + 0 + + + 40 + Not + 5 + 0 + + + 1 + + + + + 268 + {{346, 12}, {67, 17}} + + YES + + 68288064 + 272630784 + destroyed + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 10}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {430, 38} + + NSView + + + + + YES + + + view + + + + 62 + + + + disableButton + + + + 88 + + + + disableCondition: + + + + 90 + + + + comparatorSegment + + + + 127 + + + + qualityPopUp + + + + 128 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + 83 + + + YES + + + + + + 86 + + + + + 109 + + + YES + + + + + + 110 + + + + + 117 + + + YES + + + + + + 118 + + + + + 119 + + + YES + + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + + + + + + 122 + + + + + 123 + + + + + 124 + + + + + 125 + + + + + 126 + + + + + 131 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -2.showNotes + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 109.IBPluginDependency + 110.IBPluginDependency + 117.CustomClassName + 117.IBPluginDependency + 118.IBPluginDependency + 118.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 119.IBPluginDependency + 120.IBPluginDependency + 121.IBEditorWindowLastContentRect + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 126.IBPluginDependency + 131.IBPluginDependency + 83.IBAttributePlaceholdersKey + 83.IBPluginDependency + 86.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{695, 676}, {430, 38}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{189, 314}, {582, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{716, 585}, {243, 123}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 131 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + ConditionController + NSObject + + IBUserSource + + + + + GateConditionController + ConditionController + + YES + + YES + comparatorSegment + qualityPopUp + + + YES + BetterSegmentedControl + NSPopUpButton + + + + IBProjectSource + GateConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/GateConditionController.h b/GateConditionController.h new file mode 100644 index 0000000..11745ed --- /dev/null +++ b/GateConditionController.h @@ -0,0 +1,22 @@ +// +// GateConditionController.h +// Pocket Gnome +// +// Created by Josh on 2/9/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + + +@interface GateConditionController : ConditionController { + + IBOutlet NSPopUpButton *qualityPopUp; + + IBOutlet BetterSegmentedControl *comparatorSegment; +} + +@end diff --git a/GateConditionController.m b/GateConditionController.m new file mode 100644 index 0000000..1468d50 --- /dev/null +++ b/GateConditionController.m @@ -0,0 +1,58 @@ +// +// GateConditionController.m +// Pocket Gnome +// +// Created by Josh on 2/9/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "GateConditionController.h" +#import "ConditionController.h" + +@implementation GateConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"GateCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading GateCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyGate + unit: UnitNone + quality: [qualityPopUp selectedTag] + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyGate) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [qualityPopUp selectItemWithTag: [condition quality]]; + + [self validateState: nil]; +} + +@end diff --git a/Gathering-oldbackup.plist b/Gathering-oldbackup.plist new file mode 100644 index 0000000..ebc27ae --- /dev/null +++ b/Gathering-oldbackup.plist @@ -0,0 +1,546 @@ + + + + + Fishing + + 182951 + + Name + Pure Water + + 182952 + + Name + Steam Pump Flotsam + + 182953 + + Name + Sporefish School + + 182954 + + Name + Feltail School + + 182956 + + Name + School of Darter + + 182957 + + Name + Highland Mixed School + + 182958 + + Name + Mudfish School + + 182959 + + Name + Bluefish School + + + Herbalism + + 142140 + + Name + Purple Lotus + Skill + 210 + + 142141 + + Name + Arthas' Tears + Skill + 220 + + 142142 + + Name + Sungrass + Skill + 230 + + 142143 + + Name + Blindweed + Skill + 235 + + 142144 + + Name + Ghost Mushroom + Skill + 245 + + 142145 + + Name + Gromsblood + Skill + 250 + + 1617 + + Name + Silverleaf + Skill + 1 + + 1618 + + Name + Peacebloom + Skill + 1 + + 1619 + + Name + Earthroot + Skill + 15 + + 1620 + + Name + Mageroyal + Skill + 50 + + 1621 + + Name + Briarthorn + Skill + 70 + + 1622 + + Name + Bruiseweed + Skill + 100 + + 1623 + + Name + Wild Steelbloom + Skill + 115 + + 1624 + + Name + Kingsblood + Skill + 125 + + 1628 + + Name + Grave Moss + Skill + 120 + + 176583 + + Name + Golden Sansam + Skill + 260 + + 176584 + + Name + Dreamfoil + Skill + 270 + + 176586 + + Name + Mountain Silversage + Skill + 280 + + 176587 + + Name + Plaguebloom + Skill + 285 + + 176588 + + Name + Icecap + Skill + 290 + + 176589 + + Name + Black Lotus + Skill + 300 + + 181166 + + Name + Bloodthistle + Skill + 1 + + 181270 + + Name + Felweed + Skill + 300 + + 183044 + + Name + Felweed + Skill + 300 + + 181271 + + Name + Dreaming Glory + Skill + 315 + + 181275 + + Name + Ragveil + Skill + 325 + + 181276 + + Name + Flame Cap + Skill + 335 + + 181277 + + Name + Terocone + Skill + 325 + + 181278 + + Name + Ancient Lichen + Skill + 340 + + 181279 + + Name + Netherbloom + Skill + 350 + + 181280 + + Name + Nightmare Vine + Skill + 365 + + 181281 + + Name + Mana Thistle + Skill + 375 + + 183043 + + Name + Ragveil + Skill + 325 + + 185881 + + Name + Netherdust Bush + Skill + 350 + + 2041 + + Name + Liferoot + Skill + 150 + + 2042 + + Name + Fadeleaf + Skill + 160 + + 2043 + + Name + Khadgar's Whisker + Skill + 185 + + 2044 + + Name + Wintersbite + Skill + 195 + + 2045 + + Name + Stranglekelp + Skill + 85 + + 2046 + + Name + Goldthorn + Skill + 170 + + 2866 + + Name + Firebloom + Skill + 205 + + + Mining + + 123309 + + Name + Ooze Covered Truesilver Deposit + Skill + 230 + + 123310 + + Name + Ooze Covered Mithril Deposit + Skill + 175 + + 123848 + + Name + Ooze Covered Thorium Vein + Skill + 245 + + 1610 + + Name + Incendicite Mineral Vein + Skill + 65 + + 165658 + + Name + Dark Iron Deposit + Skill + 230 + + 1731 + + Name + Copper Vein + Skill + 1 + + 1732 + + Name + Tin Vein + Skill + 65 + + 1733 + + Name + Silver Vein + Skill + 75 + + 1734 + + Name + Gold Vein + Skill + 155 + + 1735 + + Name + Iron Deposit + Skill + 125 + + 175404 + + Name + Rich Thorium Vein + Skill + 275 + + 177388 + + Name + Ooze Covered Rich Thorium Vein + Skill + 275 + + 180215 + + Name + Hakkari Thorium Vein + Skill + 275 + + 181068 + + Name + Small Obsidian Chunk + Skill + 305 + + 181069 + + Name + Large Obsidian Chunk + Skill + 305 + + 181555 + + Name + Fel Iron Deposit + Skill + 300 + + 181556 + + Name + Adamantite Deposit + Skill + 325 + + 181557 + + Name + Khorium Vein + Skill + 375 + + 181569 + + Name + Rich Adamantite Deposit + Skill + 350 + + 185557 + + Name + Ancient Gem Vein + Skill + 375 + + 185877 + + Name + Nethercite Deposit + Skill + 350 + + 19903 + + Name + Indurium Mineral Vein + Skill + 150 + + 2040 + + Name + Mithril Deposit + Skill + 175 + + 2047 + + Name + Truesilver Deposit + Skill + 230 + + 2653 + + Name + Lesser Bloodstone Deposit + Skill + 75 + + 324 + + Name + Small Thorium Vein + Skill + 245 + + 73940 + + Name + Ooze Covered Silver Vein + Skill + 75 + + 73941 + + Name + Ooze Covered Gold Vein + Skill + 155 + + + Other + + 2061 + + Name + Campfire + + + + diff --git a/Globals.h b/Globals.h new file mode 100644 index 0000000..bd6f2ce --- /dev/null +++ b/Globals.h @@ -0,0 +1,8 @@ +// This file no longer matters. +// We stopped using the external memory reading tool after it became clear +// that it was way too slow to serve any purpose. + +#define MEMORY_GOD_MODE 1 + +#define USE_ITEM_MASK 0x80000000 +#define USE_MACRO_MASK 0x40000000 diff --git a/Gnome-Female.png b/Gnome-Female.png new file mode 100644 index 0000000..f68a948 Binary files /dev/null and b/Gnome-Female.png differ diff --git a/Gnome-Female_Small.gif b/Gnome-Female_Small.gif new file mode 100644 index 0000000..2bbfc45 Binary files /dev/null and b/Gnome-Female_Small.gif differ diff --git a/Gnome-Male.png b/Gnome-Male.png new file mode 100644 index 0000000..3821686 Binary files /dev/null and b/Gnome-Male.png differ diff --git a/Gnome-Male_Small.gif b/Gnome-Male_Small.gif new file mode 100644 index 0000000..744505a Binary files /dev/null and b/Gnome-Male_Small.gif differ diff --git a/GrabWindow.h b/GrabWindow.h new file mode 100644 index 0000000..34c0765 --- /dev/null +++ b/GrabWindow.h @@ -0,0 +1,26 @@ +// +// GrabWindow.h +// Pocket Gnome +// +// Created by Jon Drummond on 5/8/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import + + +@interface NSImage (GrabWindow) +//+ (NSImage*)imageWithWindow:(int)wid; +//+ (NSImage*)imageWithRect: (NSRect)rect inWindow:(int)wid; ++ (NSImage*)imageWithCGContextCaptureWindow: (int)wid; ++ (NSImage*)imageWithBitmapRep: (NSBitmapImageRep*)rep; + +- (NSImage*)thumbnailWithMaxDimension: (float)dim; + +@end + +@interface NSBitmapImageRep (GrabWindow) ++ (NSBitmapImageRep*)correctBitmap: (NSBitmapImageRep*)rep; ++ (NSBitmapImageRep*)bitmapRepFromNSImage:(NSImage*)image; ++ (NSBitmapImageRep*)bitmapRepWithWindow:(int)wid; +@end \ No newline at end of file diff --git a/GrabWindow.m b/GrabWindow.m new file mode 100644 index 0000000..69aa977 --- /dev/null +++ b/GrabWindow.m @@ -0,0 +1,247 @@ +// +// GrabWindow.m +// Pocket Gnome +// +// Created by Jon Drummond on 5/8/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "GrabWindow.h" +#import "CGSPrivate.h" + +#define LEOPARD 0x1050 +#define TIGER 0x1040 + +@implementation NSBitmapImageRep (GrabWindow) + +CFArrayRef windowIDsArray = NULL; + ++ (NSBitmapImageRep*)correctBitmap: (NSBitmapImageRep*)rep { + + // this crap will be fixed in SnowLeopard (10.6); there was a bug in Leopard + // this method will probably be unnecessary then, and removing it would be recommended if it is + // (since its a decent performance hit) + + return [NSBitmapImageRep imageRepWithData: [rep TIFFRepresentation]]; // [NSImage imageWithBitmapRep: rep] + + NSBitmapImageRep *newRep = nil; + if( [rep bytesPerRow] == 0 ) { + newRep = [[NSBitmapImageRep alloc] initWithBitmapDataPlanes: NULL + pixelsWide: [rep pixelsWide] + pixelsHigh: [rep pixelsHigh] + bitsPerSample: [rep bitsPerSample] + samplesPerPixel: [rep samplesPerPixel] + hasAlpha: [rep hasAlpha] + isPlanar: [rep isPlanar] + colorSpaceName: [rep colorSpaceName] + bitmapFormat: NSAlphaFirstBitmapFormat | NSAlphaNonpremultipliedBitmapFormat //0 //[rep bitmapFormat] + bytesPerRow: [rep pixelsWide] * [rep samplesPerPixel] // correction + bitsPerPixel: [rep bitsPerPixel]]; + + unsigned char *srcBuffer = [rep bitmapData]; + unsigned char *dstBuffer = [newRep bitmapData]; + unsigned long totalBytes = [rep pixelsWide]*[rep pixelsHigh]*[rep samplesPerPixel]; + //int i; + //for ( i = 0; i < totalBytes; i++ ) { + // dstBuffer[totalBytes-i-1] = srcBuffer[i]; + //} + // memcpy is orders of magnitude faster than the for-loop ^^ + memcpy(dstBuffer, srcBuffer, totalBytes); + } + + if(newRep) + return [newRep autorelease]; + return [[rep retain] autorelease]; +} + ++ (NSBitmapImageRep*)bitmapRepFromNSImage:(NSImage*)image { + if(!image) return nil; + + NSBitmapImageRep *bitmapImageRep = [[NSBitmapImageRep alloc] initWithData: [image TIFFRepresentation]]; + + return [bitmapImageRep autorelease]; +} + + ++ (NSBitmapImageRep*)bitmapRepWithWindow:(int)wid { + + // get the rect of the window, and take out the menu bar + CGRect windowRect; + CGSGetWindowBounds(_CGSDefaultConnection(), wid, &windowRect); + windowRect.origin.y += 22; + windowRect.size.height -= 22; + + SInt32 MacVersion; + if (Gestalt(gestaltSystemVersion, &MacVersion) == noErr) { + if (MacVersion >= LEOPARD) { // we're in Leopard + + // create the CFArrrayShit with this windowID + CGWindowID windowIDs[1] = { (CGWindowID)wid }; + if(windowIDsArray != NULL) { + CFRelease(windowIDsArray); // trash the CFArrayRef + windowIDsArray = NULL; + } + windowIDsArray = CFArrayCreate(kCFAllocatorDefault, (const void**)windowIDs, 1, NULL); + + // snag the image + CGImageRef windowImage = CGWindowListCreateImageFromArray(windowRect, windowIDsArray, kCGWindowImageBoundsIgnoreFraming); + + if(CGImageGetWidth(windowImage) <= 1) { + CGImageRelease(windowImage); + // NSLog(@"An error occured while capturing the window."); + return nil; + } + + // Create a bitmap rep from the grabbed image... + NSBitmapImageRep *bitmapRep = [[NSBitmapImageRep alloc] initWithCGImage: windowImage]; + //[bitmapRep setColorSpaceName: NSCalibratedRGBColorSpace]; + CGImageRelease(windowImage); + + return [bitmapRep autorelease]; + } + else if (MacVersion >= TIGER) { // we're in Tiger + + // Pre-10.5 Method of grabbing window + + // create an NSImage + NSImage *windowImage = [NSImage imageWithCGContextCaptureWindow: wid]; + + // convert to bitmap + return [NSBitmapImageRep bitmapRepFromNSImage: windowImage]; + } + } + return nil; +} + ++ (NSBitmapImageRep*)bitmapRepWithRect: (NSRect)rect inWindow:(int)wid { + + // get the rect of the window + CGRect windowRect; + CGSGetWindowBounds(_CGSDefaultConnection(), wid, &windowRect); + CGRect captureRect; + captureRect.origin.x = windowRect.origin.x + rect.origin.x; + captureRect.origin.y = windowRect.origin.y + 22 + rect.origin.y; + captureRect.size.height = rect.size.height; + captureRect.size.width = rect.size.width; + + SInt32 MacVersion; + if (Gestalt(gestaltSystemVersion, &MacVersion) == noErr) { + if (MacVersion >= LEOPARD) { // we're in Leopard + + // we expect the array to already have been generated in a call to bitmapRepWithWindow: + if(windowIDsArray == NULL) return nil; + + // snag the image + CGImageRef windowImage = CGWindowListCreateImageFromArray(captureRect, windowIDsArray, kCGWindowImageBoundsIgnoreFraming); + + if(CGImageGetWidth(windowImage) <= 1) { + CGImageRelease(windowImage); + // NSLog(@"An error occured while capturing a rect within window."); + return nil; + } + + // Create a bitmap rep from the grabbed image... + NSBitmapImageRep *bitmapRep = [[NSBitmapImageRep alloc] initWithCGImage: windowImage]; + //[bitmapRep setColorSpaceName: NSCalibratedRGBColorSpace]; + CGImageRelease(windowImage); + + return [NSBitmapImageRep correctBitmap: [bitmapRep autorelease]]; + } + else if (MacVersion >= TIGER) { // we're in Tiger + NSImage *windowImage = [NSImage imageWithCGContextCaptureWindow: wid]; + NSImage *sub = nil; + if(windowImage) { + sub = [[NSImage alloc] initWithSize: rect.size]; + [sub lockFocus]; + NSRect newRect = rect; // we're getting a Q4 rect, gotta flip it to Q1 + newRect.origin.y = windowRect.size.height - newRect.origin.y - rect.size.height - 22; + [windowImage compositeToPoint: NSZeroPoint fromRect: newRect operation: NSCompositeCopy fraction: 1.0]; + [sub unlockFocus]; + [sub autorelease]; + } + return [NSBitmapImageRep bitmapRepFromNSImage: sub]; + } + } + return nil; +} + +@end + + +@implementation NSImage (GrabWindow) + ++ (NSImage*)imageWithBitmapRep: (NSBitmapImageRep*)rep { + NSImage *image = nil; + if(!rep) return image; + + image = [[NSImage alloc] init]; + [image addRepresentation: rep]; + + return [image autorelease]; +} + ++ (NSImage*)imageWithCGContextCaptureWindow: (int)wid { + + // get window bounds + CGRect windowRect; + CGSGetWindowBounds(_CGSDefaultConnection(), wid, &windowRect); + windowRect.origin = CGPointZero; + + // create an NSImage fo the window, cutting off the titlebar + NSImage *image = [[NSImage alloc] initWithSize: NSMakeSize(windowRect.size.width, windowRect.size.height - 22)]; + [image lockFocus]; // lock focus on the image for drawing + + // copy the contents of the window to the graphic context + CGContextCopyWindowCaptureContentsToRect([[NSGraphicsContext currentContext] graphicsPort], + windowRect, + _CGSDefaultConnection(), + wid, + 0); + [image unlockFocus]; + return [image autorelease]; +} + + +- (NSImage*)thumbnailWithMaxDimension: (float)dim { + + NSSize curSize = [self size]; + + // if the image already fits the criteria, return it + if( curSize.height <= dim && curSize.width <= dim) + return [[self retain] autorelease]; + // otherwise... + + // determine the scale + float scale = 1.0; + if(curSize.height >= curSize.width) scale = dim / curSize.height; + if(curSize.height < curSize.width) scale = dim / curSize.width; + + // create the thumb + NSSize newSize = NSMakeSize(curSize.width * scale, curSize.height * scale); + NSImage *thumb = [[NSImage alloc] initWithSize: newSize]; + + // draw into the thumb + [thumb lockFocus]; + + // set interpolation and scaling factor + /* + [[NSGraphicsContext currentContext] setImageInterpolation: NSImageInterpolationHigh]; + NSAffineTransform* scaleXForm = [NSAffineTransform transform]; + [scaleXForm scaleBy: scale]; [scaleXForm concat]; + + [self drawAtPoint: NSZeroPoint + fromRect: NSMakeRect(NSZeroPoint.x, NSZeroPoint.y, curSize.width, curSize.height) + operation: NSCompositeCopy + fraction: 1.0];*/ + + [[self bestRepresentationForDevice: nil] drawInRect: NSMakeRect(0.0, 0.0, newSize.width, newSize.height)]; + + [thumb unlockFocus]; + + return [thumb autorelease]; +} + + + +@end + diff --git a/Growl Registration Ticket.growlRegDict b/Growl Registration Ticket.growlRegDict new file mode 100644 index 0000000..0c97f02 --- /dev/null +++ b/Growl Registration Ticket.growlRegDict @@ -0,0 +1,32 @@ + + + + + AllNotifications + + AddWaypoint + AddingUnit + KilledUnit + PlayerDied + PlayerLevelUp + BattlegroundEnter + BattlegroundLeave + FishCaught + PlayerReceivedMessage + + DefaultNotifications + + AddWaypoint + AddingUnit + KilledUnit + PlayerDied + PlayerLevelUp + BattlegroundEnter + BattlegroundLeave + FishCaught + PlayerReceivedMessage + + TicketVersion + 1 + + diff --git a/Growl.framework/.svn/all-wcprops b/Growl.framework/.svn/all-wcprops new file mode 100644 index 0000000..ac738db --- /dev/null +++ b/Growl.framework/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 39 +/svn/!svn/ver/445/trunk/Growl.framework +END +Growl +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/445/trunk/Growl.framework/Growl +END +Resources +K 25 +svn:wc:ra_dav:version-url +V 49 +/svn/!svn/ver/445/trunk/Growl.framework/Resources +END +Headers +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/445/trunk/Growl.framework/Headers +END diff --git a/Growl.framework/.svn/entries b/Growl.framework/.svn/entries new file mode 100644 index 0000000..761b70a --- /dev/null +++ b/Growl.framework/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Growl.framework +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Versions +dir + +Growl +file + + + + +2010-04-24T16:42:59.000000Z +a83ce3781d810cef72c73f472f2a64dd +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +22 + +Resources +file + + + + +2010-04-24T16:42:59.000000Z +8a6539acc25a583ce7a88f6573bf4687 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +26 + +Headers +file + + + + +2010-04-24T16:42:59.000000Z +574393f6f6e7d44c9dfa3c805bbefb99 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +24 + diff --git a/Growl.framework/.svn/prop-base/Growl.svn-base b/Growl.framework/.svn/prop-base/Growl.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Growl.framework/.svn/prop-base/Growl.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Growl.framework/.svn/prop-base/Headers.svn-base b/Growl.framework/.svn/prop-base/Headers.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Growl.framework/.svn/prop-base/Headers.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Growl.framework/.svn/prop-base/Resources.svn-base b/Growl.framework/.svn/prop-base/Resources.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Growl.framework/.svn/prop-base/Resources.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Growl.framework/.svn/text-base/Growl.svn-base b/Growl.framework/.svn/text-base/Growl.svn-base new file mode 100644 index 0000000..67de5d7 --- /dev/null +++ b/Growl.framework/.svn/text-base/Growl.svn-base @@ -0,0 +1 @@ +link Versions/Current/Growl \ No newline at end of file diff --git a/Growl.framework/.svn/text-base/Headers.svn-base b/Growl.framework/.svn/text-base/Headers.svn-base new file mode 100644 index 0000000..45bda20 --- /dev/null +++ b/Growl.framework/.svn/text-base/Headers.svn-base @@ -0,0 +1 @@ +link Versions/Current/Headers \ No newline at end of file diff --git a/Growl.framework/.svn/text-base/Resources.svn-base b/Growl.framework/.svn/text-base/Resources.svn-base new file mode 100644 index 0000000..0af1f07 --- /dev/null +++ b/Growl.framework/.svn/text-base/Resources.svn-base @@ -0,0 +1 @@ +link Versions/Current/Resources \ No newline at end of file diff --git a/Growl.framework/Growl b/Growl.framework/Growl new file mode 120000 index 0000000..85956e2 --- /dev/null +++ b/Growl.framework/Growl @@ -0,0 +1 @@ +Versions/Current/Growl \ No newline at end of file diff --git a/Growl.framework/Headers b/Growl.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/Growl.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/Growl.framework/Resources b/Growl.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/Growl.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/Growl.framework/Versions/.svn/all-wcprops b/Growl.framework/Versions/.svn/all-wcprops new file mode 100644 index 0000000..9e48e16 --- /dev/null +++ b/Growl.framework/Versions/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/445/trunk/Growl.framework/Versions +END +Current +K 25 +svn:wc:ra_dav:version-url +V 56 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/Current +END diff --git a/Growl.framework/Versions/.svn/entries b/Growl.framework/Versions/.svn/entries new file mode 100644 index 0000000..ce1c125 --- /dev/null +++ b/Growl.framework/Versions/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Growl.framework/Versions +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +A +dir + +Current +file + + + + +2010-04-24T16:42:59.000000Z +654580f41818cd6f51408c7cbd313728 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +1 + diff --git a/Growl.framework/Versions/.svn/prop-base/Current.svn-base b/Growl.framework/Versions/.svn/prop-base/Current.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Growl.framework/Versions/.svn/prop-base/Current.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Growl.framework/Versions/.svn/text-base/Current.svn-base b/Growl.framework/Versions/.svn/text-base/Current.svn-base new file mode 100644 index 0000000..613feee --- /dev/null +++ b/Growl.framework/Versions/.svn/text-base/Current.svn-base @@ -0,0 +1 @@ +link A \ No newline at end of file diff --git a/Growl.framework/Versions/A/.svn/all-wcprops b/Growl.framework/Versions/A/.svn/all-wcprops new file mode 100644 index 0000000..ce458d5 --- /dev/null +++ b/Growl.framework/Versions/A/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A +END +Growl +K 25 +svn:wc:ra_dav:version-url +V 56 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Growl +END diff --git a/Growl.framework/Versions/A/.svn/entries b/Growl.framework/Versions/A/.svn/entries new file mode 100644 index 0000000..74ac265 --- /dev/null +++ b/Growl.framework/Versions/A/.svn/entries @@ -0,0 +1,68 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Growl.framework/Versions/A +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Resources +dir + +Growl +file + + + + +2010-04-24T16:42:59.000000Z +6fbc210537b8ff3762ce8b1b118f46be +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +134116 + +Headers +dir + diff --git a/Growl.framework/Versions/A/.svn/prop-base/Growl.svn-base b/Growl.framework/Versions/A/.svn/prop-base/Growl.svn-base new file mode 100644 index 0000000..cd0e69f --- /dev/null +++ b/Growl.framework/Versions/A/.svn/prop-base/Growl.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 0 + +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Growl.framework/Versions/A/.svn/text-base/Growl.svn-base b/Growl.framework/Versions/A/.svn/text-base/Growl.svn-base new file mode 100644 index 0000000..69b865b Binary files /dev/null and b/Growl.framework/Versions/A/.svn/text-base/Growl.svn-base differ diff --git a/Growl.framework/Versions/A/Growl b/Growl.framework/Versions/A/Growl new file mode 100755 index 0000000..69b865b Binary files /dev/null and b/Growl.framework/Versions/A/Growl differ diff --git a/Growl.framework/Versions/A/Headers/.svn/all-wcprops b/Growl.framework/Versions/A/Headers/.svn/all-wcprops new file mode 100644 index 0000000..9124df1 --- /dev/null +++ b/Growl.framework/Versions/A/Headers/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Headers +END +Growl.h +K 25 +svn:wc:ra_dav:version-url +V 66 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Headers/Growl.h +END +GrowlApplicationBridge.h +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h +END +GrowlApplicationBridge-Carbon.h +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h +END +GrowlDefines.h +K 25 +svn:wc:ra_dav:version-url +V 73 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Headers/GrowlDefines.h +END diff --git a/Growl.framework/Versions/A/Headers/.svn/entries b/Growl.framework/Versions/A/Headers/.svn/entries new file mode 100644 index 0000000..b1191a7 --- /dev/null +++ b/Growl.framework/Versions/A/Headers/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Growl.framework/Versions/A/Headers +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Growl.h +file + + + + +2010-04-24T16:42:59.000000Z +145178fb34413783c490b76bc01a2fdd +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +130 + +GrowlApplicationBridge.h +file + + + + +2010-04-24T16:42:59.000000Z +11f6a06790eb592707625c4b743a890c +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +29922 + +GrowlApplicationBridge-Carbon.h +file + + + + +2010-04-24T16:42:59.000000Z +bfce37a2c81aa4e50cbe2e1e87cf3694 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +34409 + +GrowlDefines.h +file + + + + +2010-04-24T16:42:59.000000Z +5720559174a190f9819da1f39d932d58 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +15733 + diff --git a/Growl.framework/Versions/A/Headers/.svn/text-base/Growl.h.svn-base b/Growl.framework/Versions/A/Headers/.svn/text-base/Growl.h.svn-base new file mode 100644 index 0000000..e2a4425 --- /dev/null +++ b/Growl.framework/Versions/A/Headers/.svn/text-base/Growl.h.svn-base @@ -0,0 +1,6 @@ +#include "GrowlDefines.h" + +#ifdef __OBJC__ +# include "GrowlApplicationBridge.h" +#endif +#include "GrowlApplicationBridge-Carbon.h" diff --git a/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlApplicationBridge-Carbon.h.svn-base b/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlApplicationBridge-Carbon.h.svn-base new file mode 100644 index 0000000..e35663f --- /dev/null +++ b/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlApplicationBridge-Carbon.h.svn-base @@ -0,0 +1,780 @@ +// +// GrowlApplicationBridge-Carbon.h +// Growl +// +// Created by Mac-arena the Bored Zo on Wed Jun 18 2004. +// Based on GrowlApplicationBridge.h by Evan Schoenberg. +// This source code is in the public domain. You may freely link it into any +// program. +// + +#ifndef _GROWLAPPLICATIONBRIDGE_CARBON_H_ +#define _GROWLAPPLICATIONBRIDGE_CARBON_H_ + +#include +#include + +#ifndef GROWL_EXPORT +#define GROWL_EXPORT __attribute__((visibility("default"))) +#endif + +/*! @header GrowlApplicationBridge-Carbon.h + * @abstract Declares an API that Carbon applications can use to interact with Growl. + * @discussion GrowlApplicationBridge uses a delegate to provide information //XXX + * to Growl (such as your application's name and what notifications it may + * post) and to provide information to your application (such as that Growl + * is listening for notifications or that a notification has been clicked). + * + * You can set the Growldelegate with Growl_SetDelegate and find out the + * current delegate with Growl_GetDelegate. See struct Growl_Delegate for more + * information about the delegate. + */ + +__BEGIN_DECLS + +/*! @struct Growl_Delegate + * @abstract Delegate to supply GrowlApplicationBridge with information and respond to events. + * @discussion The Growl delegate provides your interface to + * GrowlApplicationBridge. When GrowlApplicationBridge needs information about + * your application, it looks for it in the delegate; when Growl or the user + * does something that you might be interested in, GrowlApplicationBridge + * looks for a callback in the delegate and calls it if present + * (meaning, if it is not NULL). + * XXX on all of that + * @field size The size of the delegate structure. + * @field applicationName The name of your application. + * @field registrationDictionary A dictionary describing your application and the notifications it can send out. + * @field applicationIconData Your application's icon. + * @field growlInstallationWindowTitle The title of the installation window. + * @field growlInstallationInformation Text to display in the installation window. + * @field growlUpdateWindowTitle The title of the update window. + * @field growlUpdateInformation Text to display in the update window. + * @field referenceCount A count of owners of the delegate. + * @field retain Called when GrowlApplicationBridge receives this delegate. + * @field release Called when GrowlApplicationBridge no longer needs this delegate. + * @field growlIsReady Called when GrowlHelperApp is listening for notifications. + * @field growlNotificationWasClicked Called when a Growl notification is clicked. + * @field growlNotificationTimedOut Called when a Growl notification timed out. + */ +struct Growl_Delegate { + /* @discussion This should be sizeof(struct Growl_Delegate). + */ + size_t size; + + /*All of these attributes are optional. + *Optional attributes can be NULL; required attributes that + * are NULL cause setting the Growl delegate to fail. + *XXX - move optional/required status into the discussion for each field + */ + + /* This name is used both internally and in the Growl preferences. + * + * This should remain stable between different versions and incarnations of + * your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + * + * This can be NULL if it is provided elsewhere, namely in an + * auto-discoverable plist file in your app bundle + * (XXX refer to more information on that) or in registrationDictionary. + */ + CFStringRef applicationName; + + /* + * Must contain at least these keys: + * GROWL_NOTIFICATIONS_ALL (CFArray): + * Contains the names of all notifications your application may post. + * + * Can also contain these keys: + * GROWL_NOTIFICATIONS_DEFAULT (CFArray): + * Names of notifications that should be enabled by default. + * If omitted, GROWL_NOTIFICATIONS_ALL will be used. + * GROWL_APP_NAME (CFString): + * Same as the applicationName member of this structure. + * If both are present, the applicationName member shall prevail. + * If this key is present, you may omit applicationName (set it to NULL). + * GROWL_APP_ICON (CFData): + * Same as the iconData member of this structure. + * If both are present, the iconData member shall prevail. + * If this key is present, you may omit iconData (set it to NULL). + * + * If you change the contents of this dictionary after setting the delegate, + * be sure to call Growl_Reregister. + * + * This can be NULL if you have an auto-discoverable plist file in your app + * bundle. (XXX refer to more information on that) + */ + CFDictionaryRef registrationDictionary; + + /* The data can be in any format supported by NSImage. As of + * Mac OS X 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and + * PICT formats. + * + * If this is not supplied, Growl will look up your application's icon by + * its application name. + */ + CFDataRef applicationIconData; + + /* Installer display attributes + * + * These four attributes are used by the Growl installer, if this framework + * supports it. + * For any of these being NULL, a localised default will be + * supplied. + */ + + /* If this is NULL, Growl will use a default, + * localized title. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlInstallationWindowTitle; + /* This information may be as long or short as desired (the + * window will be sized to fit it). If Growl is not installed, it will + * be displayed to the user as an explanation of what Growl is and what + * it can do in your application. + * It should probably note that no download is required to install. + * + * If this is NULL, Growl will use a default, localized + * explanation. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlInstallationInformation; + /* If this is NULL, Growl will use a default, + * localized title. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlUpdateWindowTitle; + /* This information may be as long or short as desired (the + * window will be sized to fit it). If an older version of Growl is + * installed, it will be displayed to the user as an explanation that an + * updated version of Growl is included in your application and + * no download is required. + * + * If this is NULL, Growl will use a default, localized + * explanation. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlUpdateInformation; + + /* This member is provided for use by your retain and release + * callbacks (see below). + * + * GrowlApplicationBridge never directly uses this member. Instead, it + * calls your retain callback (if non-NULL) and your release + * callback (if non-NULL). + */ + unsigned referenceCount; + + //Functions. Currently all of these are optional (any of them can be NULL). + + /* When you call Growl_SetDelegate(newDelegate), it will call + * oldDelegate->release(oldDelegate), and then it will call + * newDelegate->retain(newDelegate), and the return value from retain + * is what will be set as the delegate. + * (This means that this member works like CFRetain and -[NSObject retain].) + * This member is optional (it can be NULL). + * For a delegate allocated with malloc, this member would be + * NULL. + * @result A delegate to which GrowlApplicationBridge holds a reference. + */ + void *(*retain)(void *); + /* When you call Growl_SetDelegate(newDelegate), it will call + * oldDelegate->release(oldDelegate), and then it will call + * newDelegate->retain(newDelegate), and the return value from retain + * is what will be set as the delegate. + * (This means that this member works like CFRelease and + * -[NSObject release].) + * This member is optional (it can be NULL). + * For a delegate allocated with malloc, this member might be + * free(3). + */ + void (*release)(void *); + + /* Informs the delegate that Growl (specifically, the GrowlHelperApp) was + * launched successfully (or was already running). The application can + * take actions with the knowledge that Growl is installed and functional. + */ + void (*growlIsReady)(void); + + /* Informs the delegate that a Growl notification was clicked. It is only + * sent for notifications sent with a non-NULL clickContext, + * so if you want to receive a message when a notification is clicked, + * clickContext must not be NULL when calling + * Growl_PostNotification or + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext. + */ + void (*growlNotificationWasClicked)(CFPropertyListRef clickContext); + + /* Informs the delegate that a Growl notification timed out. It is only + * sent for notifications sent with a non-NULL clickContext, + * so if you want to receive a message when a notification is clicked, + * clickContext must not be NULL when calling + * Growl_PostNotification or + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext. + */ + void (*growlNotificationTimedOut)(CFPropertyListRef clickContext); +}; + +/*! @struct Growl_Notification + * @abstract Structure describing a Growl notification. + * @discussion XXX + * @field size The size of the notification structure. + * @field name Identifies the notification. + * @field title Short synopsis of the notification. + * @field description Additional text. + * @field iconData An icon for the notification. + * @field priority An indicator of the notification's importance. + * @field reserved Bits reserved for future usage. + * @field isSticky Requests that a notification stay on-screen until dismissed explicitly. + * @field clickContext An identifier to be passed to your click callback when a notification is clicked. + * @field clickCallback A callback to call when the notification is clicked. + */ +struct Growl_Notification { + /* This should be sizeof(struct Growl_Notification). + */ + size_t size; + + /* The notification name distinguishes one type of + * notification from another. The name should be human-readable, as it + * will be displayed in the Growl preference pane. + * + * The name is used in the GROWL_NOTIFICATIONS_ALL and + * GROWL_NOTIFICATIONS_DEFAULT arrays in the registration dictionary, and + * in this member of the Growl_Notification structure. + */ + CFStringRef name; + + /* A notification's title describes the notification briefly. + * It should be easy to read quickly by the user. + */ + CFStringRef title; + + /* The description supplements the title with more + * information. It is usually longer and sometimes involves a list of + * subjects. For example, for a 'Download complete' notification, the + * description might have one filename per line. GrowlMail in Growl 0.6 + * uses a description of '%d new mail(s)' (formatted with the number of + * messages). + */ + CFStringRef description; + + /* The notification icon usually indicates either what + * happened (it may have the same icon as e.g. a toolbar item that + * started the process that led to the notification), or what it happened + * to (e.g. a document icon). + * + * The icon data is optional, so it can be NULL. In that + * case, the application icon is used alone. Not all displays support + * icons. + * + * The data can be in any format supported by NSImage. As of Mac OS X + * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT form + * ats. + */ + CFDataRef iconData; + + /* Priority is new in Growl 0.6, and is represented as a + * signed integer from -2 to +2. 0 is Normal priority, -2 is Very Low + * priority, and +2 is Very High priority. + * + * Not all displays support priority. If you do not wish to assign a + * priority to your notification, assign 0. + */ + signed int priority; + + /* These bits are not used in Growl 0.6. Set them to 0. + */ + unsigned reserved: 31; + + /* When the sticky bit is clear, in most displays, + * notifications disappear after a certain amount of time. Sticky + * notifications, however, remain on-screen until the user dismisses them + * explicitly, usually by clicking them. + * + * Sticky notifications were introduced in Growl 0.6. Most notifications + * should not be sticky. Not all displays support sticky notifications, + * and the user may choose in Growl's preference pane to force the + * notification to be sticky or non-sticky, in which case the sticky bit + * in the notification will be ignored. + */ + unsigned isSticky: 1; + + /* If this is not NULL, and your click callback + * is not NULL either, this will be passed to the callback + * when your notification is clicked by the user. + * + * Click feedback was introduced in Growl 0.6, and it is optional. Not + * all displays support click feedback. + */ + CFPropertyListRef clickContext; + + /* If this is not NULL, it will be called instead + * of the Growl delegate's click callback when clickContext is + * non-NULL and the notification is clicked on by the user. + * + * Click feedback was introduced in Growl 0.6, and it is optional. Not + * all displays support click feedback. + * + * The per-notification click callback is not yet supported as of Growl + * 0.7. + */ + void (*clickCallback)(CFPropertyListRef clickContext); + + CFStringRef identifier; +}; + +#pragma mark - +#pragma mark Easy initialisers + +/*! @defined InitGrowlDelegate + * @abstract Callable macro. Initializes a Growl delegate structure to defaults. + * @discussion Call with a pointer to a struct Growl_Delegate. All of the + * members of the structure will be set to 0 or NULL, except for + * size (which will be set to sizeof(struct Growl_Delegate)) and + * referenceCount (which will be set to 1). + */ +#define InitGrowlDelegate(delegate) \ + do { \ + if (delegate) { \ + (delegate)->size = sizeof(struct Growl_Delegate); \ + (delegate)->applicationName = NULL; \ + (delegate)->registrationDictionary = NULL; \ + (delegate)->applicationIconData = NULL; \ + (delegate)->growlInstallationWindowTitle = NULL; \ + (delegate)->growlInstallationInformation = NULL; \ + (delegate)->growlUpdateWindowTitle = NULL; \ + (delegate)->growlUpdateInformation = NULL; \ + (delegate)->referenceCount = 1U; \ + (delegate)->retain = NULL; \ + (delegate)->release = NULL; \ + (delegate)->growlIsReady = NULL; \ + (delegate)->growlNotificationWasClicked = NULL; \ + (delegate)->growlNotificationTimedOut = NULL; \ + } \ + } while(0) + +/*! @defined InitGrowlNotification + * @abstract Callable macro. Initializes a Growl notification structure to defaults. + * @discussion Call with a pointer to a struct Growl_Notification. All of + * the members of the structure will be set to 0 or NULL, except + * for size (which will be set to + * sizeof(struct Growl_Notification)). + */ +#define InitGrowlNotification(notification) \ + do { \ + if (notification) { \ + (notification)->size = sizeof(struct Growl_Notification); \ + (notification)->name = NULL; \ + (notification)->title = NULL; \ + (notification)->description = NULL; \ + (notification)->iconData = NULL; \ + (notification)->priority = 0; \ + (notification)->reserved = 0U; \ + (notification)->isSticky = false; \ + (notification)->clickContext = NULL; \ + (notification)->clickCallback = NULL; \ + (notification)->identifier = NULL; \ + } \ + } while(0) + +#pragma mark - +#pragma mark Public API + +// @functiongroup Managing the Growl delegate + +/*! @function Growl_SetDelegate + * @abstract Replaces the current Growl delegate with a new one, or removes + * the Growl delegate. + * @param newDelegate + * @result Returns false and does nothing else if a pointer that was passed in + * is unsatisfactory (because it is non-NULL, but at least one + * required member of it is NULL). Otherwise, sets or unsets the + * delegate and returns true. + * @discussion When newDelegate is non-NULL, sets + * the delegate to newDelegate. When it is NULL, + * the current delegate will be unset, and no delegate will be in place. + * + * It is legal for newDelegate to be the current delegate; + * nothing will happen, and Growl_SetDelegate will return true. It is also + * legal for it to be NULL, as described above; again, it will + * return true. + * + * If there was a delegate in place before the call, Growl_SetDelegate will + * call the old delegate's release member if it was non-NULL. If + * newDelegate is non-NULL, Growl_SetDelegate will + * call newDelegate->retain, and set the delegate to its return + * value. + * + * If you are using Growl-WithInstaller.framework, and an older version of + * Growl is installed on the user's system, the user will automatically be + * prompted to update. + * + * GrowlApplicationBridge currently does not copy this structure, nor does it + * retain any of the CF objects in the structure (it regards the structure as + * a container that retains the objects when they are added and releases them + * when they are removed or the structure is destroyed). Also, + * GrowlApplicationBridge currently does not modify any member of the + * structure, except possibly the referenceCount by calling the retain and + * release members. + */ +GROWL_EXPORT Boolean Growl_SetDelegate(struct Growl_Delegate *newDelegate); + +/*! @function Growl_GetDelegate + * @abstract Returns the current Growl delegate, if any. + * @result The current Growl delegate. + * @discussion Returns the last pointer passed into Growl_SetDelegate, or + * NULL if no such call has been made. + * + * This function follows standard Core Foundation reference-counting rules. + * Because it is a Get function, not a Copy function, it will not retain the + * delegate on your behalf. You are responsible for retaining and releasing + * the delegate as needed. + */ +GROWL_EXPORT struct Growl_Delegate *Growl_GetDelegate(void); + +#pragma mark - + +// @functiongroup Posting Growl notifications + +/*! @function Growl_PostNotification + * @abstract Posts a Growl notification. + * @param notification The notification to post. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * NULL (or 0 or false as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. + * If the user cancels, this function will have no effect until the next + * application session, at which time when it is called the user will be + * prompted again. The user is also given the option to not be prompted again. + * If the user does choose to install Growl, the requested notification will + * be displayed once Growl is installed and running. + */ +GROWL_EXPORT void Growl_PostNotification(const struct Growl_Notification *notification); + +/*! @function Growl_PostNotificationWithDictionary +* @abstract Notifies using a userInfo dictionary suitable for passing to +* CFDistributedNotificationCenter. +* @param userInfo The dictionary to notify with. +* @discussion Before Growl 0.6, your application would have posted +* notifications using CFDistributedNotificationCenter by creating a userInfo +* dictionary with the notification data. This had the advantage of allowing +* you to add other data to the dictionary for programs besides Growl that +* might be listening. +* +* This function allows you to use such dictionaries without being restricted +* to using CFDistributedNotificationCenter. The keys for this dictionary + * can be found in GrowlDefines.h. +*/ +GROWL_EXPORT void Growl_PostNotificationWithDictionary(CFDictionaryRef userInfo); + +/*! @function Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext + * @abstract Posts a Growl notification using parameter values. + * @param title The title of the notification. + * @param description The description of the notification. + * @param notificationName The name of the notification as listed in the + * registration dictionary. + * @param iconData Data representing a notification icon. Can be NULL. + * @param priority The priority of the notification (-2 to +2, with -2 + * being Very Low and +2 being Very High). + * @param isSticky If true, requests that this notification wait for a + * response from the user. + * @param clickContext An object to pass to the clickCallback, if any. Can + * be NULL, in which case the clickCallback is not called. + * @discussion Creates a temporary Growl_Notification, fills it out with the + * supplied information, and calls Growl_PostNotification on it. + * See struct Growl_Notification and Growl_PostNotification for more + * information. + * + * The icon data can be in any format supported by NSImage. As of Mac OS X + * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT formats. + */ +GROWL_EXPORT void Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext( + /*inhale*/ + CFStringRef title, + CFStringRef description, + CFStringRef notificationName, + CFDataRef iconData, + signed int priority, + Boolean isSticky, + CFPropertyListRef clickContext); + +#pragma mark - + +// @functiongroup Registering + +/*! @function Growl_RegisterWithDictionary + * @abstract Register your application with Growl without setting a delegate. + * @discussion When you call this function with a dictionary, + * GrowlApplicationBridge registers your application using that dictionary. + * If you pass NULL, GrowlApplicationBridge will ask the delegate + * (if there is one) for a dictionary, and if that doesn't work, it will look + * in your application's bundle for an auto-discoverable plist. + * (XXX refer to more information on that) + * + * If you pass a dictionary to this function, it must include the + * GROWL_APP_NAME key, unless a delegate is set. + * + * This function is mainly an alternative to the delegate system introduced + * with Growl 0.6. Without a delegate, you cannot receive callbacks such as + * growlIsReady (since they are sent to the delegate). You can, + * however, set a delegate after registering without one. + * + * This function was introduced in Growl.framework 0.7. + * @result false if registration failed (e.g. if Growl isn't installed). + */ +GROWL_EXPORT Boolean Growl_RegisterWithDictionary(CFDictionaryRef regDict); + +/*! @function Growl_Reregister + * @abstract Updates your registration with Growl. + * @discussion If your application changes the contents of the + * GROWL_NOTIFICATIONS_ALL key in the registrationDictionary member of the + * Growl delegate, or if it changes the value of that member, or if it + * changes the contents of its auto-discoverable plist, call this function + * to have Growl update its registration information for your application. + * + * Otherwise, this function does not normally need to be called. If you're + * using a delegate, your application will be registered when you set the + * delegate if both the delegate and its registrationDictionary member are + * non-NULL. + * + * This function is now implemented using + * Growl_RegisterWithDictionary. + */ +GROWL_EXPORT void Growl_Reregister(void); + +#pragma mark - + +/*! @function Growl_SetWillRegisterWhenGrowlIsReady + * @abstract Tells GrowlApplicationBridge to register with Growl when Growl + * launches (or not). + * @discussion When Growl has started listening for notifications, it posts a + * GROWL_IS_READY notification on the Distributed Notification + * Center. GrowlApplicationBridge listens for this notification, using it to + * perform various tasks (such as calling your delegate's + * growlIsReady callback, if it has one). If this function is + * called with true, one of those tasks will be to reregister + * with Growl (in the manner of Growl_Reregister). + * + * This attribute is automatically set back to false + * (the default) after every GROWL_IS_READY notification. + * @param flag true if you want GrowlApplicationBridge to register with + * Growl when next it is ready; false if not. + */ +GROWL_EXPORT void Growl_SetWillRegisterWhenGrowlIsReady(Boolean flag); +/*! @function Growl_WillRegisterWhenGrowlIsReady + * @abstract Reports whether GrowlApplicationBridge will register with Growl + * when Growl next launches. + * @result true if GrowlApplicationBridge will register with + * Growl when next it posts GROWL_IS_READY; false if not. + */ +GROWL_EXPORT Boolean Growl_WillRegisterWhenGrowlIsReady(void); + +#pragma mark - + +// @functiongroup Obtaining registration dictionaries + +/*! @function Growl_CopyRegistrationDictionaryFromDelegate + * @abstract Asks the delegate for a registration dictionary. + * @discussion If no delegate is set, or if the delegate's + * registrationDictionary member is NULL, this + * function returns NULL. + * + * This function does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use + * Growl_CreateRegistrationDictionaryByFillingInDictionary or + * Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * to try to fill in missing keys. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromDelegate(void); + +/*! @function Growl_CopyRegistrationDictionaryFromBundle + * @abstract Looks in a bundle for a registration dictionary. + * @discussion This function looks in a bundle for an auto-discoverable + * registration dictionary file using CFBundleCopyResourceURL. + * If it finds one, it loads the file using CFPropertyList and + * returns the result. + * + * If you pass NULL as the bundle, the main bundle is examined. + * + * This function does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use + * Growl_CreateRegistrationDictionaryByFillingInDictionary: or + * Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * to try to fill in missing keys. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromBundle(CFBundleRef bundle); + +/*! @function Growl_CreateBestRegistrationDictionary + * @abstract Obtains a registration dictionary, filled out to the best of + * GrowlApplicationBridge's knowledge. + * @discussion This function creates a registration dictionary as best + * GrowlApplicationBridge knows how. + * + * First, GrowlApplicationBridge examines the Growl delegate (if there is + * one) and gets the registration dictionary from that. If no such dictionary + * was obtained, GrowlApplicationBridge looks in your application's main + * bundle for an auto-discoverable registration dictionary file. If that + * doesn't exist either, this function returns NULL. + * + * Second, GrowlApplicationBridge calls + * Growl_CreateRegistrationDictionaryByFillingInDictionary with + * whatever dictionary was obtained. The result of that function is the + * result of this function. + * + * GrowlApplicationBridge uses this function when you call + * Growl_SetDelegate, or when you call + * Growl_RegisterWithDictionary with NULL. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateBestRegistrationDictionary(void); + +#pragma mark - + +// @functiongroup Filling in registration dictionaries + +/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionary + * @abstract Tries to fill in missing keys in a registration dictionary. + * @param regDict The dictionary to fill in. + * @result The dictionary with the keys filled in. + * @discussion This function examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Keys are only filled in if missing; if a key is present in the dictionary, + * its value will not be changed. + * + * This function was introduced in Growl.framework 0.7. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionary(CFDictionaryRef regDict); +/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * @abstract Tries to fill in missing keys in a registration dictionary. + * @param regDict The dictionary to fill in. + * @param keys The keys to fill in. If NULL, any missing keys are filled in. + * @result The dictionary with the keys filled in. + * @discussion This function examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Only those keys that are listed in keys will be filled in. + * Other missing keys are ignored. Also, keys are only filled in if missing; + * if a key is present in the dictionary, its value will not be changed. + * + * This function was introduced in Growl.framework 0.7. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys(CFDictionaryRef regDict, CFSetRef keys); + +/*! @brief Tries to fill in missing keys in a notification dictionary. + * @param notifDict The dictionary to fill in. + * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict. + * @discussion This function examines the \a notifDict for missing keys, and + * tries to get them from the last known registration dictionary. As of 1.1, + * the keys that it will look for are: + * + * \li GROWL_APP_NAME + * \li GROWL_APP_ICON + * + * @since Growl.framework 1.1 + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateNotificationDictionaryByFillingInDictionary(CFDictionaryRef notifDict); + +#pragma mark - + +// @functiongroup Querying Growl's status + +/*! @function Growl_IsInstalled + * @abstract Determines whether the Growl prefpane and its helper app are + * installed. + * @result Returns true if Growl is installed, false otherwise. + */ +GROWL_EXPORT Boolean Growl_IsInstalled(void); + +/*! @function Growl_IsRunning + * @abstract Cycles through the process list to find whether GrowlHelperApp + * is running. + * @result Returns true if Growl is running, false otherwise. + */ +GROWL_EXPORT Boolean Growl_IsRunning(void); + +#pragma mark - + +// @functiongroup Launching Growl + +/*! @typedef GrowlLaunchCallback + * @abstract Callback to notify you that Growl is running. + * @param context The context pointer passed to Growl_LaunchIfInstalled. + * @discussion Growl_LaunchIfInstalled calls this callback function if Growl + * was already running or if it launched Growl successfully. + */ +typedef void (*GrowlLaunchCallback)(void *context); + +/*! @function Growl_LaunchIfInstalled + * @abstract Launches GrowlHelperApp if it is not already running. + * @param callback A callback function which will be called if Growl was successfully + * launched or was already running. Can be NULL. + * @param context The context pointer to pass to the callback. Can be NULL. + * @result Returns true if Growl was successfully launched or was already + * running; returns false and does not call the callback otherwise. + * @discussion Returns true and calls the callback (if the callback is not + * NULL) if the Growl helper app began launching or was already + * running. Returns false and performs no other action if Growl could not be + * launched (e.g. because the Growl preference pane is not properly installed). + * + * If Growl_CreateBestRegistrationDictionary returns + * non-NULL, this function will register with Growl atomically. + * + * The callback should take a single argument; this is to allow applications + * to have context-relevant information passed back. It is perfectly + * acceptable for context to be NULL. The callback itself can be + * NULL if you don't want one. + */ +GROWL_EXPORT Boolean Growl_LaunchIfInstalled(GrowlLaunchCallback callback, void *context); + +#pragma mark - +#pragma mark Constants + +/*! @defined GROWL_PREFPANE_BUNDLE_IDENTIFIER + * @abstract The CFBundleIdentifier of the Growl preference pane bundle. + * @discussion GrowlApplicationBridge uses this to determine whether Growl is + * currently installed, by searching for the Growl preference pane. Your + * application probably does not need to use this macro itself. + */ +#ifndef GROWL_PREFPANE_BUNDLE_IDENTIFIER +#define GROWL_PREFPANE_BUNDLE_IDENTIFIER CFSTR("com.growl.prefpanel") +#endif + +__END_DECLS + +#endif /* _GROWLAPPLICATIONBRIDGE_CARBON_H_ */ diff --git a/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlApplicationBridge.h.svn-base b/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlApplicationBridge.h.svn-base new file mode 100644 index 0000000..4341f3f --- /dev/null +++ b/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlApplicationBridge.h.svn-base @@ -0,0 +1,609 @@ +// +// GrowlApplicationBridge.h +// Growl +// +// Created by Evan Schoenberg on Wed Jun 16 2004. +// Copyright 2004-2006 The Growl Project. All rights reserved. +// + +/*! + * @header GrowlApplicationBridge.h + * @abstract Defines the GrowlApplicationBridge class. + * @discussion This header defines the GrowlApplicationBridge class as well as + * the GROWL_PREFPANE_BUNDLE_IDENTIFIER constant. + */ + +#ifndef __GrowlApplicationBridge_h__ +#define __GrowlApplicationBridge_h__ + +#import +#import +#import "GrowlDefines.h" + +//Forward declarations +@protocol GrowlApplicationBridgeDelegate; + +//Internal notification when the user chooses not to install (to avoid continuing to cache notifications awaiting installation) +#define GROWL_USER_CHOSE_NOT_TO_INSTALL_NOTIFICATION @"User chose not to install" + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @class GrowlApplicationBridge + * @abstract A class used to interface with Growl. + * @discussion This class provides a means to interface with Growl. + * + * Currently it provides a way to detect if Growl is installed and launch the + * GrowlHelperApp if it's not already running. + */ +@interface GrowlApplicationBridge : NSObject { + +} + +/*! + * @method isGrowlInstalled + * @abstract Detects whether Growl is installed. + * @discussion Determines if the Growl prefpane and its helper app are installed. + * @result Returns YES if Growl is installed, NO otherwise. + */ ++ (BOOL) isGrowlInstalled; + +/*! + * @method isGrowlRunning + * @abstract Detects whether GrowlHelperApp is currently running. + * @discussion Cycles through the process list to find whether GrowlHelperApp is running and returns its findings. + * @result Returns YES if GrowlHelperApp is running, NO otherwise. + */ ++ (BOOL) isGrowlRunning; + +#pragma mark - + +/*! + * @method setGrowlDelegate: + * @abstract Set the object which will be responsible for providing and receiving Growl information. + * @discussion This must be called before using GrowlApplicationBridge. + * + * The methods in the GrowlApplicationBridgeDelegate protocol are required + * and return the basic information needed to register with Growl. + * + * The methods in the GrowlApplicationBridgeDelegate_InformalProtocol + * informal protocol are individually optional. They provide a greater + * degree of interaction between the application and growl such as informing + * the application when one of its Growl notifications is clicked by the user. + * + * The methods in the GrowlApplicationBridgeDelegate_Installation_InformalProtocol + * informal protocol are individually optional and are only applicable when + * using the Growl-WithInstaller.framework which allows for automated Growl + * installation. + * + * When this method is called, data will be collected from inDelegate, Growl + * will be launched if it is not already running, and the application will be + * registered with Growl. + * + * If using the Growl-WithInstaller framework, if Growl is already installed + * but this copy of the framework has an updated version of Growl, the user + * will be prompted to update automatically. + * + * @param inDelegate The delegate for the GrowlApplicationBridge. It must conform to the GrowlApplicationBridgeDelegate protocol. + */ ++ (void) setGrowlDelegate:(NSObject *)inDelegate; + +/*! + * @method growlDelegate + * @abstract Return the object responsible for providing and receiving Growl information. + * @discussion See setGrowlDelegate: for details. + * @result The Growl delegate. + */ ++ (NSObject *) growlDelegate; + +#pragma mark - + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext; + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:identifier: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + * @param identifier An identifier for this notification. Notifications with equal identifiers are coalesced. + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext + identifier:(NSString *)identifier; + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:identifier: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + * @param identifier An identifier for this notification. Notifications with equal identifiers are coalesced. + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext + identifier:(NSString *)identifier; + +/*! @method notifyWithDictionary: + * @abstract Notifies using a userInfo dictionary suitable for passing to + * NSDistributedNotificationCenter. + * @param userInfo The dictionary to notify with. + * @discussion Before Growl 0.6, your application would have posted + * notifications using NSDistributedNotificationCenter by + * creating a userInfo dictionary with the notification data. This had the + * advantage of allowing you to add other data to the dictionary for programs + * besides Growl that might be listening. + * + * This method allows you to use such dictionaries without being restricted + * to using NSDistributedNotificationCenter. The keys for this dictionary + * can be found in GrowlDefines.h. + */ ++ (void) notifyWithDictionary:(NSDictionary *)userInfo; + +#pragma mark - + +/*! @method registerWithDictionary: + * @abstract Register your application with Growl without setting a delegate. + * @discussion When you call this method with a dictionary, + * GrowlApplicationBridge registers your application using that dictionary. + * If you pass nil, GrowlApplicationBridge will ask the delegate + * (if there is one) for a dictionary, and if that doesn't work, it will look + * in your application's bundle for an auto-discoverable plist. + * (XXX refer to more information on that) + * + * If you pass a dictionary to this method, it must include the + * GROWL_APP_NAME key, unless a delegate is set. + * + * This method is mainly an alternative to the delegate system introduced + * with Growl 0.6. Without a delegate, you cannot receive callbacks such as + * -growlIsReady (since they are sent to the delegate). You can, + * however, set a delegate after registering without one. + * + * This method was introduced in Growl.framework 0.7. + */ ++ (BOOL) registerWithDictionary:(NSDictionary *)regDict; + +/*! @method reregisterGrowlNotifications + * @abstract Reregister the notifications for this application. + * @discussion This method does not normally need to be called. If your + * application changes what notifications it is registering with Growl, call + * this method to have the Growl delegate's + * -registrationDictionaryForGrowl method called again and the + * Growl registration information updated. + * + * This method is now implemented using -registerWithDictionary:. + */ ++ (void) reregisterGrowlNotifications; + +#pragma mark - + +/*! @method setWillRegisterWhenGrowlIsReady: + * @abstract Tells GrowlApplicationBridge to register with Growl when Growl + * launches (or not). + * @discussion When Growl has started listening for notifications, it posts a + * GROWL_IS_READY notification on the Distributed Notification + * Center. GrowlApplicationBridge listens for this notification, using it to + * perform various tasks (such as calling your delegate's + * -growlIsReady method, if it has one). If this method is + * called with YES, one of those tasks will be to reregister + * with Growl (in the manner of -reregisterGrowlNotifications). + * + * This attribute is automatically set back to NO (the default) + * after every GROWL_IS_READY notification. + * @param flag YES if you want GrowlApplicationBridge to register with + * Growl when next it is ready; NO if not. + */ ++ (void) setWillRegisterWhenGrowlIsReady:(BOOL)flag; +/*! @method willRegisterWhenGrowlIsReady + * @abstract Reports whether GrowlApplicationBridge will register with Growl + * when Growl next launches. + * @result YES if GrowlApplicationBridge will register with Growl + * when next it posts GROWL_IS_READY; NO if not. + */ ++ (BOOL) willRegisterWhenGrowlIsReady; + +#pragma mark - + +/*! @method registrationDictionaryFromDelegate + * @abstract Asks the delegate for a registration dictionary. + * @discussion If no delegate is set, or if the delegate's + * -registrationDictionaryForGrowl method returns + * nil, this method returns nil. + * + * This method does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:] or + * +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:restrictToKeys:] to try + * to fill in missing keys. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) registrationDictionaryFromDelegate; + +/*! @method registrationDictionaryFromBundle: + * @abstract Looks in a bundle for a registration dictionary. + * @discussion This method looks in a bundle for an auto-discoverable + * registration dictionary file using -[NSBundle + * pathForResource:ofType:]. If it finds one, it loads the file using + * +[NSDictionary dictionaryWithContentsOfFile:] and returns the + * result. + * + * If you pass nil as the bundle, the main bundle is examined. + * + * This method does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:] or + * +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:restrictToKeys:] to try + * to fill in missing keys. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) registrationDictionaryFromBundle:(NSBundle *)bundle; + +/*! @method bestRegistrationDictionary + * @abstract Obtains a registration dictionary, filled out to the best of + * GrowlApplicationBridge's knowledge. + * @discussion This method creates a registration dictionary as best + * GrowlApplicationBridge knows how. + * + * First, GrowlApplicationBridge contacts the Growl delegate (if there is + * one) and gets the registration dictionary from that. If no such dictionary + * was obtained, GrowlApplicationBridge looks in your application's main + * bundle for an auto-discoverable registration dictionary file. If that + * doesn't exist either, this method returns nil. + * + * Second, GrowlApplicationBridge calls + * +registrationDictionaryByFillingInDictionary: with whatever + * dictionary was obtained. The result of that method is the result of this + * method. + * + * GrowlApplicationBridge uses this method when you call + * +setGrowlDelegate:, or when you call + * +registerWithDictionary: with nil. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) bestRegistrationDictionary; + +#pragma mark - + +/*! @method registrationDictionaryByFillingInDictionary: + * @abstract Tries to fill in missing keys in a registration dictionary. + * @discussion This method examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Keys are only filled in if missing; if a key is present in the dictionary, + * its value will not be changed. + * + * This method was introduced in Growl.framework 0.7. + * @param regDict The dictionary to fill in. + * @result The dictionary with the keys filled in. This is an autoreleased + * copy of regDict. + */ ++ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict; +/*! @method registrationDictionaryByFillingInDictionary:restrictToKeys: + * @abstract Tries to fill in missing keys in a registration dictionary. + * @discussion This method examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Only those keys that are listed in keys will be filled in. + * Other missing keys are ignored. Also, keys are only filled in if missing; + * if a key is present in the dictionary, its value will not be changed. + * + * This method was introduced in Growl.framework 0.7. + * @param regDict The dictionary to fill in. + * @param keys The keys to fill in. If nil, any missing keys are filled in. + * @result The dictionary with the keys filled in. This is an autoreleased + * copy of regDict. + */ ++ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict restrictToKeys:(NSSet *)keys; + +/*! @brief Tries to fill in missing keys in a notification dictionary. + * @param notifDict The dictionary to fill in. + * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict. + * @discussion This function examines the \a notifDict for missing keys, and + * tries to get them from the last known registration dictionary. As of 1.1, + * the keys that it will look for are: + * + * \li GROWL_APP_NAME + * \li GROWL_APP_ICON + * + * @since Growl.framework 1.1 + */ ++ (NSDictionary *) notificationDictionaryByFillingInDictionary:(NSDictionary *)regDict; + ++ (NSDictionary *) frameworkInfoDictionary; +@end + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @protocol GrowlApplicationBridgeDelegate + * @abstract Required protocol for the Growl delegate. + * @discussion The methods in this protocol are required and are called + * automatically as needed by GrowlApplicationBridge. See + * +[GrowlApplicationBridge setGrowlDelegate:]. + * See also GrowlApplicationBridgeDelegate_InformalProtocol. + */ + +@protocol GrowlApplicationBridgeDelegate + +// -registrationDictionaryForGrowl has moved to the informal protocol as of 0.7. + +@end + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @category NSObject(GrowlApplicationBridgeDelegate_InformalProtocol) + * @abstract Methods which may be optionally implemented by the GrowlDelegate. + * @discussion The methods in this informal protocol will only be called if implemented by the delegate. + */ +@interface NSObject (GrowlApplicationBridgeDelegate_InformalProtocol) + +/*! + * @method registrationDictionaryForGrowl + * @abstract Return the dictionary used to register this application with Growl. + * @discussion The returned dictionary gives Growl the complete list of + * notifications this application will ever send, and it also specifies which + * notifications should be enabled by default. Each is specified by an array + * of NSString objects. + * + * For most applications, these two arrays can be the same (if all sent + * notifications should be displayed by default). + * + * The NSString objects of these arrays will correspond to the + * notificationName: parameter passed in + * +[GrowlApplicationBridge + * notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:] calls. + * + * The dictionary should have the required key object pairs: + * key: GROWL_NOTIFICATIONS_ALL object: NSArray of NSString objects + * key: GROWL_NOTIFICATIONS_DEFAULT object: NSArray of NSString objects + * + * The dictionary may have the following key object pairs: + * key: GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES object: NSDictionary of key: notification name object: human-readable notification name + * + * You do not need to implement this method if you have an auto-discoverable + * plist file in your app bundle. (XXX refer to more information on that) + * + * @result The NSDictionary to use for registration. + */ +- (NSDictionary *) registrationDictionaryForGrowl; + +/*! + * @method applicationNameForGrowl + * @abstract Return the name of this application which will be used for Growl bookkeeping. + * @discussion This name is used both internally and in the Growl preferences. + * + * This should remain stable between different versions and incarnations of + * your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + * + * You do not need to implement this method if you are providing the + * application name elsewhere, meaning in an auto-discoverable plist file in + * your app bundle (XXX refer to more information on that) or in the result + * of -registrationDictionaryForGrowl. + * + * @result The name of the application using Growl. + */ +- (NSString *) applicationNameForGrowl; + +/*! + * @method applicationIconForGrowl + * @abstract Return the NSImage to treat as the application icon. + * @discussion The delegate may optionally return an NSImage + * object to use as the application icon. If this method is not implemented, + * {{{-applicationIconDataForGrowl}}} is tried. If that method is not + * implemented, the application's own icon is used. Neither method is + * generally needed. + * @result The NSImage to treat as the application icon. + */ +- (NSImage *) applicationIconForGrowl; + +/*! + * @method applicationIconDataForGrowl + * @abstract Return the NSData to treat as the application icon. + * @discussion The delegate may optionally return an NSData + * object to use as the application icon; if this is not implemented, the + * application's own icon is used. This is not generally needed. + * @result The NSData to treat as the application icon. + * @deprecated In version 1.1, in favor of {{{-applicationIconForGrowl}}}. + */ +- (NSData *) applicationIconDataForGrowl; + +/*! + * @method growlIsReady + * @abstract Informs the delegate that Growl has launched. + * @discussion Informs the delegate that Growl (specifically, the + * GrowlHelperApp) was launched successfully. The application can take actions + * with the knowledge that Growl is installed and functional. + */ +- (void) growlIsReady; + +/*! + * @method growlNotificationWasClicked: + * @abstract Informs the delegate that a Growl notification was clicked. + * @discussion Informs the delegate that a Growl notification was clicked. It + * is only sent for notifications sent with a non-nil + * clickContext, so if you want to receive a message when a notification is + * clicked, clickContext must not be nil when calling + * +[GrowlApplicationBridge notifyWithTitle: description:notificationName:iconData:priority:isSticky:clickContext:]. + * @param clickContext The clickContext passed when displaying the notification originally via +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:]. + */ +- (void) growlNotificationWasClicked:(id)clickContext; + +/*! + * @method growlNotificationTimedOut: + * @abstract Informs the delegate that a Growl notification timed out. + * @discussion Informs the delegate that a Growl notification timed out. It + * is only sent for notifications sent with a non-nil + * clickContext, so if you want to receive a message when a notification is + * clicked, clickContext must not be nil when calling + * +[GrowlApplicationBridge notifyWithTitle: description:notificationName:iconData:priority:isSticky:clickContext:]. + * @param clickContext The clickContext passed when displaying the notification originally via +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:]. + */ +- (void) growlNotificationTimedOut:(id)clickContext; + +@end + +#pragma mark - +/*! + * @category NSObject(GrowlApplicationBridgeDelegate_Installation_InformalProtocol) + * @abstract Methods which may be optionally implemented by the Growl delegate when used with Growl-WithInstaller.framework. + * @discussion The methods in this informal protocol will only be called if + * implemented by the delegate. They allow greater control of the information + * presented to the user when installing or upgrading Growl from within your + * application when using Growl-WithInstaller.framework. + */ +@interface NSObject (GrowlApplicationBridgeDelegate_Installation_InformalProtocol) + +/*! + * @method growlInstallationWindowTitle + * @abstract Return the title of the installation window. + * @discussion If not implemented, Growl will use a default, localized title. + * @result An NSString object to use as the title. + */ +- (NSString *)growlInstallationWindowTitle; + +/*! + * @method growlUpdateWindowTitle + * @abstract Return the title of the upgrade window. + * @discussion If not implemented, Growl will use a default, localized title. + * @result An NSString object to use as the title. + */ +- (NSString *)growlUpdateWindowTitle; + +/*! + * @method growlInstallationInformation + * @abstract Return the information to display when installing. + * @discussion This information may be as long or short as desired (the window + * will be sized to fit it). It will be displayed to the user as an + * explanation of what Growl is and what it can do in your application. It + * should probably note that no download is required to install. + * + * If this is not implemented, Growl will use a default, localized explanation. + * @result An NSAttributedString object to display. + */ +- (NSAttributedString *)growlInstallationInformation; + +/*! + * @method growlUpdateInformation + * @abstract Return the information to display when upgrading. + * @discussion This information may be as long or short as desired (the window + * will be sized to fit it). It will be displayed to the user as an + * explanation that an updated version of Growl is included in your + * application and no download is required. + * + * If this is not implemented, Growl will use a default, localized explanation. + * @result An NSAttributedString object to display. + */ +- (NSAttributedString *)growlUpdateInformation; + +@end + +//private +@interface GrowlApplicationBridge (GrowlInstallationPrompt_private) ++ (void) _userChoseNotToInstallGrowl; +@end + +#endif /* __GrowlApplicationBridge_h__ */ diff --git a/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlDefines.h.svn-base b/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlDefines.h.svn-base new file mode 100644 index 0000000..2b971cf --- /dev/null +++ b/Growl.framework/Versions/A/Headers/.svn/text-base/GrowlDefines.h.svn-base @@ -0,0 +1,348 @@ +// +// GrowlDefines.h +// + +#ifndef _GROWLDEFINES_H +#define _GROWLDEFINES_H + +#ifdef __OBJC__ +#define XSTR(x) (@x) +#define STRING_TYPE NSString * +#else +#define XSTR CFSTR +#define STRING_TYPE CFStringRef +#endif + +/*! @header GrowlDefines.h + * @abstract Defines all the notification keys. + * @discussion Defines all the keys used for registration with Growl and for + * Growl notifications. + * + * Most applications should use the functions or methods of Growl.framework + * instead of posting notifications such as those described here. + * @updated 2004-01-25 + */ + +// UserInfo Keys for Registration +#pragma mark UserInfo Keys for Registration + +/*! @group Registration userInfo keys */ +/* @abstract Keys for the userInfo dictionary of a GROWL_APP_REGISTRATION distributed notification. + * @discussion The values of these keys describe the application and the + * notifications it may post. + * + * Your application must register with Growl before it can post Growl + * notifications (and have them not be ignored). However, as of Growl 0.6, + * posting GROWL_APP_REGISTRATION notifications directly is no longer the + * preferred way to register your application. Your application should instead + * use Growl.framework's delegate system. + * See +[GrowlApplicationBridge setGrowlDelegate:] or Growl_SetDelegate for + * more information. + */ + +/*! @defined GROWL_APP_NAME + * @abstract The name of your application. + * @discussion The name of your application. This should remain stable between + * different versions and incarnations of your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + */ +#define GROWL_APP_NAME XSTR("ApplicationName") +/*! @defined GROWL_APP_ID + * @abstract The bundle identifier of your application. + * @discussion The bundle identifier of your application. This key should + * be unique for your application while there may be several applications + * with the same GROWL_APP_NAME. + * This key is optional. + */ +#define GROWL_APP_ID XSTR("ApplicationId") +/*! @defined GROWL_APP_ICON + * @abstract The image data for your application's icon. + * @discussion Image data representing your application's icon. This may be + * superimposed on a notification icon as a badge, used as the notification + * icon when a notification-specific icon is not supplied, or ignored + * altogether, depending on the display. Must be in a format supported by + * NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_APP_ICON XSTR("ApplicationIcon") +/*! @defined GROWL_NOTIFICATIONS_DEFAULT + * @abstract The array of notifications to turn on by default. + * @discussion These are the names of the notifications that should be enabled + * by default when your application registers for the first time. If your + * application reregisters, Growl will look here for any new notification + * names found in GROWL_NOTIFICATIONS_ALL, but ignore any others. + */ +#define GROWL_NOTIFICATIONS_DEFAULT XSTR("DefaultNotifications") +/*! @defined GROWL_NOTIFICATIONS_ALL + * @abstract The array of all notifications your application can send. + * @discussion These are the names of all of the notifications that your + * application may post. See GROWL_NOTIFICATION_NAME for a discussion of good + * notification names. + */ +#define GROWL_NOTIFICATIONS_ALL XSTR("AllNotifications") +/*! @defined GROWL_NOTIFICATIONS_HUMAN_READABLE_DESCRIPTIONS + * @abstract A dictionary of human-readable names for your notifications. + * @discussion By default, the Growl UI will display notifications by the names given in GROWL_NOTIFICATIONS_ALL + * which correspond to the GROWL_NOTIFICATION_NAME. This dictionary specifies the human-readable name to display. + * The keys of the dictionary are GROWL_NOTIFICATION_NAME strings; the objects are the human-readable versions. + * For any GROWL_NOTIFICATION_NAME not specific in this dictionary, the GROWL_NOTIFICATION_NAME will be displayed. + * + * This key is optional. + */ +#define GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES XSTR("HumanReadableNames") +/*! @defined GROWL_NOTIFICATIONS_DESCRIPTIONS +* @abstract A dictionary of descriptions of _when_ each notification occurs +* @discussion This is an NSDictionary whose keys are GROWL_NOTIFICATION_NAME strings and whose objects are +* descriptions of _when_ each notification occurs, such as "You received a new mail message" or +* "A file finished downloading". +* +* This key is optional. +*/ +#define GROWL_NOTIFICATIONS_DESCRIPTIONS XSTR("NotificationDescriptions") + +/*! @defined GROWL_TICKET_VERSION + * @abstract The version of your registration ticket. + * @discussion Include this key in a ticket plist file that you put in your + * application bundle for auto-discovery. The current ticket version is 1. + */ +#define GROWL_TICKET_VERSION XSTR("TicketVersion") +// UserInfo Keys for Notifications +#pragma mark UserInfo Keys for Notifications + +/*! @group Notification userInfo keys */ +/* @abstract Keys for the userInfo dictionary of a GROWL_NOTIFICATION distributed notification. + * @discussion The values of these keys describe the content of a Growl + * notification. + * + * Not all of these keys are supported by all displays. Only the name, title, + * and description of a notification are universal. Most of the built-in + * displays do support all of these keys, and most other visual displays + * probably will also. But, as of 0.6, the Log, MailMe, and Speech displays + * support only textual data. + */ + +/*! @defined GROWL_NOTIFICATION_NAME + * @abstract The name of the notification. + * @discussion The name of the notification. Note that if you do not define + * GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES when registering your ticket originally this name + * will the one displayed within the Growl preference pane and should be human-readable. + */ +#define GROWL_NOTIFICATION_NAME XSTR("NotificationName") +/*! @defined GROWL_NOTIFICATION_TITLE + * @abstract The title to display in the notification. + * @discussion The title of the notification. Should be very brief. + * The title usually says what happened, e.g. "Download complete". + */ +#define GROWL_NOTIFICATION_TITLE XSTR("NotificationTitle") +/*! @defined GROWL_NOTIFICATION_DESCRIPTION + * @abstract The description to display in the notification. + * @discussion The description should be longer and more verbose than the title. + * The description usually tells the subject of the action, + * e.g. "Growl-0.6.dmg downloaded in 5.02 minutes". + */ +#define GROWL_NOTIFICATION_DESCRIPTION XSTR("NotificationDescription") +/*! @defined GROWL_NOTIFICATION_ICON + * @discussion Image data for the notification icon. Must be in a format + * supported by NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_ICON XSTR("NotificationIcon") +/*! @defined GROWL_NOTIFICATION_APP_ICON + * @discussion Image data for the application icon, in case GROWL_APP_ICON does + * not apply for some reason. Must be in a format supported by NSImage, such + * as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_APP_ICON XSTR("NotificationAppIcon") +/*! @defined GROWL_NOTIFICATION_PRIORITY + * @discussion The priority of the notification as an integer number from + * -2 to +2 (+2 being highest). + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_PRIORITY XSTR("NotificationPriority") +/*! @defined GROWL_NOTIFICATION_STICKY + * @discussion A Boolean number controlling whether the notification is sticky. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_STICKY XSTR("NotificationSticky") +/*! @defined GROWL_NOTIFICATION_CLICK_CONTEXT + * @abstract Identifies which notification was clicked. + * @discussion An identifier for the notification for clicking purposes. + * + * This will be passed back to the application when the notification is + * clicked. It must be plist-encodable (a data, dictionary, array, number, or + * string object), and it should be unique for each notification you post. + * A good click context would be a UUID string returned by NSProcessInfo or + * CFUUID. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_CLICK_CONTEXT XSTR("NotificationClickContext") + +/*! @defined GROWL_DISPLAY_PLUGIN + * @discussion The name of a display plugin which should be used for this notification. + * Optional. If this key is not set or the specified display plugin does not + * exist, the display plugin stored in the application ticket is used. This key + * allows applications to use different default display plugins for their + * notifications. The user can still override those settings in the preference + * pane. + */ +#define GROWL_DISPLAY_PLUGIN XSTR("NotificationDisplayPlugin") + +/*! @defined GROWL_NOTIFICATION_IDENTIFIER + * @abstract An identifier for the notification for coalescing purposes. + * Notifications with the same identifier fall into the same class; only + * the last notification of a class is displayed on the screen. If a + * notification of the same class is currently being displayed, it is + * replaced by this notification. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_IDENTIFIER XSTR("GrowlNotificationIdentifier") + +/*! @defined GROWL_APP_PID + * @abstract The process identifier of the process which sends this + * notification. If this field is set, the application will only receive + * clicked and timed out notifications which originate from this process. + * + * Optional. + */ +#define GROWL_APP_PID XSTR("ApplicationPID") + +/*! @defined GROWL_NOTIFICATION_PROGRESS +* @abstract If this key is set, it should contain a double value wrapped +* in a NSNumber which describes some sort of progress (from 0.0 to 100.0). +* If this is key is not set, no progress bar is shown. +* +* Optional. Not supported by all display plugins. +*/ +#define GROWL_NOTIFICATION_PROGRESS XSTR("NotificationProgress") + +// Notifications +#pragma mark Notifications + +/*! @group Notification names */ +/* @abstract Names of distributed notifications used by Growl. + * @discussion These are notifications used by applications (directly or + * indirectly) to interact with Growl, and by Growl for interaction between + * its components. + * + * Most of these should no longer be used in Growl 0.6 and later, in favor of + * Growl.framework's GrowlApplicationBridge APIs. + */ + +/*! @defined GROWL_APP_REGISTRATION + * @abstract The distributed notification for registering your application. + * @discussion This is the name of the distributed notification that can be + * used to register applications with Growl. + * + * The userInfo dictionary for this notification can contain these keys: + *
    + *
  • GROWL_APP_NAME
  • + *
  • GROWL_APP_ICON
  • + *
  • GROWL_NOTIFICATIONS_ALL
  • + *
  • GROWL_NOTIFICATIONS_DEFAULT
  • + *
+ * + * No longer recommended as of Growl 0.6. An alternate method of registering + * is to use Growl.framework's delegate system. + * See +[GrowlApplicationBridge setGrowlDelegate:] or Growl_SetDelegate for + * more information. + */ +#define GROWL_APP_REGISTRATION XSTR("GrowlApplicationRegistrationNotification") +/*! @defined GROWL_APP_REGISTRATION_CONF + * @abstract The distributed notification for confirming registration. + * @discussion The name of the distributed notification sent to confirm the + * registration. Used by the Growl preference pane. Your application probably + * does not need to use this notification. + */ +#define GROWL_APP_REGISTRATION_CONF XSTR("GrowlApplicationRegistrationConfirmationNotification") +/*! @defined GROWL_NOTIFICATION + * @abstract The distributed notification for Growl notifications. + * @discussion This is what it all comes down to. This is the name of the + * distributed notification that your application posts to actually send a + * Growl notification. + * + * The userInfo dictionary for this notification can contain these keys: + *
    + *
  • GROWL_NOTIFICATION_NAME (required)
  • + *
  • GROWL_NOTIFICATION_TITLE (required)
  • + *
  • GROWL_NOTIFICATION_DESCRIPTION (required)
  • + *
  • GROWL_NOTIFICATION_ICON
  • + *
  • GROWL_NOTIFICATION_APP_ICON
  • + *
  • GROWL_NOTIFICATION_PRIORITY
  • + *
  • GROWL_NOTIFICATION_STICKY
  • + *
  • GROWL_NOTIFICATION_CLICK_CONTEXT
  • + *
  • GROWL_APP_NAME (required)
  • + *
+ * + * No longer recommended as of Growl 0.6. Three alternate methods of posting + * notifications are +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:], + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext, and + * Growl_PostNotification. + */ +#define GROWL_NOTIFICATION XSTR("GrowlNotification") +/*! @defined GROWL_SHUTDOWN +* @abstract The distributed notification name that tells Growl to shutdown. +* @discussion The Growl preference pane posts this notification when the +* "Stop Growl" button is clicked. +*/ +#define GROWL_SHUTDOWN XSTR("GrowlShutdown") +/*! @defined GROWL_PING + * @abstract A distributed notification to check whether Growl is running. + * @discussion This is used by the Growl preference pane. If it receives a + * GROWL_PONG, the preference pane takes this to mean that Growl is running. + */ +#define GROWL_PING XSTR("Honey, Mind Taking Out The Trash") +/*! @defined GROWL_PONG + * @abstract The distributed notification sent in reply to GROWL_PING. + * @discussion GrowlHelperApp posts this in reply to GROWL_PING. + */ +#define GROWL_PONG XSTR("What Do You Want From Me, Woman") +/*! @defined GROWL_IS_READY + * @abstract The distributed notification sent when Growl starts up. + * @discussion GrowlHelperApp posts this when it has begin listening on all of + * its sources for new notifications. GrowlApplicationBridge (in + * Growl.framework), upon receiving this notification, reregisters using the + * registration dictionary supplied by its delegate. + */ +#define GROWL_IS_READY XSTR("Lend Me Some Sugar; I Am Your Neighbor!") +/*! @defined GROWL_NOTIFICATION_CLICKED + * @abstract The distributed notification sent when a supported notification is clicked. + * @discussion When a Growl notification with a click context is clicked on by + * the user, Growl posts this distributed notification. + * The GrowlApplicationBridge responds to this notification by calling a + * callback in its delegate. + */ +#define GROWL_NOTIFICATION_CLICKED XSTR("GrowlClicked!") +#define GROWL_NOTIFICATION_TIMED_OUT XSTR("GrowlTimedOut!") + +/*! @group Other symbols */ +/* Symbols which don't fit into any of the other categories. */ + +/*! @defined GROWL_KEY_CLICKED_CONTEXT + * @abstract Used internally as the key for the clickedContext passed over DNC. + * @discussion This key is used in GROWL_NOTIFICATION_CLICKED, and contains the + * click context that was supplied in the original notification. + */ +#define GROWL_KEY_CLICKED_CONTEXT XSTR("ClickedContext") +/*! @defined GROWL_REG_DICT_EXTENSION + * @abstract The filename extension for registration dictionaries. + * @discussion The GrowlApplicationBridge in Growl.framework registers with + * Growl by creating a file with the extension of .(GROWL_REG_DICT_EXTENSION) + * and opening it in the GrowlHelperApp. This happens whether or not Growl is + * running; if it was stopped, it quits immediately without listening for + * notifications. + */ +#define GROWL_REG_DICT_EXTENSION XSTR("growlRegDict") + + +#define GROWL_POSITION_PREFERENCE_KEY @"GrowlSelectedPosition" + +#endif //ndef _GROWLDEFINES_H diff --git a/Growl.framework/Versions/A/Headers/Growl.h b/Growl.framework/Versions/A/Headers/Growl.h new file mode 100644 index 0000000..e2a4425 --- /dev/null +++ b/Growl.framework/Versions/A/Headers/Growl.h @@ -0,0 +1,6 @@ +#include "GrowlDefines.h" + +#ifdef __OBJC__ +# include "GrowlApplicationBridge.h" +#endif +#include "GrowlApplicationBridge-Carbon.h" diff --git a/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h b/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h new file mode 100644 index 0000000..e35663f --- /dev/null +++ b/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h @@ -0,0 +1,780 @@ +// +// GrowlApplicationBridge-Carbon.h +// Growl +// +// Created by Mac-arena the Bored Zo on Wed Jun 18 2004. +// Based on GrowlApplicationBridge.h by Evan Schoenberg. +// This source code is in the public domain. You may freely link it into any +// program. +// + +#ifndef _GROWLAPPLICATIONBRIDGE_CARBON_H_ +#define _GROWLAPPLICATIONBRIDGE_CARBON_H_ + +#include +#include + +#ifndef GROWL_EXPORT +#define GROWL_EXPORT __attribute__((visibility("default"))) +#endif + +/*! @header GrowlApplicationBridge-Carbon.h + * @abstract Declares an API that Carbon applications can use to interact with Growl. + * @discussion GrowlApplicationBridge uses a delegate to provide information //XXX + * to Growl (such as your application's name and what notifications it may + * post) and to provide information to your application (such as that Growl + * is listening for notifications or that a notification has been clicked). + * + * You can set the Growldelegate with Growl_SetDelegate and find out the + * current delegate with Growl_GetDelegate. See struct Growl_Delegate for more + * information about the delegate. + */ + +__BEGIN_DECLS + +/*! @struct Growl_Delegate + * @abstract Delegate to supply GrowlApplicationBridge with information and respond to events. + * @discussion The Growl delegate provides your interface to + * GrowlApplicationBridge. When GrowlApplicationBridge needs information about + * your application, it looks for it in the delegate; when Growl or the user + * does something that you might be interested in, GrowlApplicationBridge + * looks for a callback in the delegate and calls it if present + * (meaning, if it is not NULL). + * XXX on all of that + * @field size The size of the delegate structure. + * @field applicationName The name of your application. + * @field registrationDictionary A dictionary describing your application and the notifications it can send out. + * @field applicationIconData Your application's icon. + * @field growlInstallationWindowTitle The title of the installation window. + * @field growlInstallationInformation Text to display in the installation window. + * @field growlUpdateWindowTitle The title of the update window. + * @field growlUpdateInformation Text to display in the update window. + * @field referenceCount A count of owners of the delegate. + * @field retain Called when GrowlApplicationBridge receives this delegate. + * @field release Called when GrowlApplicationBridge no longer needs this delegate. + * @field growlIsReady Called when GrowlHelperApp is listening for notifications. + * @field growlNotificationWasClicked Called when a Growl notification is clicked. + * @field growlNotificationTimedOut Called when a Growl notification timed out. + */ +struct Growl_Delegate { + /* @discussion This should be sizeof(struct Growl_Delegate). + */ + size_t size; + + /*All of these attributes are optional. + *Optional attributes can be NULL; required attributes that + * are NULL cause setting the Growl delegate to fail. + *XXX - move optional/required status into the discussion for each field + */ + + /* This name is used both internally and in the Growl preferences. + * + * This should remain stable between different versions and incarnations of + * your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + * + * This can be NULL if it is provided elsewhere, namely in an + * auto-discoverable plist file in your app bundle + * (XXX refer to more information on that) or in registrationDictionary. + */ + CFStringRef applicationName; + + /* + * Must contain at least these keys: + * GROWL_NOTIFICATIONS_ALL (CFArray): + * Contains the names of all notifications your application may post. + * + * Can also contain these keys: + * GROWL_NOTIFICATIONS_DEFAULT (CFArray): + * Names of notifications that should be enabled by default. + * If omitted, GROWL_NOTIFICATIONS_ALL will be used. + * GROWL_APP_NAME (CFString): + * Same as the applicationName member of this structure. + * If both are present, the applicationName member shall prevail. + * If this key is present, you may omit applicationName (set it to NULL). + * GROWL_APP_ICON (CFData): + * Same as the iconData member of this structure. + * If both are present, the iconData member shall prevail. + * If this key is present, you may omit iconData (set it to NULL). + * + * If you change the contents of this dictionary after setting the delegate, + * be sure to call Growl_Reregister. + * + * This can be NULL if you have an auto-discoverable plist file in your app + * bundle. (XXX refer to more information on that) + */ + CFDictionaryRef registrationDictionary; + + /* The data can be in any format supported by NSImage. As of + * Mac OS X 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and + * PICT formats. + * + * If this is not supplied, Growl will look up your application's icon by + * its application name. + */ + CFDataRef applicationIconData; + + /* Installer display attributes + * + * These four attributes are used by the Growl installer, if this framework + * supports it. + * For any of these being NULL, a localised default will be + * supplied. + */ + + /* If this is NULL, Growl will use a default, + * localized title. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlInstallationWindowTitle; + /* This information may be as long or short as desired (the + * window will be sized to fit it). If Growl is not installed, it will + * be displayed to the user as an explanation of what Growl is and what + * it can do in your application. + * It should probably note that no download is required to install. + * + * If this is NULL, Growl will use a default, localized + * explanation. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlInstallationInformation; + /* If this is NULL, Growl will use a default, + * localized title. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlUpdateWindowTitle; + /* This information may be as long or short as desired (the + * window will be sized to fit it). If an older version of Growl is + * installed, it will be displayed to the user as an explanation that an + * updated version of Growl is included in your application and + * no download is required. + * + * If this is NULL, Growl will use a default, localized + * explanation. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlUpdateInformation; + + /* This member is provided for use by your retain and release + * callbacks (see below). + * + * GrowlApplicationBridge never directly uses this member. Instead, it + * calls your retain callback (if non-NULL) and your release + * callback (if non-NULL). + */ + unsigned referenceCount; + + //Functions. Currently all of these are optional (any of them can be NULL). + + /* When you call Growl_SetDelegate(newDelegate), it will call + * oldDelegate->release(oldDelegate), and then it will call + * newDelegate->retain(newDelegate), and the return value from retain + * is what will be set as the delegate. + * (This means that this member works like CFRetain and -[NSObject retain].) + * This member is optional (it can be NULL). + * For a delegate allocated with malloc, this member would be + * NULL. + * @result A delegate to which GrowlApplicationBridge holds a reference. + */ + void *(*retain)(void *); + /* When you call Growl_SetDelegate(newDelegate), it will call + * oldDelegate->release(oldDelegate), and then it will call + * newDelegate->retain(newDelegate), and the return value from retain + * is what will be set as the delegate. + * (This means that this member works like CFRelease and + * -[NSObject release].) + * This member is optional (it can be NULL). + * For a delegate allocated with malloc, this member might be + * free(3). + */ + void (*release)(void *); + + /* Informs the delegate that Growl (specifically, the GrowlHelperApp) was + * launched successfully (or was already running). The application can + * take actions with the knowledge that Growl is installed and functional. + */ + void (*growlIsReady)(void); + + /* Informs the delegate that a Growl notification was clicked. It is only + * sent for notifications sent with a non-NULL clickContext, + * so if you want to receive a message when a notification is clicked, + * clickContext must not be NULL when calling + * Growl_PostNotification or + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext. + */ + void (*growlNotificationWasClicked)(CFPropertyListRef clickContext); + + /* Informs the delegate that a Growl notification timed out. It is only + * sent for notifications sent with a non-NULL clickContext, + * so if you want to receive a message when a notification is clicked, + * clickContext must not be NULL when calling + * Growl_PostNotification or + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext. + */ + void (*growlNotificationTimedOut)(CFPropertyListRef clickContext); +}; + +/*! @struct Growl_Notification + * @abstract Structure describing a Growl notification. + * @discussion XXX + * @field size The size of the notification structure. + * @field name Identifies the notification. + * @field title Short synopsis of the notification. + * @field description Additional text. + * @field iconData An icon for the notification. + * @field priority An indicator of the notification's importance. + * @field reserved Bits reserved for future usage. + * @field isSticky Requests that a notification stay on-screen until dismissed explicitly. + * @field clickContext An identifier to be passed to your click callback when a notification is clicked. + * @field clickCallback A callback to call when the notification is clicked. + */ +struct Growl_Notification { + /* This should be sizeof(struct Growl_Notification). + */ + size_t size; + + /* The notification name distinguishes one type of + * notification from another. The name should be human-readable, as it + * will be displayed in the Growl preference pane. + * + * The name is used in the GROWL_NOTIFICATIONS_ALL and + * GROWL_NOTIFICATIONS_DEFAULT arrays in the registration dictionary, and + * in this member of the Growl_Notification structure. + */ + CFStringRef name; + + /* A notification's title describes the notification briefly. + * It should be easy to read quickly by the user. + */ + CFStringRef title; + + /* The description supplements the title with more + * information. It is usually longer and sometimes involves a list of + * subjects. For example, for a 'Download complete' notification, the + * description might have one filename per line. GrowlMail in Growl 0.6 + * uses a description of '%d new mail(s)' (formatted with the number of + * messages). + */ + CFStringRef description; + + /* The notification icon usually indicates either what + * happened (it may have the same icon as e.g. a toolbar item that + * started the process that led to the notification), or what it happened + * to (e.g. a document icon). + * + * The icon data is optional, so it can be NULL. In that + * case, the application icon is used alone. Not all displays support + * icons. + * + * The data can be in any format supported by NSImage. As of Mac OS X + * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT form + * ats. + */ + CFDataRef iconData; + + /* Priority is new in Growl 0.6, and is represented as a + * signed integer from -2 to +2. 0 is Normal priority, -2 is Very Low + * priority, and +2 is Very High priority. + * + * Not all displays support priority. If you do not wish to assign a + * priority to your notification, assign 0. + */ + signed int priority; + + /* These bits are not used in Growl 0.6. Set them to 0. + */ + unsigned reserved: 31; + + /* When the sticky bit is clear, in most displays, + * notifications disappear after a certain amount of time. Sticky + * notifications, however, remain on-screen until the user dismisses them + * explicitly, usually by clicking them. + * + * Sticky notifications were introduced in Growl 0.6. Most notifications + * should not be sticky. Not all displays support sticky notifications, + * and the user may choose in Growl's preference pane to force the + * notification to be sticky or non-sticky, in which case the sticky bit + * in the notification will be ignored. + */ + unsigned isSticky: 1; + + /* If this is not NULL, and your click callback + * is not NULL either, this will be passed to the callback + * when your notification is clicked by the user. + * + * Click feedback was introduced in Growl 0.6, and it is optional. Not + * all displays support click feedback. + */ + CFPropertyListRef clickContext; + + /* If this is not NULL, it will be called instead + * of the Growl delegate's click callback when clickContext is + * non-NULL and the notification is clicked on by the user. + * + * Click feedback was introduced in Growl 0.6, and it is optional. Not + * all displays support click feedback. + * + * The per-notification click callback is not yet supported as of Growl + * 0.7. + */ + void (*clickCallback)(CFPropertyListRef clickContext); + + CFStringRef identifier; +}; + +#pragma mark - +#pragma mark Easy initialisers + +/*! @defined InitGrowlDelegate + * @abstract Callable macro. Initializes a Growl delegate structure to defaults. + * @discussion Call with a pointer to a struct Growl_Delegate. All of the + * members of the structure will be set to 0 or NULL, except for + * size (which will be set to sizeof(struct Growl_Delegate)) and + * referenceCount (which will be set to 1). + */ +#define InitGrowlDelegate(delegate) \ + do { \ + if (delegate) { \ + (delegate)->size = sizeof(struct Growl_Delegate); \ + (delegate)->applicationName = NULL; \ + (delegate)->registrationDictionary = NULL; \ + (delegate)->applicationIconData = NULL; \ + (delegate)->growlInstallationWindowTitle = NULL; \ + (delegate)->growlInstallationInformation = NULL; \ + (delegate)->growlUpdateWindowTitle = NULL; \ + (delegate)->growlUpdateInformation = NULL; \ + (delegate)->referenceCount = 1U; \ + (delegate)->retain = NULL; \ + (delegate)->release = NULL; \ + (delegate)->growlIsReady = NULL; \ + (delegate)->growlNotificationWasClicked = NULL; \ + (delegate)->growlNotificationTimedOut = NULL; \ + } \ + } while(0) + +/*! @defined InitGrowlNotification + * @abstract Callable macro. Initializes a Growl notification structure to defaults. + * @discussion Call with a pointer to a struct Growl_Notification. All of + * the members of the structure will be set to 0 or NULL, except + * for size (which will be set to + * sizeof(struct Growl_Notification)). + */ +#define InitGrowlNotification(notification) \ + do { \ + if (notification) { \ + (notification)->size = sizeof(struct Growl_Notification); \ + (notification)->name = NULL; \ + (notification)->title = NULL; \ + (notification)->description = NULL; \ + (notification)->iconData = NULL; \ + (notification)->priority = 0; \ + (notification)->reserved = 0U; \ + (notification)->isSticky = false; \ + (notification)->clickContext = NULL; \ + (notification)->clickCallback = NULL; \ + (notification)->identifier = NULL; \ + } \ + } while(0) + +#pragma mark - +#pragma mark Public API + +// @functiongroup Managing the Growl delegate + +/*! @function Growl_SetDelegate + * @abstract Replaces the current Growl delegate with a new one, or removes + * the Growl delegate. + * @param newDelegate + * @result Returns false and does nothing else if a pointer that was passed in + * is unsatisfactory (because it is non-NULL, but at least one + * required member of it is NULL). Otherwise, sets or unsets the + * delegate and returns true. + * @discussion When newDelegate is non-NULL, sets + * the delegate to newDelegate. When it is NULL, + * the current delegate will be unset, and no delegate will be in place. + * + * It is legal for newDelegate to be the current delegate; + * nothing will happen, and Growl_SetDelegate will return true. It is also + * legal for it to be NULL, as described above; again, it will + * return true. + * + * If there was a delegate in place before the call, Growl_SetDelegate will + * call the old delegate's release member if it was non-NULL. If + * newDelegate is non-NULL, Growl_SetDelegate will + * call newDelegate->retain, and set the delegate to its return + * value. + * + * If you are using Growl-WithInstaller.framework, and an older version of + * Growl is installed on the user's system, the user will automatically be + * prompted to update. + * + * GrowlApplicationBridge currently does not copy this structure, nor does it + * retain any of the CF objects in the structure (it regards the structure as + * a container that retains the objects when they are added and releases them + * when they are removed or the structure is destroyed). Also, + * GrowlApplicationBridge currently does not modify any member of the + * structure, except possibly the referenceCount by calling the retain and + * release members. + */ +GROWL_EXPORT Boolean Growl_SetDelegate(struct Growl_Delegate *newDelegate); + +/*! @function Growl_GetDelegate + * @abstract Returns the current Growl delegate, if any. + * @result The current Growl delegate. + * @discussion Returns the last pointer passed into Growl_SetDelegate, or + * NULL if no such call has been made. + * + * This function follows standard Core Foundation reference-counting rules. + * Because it is a Get function, not a Copy function, it will not retain the + * delegate on your behalf. You are responsible for retaining and releasing + * the delegate as needed. + */ +GROWL_EXPORT struct Growl_Delegate *Growl_GetDelegate(void); + +#pragma mark - + +// @functiongroup Posting Growl notifications + +/*! @function Growl_PostNotification + * @abstract Posts a Growl notification. + * @param notification The notification to post. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * NULL (or 0 or false as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. + * If the user cancels, this function will have no effect until the next + * application session, at which time when it is called the user will be + * prompted again. The user is also given the option to not be prompted again. + * If the user does choose to install Growl, the requested notification will + * be displayed once Growl is installed and running. + */ +GROWL_EXPORT void Growl_PostNotification(const struct Growl_Notification *notification); + +/*! @function Growl_PostNotificationWithDictionary +* @abstract Notifies using a userInfo dictionary suitable for passing to +* CFDistributedNotificationCenter. +* @param userInfo The dictionary to notify with. +* @discussion Before Growl 0.6, your application would have posted +* notifications using CFDistributedNotificationCenter by creating a userInfo +* dictionary with the notification data. This had the advantage of allowing +* you to add other data to the dictionary for programs besides Growl that +* might be listening. +* +* This function allows you to use such dictionaries without being restricted +* to using CFDistributedNotificationCenter. The keys for this dictionary + * can be found in GrowlDefines.h. +*/ +GROWL_EXPORT void Growl_PostNotificationWithDictionary(CFDictionaryRef userInfo); + +/*! @function Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext + * @abstract Posts a Growl notification using parameter values. + * @param title The title of the notification. + * @param description The description of the notification. + * @param notificationName The name of the notification as listed in the + * registration dictionary. + * @param iconData Data representing a notification icon. Can be NULL. + * @param priority The priority of the notification (-2 to +2, with -2 + * being Very Low and +2 being Very High). + * @param isSticky If true, requests that this notification wait for a + * response from the user. + * @param clickContext An object to pass to the clickCallback, if any. Can + * be NULL, in which case the clickCallback is not called. + * @discussion Creates a temporary Growl_Notification, fills it out with the + * supplied information, and calls Growl_PostNotification on it. + * See struct Growl_Notification and Growl_PostNotification for more + * information. + * + * The icon data can be in any format supported by NSImage. As of Mac OS X + * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT formats. + */ +GROWL_EXPORT void Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext( + /*inhale*/ + CFStringRef title, + CFStringRef description, + CFStringRef notificationName, + CFDataRef iconData, + signed int priority, + Boolean isSticky, + CFPropertyListRef clickContext); + +#pragma mark - + +// @functiongroup Registering + +/*! @function Growl_RegisterWithDictionary + * @abstract Register your application with Growl without setting a delegate. + * @discussion When you call this function with a dictionary, + * GrowlApplicationBridge registers your application using that dictionary. + * If you pass NULL, GrowlApplicationBridge will ask the delegate + * (if there is one) for a dictionary, and if that doesn't work, it will look + * in your application's bundle for an auto-discoverable plist. + * (XXX refer to more information on that) + * + * If you pass a dictionary to this function, it must include the + * GROWL_APP_NAME key, unless a delegate is set. + * + * This function is mainly an alternative to the delegate system introduced + * with Growl 0.6. Without a delegate, you cannot receive callbacks such as + * growlIsReady (since they are sent to the delegate). You can, + * however, set a delegate after registering without one. + * + * This function was introduced in Growl.framework 0.7. + * @result false if registration failed (e.g. if Growl isn't installed). + */ +GROWL_EXPORT Boolean Growl_RegisterWithDictionary(CFDictionaryRef regDict); + +/*! @function Growl_Reregister + * @abstract Updates your registration with Growl. + * @discussion If your application changes the contents of the + * GROWL_NOTIFICATIONS_ALL key in the registrationDictionary member of the + * Growl delegate, or if it changes the value of that member, or if it + * changes the contents of its auto-discoverable plist, call this function + * to have Growl update its registration information for your application. + * + * Otherwise, this function does not normally need to be called. If you're + * using a delegate, your application will be registered when you set the + * delegate if both the delegate and its registrationDictionary member are + * non-NULL. + * + * This function is now implemented using + * Growl_RegisterWithDictionary. + */ +GROWL_EXPORT void Growl_Reregister(void); + +#pragma mark - + +/*! @function Growl_SetWillRegisterWhenGrowlIsReady + * @abstract Tells GrowlApplicationBridge to register with Growl when Growl + * launches (or not). + * @discussion When Growl has started listening for notifications, it posts a + * GROWL_IS_READY notification on the Distributed Notification + * Center. GrowlApplicationBridge listens for this notification, using it to + * perform various tasks (such as calling your delegate's + * growlIsReady callback, if it has one). If this function is + * called with true, one of those tasks will be to reregister + * with Growl (in the manner of Growl_Reregister). + * + * This attribute is automatically set back to false + * (the default) after every GROWL_IS_READY notification. + * @param flag true if you want GrowlApplicationBridge to register with + * Growl when next it is ready; false if not. + */ +GROWL_EXPORT void Growl_SetWillRegisterWhenGrowlIsReady(Boolean flag); +/*! @function Growl_WillRegisterWhenGrowlIsReady + * @abstract Reports whether GrowlApplicationBridge will register with Growl + * when Growl next launches. + * @result true if GrowlApplicationBridge will register with + * Growl when next it posts GROWL_IS_READY; false if not. + */ +GROWL_EXPORT Boolean Growl_WillRegisterWhenGrowlIsReady(void); + +#pragma mark - + +// @functiongroup Obtaining registration dictionaries + +/*! @function Growl_CopyRegistrationDictionaryFromDelegate + * @abstract Asks the delegate for a registration dictionary. + * @discussion If no delegate is set, or if the delegate's + * registrationDictionary member is NULL, this + * function returns NULL. + * + * This function does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use + * Growl_CreateRegistrationDictionaryByFillingInDictionary or + * Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * to try to fill in missing keys. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromDelegate(void); + +/*! @function Growl_CopyRegistrationDictionaryFromBundle + * @abstract Looks in a bundle for a registration dictionary. + * @discussion This function looks in a bundle for an auto-discoverable + * registration dictionary file using CFBundleCopyResourceURL. + * If it finds one, it loads the file using CFPropertyList and + * returns the result. + * + * If you pass NULL as the bundle, the main bundle is examined. + * + * This function does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use + * Growl_CreateRegistrationDictionaryByFillingInDictionary: or + * Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * to try to fill in missing keys. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromBundle(CFBundleRef bundle); + +/*! @function Growl_CreateBestRegistrationDictionary + * @abstract Obtains a registration dictionary, filled out to the best of + * GrowlApplicationBridge's knowledge. + * @discussion This function creates a registration dictionary as best + * GrowlApplicationBridge knows how. + * + * First, GrowlApplicationBridge examines the Growl delegate (if there is + * one) and gets the registration dictionary from that. If no such dictionary + * was obtained, GrowlApplicationBridge looks in your application's main + * bundle for an auto-discoverable registration dictionary file. If that + * doesn't exist either, this function returns NULL. + * + * Second, GrowlApplicationBridge calls + * Growl_CreateRegistrationDictionaryByFillingInDictionary with + * whatever dictionary was obtained. The result of that function is the + * result of this function. + * + * GrowlApplicationBridge uses this function when you call + * Growl_SetDelegate, or when you call + * Growl_RegisterWithDictionary with NULL. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateBestRegistrationDictionary(void); + +#pragma mark - + +// @functiongroup Filling in registration dictionaries + +/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionary + * @abstract Tries to fill in missing keys in a registration dictionary. + * @param regDict The dictionary to fill in. + * @result The dictionary with the keys filled in. + * @discussion This function examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Keys are only filled in if missing; if a key is present in the dictionary, + * its value will not be changed. + * + * This function was introduced in Growl.framework 0.7. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionary(CFDictionaryRef regDict); +/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * @abstract Tries to fill in missing keys in a registration dictionary. + * @param regDict The dictionary to fill in. + * @param keys The keys to fill in. If NULL, any missing keys are filled in. + * @result The dictionary with the keys filled in. + * @discussion This function examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Only those keys that are listed in keys will be filled in. + * Other missing keys are ignored. Also, keys are only filled in if missing; + * if a key is present in the dictionary, its value will not be changed. + * + * This function was introduced in Growl.framework 0.7. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys(CFDictionaryRef regDict, CFSetRef keys); + +/*! @brief Tries to fill in missing keys in a notification dictionary. + * @param notifDict The dictionary to fill in. + * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict. + * @discussion This function examines the \a notifDict for missing keys, and + * tries to get them from the last known registration dictionary. As of 1.1, + * the keys that it will look for are: + * + * \li GROWL_APP_NAME + * \li GROWL_APP_ICON + * + * @since Growl.framework 1.1 + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateNotificationDictionaryByFillingInDictionary(CFDictionaryRef notifDict); + +#pragma mark - + +// @functiongroup Querying Growl's status + +/*! @function Growl_IsInstalled + * @abstract Determines whether the Growl prefpane and its helper app are + * installed. + * @result Returns true if Growl is installed, false otherwise. + */ +GROWL_EXPORT Boolean Growl_IsInstalled(void); + +/*! @function Growl_IsRunning + * @abstract Cycles through the process list to find whether GrowlHelperApp + * is running. + * @result Returns true if Growl is running, false otherwise. + */ +GROWL_EXPORT Boolean Growl_IsRunning(void); + +#pragma mark - + +// @functiongroup Launching Growl + +/*! @typedef GrowlLaunchCallback + * @abstract Callback to notify you that Growl is running. + * @param context The context pointer passed to Growl_LaunchIfInstalled. + * @discussion Growl_LaunchIfInstalled calls this callback function if Growl + * was already running or if it launched Growl successfully. + */ +typedef void (*GrowlLaunchCallback)(void *context); + +/*! @function Growl_LaunchIfInstalled + * @abstract Launches GrowlHelperApp if it is not already running. + * @param callback A callback function which will be called if Growl was successfully + * launched or was already running. Can be NULL. + * @param context The context pointer to pass to the callback. Can be NULL. + * @result Returns true if Growl was successfully launched or was already + * running; returns false and does not call the callback otherwise. + * @discussion Returns true and calls the callback (if the callback is not + * NULL) if the Growl helper app began launching or was already + * running. Returns false and performs no other action if Growl could not be + * launched (e.g. because the Growl preference pane is not properly installed). + * + * If Growl_CreateBestRegistrationDictionary returns + * non-NULL, this function will register with Growl atomically. + * + * The callback should take a single argument; this is to allow applications + * to have context-relevant information passed back. It is perfectly + * acceptable for context to be NULL. The callback itself can be + * NULL if you don't want one. + */ +GROWL_EXPORT Boolean Growl_LaunchIfInstalled(GrowlLaunchCallback callback, void *context); + +#pragma mark - +#pragma mark Constants + +/*! @defined GROWL_PREFPANE_BUNDLE_IDENTIFIER + * @abstract The CFBundleIdentifier of the Growl preference pane bundle. + * @discussion GrowlApplicationBridge uses this to determine whether Growl is + * currently installed, by searching for the Growl preference pane. Your + * application probably does not need to use this macro itself. + */ +#ifndef GROWL_PREFPANE_BUNDLE_IDENTIFIER +#define GROWL_PREFPANE_BUNDLE_IDENTIFIER CFSTR("com.growl.prefpanel") +#endif + +__END_DECLS + +#endif /* _GROWLAPPLICATIONBRIDGE_CARBON_H_ */ diff --git a/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h b/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h new file mode 100644 index 0000000..4341f3f --- /dev/null +++ b/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h @@ -0,0 +1,609 @@ +// +// GrowlApplicationBridge.h +// Growl +// +// Created by Evan Schoenberg on Wed Jun 16 2004. +// Copyright 2004-2006 The Growl Project. All rights reserved. +// + +/*! + * @header GrowlApplicationBridge.h + * @abstract Defines the GrowlApplicationBridge class. + * @discussion This header defines the GrowlApplicationBridge class as well as + * the GROWL_PREFPANE_BUNDLE_IDENTIFIER constant. + */ + +#ifndef __GrowlApplicationBridge_h__ +#define __GrowlApplicationBridge_h__ + +#import +#import +#import "GrowlDefines.h" + +//Forward declarations +@protocol GrowlApplicationBridgeDelegate; + +//Internal notification when the user chooses not to install (to avoid continuing to cache notifications awaiting installation) +#define GROWL_USER_CHOSE_NOT_TO_INSTALL_NOTIFICATION @"User chose not to install" + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @class GrowlApplicationBridge + * @abstract A class used to interface with Growl. + * @discussion This class provides a means to interface with Growl. + * + * Currently it provides a way to detect if Growl is installed and launch the + * GrowlHelperApp if it's not already running. + */ +@interface GrowlApplicationBridge : NSObject { + +} + +/*! + * @method isGrowlInstalled + * @abstract Detects whether Growl is installed. + * @discussion Determines if the Growl prefpane and its helper app are installed. + * @result Returns YES if Growl is installed, NO otherwise. + */ ++ (BOOL) isGrowlInstalled; + +/*! + * @method isGrowlRunning + * @abstract Detects whether GrowlHelperApp is currently running. + * @discussion Cycles through the process list to find whether GrowlHelperApp is running and returns its findings. + * @result Returns YES if GrowlHelperApp is running, NO otherwise. + */ ++ (BOOL) isGrowlRunning; + +#pragma mark - + +/*! + * @method setGrowlDelegate: + * @abstract Set the object which will be responsible for providing and receiving Growl information. + * @discussion This must be called before using GrowlApplicationBridge. + * + * The methods in the GrowlApplicationBridgeDelegate protocol are required + * and return the basic information needed to register with Growl. + * + * The methods in the GrowlApplicationBridgeDelegate_InformalProtocol + * informal protocol are individually optional. They provide a greater + * degree of interaction between the application and growl such as informing + * the application when one of its Growl notifications is clicked by the user. + * + * The methods in the GrowlApplicationBridgeDelegate_Installation_InformalProtocol + * informal protocol are individually optional and are only applicable when + * using the Growl-WithInstaller.framework which allows for automated Growl + * installation. + * + * When this method is called, data will be collected from inDelegate, Growl + * will be launched if it is not already running, and the application will be + * registered with Growl. + * + * If using the Growl-WithInstaller framework, if Growl is already installed + * but this copy of the framework has an updated version of Growl, the user + * will be prompted to update automatically. + * + * @param inDelegate The delegate for the GrowlApplicationBridge. It must conform to the GrowlApplicationBridgeDelegate protocol. + */ ++ (void) setGrowlDelegate:(NSObject *)inDelegate; + +/*! + * @method growlDelegate + * @abstract Return the object responsible for providing and receiving Growl information. + * @discussion See setGrowlDelegate: for details. + * @result The Growl delegate. + */ ++ (NSObject *) growlDelegate; + +#pragma mark - + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext; + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:identifier: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + * @param identifier An identifier for this notification. Notifications with equal identifiers are coalesced. + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext + identifier:(NSString *)identifier; + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:identifier: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + * @param identifier An identifier for this notification. Notifications with equal identifiers are coalesced. + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext + identifier:(NSString *)identifier; + +/*! @method notifyWithDictionary: + * @abstract Notifies using a userInfo dictionary suitable for passing to + * NSDistributedNotificationCenter. + * @param userInfo The dictionary to notify with. + * @discussion Before Growl 0.6, your application would have posted + * notifications using NSDistributedNotificationCenter by + * creating a userInfo dictionary with the notification data. This had the + * advantage of allowing you to add other data to the dictionary for programs + * besides Growl that might be listening. + * + * This method allows you to use such dictionaries without being restricted + * to using NSDistributedNotificationCenter. The keys for this dictionary + * can be found in GrowlDefines.h. + */ ++ (void) notifyWithDictionary:(NSDictionary *)userInfo; + +#pragma mark - + +/*! @method registerWithDictionary: + * @abstract Register your application with Growl without setting a delegate. + * @discussion When you call this method with a dictionary, + * GrowlApplicationBridge registers your application using that dictionary. + * If you pass nil, GrowlApplicationBridge will ask the delegate + * (if there is one) for a dictionary, and if that doesn't work, it will look + * in your application's bundle for an auto-discoverable plist. + * (XXX refer to more information on that) + * + * If you pass a dictionary to this method, it must include the + * GROWL_APP_NAME key, unless a delegate is set. + * + * This method is mainly an alternative to the delegate system introduced + * with Growl 0.6. Without a delegate, you cannot receive callbacks such as + * -growlIsReady (since they are sent to the delegate). You can, + * however, set a delegate after registering without one. + * + * This method was introduced in Growl.framework 0.7. + */ ++ (BOOL) registerWithDictionary:(NSDictionary *)regDict; + +/*! @method reregisterGrowlNotifications + * @abstract Reregister the notifications for this application. + * @discussion This method does not normally need to be called. If your + * application changes what notifications it is registering with Growl, call + * this method to have the Growl delegate's + * -registrationDictionaryForGrowl method called again and the + * Growl registration information updated. + * + * This method is now implemented using -registerWithDictionary:. + */ ++ (void) reregisterGrowlNotifications; + +#pragma mark - + +/*! @method setWillRegisterWhenGrowlIsReady: + * @abstract Tells GrowlApplicationBridge to register with Growl when Growl + * launches (or not). + * @discussion When Growl has started listening for notifications, it posts a + * GROWL_IS_READY notification on the Distributed Notification + * Center. GrowlApplicationBridge listens for this notification, using it to + * perform various tasks (such as calling your delegate's + * -growlIsReady method, if it has one). If this method is + * called with YES, one of those tasks will be to reregister + * with Growl (in the manner of -reregisterGrowlNotifications). + * + * This attribute is automatically set back to NO (the default) + * after every GROWL_IS_READY notification. + * @param flag YES if you want GrowlApplicationBridge to register with + * Growl when next it is ready; NO if not. + */ ++ (void) setWillRegisterWhenGrowlIsReady:(BOOL)flag; +/*! @method willRegisterWhenGrowlIsReady + * @abstract Reports whether GrowlApplicationBridge will register with Growl + * when Growl next launches. + * @result YES if GrowlApplicationBridge will register with Growl + * when next it posts GROWL_IS_READY; NO if not. + */ ++ (BOOL) willRegisterWhenGrowlIsReady; + +#pragma mark - + +/*! @method registrationDictionaryFromDelegate + * @abstract Asks the delegate for a registration dictionary. + * @discussion If no delegate is set, or if the delegate's + * -registrationDictionaryForGrowl method returns + * nil, this method returns nil. + * + * This method does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:] or + * +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:restrictToKeys:] to try + * to fill in missing keys. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) registrationDictionaryFromDelegate; + +/*! @method registrationDictionaryFromBundle: + * @abstract Looks in a bundle for a registration dictionary. + * @discussion This method looks in a bundle for an auto-discoverable + * registration dictionary file using -[NSBundle + * pathForResource:ofType:]. If it finds one, it loads the file using + * +[NSDictionary dictionaryWithContentsOfFile:] and returns the + * result. + * + * If you pass nil as the bundle, the main bundle is examined. + * + * This method does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:] or + * +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:restrictToKeys:] to try + * to fill in missing keys. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) registrationDictionaryFromBundle:(NSBundle *)bundle; + +/*! @method bestRegistrationDictionary + * @abstract Obtains a registration dictionary, filled out to the best of + * GrowlApplicationBridge's knowledge. + * @discussion This method creates a registration dictionary as best + * GrowlApplicationBridge knows how. + * + * First, GrowlApplicationBridge contacts the Growl delegate (if there is + * one) and gets the registration dictionary from that. If no such dictionary + * was obtained, GrowlApplicationBridge looks in your application's main + * bundle for an auto-discoverable registration dictionary file. If that + * doesn't exist either, this method returns nil. + * + * Second, GrowlApplicationBridge calls + * +registrationDictionaryByFillingInDictionary: with whatever + * dictionary was obtained. The result of that method is the result of this + * method. + * + * GrowlApplicationBridge uses this method when you call + * +setGrowlDelegate:, or when you call + * +registerWithDictionary: with nil. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) bestRegistrationDictionary; + +#pragma mark - + +/*! @method registrationDictionaryByFillingInDictionary: + * @abstract Tries to fill in missing keys in a registration dictionary. + * @discussion This method examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Keys are only filled in if missing; if a key is present in the dictionary, + * its value will not be changed. + * + * This method was introduced in Growl.framework 0.7. + * @param regDict The dictionary to fill in. + * @result The dictionary with the keys filled in. This is an autoreleased + * copy of regDict. + */ ++ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict; +/*! @method registrationDictionaryByFillingInDictionary:restrictToKeys: + * @abstract Tries to fill in missing keys in a registration dictionary. + * @discussion This method examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Only those keys that are listed in keys will be filled in. + * Other missing keys are ignored. Also, keys are only filled in if missing; + * if a key is present in the dictionary, its value will not be changed. + * + * This method was introduced in Growl.framework 0.7. + * @param regDict The dictionary to fill in. + * @param keys The keys to fill in. If nil, any missing keys are filled in. + * @result The dictionary with the keys filled in. This is an autoreleased + * copy of regDict. + */ ++ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict restrictToKeys:(NSSet *)keys; + +/*! @brief Tries to fill in missing keys in a notification dictionary. + * @param notifDict The dictionary to fill in. + * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict. + * @discussion This function examines the \a notifDict for missing keys, and + * tries to get them from the last known registration dictionary. As of 1.1, + * the keys that it will look for are: + * + * \li GROWL_APP_NAME + * \li GROWL_APP_ICON + * + * @since Growl.framework 1.1 + */ ++ (NSDictionary *) notificationDictionaryByFillingInDictionary:(NSDictionary *)regDict; + ++ (NSDictionary *) frameworkInfoDictionary; +@end + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @protocol GrowlApplicationBridgeDelegate + * @abstract Required protocol for the Growl delegate. + * @discussion The methods in this protocol are required and are called + * automatically as needed by GrowlApplicationBridge. See + * +[GrowlApplicationBridge setGrowlDelegate:]. + * See also GrowlApplicationBridgeDelegate_InformalProtocol. + */ + +@protocol GrowlApplicationBridgeDelegate + +// -registrationDictionaryForGrowl has moved to the informal protocol as of 0.7. + +@end + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @category NSObject(GrowlApplicationBridgeDelegate_InformalProtocol) + * @abstract Methods which may be optionally implemented by the GrowlDelegate. + * @discussion The methods in this informal protocol will only be called if implemented by the delegate. + */ +@interface NSObject (GrowlApplicationBridgeDelegate_InformalProtocol) + +/*! + * @method registrationDictionaryForGrowl + * @abstract Return the dictionary used to register this application with Growl. + * @discussion The returned dictionary gives Growl the complete list of + * notifications this application will ever send, and it also specifies which + * notifications should be enabled by default. Each is specified by an array + * of NSString objects. + * + * For most applications, these two arrays can be the same (if all sent + * notifications should be displayed by default). + * + * The NSString objects of these arrays will correspond to the + * notificationName: parameter passed in + * +[GrowlApplicationBridge + * notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:] calls. + * + * The dictionary should have the required key object pairs: + * key: GROWL_NOTIFICATIONS_ALL object: NSArray of NSString objects + * key: GROWL_NOTIFICATIONS_DEFAULT object: NSArray of NSString objects + * + * The dictionary may have the following key object pairs: + * key: GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES object: NSDictionary of key: notification name object: human-readable notification name + * + * You do not need to implement this method if you have an auto-discoverable + * plist file in your app bundle. (XXX refer to more information on that) + * + * @result The NSDictionary to use for registration. + */ +- (NSDictionary *) registrationDictionaryForGrowl; + +/*! + * @method applicationNameForGrowl + * @abstract Return the name of this application which will be used for Growl bookkeeping. + * @discussion This name is used both internally and in the Growl preferences. + * + * This should remain stable between different versions and incarnations of + * your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + * + * You do not need to implement this method if you are providing the + * application name elsewhere, meaning in an auto-discoverable plist file in + * your app bundle (XXX refer to more information on that) or in the result + * of -registrationDictionaryForGrowl. + * + * @result The name of the application using Growl. + */ +- (NSString *) applicationNameForGrowl; + +/*! + * @method applicationIconForGrowl + * @abstract Return the NSImage to treat as the application icon. + * @discussion The delegate may optionally return an NSImage + * object to use as the application icon. If this method is not implemented, + * {{{-applicationIconDataForGrowl}}} is tried. If that method is not + * implemented, the application's own icon is used. Neither method is + * generally needed. + * @result The NSImage to treat as the application icon. + */ +- (NSImage *) applicationIconForGrowl; + +/*! + * @method applicationIconDataForGrowl + * @abstract Return the NSData to treat as the application icon. + * @discussion The delegate may optionally return an NSData + * object to use as the application icon; if this is not implemented, the + * application's own icon is used. This is not generally needed. + * @result The NSData to treat as the application icon. + * @deprecated In version 1.1, in favor of {{{-applicationIconForGrowl}}}. + */ +- (NSData *) applicationIconDataForGrowl; + +/*! + * @method growlIsReady + * @abstract Informs the delegate that Growl has launched. + * @discussion Informs the delegate that Growl (specifically, the + * GrowlHelperApp) was launched successfully. The application can take actions + * with the knowledge that Growl is installed and functional. + */ +- (void) growlIsReady; + +/*! + * @method growlNotificationWasClicked: + * @abstract Informs the delegate that a Growl notification was clicked. + * @discussion Informs the delegate that a Growl notification was clicked. It + * is only sent for notifications sent with a non-nil + * clickContext, so if you want to receive a message when a notification is + * clicked, clickContext must not be nil when calling + * +[GrowlApplicationBridge notifyWithTitle: description:notificationName:iconData:priority:isSticky:clickContext:]. + * @param clickContext The clickContext passed when displaying the notification originally via +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:]. + */ +- (void) growlNotificationWasClicked:(id)clickContext; + +/*! + * @method growlNotificationTimedOut: + * @abstract Informs the delegate that a Growl notification timed out. + * @discussion Informs the delegate that a Growl notification timed out. It + * is only sent for notifications sent with a non-nil + * clickContext, so if you want to receive a message when a notification is + * clicked, clickContext must not be nil when calling + * +[GrowlApplicationBridge notifyWithTitle: description:notificationName:iconData:priority:isSticky:clickContext:]. + * @param clickContext The clickContext passed when displaying the notification originally via +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:]. + */ +- (void) growlNotificationTimedOut:(id)clickContext; + +@end + +#pragma mark - +/*! + * @category NSObject(GrowlApplicationBridgeDelegate_Installation_InformalProtocol) + * @abstract Methods which may be optionally implemented by the Growl delegate when used with Growl-WithInstaller.framework. + * @discussion The methods in this informal protocol will only be called if + * implemented by the delegate. They allow greater control of the information + * presented to the user when installing or upgrading Growl from within your + * application when using Growl-WithInstaller.framework. + */ +@interface NSObject (GrowlApplicationBridgeDelegate_Installation_InformalProtocol) + +/*! + * @method growlInstallationWindowTitle + * @abstract Return the title of the installation window. + * @discussion If not implemented, Growl will use a default, localized title. + * @result An NSString object to use as the title. + */ +- (NSString *)growlInstallationWindowTitle; + +/*! + * @method growlUpdateWindowTitle + * @abstract Return the title of the upgrade window. + * @discussion If not implemented, Growl will use a default, localized title. + * @result An NSString object to use as the title. + */ +- (NSString *)growlUpdateWindowTitle; + +/*! + * @method growlInstallationInformation + * @abstract Return the information to display when installing. + * @discussion This information may be as long or short as desired (the window + * will be sized to fit it). It will be displayed to the user as an + * explanation of what Growl is and what it can do in your application. It + * should probably note that no download is required to install. + * + * If this is not implemented, Growl will use a default, localized explanation. + * @result An NSAttributedString object to display. + */ +- (NSAttributedString *)growlInstallationInformation; + +/*! + * @method growlUpdateInformation + * @abstract Return the information to display when upgrading. + * @discussion This information may be as long or short as desired (the window + * will be sized to fit it). It will be displayed to the user as an + * explanation that an updated version of Growl is included in your + * application and no download is required. + * + * If this is not implemented, Growl will use a default, localized explanation. + * @result An NSAttributedString object to display. + */ +- (NSAttributedString *)growlUpdateInformation; + +@end + +//private +@interface GrowlApplicationBridge (GrowlInstallationPrompt_private) ++ (void) _userChoseNotToInstallGrowl; +@end + +#endif /* __GrowlApplicationBridge_h__ */ diff --git a/Growl.framework/Versions/A/Headers/GrowlDefines.h b/Growl.framework/Versions/A/Headers/GrowlDefines.h new file mode 100644 index 0000000..2b971cf --- /dev/null +++ b/Growl.framework/Versions/A/Headers/GrowlDefines.h @@ -0,0 +1,348 @@ +// +// GrowlDefines.h +// + +#ifndef _GROWLDEFINES_H +#define _GROWLDEFINES_H + +#ifdef __OBJC__ +#define XSTR(x) (@x) +#define STRING_TYPE NSString * +#else +#define XSTR CFSTR +#define STRING_TYPE CFStringRef +#endif + +/*! @header GrowlDefines.h + * @abstract Defines all the notification keys. + * @discussion Defines all the keys used for registration with Growl and for + * Growl notifications. + * + * Most applications should use the functions or methods of Growl.framework + * instead of posting notifications such as those described here. + * @updated 2004-01-25 + */ + +// UserInfo Keys for Registration +#pragma mark UserInfo Keys for Registration + +/*! @group Registration userInfo keys */ +/* @abstract Keys for the userInfo dictionary of a GROWL_APP_REGISTRATION distributed notification. + * @discussion The values of these keys describe the application and the + * notifications it may post. + * + * Your application must register with Growl before it can post Growl + * notifications (and have them not be ignored). However, as of Growl 0.6, + * posting GROWL_APP_REGISTRATION notifications directly is no longer the + * preferred way to register your application. Your application should instead + * use Growl.framework's delegate system. + * See +[GrowlApplicationBridge setGrowlDelegate:] or Growl_SetDelegate for + * more information. + */ + +/*! @defined GROWL_APP_NAME + * @abstract The name of your application. + * @discussion The name of your application. This should remain stable between + * different versions and incarnations of your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + */ +#define GROWL_APP_NAME XSTR("ApplicationName") +/*! @defined GROWL_APP_ID + * @abstract The bundle identifier of your application. + * @discussion The bundle identifier of your application. This key should + * be unique for your application while there may be several applications + * with the same GROWL_APP_NAME. + * This key is optional. + */ +#define GROWL_APP_ID XSTR("ApplicationId") +/*! @defined GROWL_APP_ICON + * @abstract The image data for your application's icon. + * @discussion Image data representing your application's icon. This may be + * superimposed on a notification icon as a badge, used as the notification + * icon when a notification-specific icon is not supplied, or ignored + * altogether, depending on the display. Must be in a format supported by + * NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_APP_ICON XSTR("ApplicationIcon") +/*! @defined GROWL_NOTIFICATIONS_DEFAULT + * @abstract The array of notifications to turn on by default. + * @discussion These are the names of the notifications that should be enabled + * by default when your application registers for the first time. If your + * application reregisters, Growl will look here for any new notification + * names found in GROWL_NOTIFICATIONS_ALL, but ignore any others. + */ +#define GROWL_NOTIFICATIONS_DEFAULT XSTR("DefaultNotifications") +/*! @defined GROWL_NOTIFICATIONS_ALL + * @abstract The array of all notifications your application can send. + * @discussion These are the names of all of the notifications that your + * application may post. See GROWL_NOTIFICATION_NAME for a discussion of good + * notification names. + */ +#define GROWL_NOTIFICATIONS_ALL XSTR("AllNotifications") +/*! @defined GROWL_NOTIFICATIONS_HUMAN_READABLE_DESCRIPTIONS + * @abstract A dictionary of human-readable names for your notifications. + * @discussion By default, the Growl UI will display notifications by the names given in GROWL_NOTIFICATIONS_ALL + * which correspond to the GROWL_NOTIFICATION_NAME. This dictionary specifies the human-readable name to display. + * The keys of the dictionary are GROWL_NOTIFICATION_NAME strings; the objects are the human-readable versions. + * For any GROWL_NOTIFICATION_NAME not specific in this dictionary, the GROWL_NOTIFICATION_NAME will be displayed. + * + * This key is optional. + */ +#define GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES XSTR("HumanReadableNames") +/*! @defined GROWL_NOTIFICATIONS_DESCRIPTIONS +* @abstract A dictionary of descriptions of _when_ each notification occurs +* @discussion This is an NSDictionary whose keys are GROWL_NOTIFICATION_NAME strings and whose objects are +* descriptions of _when_ each notification occurs, such as "You received a new mail message" or +* "A file finished downloading". +* +* This key is optional. +*/ +#define GROWL_NOTIFICATIONS_DESCRIPTIONS XSTR("NotificationDescriptions") + +/*! @defined GROWL_TICKET_VERSION + * @abstract The version of your registration ticket. + * @discussion Include this key in a ticket plist file that you put in your + * application bundle for auto-discovery. The current ticket version is 1. + */ +#define GROWL_TICKET_VERSION XSTR("TicketVersion") +// UserInfo Keys for Notifications +#pragma mark UserInfo Keys for Notifications + +/*! @group Notification userInfo keys */ +/* @abstract Keys for the userInfo dictionary of a GROWL_NOTIFICATION distributed notification. + * @discussion The values of these keys describe the content of a Growl + * notification. + * + * Not all of these keys are supported by all displays. Only the name, title, + * and description of a notification are universal. Most of the built-in + * displays do support all of these keys, and most other visual displays + * probably will also. But, as of 0.6, the Log, MailMe, and Speech displays + * support only textual data. + */ + +/*! @defined GROWL_NOTIFICATION_NAME + * @abstract The name of the notification. + * @discussion The name of the notification. Note that if you do not define + * GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES when registering your ticket originally this name + * will the one displayed within the Growl preference pane and should be human-readable. + */ +#define GROWL_NOTIFICATION_NAME XSTR("NotificationName") +/*! @defined GROWL_NOTIFICATION_TITLE + * @abstract The title to display in the notification. + * @discussion The title of the notification. Should be very brief. + * The title usually says what happened, e.g. "Download complete". + */ +#define GROWL_NOTIFICATION_TITLE XSTR("NotificationTitle") +/*! @defined GROWL_NOTIFICATION_DESCRIPTION + * @abstract The description to display in the notification. + * @discussion The description should be longer and more verbose than the title. + * The description usually tells the subject of the action, + * e.g. "Growl-0.6.dmg downloaded in 5.02 minutes". + */ +#define GROWL_NOTIFICATION_DESCRIPTION XSTR("NotificationDescription") +/*! @defined GROWL_NOTIFICATION_ICON + * @discussion Image data for the notification icon. Must be in a format + * supported by NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_ICON XSTR("NotificationIcon") +/*! @defined GROWL_NOTIFICATION_APP_ICON + * @discussion Image data for the application icon, in case GROWL_APP_ICON does + * not apply for some reason. Must be in a format supported by NSImage, such + * as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_APP_ICON XSTR("NotificationAppIcon") +/*! @defined GROWL_NOTIFICATION_PRIORITY + * @discussion The priority of the notification as an integer number from + * -2 to +2 (+2 being highest). + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_PRIORITY XSTR("NotificationPriority") +/*! @defined GROWL_NOTIFICATION_STICKY + * @discussion A Boolean number controlling whether the notification is sticky. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_STICKY XSTR("NotificationSticky") +/*! @defined GROWL_NOTIFICATION_CLICK_CONTEXT + * @abstract Identifies which notification was clicked. + * @discussion An identifier for the notification for clicking purposes. + * + * This will be passed back to the application when the notification is + * clicked. It must be plist-encodable (a data, dictionary, array, number, or + * string object), and it should be unique for each notification you post. + * A good click context would be a UUID string returned by NSProcessInfo or + * CFUUID. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_CLICK_CONTEXT XSTR("NotificationClickContext") + +/*! @defined GROWL_DISPLAY_PLUGIN + * @discussion The name of a display plugin which should be used for this notification. + * Optional. If this key is not set or the specified display plugin does not + * exist, the display plugin stored in the application ticket is used. This key + * allows applications to use different default display plugins for their + * notifications. The user can still override those settings in the preference + * pane. + */ +#define GROWL_DISPLAY_PLUGIN XSTR("NotificationDisplayPlugin") + +/*! @defined GROWL_NOTIFICATION_IDENTIFIER + * @abstract An identifier for the notification for coalescing purposes. + * Notifications with the same identifier fall into the same class; only + * the last notification of a class is displayed on the screen. If a + * notification of the same class is currently being displayed, it is + * replaced by this notification. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_IDENTIFIER XSTR("GrowlNotificationIdentifier") + +/*! @defined GROWL_APP_PID + * @abstract The process identifier of the process which sends this + * notification. If this field is set, the application will only receive + * clicked and timed out notifications which originate from this process. + * + * Optional. + */ +#define GROWL_APP_PID XSTR("ApplicationPID") + +/*! @defined GROWL_NOTIFICATION_PROGRESS +* @abstract If this key is set, it should contain a double value wrapped +* in a NSNumber which describes some sort of progress (from 0.0 to 100.0). +* If this is key is not set, no progress bar is shown. +* +* Optional. Not supported by all display plugins. +*/ +#define GROWL_NOTIFICATION_PROGRESS XSTR("NotificationProgress") + +// Notifications +#pragma mark Notifications + +/*! @group Notification names */ +/* @abstract Names of distributed notifications used by Growl. + * @discussion These are notifications used by applications (directly or + * indirectly) to interact with Growl, and by Growl for interaction between + * its components. + * + * Most of these should no longer be used in Growl 0.6 and later, in favor of + * Growl.framework's GrowlApplicationBridge APIs. + */ + +/*! @defined GROWL_APP_REGISTRATION + * @abstract The distributed notification for registering your application. + * @discussion This is the name of the distributed notification that can be + * used to register applications with Growl. + * + * The userInfo dictionary for this notification can contain these keys: + *
    + *
  • GROWL_APP_NAME
  • + *
  • GROWL_APP_ICON
  • + *
  • GROWL_NOTIFICATIONS_ALL
  • + *
  • GROWL_NOTIFICATIONS_DEFAULT
  • + *
+ * + * No longer recommended as of Growl 0.6. An alternate method of registering + * is to use Growl.framework's delegate system. + * See +[GrowlApplicationBridge setGrowlDelegate:] or Growl_SetDelegate for + * more information. + */ +#define GROWL_APP_REGISTRATION XSTR("GrowlApplicationRegistrationNotification") +/*! @defined GROWL_APP_REGISTRATION_CONF + * @abstract The distributed notification for confirming registration. + * @discussion The name of the distributed notification sent to confirm the + * registration. Used by the Growl preference pane. Your application probably + * does not need to use this notification. + */ +#define GROWL_APP_REGISTRATION_CONF XSTR("GrowlApplicationRegistrationConfirmationNotification") +/*! @defined GROWL_NOTIFICATION + * @abstract The distributed notification for Growl notifications. + * @discussion This is what it all comes down to. This is the name of the + * distributed notification that your application posts to actually send a + * Growl notification. + * + * The userInfo dictionary for this notification can contain these keys: + *
    + *
  • GROWL_NOTIFICATION_NAME (required)
  • + *
  • GROWL_NOTIFICATION_TITLE (required)
  • + *
  • GROWL_NOTIFICATION_DESCRIPTION (required)
  • + *
  • GROWL_NOTIFICATION_ICON
  • + *
  • GROWL_NOTIFICATION_APP_ICON
  • + *
  • GROWL_NOTIFICATION_PRIORITY
  • + *
  • GROWL_NOTIFICATION_STICKY
  • + *
  • GROWL_NOTIFICATION_CLICK_CONTEXT
  • + *
  • GROWL_APP_NAME (required)
  • + *
+ * + * No longer recommended as of Growl 0.6. Three alternate methods of posting + * notifications are +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:], + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext, and + * Growl_PostNotification. + */ +#define GROWL_NOTIFICATION XSTR("GrowlNotification") +/*! @defined GROWL_SHUTDOWN +* @abstract The distributed notification name that tells Growl to shutdown. +* @discussion The Growl preference pane posts this notification when the +* "Stop Growl" button is clicked. +*/ +#define GROWL_SHUTDOWN XSTR("GrowlShutdown") +/*! @defined GROWL_PING + * @abstract A distributed notification to check whether Growl is running. + * @discussion This is used by the Growl preference pane. If it receives a + * GROWL_PONG, the preference pane takes this to mean that Growl is running. + */ +#define GROWL_PING XSTR("Honey, Mind Taking Out The Trash") +/*! @defined GROWL_PONG + * @abstract The distributed notification sent in reply to GROWL_PING. + * @discussion GrowlHelperApp posts this in reply to GROWL_PING. + */ +#define GROWL_PONG XSTR("What Do You Want From Me, Woman") +/*! @defined GROWL_IS_READY + * @abstract The distributed notification sent when Growl starts up. + * @discussion GrowlHelperApp posts this when it has begin listening on all of + * its sources for new notifications. GrowlApplicationBridge (in + * Growl.framework), upon receiving this notification, reregisters using the + * registration dictionary supplied by its delegate. + */ +#define GROWL_IS_READY XSTR("Lend Me Some Sugar; I Am Your Neighbor!") +/*! @defined GROWL_NOTIFICATION_CLICKED + * @abstract The distributed notification sent when a supported notification is clicked. + * @discussion When a Growl notification with a click context is clicked on by + * the user, Growl posts this distributed notification. + * The GrowlApplicationBridge responds to this notification by calling a + * callback in its delegate. + */ +#define GROWL_NOTIFICATION_CLICKED XSTR("GrowlClicked!") +#define GROWL_NOTIFICATION_TIMED_OUT XSTR("GrowlTimedOut!") + +/*! @group Other symbols */ +/* Symbols which don't fit into any of the other categories. */ + +/*! @defined GROWL_KEY_CLICKED_CONTEXT + * @abstract Used internally as the key for the clickedContext passed over DNC. + * @discussion This key is used in GROWL_NOTIFICATION_CLICKED, and contains the + * click context that was supplied in the original notification. + */ +#define GROWL_KEY_CLICKED_CONTEXT XSTR("ClickedContext") +/*! @defined GROWL_REG_DICT_EXTENSION + * @abstract The filename extension for registration dictionaries. + * @discussion The GrowlApplicationBridge in Growl.framework registers with + * Growl by creating a file with the extension of .(GROWL_REG_DICT_EXTENSION) + * and opening it in the GrowlHelperApp. This happens whether or not Growl is + * running; if it was stopped, it quits immediately without listening for + * notifications. + */ +#define GROWL_REG_DICT_EXTENSION XSTR("growlRegDict") + + +#define GROWL_POSITION_PREFERENCE_KEY @"GrowlSelectedPosition" + +#endif //ndef _GROWLDEFINES_H diff --git a/Growl.framework/Versions/A/Resources/.svn/all-wcprops b/Growl.framework/Versions/A/Resources/.svn/all-wcprops new file mode 100644 index 0000000..a8e0f4e --- /dev/null +++ b/Growl.framework/Versions/A/Resources/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 60 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Resources +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 71 +/svn/!svn/ver/445/trunk/Growl.framework/Versions/A/Resources/Info.plist +END diff --git a/Growl.framework/Versions/A/Resources/.svn/entries b/Growl.framework/Versions/A/Resources/.svn/entries new file mode 100644 index 0000000..40476a9 --- /dev/null +++ b/Growl.framework/Versions/A/Resources/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Growl.framework/Versions/A/Resources +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Info.plist +file + + + + +2010-04-24T16:42:59.000000Z +009bf3401d921f37657a3d09be335957 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +738 + diff --git a/Growl.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base b/Growl.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..38bfb23 --- /dev/null +++ b/Growl.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + Growl + CFBundleIdentifier + com.growl.growlframework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.1.4 + CFBundleSignature + GRRR + CFBundleVersion + 1.1.4 + NSPrincipalClass + GrowlApplicationBridge + + diff --git a/Growl.framework/Versions/A/Resources/Info.plist b/Growl.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..38bfb23 --- /dev/null +++ b/Growl.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + Growl + CFBundleIdentifier + com.growl.growlframework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.1.4 + CFBundleSignature + GRRR + CFBundleVersion + 1.1.4 + NSPrincipalClass + GrowlApplicationBridge + + diff --git a/Growl.framework/Versions/Current b/Growl.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/Growl.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/HealthCondition.xib b/HealthCondition.xib new file mode 100644 index 0000000..1d98d2f --- /dev/null +++ b/HealthCondition.xib @@ -0,0 +1,1574 @@ + + + + 1050 + 10F569 + 762 + 1038.29 + 461.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 762 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + HealthConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{399, 16}, {86, 24}} + + YES + + 67239424 + 0 + + LucidaGrande + 13 + 1044 + + + + YES + + 26 + > + 1 + 0 + + + 26 + = + 2 + YES + 0 + + + 26 + < + 3 + 0 + + + 1 + 1 + + + + + 268 + {{572, 16}, {57, 24}} + + YES + + 67239424 + 0 + + + + YES + + 25 + # + 1 + 0 + + + 25 + % + 2 + YES + 0 + + + 1 + 1 + + + + + 268 + {{491, 18}, {75, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + formatterBehavior + locale + minimum + negativeFormat + numberStyle + paddingCharacter + positiveFormat + + + YES + + + + + + + + + * + # + + + # + + + + + + + NaN + + YES + + + YES + + + + + + 0 + 0 + YES + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + 3 + YES + YES + YES + + . + , + NO + NO + NO + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{285, 14}, {111, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Soul Shards + + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + 35 + + + YES + + OtherViews + + YES + + + Health + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Power + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + YES + YES + + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Mana + + 1048576 + 2147483647 + + + _popUpItemAction: + 8 + + + + + 1 + Rage + + 1048576 + 2147483647 + + + _popUpItemAction: + 9 + + + + + 1 + Energy + + 1048576 + 2147483647 + + + _popUpItemAction: + 10 + + + + + 1 + Happiness + + 1048576 + 2147483647 + + + _popUpItemAction: + 11 + + + + + 1 + Focus + + 1048576 + 2147483647 + + + _popUpItemAction: + 12 + + + + + Eclipse + + 2147483647 + 1 + + + _popUpItemAction: + 33 + + + + + Holy Power + + 2147483647 + + + _popUpItemAction: + 34 + + + + + + Runic Power + + 2147483647 + + + _popUpItemAction: + 20 + + + + + 10 + 1 + YES + YES + 2 + + + + + 268 + {{7, 18}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{33, 16}, {249, 24}} + + YES + + -2080244224 + 0 + + + + YES + + Player + 1 + YES + 2 + + + Pet + 3 + 0 + + + Target + 2 + 0 + + + Friendlies + 4 + 0 + + + 1 + + + + {647, 46} + + NSView + + + + + YES + + + comparatorSegment + + + + 59 + + + + quantityText + + + + 60 + + + + typeSegment + + + + 61 + + + + view + + + + 62 + + + + validateState: + + + + 65 + + + + validateState: + + + + 66 + + + + validateState: + + + + 67 + + + + qualityPopUp + + + + 78 + + + + validateState: + + + + 79 + + + + unitSegment + + + + 87 + + + + disableButton + + + + 88 + + + + validateState: + + + + 89 + + + + disableCondition: + + + + 90 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + 13 + + + YES + + + + + + 15 + + + YES + + + + + + 16 + + + YES + + + + + + 17 + + + YES + + + + + + 18 + + + + + 20 + + + + + 68 + + + + + 69 + + + YES + + + + + + 70 + + + YES + + + + + + 71 + + + YES + + + + + + + + + + + + + + + + + 72 + + + + + 73 + + + + + 74 + + + + + 76 + + + + + 77 + + + + + 80 + + + + + 81 + + + + + 82 + + + + + 83 + + + YES + + + + + + 84 + + + YES + + + + + + 85 + + + + + 86 + + + + + 91 + + + + + 92 + + + + + 93 + + + + + 94 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -2.showNotes + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 13.CustomClassName + 13.IBPluginDependency + 15.CustomClassName + 15.IBPluginDependency + 16.IBPluginDependency + 17.IBPluginDependency + 18.IBPluginDependency + 18.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 20.IBPluginDependency + 68.IBNumberFormatterLocalizesFormatMetadataKey + 68.IBPluginDependency + 69.IBPluginDependency + 70.IBPluginDependency + 71.IBEditorWindowLastContentRect + 71.IBPluginDependency + 71.editorWindowContentRectSynchronizationRect + 72.IBPluginDependency + 73.IBPluginDependency + 74.IBPluginDependency + 76.IBPluginDependency + 77.IBPluginDependency + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 83.IBAttributePlaceholdersKey + 83.IBPluginDependency + 84.CustomClassName + 84.IBPluginDependency + 85.IBPluginDependency + 85.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 86.IBPluginDependency + 91.IBPluginDependency + 92.IBPluginDependency + 93.IBPluginDependency + 94.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{676, 290}, {647, 46}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{189, 314}, {582, 36}} + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{950, 97}, {149, 233}} + com.apple.InterfaceBuilder.CocoaPlugin + {{411, 191}, {140, 153}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 94 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + ConditionController + NSObject + + IBUserSource + + + + + HealthConditionController + ConditionController + + YES + + YES + comparatorSegment + qualityPopUp + qualitySegment + quantityText + typeSegment + unitSegment + + + YES + BetterSegmentedControl + NSPopUpButton + BetterSegmentedControl + NSTextField + BetterSegmentedControl + BetterSegmentedControl + + + + IBProjectSource + HealthConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + NSStopProgressTemplate + + + YES + {9, 8} + {7, 2} + {11, 11} + + + + diff --git a/HealthConditionController.h b/HealthConditionController.h new file mode 100644 index 0000000..6ab97d2 --- /dev/null +++ b/HealthConditionController.h @@ -0,0 +1,16 @@ +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface HealthConditionController : ConditionController { + IBOutlet BetterSegmentedControl *unitSegment; + IBOutlet BetterSegmentedControl *qualitySegment; + IBOutlet NSPopUpButton *qualityPopUp; + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *quantityText; + IBOutlet BetterSegmentedControl *typeSegment; + +} + +@end diff --git a/HealthConditionController.m b/HealthConditionController.m new file mode 100644 index 0000000..186e436 --- /dev/null +++ b/HealthConditionController.m @@ -0,0 +1,64 @@ +#import "HealthConditionController.h" +#import "ConditionController.h" +#import "BetterSegmentedControl.h" + +@implementation HealthConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"HealthCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading HealthCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + // target health must be in % + if( ([unitSegment selectedTag] == UnitTarget) && ([[qualityPopUp selectedItem] tag] == QualityHealth) ) { + [typeSegment selectSegmentWithTag: TypePercent]; + } + + // pet happiness must be in % + if( ([unitSegment selectedTag] == UnitPlayerPet) && ([[qualityPopUp selectedItem] tag] == QualityHappiness) ) { + [typeSegment selectSegmentWithTag: TypePercent]; + } +} + + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyPower + unit: [unitSegment selectedTag] + quality: [[qualityPopUp selectedItem] tag] // [qualitySegment selectedTag] + comparator: [comparatorSegment selectedTag] + state: StateNone + type: [typeSegment selectedTag] + value: [NSNumber numberWithInt: [quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyPower) return; + + [unitSegment selectSegmentWithTag: [condition unit]]; + if(![qualityPopUp selectItemWithTag: [condition quality]]) { + [qualityPopUp selectItemWithTag: 2]; + } + //[qualitySegment selectSegmentWithTag: [condition quality]]; + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [typeSegment selectSegmentWithTag: [condition type]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + +@end diff --git a/HordeCrest.gif b/HordeCrest.gif new file mode 100644 index 0000000..5ceed86 Binary files /dev/null and b/HordeCrest.gif differ diff --git a/Hostile.png b/Hostile.png new file mode 100644 index 0000000..197b9ec Binary files /dev/null and b/Hostile.png differ diff --git a/HotkeyFinished.png b/HotkeyFinished.png new file mode 100644 index 0000000..325c90b Binary files /dev/null and b/HotkeyFinished.png differ diff --git a/Human-Female.png b/Human-Female.png new file mode 100644 index 0000000..ab0e29a Binary files /dev/null and b/Human-Female.png differ diff --git a/Human-Female_Small.gif b/Human-Female_Small.gif new file mode 100644 index 0000000..054236b Binary files /dev/null and b/Human-Female_Small.gif differ diff --git a/Human-Male.png b/Human-Male.png new file mode 100644 index 0000000..b96fdb9 Binary files /dev/null and b/Human-Male.png differ diff --git a/Human-Male_Small.gif b/Human-Male_Small.gif new file mode 100644 index 0000000..636b1ab Binary files /dev/null and b/Human-Male_Small.gif differ diff --git a/Hunter.png b/Hunter.png new file mode 100644 index 0000000..c243431 Binary files /dev/null and b/Hunter.png differ diff --git a/Hunter_Small.gif b/Hunter_Small.gif new file mode 100644 index 0000000..9315879 Binary files /dev/null and b/Hunter_Small.gif differ diff --git a/INV_Fishingpole_03.png b/INV_Fishingpole_03.png new file mode 100644 index 0000000..c8b2782 Binary files /dev/null and b/INV_Fishingpole_03.png differ diff --git a/INV_Misc_Gear_01.png b/INV_Misc_Gear_01.png new file mode 100644 index 0000000..90db6be Binary files /dev/null and b/INV_Misc_Gear_01.png differ diff --git a/INV_Misc_Gem_Bloodstone_01.png b/INV_Misc_Gem_Bloodstone_01.png new file mode 100644 index 0000000..413a774 Binary files /dev/null and b/INV_Misc_Gem_Bloodstone_01.png differ diff --git a/INV_Misc_Head_Dragon_Blue.png b/INV_Misc_Head_Dragon_Blue.png new file mode 100644 index 0000000..a73db74 Binary files /dev/null and b/INV_Misc_Head_Dragon_Blue.png differ diff --git a/INV_Misc_Head_Dragon_Bronze.png b/INV_Misc_Head_Dragon_Bronze.png new file mode 100644 index 0000000..5de5ad6 Binary files /dev/null and b/INV_Misc_Head_Dragon_Bronze.png differ diff --git a/INV_Misc_Orb_05.png b/INV_Misc_Orb_05.png new file mode 100644 index 0000000..264ee74 Binary files /dev/null and b/INV_Misc_Orb_05.png differ diff --git a/IgnoreEntry.h b/IgnoreEntry.h new file mode 100644 index 0000000..a8ab5ea --- /dev/null +++ b/IgnoreEntry.h @@ -0,0 +1,27 @@ +// +// IgnoreEntry.h +// Pocket Gnome +// +// Created by Jon Drummond on 7/19/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + +typedef enum { + IgnoreType_EntryID, + IgnoreType_Name, +} IgnoreType; + +@interface IgnoreEntry : NSObject { + NSNumber *_ignoreType; + id _ignoreValue; +} + ++ (id)entry; + +- (IgnoreType)type; +@property (readwrite, assign) NSNumber *ignoreType; +@property (readwrite, retain) id ignoreValue; + +@end diff --git a/IgnoreEntry.m b/IgnoreEntry.m new file mode 100644 index 0000000..c5d0016 --- /dev/null +++ b/IgnoreEntry.m @@ -0,0 +1,69 @@ +// +// IgnoreEntry.m +// Pocket Gnome +// +// Created by Jon Drummond on 7/19/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "IgnoreEntry.h" + + +@implementation IgnoreEntry + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.ignoreType = [NSNumber numberWithInt: 0]; + self.ignoreValue = nil; + } + return self; +} + ++ (id)entry { + return [[[IgnoreEntry alloc] init] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [super init]; + if(self) { + self.ignoreType = [decoder decodeObjectForKey: @"IgnoreType"]; + self.ignoreValue = [decoder decodeObjectForKey: @"IgnoreValue"]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.ignoreType forKey: @"IgnoreType"]; + [coder encodeObject: self.ignoreValue forKey: @"IgnoreValue"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + IgnoreEntry *copy = [[[self class] allocWithZone: zone] init]; + + copy.ignoreType = self.ignoreType; + copy.ignoreValue = self.ignoreValue; + + return copy; +} + +- (void) dealloc +{ + self.ignoreType = nil; + self.ignoreValue = nil; + [super dealloc]; +} + + +- (IgnoreType)type { + return [self.ignoreType intValue]; +} + +@synthesize ignoreType = _ignoreType; +@synthesize ignoreValue = _ignoreValue; + +@end diff --git a/ImageAndTextCell.h b/ImageAndTextCell.h new file mode 100644 index 0000000..767e6e5 --- /dev/null +++ b/ImageAndTextCell.h @@ -0,0 +1,20 @@ +// +// ImageAndTextCell.h +// +// Copyright (c) 2001-2002, Apple. All rights reserved. +// + +#import + +@interface ImageAndTextCell : NSTextFieldCell { +@private + NSImage *image; +} + +- (void)setImage:(NSImage *)anImage; +- (NSImage *)image; + +- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView; +- (NSSize)cellSize; + +@end diff --git a/ImageAndTextCell.m b/ImageAndTextCell.m new file mode 100644 index 0000000..819b39d --- /dev/null +++ b/ImageAndTextCell.m @@ -0,0 +1,90 @@ +#import "ImageAndTextCell.h" + +@implementation ImageAndTextCell + +- (void)dealloc { + [image release]; + image = nil; + [super dealloc]; +} + +- copyWithZone:(NSZone *)zone { + ImageAndTextCell *cell = (ImageAndTextCell *)[super copyWithZone:zone]; + cell->image = [image retain]; + return cell; +} + +- (void)setImage:(NSImage *)anImage { + if (anImage != image) { + [image release]; + image = [anImage retain]; + + // resize this image to our size + if( [image size].height > [self cellSize].height) { + [image setScalesWhenResized: YES]; + [image setSize: NSMakeSize([self cellSize].height+1, [self cellSize].height+1)]; + } + } +} + +- (NSImage *)image { + return image; +} + +- (NSRect)imageFrameForCellFrame:(NSRect)cellFrame { + if (image != nil) { + NSRect imageFrame; + imageFrame.size = [image size]; + imageFrame.origin = cellFrame.origin; + imageFrame.origin.x += 3; + imageFrame.origin.y += ceil((cellFrame.size.height - imageFrame.size.height) / 2); + return imageFrame; + } + else + return NSZeroRect; +} + +- (void)editWithFrame:(NSRect)aRect inView:(NSView *)controlView editor:(NSText *)textObj delegate:(id)anObject event:(NSEvent *)theEvent { + NSRect textFrame, imageFrame; + NSDivideRect (aRect, &imageFrame, &textFrame, 3 + [image size].width, NSMinXEdge); + [super editWithFrame: textFrame inView: controlView editor:textObj delegate:anObject event: theEvent]; +} + +- (void)selectWithFrame:(NSRect)aRect inView:(NSView *)controlView editor:(NSText *)textObj delegate:(id)anObject start:(int)selStart length:(int)selLength { + NSRect textFrame, imageFrame; + NSDivideRect (aRect, &imageFrame, &textFrame, 3 + [image size].width, NSMinXEdge); + [super selectWithFrame: textFrame inView: controlView editor:textObj delegate:anObject start:selStart length:selLength]; +} + +- (void)drawWithFrame:(NSRect)cellFrame inView:(NSView *)controlView { + if (image != nil) { + NSSize imageSize; + NSRect imageFrame; + + imageSize = [image size]; + NSDivideRect(cellFrame, &imageFrame, &cellFrame, 3 + imageSize.width, NSMinXEdge); + if ([self drawsBackground]) { + [[self backgroundColor] set]; + NSRectFill(imageFrame); + } + imageFrame.origin.x += 3; + imageFrame.size = imageSize; + + if ([controlView isFlipped]) + imageFrame.origin.y += ceil((cellFrame.size.height + imageFrame.size.height) / 2); + else + imageFrame.origin.y += ceil((cellFrame.size.height - imageFrame.size.height) / 2); + + [image compositeToPoint:imageFrame.origin operation:NSCompositeSourceOver]; + } + [super drawWithFrame:cellFrame inView:controlView]; +} + +- (NSSize)cellSize { + NSSize cellSize = [super cellSize]; + cellSize.width += (image ? [image size].width : 0) + 3; + return cellSize; +} + +@end + diff --git a/Images/.svn/all-wcprops b/Images/.svn/all-wcprops new file mode 100644 index 0000000..f099448 --- /dev/null +++ b/Images/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 30 +/svn/!svn/ver/445/trunk/Images +END +SRRemoveShortcut.tif +K 25 +svn:wc:ra_dav:version-url +V 51 +/svn/!svn/ver/445/trunk/Images/SRRemoveShortcut.tif +END +SRRemoveShortcutRollover.tif +K 25 +svn:wc:ra_dav:version-url +V 59 +/svn/!svn/ver/445/trunk/Images/SRRemoveShortcutRollover.tif +END +SRRemoveShortcutPressed.tif +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/!svn/ver/445/trunk/Images/SRRemoveShortcutPressed.tif +END +SRSnapback.tiff +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/445/trunk/Images/SRSnapback.tiff +END diff --git a/Images/.svn/entries b/Images/.svn/entries new file mode 100644 index 0000000..3ed2798 --- /dev/null +++ b/Images/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Images +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SRRemoveShortcut.tif +file + + + + +2010-04-24T16:43:05.000000Z +4ac6f13d1c4cdd321463b7e73ac76b93 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +420 + +SRRemoveShortcutRollover.tif +file + + + + +2010-04-24T16:43:05.000000Z +949aa80c09716d149c22b4eaa1cb9b4f +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +420 + +SRRemoveShortcutPressed.tif +file + + + + +2010-04-24T16:43:05.000000Z +fb0c427901a2b8442c40f4048d4fb65d +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +422 + +SRSnapback.tiff +file + + + + +2010-04-24T16:43:05.000000Z +e46c15f569548c9e9bd80d552ee7e30c +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +26004 + diff --git a/Images/.svn/prop-base/SRRemoveShortcut.tif.svn-base b/Images/.svn/prop-base/SRRemoveShortcut.tif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Images/.svn/prop-base/SRRemoveShortcut.tif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Images/.svn/prop-base/SRRemoveShortcutPressed.tif.svn-base b/Images/.svn/prop-base/SRRemoveShortcutPressed.tif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Images/.svn/prop-base/SRRemoveShortcutPressed.tif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Images/.svn/prop-base/SRRemoveShortcutRollover.tif.svn-base b/Images/.svn/prop-base/SRRemoveShortcutRollover.tif.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Images/.svn/prop-base/SRRemoveShortcutRollover.tif.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Images/.svn/prop-base/SRSnapback.tiff.svn-base b/Images/.svn/prop-base/SRSnapback.tiff.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Images/.svn/prop-base/SRSnapback.tiff.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Images/.svn/text-base/SRRemoveShortcut.tif.svn-base b/Images/.svn/text-base/SRRemoveShortcut.tif.svn-base new file mode 100644 index 0000000..47a7b71 Binary files /dev/null and b/Images/.svn/text-base/SRRemoveShortcut.tif.svn-base differ diff --git a/Images/.svn/text-base/SRRemoveShortcutPressed.tif.svn-base b/Images/.svn/text-base/SRRemoveShortcutPressed.tif.svn-base new file mode 100644 index 0000000..0119610 Binary files /dev/null and b/Images/.svn/text-base/SRRemoveShortcutPressed.tif.svn-base differ diff --git a/Images/.svn/text-base/SRRemoveShortcutRollover.tif.svn-base b/Images/.svn/text-base/SRRemoveShortcutRollover.tif.svn-base new file mode 100644 index 0000000..3af4f0b Binary files /dev/null and b/Images/.svn/text-base/SRRemoveShortcutRollover.tif.svn-base differ diff --git a/Images/.svn/text-base/SRSnapback.tiff.svn-base b/Images/.svn/text-base/SRSnapback.tiff.svn-base new file mode 100644 index 0000000..0be1e49 Binary files /dev/null and b/Images/.svn/text-base/SRSnapback.tiff.svn-base differ diff --git a/Images/SRRemoveShortcut.tif b/Images/SRRemoveShortcut.tif new file mode 100644 index 0000000..47a7b71 Binary files /dev/null and b/Images/SRRemoveShortcut.tif differ diff --git a/Images/SRRemoveShortcutPressed.tif b/Images/SRRemoveShortcutPressed.tif new file mode 100644 index 0000000..0119610 Binary files /dev/null and b/Images/SRRemoveShortcutPressed.tif differ diff --git a/Images/SRRemoveShortcutRollover.tif b/Images/SRRemoveShortcutRollover.tif new file mode 100644 index 0000000..3af4f0b Binary files /dev/null and b/Images/SRRemoveShortcutRollover.tif differ diff --git a/Images/SRSnapback.tiff b/Images/SRSnapback.tiff new file mode 100644 index 0000000..0be1e49 Binary files /dev/null and b/Images/SRSnapback.tiff differ diff --git a/Info.plist b/Info.plist new file mode 100644 index 0000000..8e8239e --- /dev/null +++ b/Info.plist @@ -0,0 +1,176 @@ + + + + + SUFeedURL + http://pg.savorydeviate.com/appcast.xml + SUEnableSystemProfiling + YES + SUEnableAutomaticChecks + YES + SUPublicDSAKeyFile + dsa_pub.pem + CFBundleDevelopmentRegion + English + CFBundleDisplayName + ${PRODUCT_NAME} + CFBundleDocumentTypes + + + CFBundleTypeExtensions + + routecollection + + CFBundleTypeIconFile + pgRoute + CFBundleTypeName + Route Collection + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + RouteCollection + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + combatProfile + combatprofile + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + Combat Profile + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + CombatProfile + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + route + routeset + + CFBundleTypeIconFile + pgRoute + CFBundleTypeName + Route + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + RouteSet + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + behavior + behaviorset + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + Behavior + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + Behavior + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + pvpbehavior + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + PvP Behavior + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + PvPBehavior + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + mailprofile + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + Mail Profile + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + MailActionProfile + NSPersistentStoreTypeKey + XML + + + CFBundleExecutable + ${PRODUCT_NAME} + CFBundleGetInfoString + ${PRODUCT_NAME} 1.5.1 + CFBundleIconFile + gnome2 + CFBundleIdentifier + com.savorydeviate.PocketGnome + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.5.1 (r566) + CFBundleSignature + ???? + CFBundleVersion + 566 + LSMinimumSystemVersion + 10.5 + NSAppleScriptEnabled + + NSMainNibFile + MainMenu + NSPrincipalClass + NoAccessApplication + UTExportedTypeDeclarations + + + UTTypeConformsTo + + public.data + + UTTypeIdentifier + com.savorydeviate.PocketGnome + UTTypeTagSpecification + + public.filename-extension + routes + + + + + diff --git a/InteractNPCAction.xib b/InteractNPCAction.xib new file mode 100644 index 0000000..c2b4b8a --- /dev/null +++ b/InteractNPCAction.xib @@ -0,0 +1,1045 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + InteractNPCActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{121, 2}, {204, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{32, 8}, {87, 17}} + + YES + + 67239488 + 272630784 + Interact with: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 6}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {430, 34} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + content: units + + + + + + content: units + content + units + 2 + + + 169 + + + + contentObjects: units + + + + + + contentObjects: units + contentObjects + units + + 2 + + + 172 + + + + contentValues: units.description + + + + + + contentValues: units.description + contentValues + units.description + + 2 + + + 174 + + + + unitsPopUp + + + + 176 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + 122 + + + YES + + + + + + + + 123 + + + + + 124 + + + + + 125 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{528, 481}, {430, 34}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 176 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + InteractNPCActionController + ActionController + + unitsPopUp + NSPopUpButton + + + IBProjectSource + InteractNPCActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/InteractNPCActionController.h b/InteractNPCActionController.h new file mode 100644 index 0000000..ab132aa --- /dev/null +++ b/InteractNPCActionController.h @@ -0,0 +1,22 @@ +// +// InteractNPCActionController.h +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface InteractNPCActionController : ActionController { + IBOutlet NSPopUpButton *unitsPopUp; + + NSArray *_units; +} + ++ (id)interactNPCActionControllerWithUnits: (NSArray*)units; + +@property (readwrite, copy) NSArray *units; + +@end diff --git a/InteractNPCActionController.m b/InteractNPCActionController.m new file mode 100644 index 0000000..ee2932e --- /dev/null +++ b/InteractNPCActionController.m @@ -0,0 +1,94 @@ +// +// InteractNPCActionController.m +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "InteractNPCActionController.h" +#import "ActionController.h" + +#import "Unit.h" +#import "Mob.h" + +@implementation InteractNPCActionController + +- (id)init +{ + self = [super init]; + if (self != nil) { + _units = nil; + if(![NSBundle loadNibNamed: @"InteractNPCAction" owner: self]) { + log(LOG_GENERAL, @"Error loading InteractNPCAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithUnits: (NSArray*)units{ + self = [self init]; + if (self != nil) { + self.units = units; + + if ( [units count] == 0 ){ + [self removeBindings]; + + NSMenu *menu = [[[NSMenu alloc] initWithTitle: @"No Mobs"] autorelease]; + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"No Nearby mobs found" action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setTag:0]; + [menu addItem: item]; + + [unitsPopUp setMenu:menu]; + } + } + return self; +} + ++ (id)interactNPCActionControllerWithUnits: (NSArray*)units{ + return [[[InteractNPCActionController alloc] initWithUnits: units] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [unitsPopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [unitsPopUp unbind: binding]; + } +} + +@synthesize units = _units; + +- (void)setStateFromAction: (Action*)action{ + + for ( NSMenuItem *item in [unitsPopUp itemArray] ){ + if ( [(Unit*)[item representedObject] GUID]== [(NSNumber*)[action value] unsignedLongLongValue] ){ + [unitsPopUp selectItem:item]; + break; + } + } + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_InteractNPC value:nil]; + + id object = [[unitsPopUp selectedItem] representedObject]; + id value = [NSNumber numberWithInt:[(Mob*)object entryID]]; + + [action setEnabled: self.enabled]; + [action setValue: value]; + + return action; +} + +@end diff --git a/InteractObjectAction.xib b/InteractObjectAction.xib new file mode 100644 index 0000000..09c641d --- /dev/null +++ b/InteractObjectAction.xib @@ -0,0 +1,1045 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + InteractObjectActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{121, 2}, {204, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{32, 8}, {87, 17}} + + YES + + 67239488 + 272630784 + Interact with: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 6}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {430, 34} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + objectsPopUp + + + + 176 + + + + content: objects + + + + + + content: objects + content + objects + 2 + + + 177 + + + + contentObjects: objects + + + + + + contentObjects: objects + contentObjects + objects + + 2 + + + 180 + + + + contentValues: objects.description + + + + + + contentValues: objects.description + contentValues + objects.description + + 2 + + + 182 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + 122 + + + YES + + + + + + + + 123 + + + + + 124 + + + + + 125 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{528, 481}, {430, 34}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 182 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + InteractObjectActionController + ActionController + + objectsPopUp + NSPopUpButton + + + IBProjectSource + InteractObjectActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/InteractObjectActionController.h b/InteractObjectActionController.h new file mode 100644 index 0000000..0937a8a --- /dev/null +++ b/InteractObjectActionController.h @@ -0,0 +1,22 @@ +// +// InteractObjectActionController.h +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface InteractObjectActionController : ActionController { + IBOutlet NSPopUpButton *objectsPopUp; + + NSArray *_objects; +} + ++ (id)interactObjectActionControllerWithObjects: (NSArray*)objects; + +@property (readwrite, copy) NSArray *objects; + +@end diff --git a/InteractObjectActionController.m b/InteractObjectActionController.m new file mode 100644 index 0000000..7b48d23 --- /dev/null +++ b/InteractObjectActionController.m @@ -0,0 +1,93 @@ +// +// InteractObjectActionController.m +// Pocket Gnome +// +// Created by Josh on 1/19/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "InteractObjectActionController.h" +#import "ActionController.h" + +#import "Node.h" + +@implementation InteractObjectActionController + +- (id)init +{ + self = [super init]; + if (self != nil) { + _objects = nil; + if(![NSBundle loadNibNamed: @"InteractObjectAction" owner: self]) { + log(LOG_GENERAL, @"Error loading InteractObjectAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithZeObjects: (NSArray*)objects{ + self = [self init]; + if (self != nil) { + self.objects = objects; + + if ( [objects count] == 0 ){ + [self removeBindings]; + + NSMenu *menu = [[[NSMenu alloc] initWithTitle: @"No Objects"] autorelease]; + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"No nearby nodes were found" action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setTag:0]; + [menu addItem: item]; + + [objectsPopUp setMenu:menu]; + } + } + return self; +} + ++ (id)interactObjectActionControllerWithObjects: (NSArray*)objects{ + return [[[InteractObjectActionController alloc] initWithZeObjects: objects] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [objectsPopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [objectsPopUp unbind: binding]; + } +} + +@synthesize objects = _objects; + +- (void)setStateFromAction: (Action*)action{ + + for ( NSMenuItem *item in [objectsPopUp itemArray] ){ + if ( [(Node*)[item representedObject] GUID] == [(NSNumber*)[action value] unsignedLongLongValue] ){ + [objectsPopUp selectItem:item]; + break; + } + } + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_InteractObject value:nil]; + + id object = [[objectsPopUp selectedItem] representedObject]; + id value = [NSNumber numberWithInt:[(Node*)object entryID]]; + + [action setEnabled: self.enabled]; + [action setValue: value]; + + return action; +} + +@end diff --git a/InteractWithTarget.png b/InteractWithTarget.png new file mode 100644 index 0000000..b77010e Binary files /dev/null and b/InteractWithTarget.png differ diff --git a/InterfaceBars.png b/InterfaceBars.png new file mode 100644 index 0000000..0f8836d Binary files /dev/null and b/InterfaceBars.png differ diff --git a/InventoryCondition.xib b/InventoryCondition.xib new file mode 100644 index 0000000..3ee540e --- /dev/null +++ b/InventoryCondition.xib @@ -0,0 +1,1107 @@ + + + + 1050 + 9E17 + 629 + 949.33 + 352.00 + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + InventoryConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 265 + {{531, 5}, {97, 24}} + + + YES + + -2080244224 + 0 + + LucidaGrande + 1.300000e+01 + 1044 + + + + YES + + 4.500000e+01 + Num + Spell ID Number + 1 + YES + 0 + + + 4.500000e+01 + Name + Spell Name + 3 + 0 + + + 1 + + + + + 266 + {{427, 7}, {98, 22}} + + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + + textColor + + 3 + MAA + + + + + + + 268 + {{321, 7}, {47, 22}} + + + YES + + -1804468671 + 138413056 + + 0 + 1 + NO + YES + 1 + AQAAAAAAAAAAAAAAAAAAAA + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + YES + + YES + + + YES + + + + . + + , + + + + + + + + + + + + + + + + + NaN + + + + + + + + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{373, 10}, {49, 17}} + + + YES + + 67239488 + 272630784 + of item + + + + 6 + + controlColor + + 3 + MC42NjY2NjY2OQA + + + + 6 + + controlTextColor + + + + + + + 268 + {{32, 10}, {172, 17}} + + + YES + + 67239488 + 272630784 + UGxheWVyJ3MgaW52ZW50b3J5IGNvbnRhaW5zA + + + + + + + + + 268 + {{7, 8}, {20, 19}} + + + YES + + 67239424 + 134217728 + + + + 1.200000e+01 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{206, 4}, {110, 26}} + + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + More Than + + 1048576 + 2147483647 + 1 + + + NSMenuCheckmark + + + + NSMenuMixedState + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + Exactly + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + Less Than + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + 1 + YES + YES + 2 + + + + {635, 36} + + + NSView + + + + + YES + + + quantityText + + + + 56 + + + + itemText + + + + 57 + + + + typeSegment + + + + 58 + + + + validateState: + + + + 59 + + + + + + + + 62 + + + + + + + + 63 + + + + view + + + + 64 + + + + nextKeyView + + + + 78 + + + + disableButton + + + + 87 + + + + comparatorPopUp + + + + 88 + + + + validateState: + + + + 89 + + + + disableCondition: + + + + 90 + + + + + YES + + 0 + + YES + + + + + + -2 + + + RmlsZSdzIE93bmVyA + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + + + + 19 + + + YES + + + + + + 22 + + + + + 20 + + + YES + + + + + + 21 + + + + + 47 + + + YES + + + + + + 48 + + + YES + + + + + + 49 + + + YES + + + + + + 50 + + + + + 51 + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 81 + + + YES + + + + + + 82 + + + YES + + + + + + 83 + + + YES + + + + + + + + 84 + + + + + 85 + + + + + 86 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 19.CustomClassName + 19.IBPluginDependency + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 20.IBPluginDependency + 21.IBPluginDependency + 22.IBPluginDependency + 47.IBPluginDependency + 48.IBPluginDependency + 49.IBPluginDependency + 50.IBPluginDependency + 51.IBPluginDependency + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 83.IBPluginDependency + 83.editorWindowContentRectSynchronizationRect + 84.IBAttributePlaceholdersKey + 84.IBPluginDependency + 85.IBAttributePlaceholdersKey + 85.IBPluginDependency + 86.IBAttributePlaceholdersKey + 86.IBPluginDependency + + + YES + + + + BetterSegmentedControl + + + {628, 654} + {{478, 384}, {635, 36}} + + + + + + + + + + + + ToolTip + + + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + {{618, 206}, {142, 63}} + + ToolTip + + + + + + + + + + + + + The same number + + + + + + + + + + + + + + + + YES + + YES + + + YES + + + + + YES + + YES + + + YES + + + + 90 + + + + YES + + NSObject + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + IBProjectSource + BetterTableView.h + + + + + + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + Controller.h + + + + + NSSegmentedControl + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + IBUserSource + + + + + BetterSegmentedControl + NSSegmentedControl + + YES + + YES + + + YES + + + + YES + + YES + + + YES + + + + + BetterSegmentedControl.h + + + + ConditionController + + + YES + + YES + + + + + YES + id + + + + + YES + + YES + _delegate + + view + + + YES + + NSButton + + + + + + ConditionController.h + + + + InventoryConditionController + ConditionController + + YES + + YES + + + YES + + + + YES + + YES + + itemText + quantityText + typeSegment + + + YES + NSPopUpButton + NSTextField + + BetterSegmentedControl + + + + + InventoryConditionController.h + + + + + 0 + ../WoWWaypoint.xcodeproj + 3 + + YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA +AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxDtAAsADAAxADUANgA8AD0A +QQBFAFgAYABwAHoACwB7AJEAnQCgAKgAqQCsAM4A5wDoAOkA6gDrAOwA7QDuAO8A8ADxAPIA8wD5AP0B +AACcAQQBBQCOAQYBBwEIAQkBDAEHAQ8BEwEUARcBIQEiASMBKAEqAS8BMAEzATcBPQE+AUIBRwFPAVAB +bgGDAYgBiQGOAY8BkAGTAZcBmAGZAZsBnAGiAasBmAGsAbUBmAG2AboBvAHBAcUBxgHLAdQB1QHeAd8B +5AHsAe0B+gH/AgMCBAIGAggCCQIOAhgCJAIlAiYCJwIvAjQCQAJBAkICRQJJAkoCSwJOAlECWQJaAmIC +YwJoAmkCbAJxAnICegJ7AoICgwALATsChAKHAogCjQKOApECjQKWApsCnAKhAqICpwKoAq0CsgK5AroC +uwK+AsMCyALJAs4C5gLpAuoC7AMEAx0DNgM3AzgDOQM6AzsDPAM9Az4DPwNAA0EDQgNDA0QDRQNGA0cD +SANJA0oDSwNMA1ADVAN9A6YDpwOoA6kDqgOrA6wDrQOuA68DsAOxA7IDswO0A7UDtgO3A7gDuQO6A7sD +vAO9A74DvwPAA8EDwgPDAWADxAPFA8YDxwPIA8kDygPLA84D0QPUVSRudWxs3xASAA0ADgAPABAAEQAS +ABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAqACsALAAtAC4ALwAw +Vk5TUm9vdFYkY2xhc3NdTlNPYmplY3RzS2V5c18QD05TQ2xhc3Nlc1ZhbHVlc18QGU5TQWNjZXNzaWJp +bGl0eU9pZHNWYWx1ZXNdTlNDb25uZWN0aW9uc1tOU05hbWVzS2V5c1tOU0ZyYW1ld29ya11OU0NsYXNz +ZXNLZXlzWk5TT2lkc0tleXNdTlNOYW1lc1ZhbHVlc18QGU5TQWNjZXNzaWJpbGl0eUNvbm5lY3RvcnNd +TlNGb250TWFuYWdlcl8QEE5TVmlzaWJsZVdpbmRvd3NfEA9OU09iamVjdHNWYWx1ZXNfEBdOU0FjY2Vz +c2liaWxpdHlPaWRzS2V5c1lOU05leHRPaWRcTlNPaWRzVmFsdWVzgAKA7ICigMCA64AIgKeABYC/gMGA +qIDpgACABoCmgOoQYIDC0gAOADIAMwA0W05TQ2xhc3NOYW1lgASAA18QHEludmVudG9yeUNvbmRpdGlv +bkNvbnRyb2xsZXLSADcAOAA5ADpYJGNsYXNzZXNaJGNsYXNzbmFtZaIAOgA7Xk5TQ3VzdG9tT2JqZWN0 +WE5TT2JqZWN0XxAQSUJDb2NvYUZyYW1ld29ya9IADgA+AD8AQFpOUy5vYmplY3RzgAeg0gA3ADgAQgBD +owBDAEQAO1xOU011dGFibGVTZXRVTlNTZXTSAA4APgBGAEeAVq8QEABIAEkASgBLAEwATQBOAE8AUABR +AFIAUwBUAFUAVgBXgAmAP4BbgGCAaoCNgJCAkoCUgJaAmICZgJqAnoCfgKHUAA4AWQBaAFsAXABdAB8A +X11OU0Rlc3RpbmF0aW9uWE5TU291cmNlV05TTGFiZWyAPoAKgAKAPdgAYQAOAGIAYwBkAGUAZgBnAGgA +aQBqAGsAbABtAG4AaF8QD05TTmV4dFJlc3BvbmRlcldOU0ZyYW1lVk5TQ2VsbFhOU3ZGbGFnc1lOU0Vu +YWJsZWRYTlNXaW5kb3dbTlNTdXBlcnZpZXeAC4A8gAyADhEBDAmADYAL2ABhAA4AcQBkAHIAZgAyAGcA +bgB0AHUAbAB2AG4AeAB5Wk5TU3Vidmlld3NbTlNGcmFtZVNpemWADYCLgGuAiIANgIqAiV8QFHt7MzIx +LCA3fSwgezQ3LCAyMn192wB8AA4AfQB+AH8AgACBAIIAgwCEAIUAhgCHAIgAiQCKAF0AjACNAI4AbQCQ +W05TQ2VsbEZsYWdzXxARTlNCYWNrZ3JvdW5kQ29sb3JaTlNDb250ZW50c1lOU1N1cHBvcnRdTlNDb250 +cm9sVmlld1tOU0Zvcm1hdHRlclxOU0NlbGxGbGFnczJfEBBOU1RleHRCZXplbFN0eWxlXxARTlNEcmF3 +c0JhY2tncm91bmRbTlNUZXh0Q29sb3IT/////5Rx/kGAO4AzgA+AEYAKgBQSCEAEABABCYA41wAOAJIA +kwCUAJUAlgCXAJgAbQCaAI4AjgCbAJxaTlMuY29tcGFjdFtOUy5leHBvbmVudF5OUy5tYW50aXNzYS5i +b1lOUy5sZW5ndGhbTlMubWFudGlzc2FbTlMubmVnYXRpdmWAEAkQAE8QEAEAAAAAAAAAAAAAAAAAAAAI +0gA3ADgAngCfogCfADtfEBpOU0RlY2ltYWxOdW1iZXJQbGFjZWhvbGRlctQADgChAKIAowCkAKUApgCn +Vk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OAEyNAKgAAAAAAAIASEQQUXEx1Y2lkYUdyYW5kZdIANwA4AKoA +q6IAqwA7Vk5TRm9udN8QEQAOAK0ArgCvALAAsQCyALMAtAC1ALYAtwC4ALkAugC7ALwAvQC+AL8AwAAr +AMIAKwDEAMUAxgBtAMgAKwDKAMsAbQCcVk5TLm5pbFpOUy5kZWNpbWFsVk5TLm5hbltOUy5yb3VuZGlu +Z1dOUy56ZXJvXxAQTlMubmVnYXRpdmVhdHRyc1ZOUy5tYXhdTlMuYXR0cmlidXRlc18QEU5TLnBvc2l0 +aXZlZm9ybWF0XxAPTlMuYWxsb3dzZmxvYXRzXxARTlMubmVnYXRpdmVmb3JtYXRfEBBOUy5wb3NpdGl2 +ZWF0dHJzW05TLnRob3VzYW5kVk5TLm1pblxOUy5sb2NhbGl6ZWRfEA9OUy5oYXN0aG91c2FuZHOAMoAu +gCeAMIAAgCKAAIAqgBWAIQmAK4AAgCyAIAkI0wAOAM8APgDQANEA3FdOUy5rZXlzgC2qANIA0wDUANUA +1gDXANgA2QDaANuAFoAXgBiAGYAagBuAHIAdgB6AH6oAywDGAMIA4AC/AOIA4wDEAMgAyoAggCGAIoAm +gCeAKIApgCqAK4AsV21pbmltdW1ecG9zaXRpdmVGb3JtYXRfEBdhdHRyaWJ1dGVkU3RyaW5nRm9yWmVy +b18QFXVzZXNHcm91cGluZ1NlcGFyYXRvcl8QEGRlY2ltYWxTZXBhcmF0b3JfEBFmb3JtYXR0ZXJCZWhh +dmlvclxhbGxvd3NGbG9hdHNXbWF4aW11bV5uZWdhdGl2ZUZvcm1hdF8QEWdyb3VwaW5nU2VwYXJhdG9y +IwAAAAAAAAAAUTDTAA4A9AD1APYA9wDGXE5TQXR0cmlidXRlc1hOU1N0cmluZ4AlgCOAIdMADgDPAD4A ++gD7APyAJKCg0gA3ADgA/gD/ogD/ADtcTlNEaWN0aW9uYXJ50gA3ADgBAQECogECADtfEBJOU0F0dHJp +YnV0ZWRTdHJpbmcIUS4RA+gjQI84AAAAAABQUSzSADcAOAEKAQujAQsA/wA7XxATTlNNdXRhYmxlRGlj +dGlvbmFyedIADgD1APYBDoAlgC/TAA4A9AD1APYA9wESgCWAI4AxU05hTtIANwA4ARUBFqMBFgCBADtf +EBFOU051bWJlckZvcm1hdHRlctUADgEYARkBGgEbARwBHQEeAR8BIFdOU0NvbG9yXE5TQ29sb3JTcGFj +ZVtOU0NvbG9yTmFtZV1OU0NhdGFsb2dOYW1lgDeANhAGgDWANFZTeXN0ZW1fEBN0ZXh0QmFja2dyb3Vu +ZENvbG9y0wAOARkBJAEcASYBJ1dOU1doaXRlgDcQA0IxANIANwA4ASkBGKIBGAA71QAOARgBGQEaARsB +HAEsAR4BLQEggDeAOoA5gDRZdGV4dENvbG9y0wAOARkBJAEcASYBMoA3QjAA0gA3ADgBNAE1pAE1ATYA +YwA7XxAPTlNUZXh0RmllbGRDZWxsXE5TQWN0aW9uQ2VsbNIANwA4ATgBOaUBOQE6ATsBPAA7W05TVGV4 +dEZpZWxkWU5TQ29udHJvbFZOU1ZpZXdbTlNSZXNwb25kZXJccXVhbnRpdHlUZXh00gA3ADgBPwFAowFA +AUEAO18QFE5TTmliT3V0bGV0Q29ubmVjdG9yXk5TTmliQ29ubmVjdG9y1AAOAFkAWgBbAFwBRAAfAUaA +PoBAgAKAWtgAYQAOAGIAYwBkAGUAZgBnAGgBSQFKAUsAbABtAG4AaIALgFmAQYBCCYANgAtfEBV7ezIw +NiwgNH0sIHsxMTAsIDI2fX3fEBIAfAFRAVIBUwFUAA4BVQFWAH8BVwCAAVgBWQFaAVsAggFcAV0BXgBt +AWAAyAFiAWMAjgDIAIoBZgFEAI4AbQBtAWoBawFsAW1fEBpOU01lbnVJdGVtUmVzcGVjdEFsaWdubWVu +dF8QD05TQXJyb3dQb3NpdGlvbl8QE05TQWx0ZXJuYXRlQ29udGVudHNfEBJOU1BlcmlvZGljSW50ZXJ2 +YWxeTlNCdXR0b25GbGFnczJfEA9OU0tleUVxdWl2YWxlbnRaTlNNZW51SXRlbV8QD05TUHJlZmVycmVk +RWRnZV8QEk5TVXNlc0l0ZW1Gcm9tTWVudV1OU0FsdGVyc1N0YXRlXxAPTlNQZXJpb2RpY0RlbGF5Vk5T +TWVudV1OU0J1dHRvbkZsYWdzE/////+EQf5ACRACgCsQS4BYgCuAEYBDgEAJCREBkBEIAIBEEgaCQP/c +AW8ADgFwAXEBcgFzAXQBdQFcAXYBdwF4AUsBegF7AXwAyAF+AX8BgAFsAYIAjgCOWE5TVGFyZ2V0V05T +VGl0bGVfEBFOU0tleUVxdWl2TW9kTWFza1pOU0tleUVxdWl2XU5TTW5lbW9uaWNMb2NZTlNPbkltYWdl +XE5TTWl4ZWRJbWFnZVhOU0FjdGlvblVOU1RhZ1dOU1N0YXRlgEKATYBFEgAQAACAKxJ/////gEaASoBE +gEzTAA4BcAGEAYUBhgGHW05TTWVudUl0ZW1zgFeAToBPWU1vcmUgVGhhbtMADgAyAYoBiwGMAY1eTlNS +ZXNvdXJjZU5hbWWASYBHgEhXTlNJbWFnZV8QD05TTWVudUNoZWNrbWFya9IANwA4AZEBkqIBkgA7XxAQ +TlNDdXN0b21SZXNvdXJjZdMADgAyAYoBiwGMAZaASYBHgEtfEBBOU01lbnVNaXhlZFN0YXRlXxARX3Bv +cFVwSXRlbUFjdGlvbjrSADcAOAGaAVeiAVcAO1pPdGhlclZpZXdz0gAOAD4ARgGegFajAWYBoAGhgEOA +UIBT2wFvAA4BcAFxAXIBcwF0AXUBXAF2AXcBSwF6AaUBfADIAX4BfwGAAWwBqgFggEKATYBRgCuARoBK +gESAUldFeGFjdGx52wFvAA4BcAFxAXIBcwF0AXUBXAF2AXcBSwF6Aa8BfADIAX4BfwGAAWwBtAEmgEKA +TYBUgCuARoBKgESAVVlMZXNzIFRoYW7SADcAOAG3AbijAbgBuQA7Xk5TTXV0YWJsZUFycmF5V05TQXJy +YXnSADcAOAG7AVyiAVwAO9IANwA4Ab0BvqYBvgG/AcABNgBjADtfEBFOU1BvcFVwQnV0dG9uQ2VsbF5O +U01lbnVJdGVtQ2VsbFxOU0J1dHRvbkNlbGzSADcAOAHCAcOmAcMBxAE6ATsBPAA7XU5TUG9wVXBCdXR0 +b25YTlNCdXR0b25fEA9jb21wYXJhdG9yUG9wVXDUAA4AWQBaAFsAXAHIAB8ByoA+gFyAAoBf2ABhAA4A +YgBjAGQAZQBmAGcAaABpAc4BzwHQAG0AbgBogAuAPIBdgF4RAQoJgA2AC18QFHt7NDI3LCA3fSwgezk4 +LCAyMn192gB8AA4AfQB+AH8AgACCAIMAhACFAIYAhwCIAMgAigHIAdsAjgBtAJCAO4AzgCuAEYBcEhBA +BAAJgDhYaXRlbVRleHTUAA4AWQBaAFsAXAHhAB8B44A+gGGAAoBp2ABhAA4AYgBjAGQAZQBmAGcAaAHm +AecB6ABsAG0AbgBogAuAaIBigGMJgA2AC18QEnt7NywgOH0sIHsyMCwgMTl9fd0AfAAOAVMB7gFUAVUB +VgB+AH8AgAFbAIIBXQHvAfAAyAHyAWIB8wDIAMgB9gHhAWoB+AH5XU5TTm9ybWFsSW1hZ2USBAH+AIBn +gCuAZRCtgCuAK4BkgGESCAAAABP/////tvRA/9QADgChAKIAowCkAfwApgH+gBMjQCgAAAAAAACAEhAQ +0wAOADIBigGLAYwCAoBJgEeAZl8QFk5TU3RvcFByb2dyZXNzVGVtcGxhdGXSADcAOAIFAcCkAcABNgBj +ADvSADcAOAIHAcSlAcQBOgE7ATwAO11kaXNhYmxlQnV0dG9u1AAOAFkAWgBbAFwAaAAfAg2APoALgAKA +jNIADgA+AEYCEIBWpwIRAcgAXQIUAhUB4QFEgGyAXIAKgHuAhIBhgEDaAGEADgBiAhkAYwBkAGUAZgAy +AGcAaAIbAhwCHQIeAh8AbQBuAiIAaF8QE05TT3JpZ2luYWxDbGFzc05hbWWAC4B6gG+AboBwEQEJCYAN +gG2AC18QFkJldHRlclNlZ21lbnRlZENvbnRyb2xfEBJOU1NlZ21lbnRlZENvbnRyb2xfEBR7ezUzMSwg +NX0sIHs5NywgMjR9fdcAfAAOAigAfwCAAIICKQIqAisAjgCKAhEAmgIuXk5TU2VnbWVudFN0eWxlXxAP +TlNTZWdtZW50SW1hZ2VzE/////+EAf4AgHmAEYBsgHHSAA4APgBGAjGAVqICMgIzgHKAdtcADgI1AjYC +NwI4AjkCOgI7AJoCPAI9Aj4AjgBtXxAZTlNTZWdtZW50SXRlbUltYWdlU2NhbGluZ18QFE5TU2VnbWVu +dEl0ZW1Ub29sdGlwXxASTlNTZWdtZW50SXRlbVdpZHRoXxASTlNTZWdtZW50SXRlbUxhYmVsXxAQTlNT +ZWdtZW50SXRlbVRhZ18QFU5TU2VnbWVudEl0ZW1TZWxlY3RlZIB1gHQjQEaAAAAAAACAcwlTTnVtXxAP +U3BlbGwgSUQgTnVtYmVy0gA3ADgCQwJEogJEADtdTlNTZWdtZW50SXRlbdYADgI1AjYCNwI4AjkCOwCa +AkcCPQJIASaAdYB4gHdUTmFtZVpTcGVsbCBOYW1l0gA3ADgCTAJNpAJNATYAYwA7XxAPTlNTZWdtZW50 +ZWRDZWxs0gA3ADgCTwJQogJQADteTlNDbGFzc1N3YXBwZXLYAGEADgBiAGMAZABlAGYAZwBoAGkCVAJV +AGwAbQBuAGiAC4A8gHyAfQmADYALXxAVe3szNzMsIDEwfSwgezQ5LCAxN3192AB8AA4AfQB+AH8AgACC +AIUCWwCHAl0CXgCKAhQB2wJhEgQB/kCAO4B/gH6AEYB7gIJXb2YgaXRlbdUADgEYARkBGgEbARwCZQEe +AmYBIIA3gIGAgIA0XGNvbnRyb2xDb2xvctMADgEZASQBHAEmAmuAN0swLjY2NjY2NjY5ANUADgEYARkB +GgEbARwBLAEeAm8BIIA3gDqAg4A0XxAQY29udHJvbFRleHRDb2xvctgAYQAOAGIAYwBkAGUAZgBnAGgA +aQJ1AnYAbABtAG4AaIALgDyAhYCGCYANgAtfEBV7ezMyLCAxMH0sIHsxNzIsIDE3fX3YAHwADgB9AH4A +fwCAAIIAhQJbAIcCXQJ+AIoCFQHbAmGAO4B/gIeAEYCEgIJfEBtQbGF5ZXIncyBpbnZlbnRvcnkgY29u +dGFpbnNZezYzNSwgMzZ90gA3ADgChQKGpAKGATsBPAA7XE5TQ3VzdG9tVmlld1R2aWV31AAOAFkAWgBb +AokAHwFEAoyAj4ACgECAjl52YWxpZGF0ZVN0YXRlOtIANwA4Ao8CkKMCkAFBADtfEBVOU05pYkNvbnRy +b2xDb25uZWN0b3LUAA4AWQBaAFsCiQAfAhEClYCPgAKAbICR1AAOAFkAWgBbAFwCEQAfApqAPoBsgAKA +k1t0eXBlU2VnbWVudNQADgBZAFoAWwKJAB8B4QKggI+AAoBhgJVfEBFkaXNhYmxlQ29uZGl0aW9uOtQA +DgBZAFoAWwBcAcgAXQKmgD6AXIAKgJdbbmV4dEtleVZpZXfUAA4AWQBaAFsCiQAfAcgClYCPgAKAXICR +1AAOAFkAWgBbAokAHwBdApWAj4ACgAqAkdQADgBZArMCtAK1AeECtwK4WE5TTWFya2VyVk5TRmlsZYCd +gGGAnICbXxAQTlNUb29sVGlwSGVscEtleV8QF0Rpc2FibGUgdGhpcyBjb25kaXRpb24u0gA3ADgCvAK9 +ogK9ADtfEBFOU0lCSGVscENvbm5lY3RvctQADgBZArMCtAK1AaEBrwK4gJ2AU4BUgJvUAA4AWQKzArQC +tQGgAsYCuICdgFCAoICbXxAPVGhlIHNhbWUgbnVtYmVy1AAOAFkCswK0ArUBZgF7AriAnYBDgEWAm9IA +DgA+As8C0IClrxAVAcgB4QCMAWwCFQIUAWYCdgBrAc8BSwLcAaEBoAJVAGgB6AFEAh4AXQIRgFyAYYAU +gESAhIB7gEOAhoAOgF6AQoCjgFOAUIB9gAuAY4BAgHCACoBs0gAOADIAMwLogASApF1OU0FwcGxpY2F0 +aW9u0gA3ADgC6wG5ogG5ADvSAA4APgLPAu6Apa8QFQBoAGgAawFLAGgAaAFsAhUAXQHIAUQAHwFsAWwC +FAAfAeEAaAIRAGgAaIALgAuADoBCgAuAC4BEgISACoBcgECAAoBEgESAe4ACgGGAC4BsgAuAC9IADgA+ +As8DBoClrxAWAcgB4QFsAIwCFQIUAWYCdgBrAc8BSwLcAaEBoAJVAGgAHwFEAegCHgBdAhGAXIBhgESA +FICEgHuAQ4CGgA6AXoBCgKOAU4BQgH2AC4ACgECAY4BwgAqAbNIADgA+As8DH4ClrxAWAyADIQMiAyMD +JAMlAyYDJwMoAykDKgMrAywDLQMuAy8DMAMxAzIDMwM0AzWAqYCqgKuArICtgK6Ar4CwgLGAsoCzgLSA +tYC2gLeAuIC5gLqAu4C8gL2Avl8QElJvdW5kZWQgVGV4dCBGaWVsZF8QKFJlY2Vzc2VkIEJ1dHRvbiAo +TlNTdG9wUHJvZ3Jlc3NUZW1wbGF0ZSlfEBFNZW51IChPdGhlclZpZXdzKV8QEE51bWJlciBGb3JtYXR0 +ZXJfEClTdGF0aWMgVGV4dCAoUGxheWVyJ3MgaW52ZW50b3J5IGNvbnRhaW5zKV8QFVN0YXRpYyBUZXh0 +IChvZiBpdGVtKV8QFU1lbnUgSXRlbSAoTW9yZSBUaGFuKV8QLVRleHQgRmllbGQgQ2VsbCAoUGxheWVy +J3MgaW52ZW50b3J5IGNvbnRhaW5zKV8QE1RleHQgRmllbGQgQ2VsbCAoMSlfEA9UZXh0IEZpZWxkIENl +bGxfEB5Qb3AgVXAgQnV0dG9uIENlbGwgKE1vcmUgVGhhbilbQXBwbGljYXRpb25fEBVNZW51IEl0ZW0g +KExlc3MgVGhhbilfEBNNZW51IEl0ZW0gKEV4YWN0bHkpXxAZVGV4dCBGaWVsZCBDZWxsIChvZiBpdGVt +KVtDdXN0b20gVmlld1xGaWxlJ3MgT3duZXJfEBhQb3B1cCBCdXR0b24gKE1vcmUgVGhhbilfECRCdXR0 +b24gQ2VsbCAoTlNTdG9wUHJvZ3Jlc3NUZW1wbGF0ZSleU2VnbWVudGVkIENlbGxfEBZSb3VuZGVkIFRl +eHQgRmllbGQgKDEpXxAYQmV0dGVyIFNlZ21lbnRlZCBDb250cm9s0gAOAD4CzwNOgKWhAhGAbNIADgA+ +As8DUoCloQIigG3SAA4APgLPA1aApa8QJgIRAFQAjABWAFUCFQIUAWYASwHPAUsC3AGhAaAATABNAFIB +bAHoAUQAUwHhAFcATgBJAnYAawBQAlUASABoAEoAHwBPAFECHgBdAciAbICagBSAn4CegISAe4BDgGCA +XoBCgKOAU4BQgGqAjYCYgESAY4BAgJmAYYChgJCAP4CGgA6AlIB9gAmAC4BbgAKAkoCWgHCACoBc0gAO +AD4CzwN/gKWvECYDgAOBA4IDgwOEA4UDhgOHA4gDiQOKA4sDjAONA44DjwOQA5EDkgOTA5QDlQOWA5cD +mAOZA5oDmwOcA50DngOfA6ADoQOiA6MDpAOlgMOAxIDFgMaAx4DIgMmAyoDLgMyAzYDOgM+A0IDRgNKA +04DUgNWA1oDXgNiA2YDagNuA3IDdgN6A34DggOGA4oDjgOSA5YDmgOeA6BATEFwQMxBeEF0QNBAxEFYQ +VxAVEFIT//////////0QVBBVEEAQWRA/EFMQUBBRED4QTxBfEDsQWBA1EDAQWhAyEDgQORBbEDoQThAW +EC8QFNIADgA+AEYDzYBWoNIADgA+As8D0ICloNIADgA+As8D04CloNIANwA4A9UD1qID1gA7Xk5TSUJP +YmplY3REYXRhAAgAGQAiACcAMQA6AD8ARABSAFQAZgJDAkkClAKbAqICsALCAt4C7AL4AwQDEgMdAysD +RwNVA2gDegOUA54DqwOtA68DsQOzA7UDtwO5A7sDvQO/A8EDwwPFA8cDyQPLA80DzwPYA+QD5gPoBAcE +EAQZBCQEKQQ4BEEEVARdBGgEagRrBHQEewSIBI4ElwSZBLwEvgTABMIExATGBMgEygTMBM4E0ATSBNQE +1gTYBNoE3ATtBPsFBAUMBQ4FEAUSBRQFNQVHBU8FVgVfBWkFcgV+BYAFggWEBYYFiQWKBYwFjgWvBboF +xgXIBcoFzAXOBdAF0gXUBesGGAYkBjgGQwZNBlsGZwZ0BocGmwanBrAGsga0BrYGuAa6BrwGwQbDBsQG +xgbjBu4G+gcJBxMHHwcrBy0HLgcwB0MHRAdNB1IHbweAB4cHjgeXB5kHogekB6cHtAe9B8IHyQgQCBcI +IggpCDUIPQhQCFcIZQh5CIsInwiyCL4IxQjSCOQI5gjoCOoI7AjuCPAI8gj0CPYI+Aj5CPsI/Qj/CQEJ +AgkDCRAJGAkaCS8JMQkzCTUJNwk5CTsJPQk/CUEJQwlYCVoJXAleCWAJYglkCWYJaAlqCWwJdAmDCZ0J +tQnICdwJ6QnxCgAKFAodCh8KLAo5CkIKRApGCkgKVQpXClgKWQpiCmcKdAp9CoIKlwqYCpoKnQqmCqcK +qQqyCrkKzwrYCtoK3ArpCusK7QrvCvMK/AsDCxcLLAs0C0ELTQtbC10LXwthC2MLZQtsC4ILjwuXC5kL +mwueC6cLrAvBC8MLxQvHC8kL0wvgC+IL5QvuC/cMCQwWDB8MKgw2DEAMRwxTDGAMaQxwDIcMlgynDKkM +qwytDK8M0AzSDNQM1gzYDNkM2wzdDPUNQA1dDW8NhQ2aDakNuw3GDdgN7Q37Dg0OFA4iDisOLA4uDjAO +Mg40DjYOOA46DjwOPQ4+DkEORA5GDksOfA6FDo0OoQ6sDroOxA7RDtoO4A7oDuoO7A7uDvMO9Q76DvwO +/g8ADwIPDw8bDx0PHw8hDysPOA9HD0kPSw9ND1UPZw9wD3UPiA+VD5cPmQ+bD64Pwg/LD9AP2w/kD+YP +7Q/vD/EP8xAgECIQJBAmECgQKhAsEC4QMBA4EGUQZxBpEGsQbRBvEHEQcxB1EH8QiBCPEJ4QphCvELQQ +vRDKEN4Q7RD6EQMREBEeEScRORFKEUwRThFQEVIRcxF1EXcReRF7EX4RfxGBEYMRmhHDEcURxxHJEcsR +zRHSEdMR1RHeEe8R8RHzEfUR9xIYEhoSHBIeEiASIRIjEiUSOhJvEn0SghKEEoYSiBKKEowSjhKQEpIS +lxKgErESsxK8Er4SwBLNEs8S0RLTEuwS9RL+EwcTEhMgEzETMxM1EzcTORNCE0QTUxNVE1cTWRNbE10T +XxNhE4oToBOiE6QTphOoE6oTrROuE7ATshO0E80T4hP5FBYUJRQ3FEAUQhREFEYUSBRRFFMUWBRaFFwU +eRSVFKwUwRTWFOkVARUDFQUVDhUQFREVFRUnFTAVNRVDFVwVXhVgFWIVZxVyFXsVhBWWFZ8VpBWzFdQV +1hXYFdoV3BXdFd8V4RX5FhoWHxYhFiMWJRYnFikWKxYzFkgWShZMFk4WUBZdFmoWbBZ4Fo0WjxaRFpMW +lRaoFskWyxbNFs8W0RbSFtQW1hbuFw8XERcTFxUXFxcZFxsXORdDF0wXVRdiF2cXeBd6F3wXfheAF48X +mBefF7cXyBfKF8wXzhfQF+EX4xflF+cX6Rf1GAYYCBgKGAwYDhgiGDMYNRg3GDkYOxhHGFgYWhhcGF4Y +YBhxGHMYdRh3GHkYihiTGJoYnBieGKAYohi1GM8Y2BjdGPEZAhkEGQYZCBkKGRsZHRkfGSEZIxk1GUYZ +SBlKGUwZThlXGVkZhhmIGYoZjBmOGZAZkhmUGZYZmBmaGZwZnhmgGaIZpBmmGagZqhmsGa4ZsBm5GbsZ +vRnLGdQZ2RniGeQaERoTGhUaFxoZGhsaHRofGiEaIxolGicaKRorGi0aLxoxGjMaNRo3GjkaOxpEGkYa +dRp3Gnkaexp9Gn8agRqDGoUahxqJGosajRqPGpEakxqVGpcamRqbGp0anxqhGqoarBrbGt0a3xrhGuMa +5RrnGuka6xrtGu8a8RrzGvUa9xr5Gvsa/Rr/GwEbAxsFGwcbHBtHG1sbbhuaG7Ibyhv6HBAcIhxDHE8c +Zxx9HJkcpRyyHM0c9B0DHRwdNx1AHUIdRR1HHVAdUh1VHVcdYB1iHbEdsx21HbcduR27Hb0dvx3BHcMd +xR3HHckdyx3NHc8d0R3THdUd1x3ZHdsd3R3fHeEd4x3lHecd6R3rHe0d7x3xHfMd9R33Hfkd+x39HgYe +CB5XHlkeWx5dHl8eYR5jHmUeZx5pHmsebR5vHnEecx51HnceeR57Hn0efx6BHoMehR6HHokeix6NHo8e +kR6THpUelx6ZHpsenR6fHqEeox6lHqceqR6rHq0erx6xHrMetR63Hrkewh7EHsYeyB7KHswezh7QHtIe +1B7WHtge2h7cHt4e4B7iHuQe5h7oHuoe7B7uHvAe8h70Hv0e/x8AHwkfCx8MHxUfFx8YHyEfJgAAAAAA +AAICAAAAAAAAA9cAAAAAAAAAAAAAAAAAAB81A + + + diff --git a/InventoryConditionController.h b/InventoryConditionController.h new file mode 100644 index 0000000..035200d --- /dev/null +++ b/InventoryConditionController.h @@ -0,0 +1,24 @@ +// +// InventoryConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/18/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface InventoryConditionController : ConditionController { + + IBOutlet NSPopUpButton *comparatorPopUp; + //IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet BetterSegmentedControl *typeSegment; + + IBOutlet NSTextField *quantityText; + IBOutlet NSTextField *itemText; +} + +@end diff --git a/InventoryConditionController.m b/InventoryConditionController.m new file mode 100644 index 0000000..85b099e --- /dev/null +++ b/InventoryConditionController.m @@ -0,0 +1,81 @@ +// +// InventoryConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/18/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "InventoryConditionController.h" +#import "ConditionController.h" +#import "BetterSegmentedControl.h" + + +@implementation InventoryConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"InventoryCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading InventoryCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + //[qualitySegment selectSegmentWithTag: QualityInventory]; +} + +- (Condition*)condition { + [self validateState: nil]; + + int quantity = [quantityText intValue]; + if(quantity < 0) quantity = 0; + + id value = nil; + if( [typeSegment selectedTag] == TypeValue ) { + NSString *string = [[itemText stringValue] stringByTrimmingCharactersInSet: [NSCharacterSet whitespaceAndNewlineCharacterSet]]; + value = [NSNumber numberWithInt: [string intValue]]; + } + if( [typeSegment selectedTag] == TypeString ) + value = [itemText stringValue]; + + Condition *condition = [Condition conditionWithVariety: VarietyInventory + unit: UnitPlayer + quality: QualityInventory + comparator: [[comparatorPopUp selectedItem] tag] + state: quantity + type: [typeSegment selectedTag] + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyInventory) return; + + [typeSegment selectSegmentWithTag: [condition type]]; + //[unitSegment selectSegmentWithTag: [condition unit]]; + //[qualitySegment selectSegmentWithTag: [condition quality]]; + //[comparatorSegment selectSegmentWithTag: [condition comparator]]; + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareMore]; + } + + // set quantity text with value from state variable + [quantityText setStringValue: [NSString stringWithFormat: @"%d", [condition state]]]; + + if( [[condition value] isKindOfClass: [NSString class]] ) + [itemText setStringValue: [condition value]]; + else + [itemText setStringValue: [[condition value] stringValue]]; +} + +@end diff --git a/InventoryController.h b/InventoryController.h new file mode 100644 index 0000000..81aff9c --- /dev/null +++ b/InventoryController.h @@ -0,0 +1,95 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id$ + * + */ + +#import +#import "ObjectController.h" + +@class Item; +@class MailActionProfile; + +@class PlayerDataController; +@class MemoryViewController; +@class ObjectsController; +@class BotController; +@class MacroController; +@class NodeController; +@class OffsetController; + +@interface InventoryController : ObjectController { + IBOutlet MemoryViewController *memoryViewController; + IBOutlet ObjectsController *objectsController; + IBOutlet OffsetController *offsetController; + + // only used for mailing + IBOutlet BotController *botController; + IBOutlet MacroController *macroController; + IBOutlet NodeController *nodeController; + + int _updateDurabilityCounter; + + NSArray *_itemsPlayerIsWearing, *_itemsInBags; + NSMutableDictionary *_itemNameList; +} + ++ (InventoryController *)sharedInventory; + +// general +- (unsigned)itemCount; + +// query +- (Item*)itemForGUID: (GUID)guid; +- (Item*)itemForID: (NSNumber*)itemID; +- (Item*)itemForName: (NSString*)itemName; +- (NSString*)nameForID: (NSNumber*)itemID; + +- (int)collectiveCountForItem: (Item*)item; +- (int)collectiveCountForItemInBags: (Item*)item; + +- (float)averageItemDurability; +- (float)collectiveDurability; +- (float)averageWearableDurability; +- (float)collectiveWearableDurability; + +// list +- (NSArray*)inventoryItems; +- (NSMenu*)inventoryItemsMenu; +- (NSMenu*)usableInventoryItemsMenu; +- (NSMenu*)prettyInventoryItemsMenu; +- (NSArray*)itemsPlayerIsWearing; +- (NSArray*)itemsInBags; +- (NSArray*)useableItems; + +- (int)bagSpacesAvailable; +- (int)bagSpacesTotal; +- (BOOL)arePlayerBagsFull; + +// Total number of marks (from all BG) +- (int)pvpMarks; + +- (Item*)getBagItem: (int)bag withSlot:(int)slot; +- (int)mailItemsWithProfile:(MailActionProfile*)profile; + +//- (NSMutableArray*)itemsInBags; +@end \ No newline at end of file diff --git a/InventoryController.m b/InventoryController.m new file mode 100644 index 0000000..919dc41 --- /dev/null +++ b/InventoryController.m @@ -0,0 +1,850 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id$ + * + */ + + +#import "ObjectsController.h" +#import "PlayerDataController.h" +#import "MacroController.h" +#import "BotController.h" +#import "NodeController.h" +#import "InventoryController.h" +#import "Controller.h" +#import "MemoryViewController.h" +#import "OffsetController.h" + +#import "Offsets.h" + +#import "Item.h" +#import "WoWObject.h" +#import "Player.h" +#import "Node.h" + +#import "MailActionProfile.h" + +@implementation InventoryController + +static InventoryController *sharedInventory = nil; + ++ (InventoryController *)sharedInventory { + if (sharedInventory == nil) + sharedInventory = [[[self class] alloc] init]; + return sharedInventory; +} + +- (id) init +{ + self = [super init]; + if(sharedInventory) { + [self release]; + self = sharedInventory; + } else if(self != nil) { + sharedInventory = self; + _itemsPlayerIsWearing = nil; + _itemsInBags = nil; + + // set to 20 to ensure it updates right away + _updateDurabilityCounter = 20; + + // load in item names + id itemNames = [[NSUserDefaults standardUserDefaults] objectForKey: @"ItemNames"]; + if(itemNames) { + _itemNameList = [[NSKeyedUnarchiver unarchiveObjectWithData: itemNames] mutableCopy]; + } else + _itemNameList = [[NSMutableDictionary dictionary] retain]; + + // notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(applicationWillTerminate:) + name: NSApplicationWillTerminateNotification + object: nil]; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(itemNameLoaded:) + name: ItemNameLoadedNotification + object: nil]; + } + return self; +} + +- (void)dealloc{ + [_objectList release]; + [_objectDataList release]; + [_itemNameList release]; + [_itemsPlayerIsWearing release]; + [_itemsInBags release]; + + [super dealloc]; +} + +#pragma mark - + +- (void)applicationWillTerminate: (NSNotification*)notification { + [[NSUserDefaults standardUserDefaults] setObject: [NSKeyedArchiver archivedDataWithRootObject: _itemNameList] forKey: @"ItemNames"]; + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +- (void)itemNameLoaded: (NSNotification*)notification { + Item *item = (Item*)[notification object]; + + NSString *name = [item name]; + if(name) { + // log(LOG_ITEM, @"Saving item: %@", item); + [_itemNameList setObject: name forKey: [NSNumber numberWithInt: [item entryID]]]; + } +} + +#pragma mark - + +- (Item*)itemForGUID: (GUID)guid { + + if ( guid == 0x0 ){ + return nil; + } + + /*if ( GUID_LOW32(guid) != 0x4580000 ){ + NSLog(@"...0x%X", GUID_LOW32(guid)); + return nil; + + }*/ + + NSArray *itemList = [[_objectList copy] autorelease]; + + for(Item *item in itemList) { + //NSLog(@"%qd == %qd", [item GUID], guid); + + if( [item GUID] == guid ) + return [[item retain] autorelease]; + } + return nil; +} + +- (Item*)itemForID: (NSNumber*)itemID { + if( !itemID || [itemID intValue] <= 0) return nil; + NSArray* itemList = [[_objectList copy] autorelease]; + for(Item *item in itemList) { + if( [itemID isEqualToNumber: [NSNumber numberWithInt: [item entryID]]] ) + return [[item retain] autorelease]; + } + return nil; +} + +- (Item*)itemForName: (NSString*)name { + if(!name || ![name length]) return nil; + for(Item* item in _objectList) { + if([item name]) { + NSRange range = [[item name] rangeOfString: name + options: NSCaseInsensitiveSearch | NSAnchoredSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound && [item isValid]) + return [[item retain] autorelease]; + } + } + return nil; +} + +- (NSString*)nameForID: (NSNumber*)itemID { + NSString *name = [_itemNameList objectForKey: itemID]; + if(name) return name; + return [NSString stringWithFormat: @"%@", itemID]; +} + +- (int)collectiveCountForItem: (Item*)refItem { + if(![refItem isValid]) return 0; + int count = 0; + int itemEntryID = [refItem entryID]; // cache this, saves on memory reads + for ( Item *item in _objectList ) { + // same type + if ( [item entryID] == itemEntryID ) { + count += [item count]; + } + } + //log(LOG_ITEM, @"Found count %d for item %@", count, refItem); + return count; +} + +- (int)collectiveCountForItemInBags: (Item*)refItem{ + if(![refItem isValid]) return 0; + int count = 0; + int itemEntryID = [refItem entryID]; // cache this, saves on memory reads + for ( Item* item in [self itemsInBags] ) { + if ( [item entryID] == itemEntryID ) { + count += [item count]; + } + } + //log(LOG_ITEM, @"Found count %d for item %@", count, refItem); + return count; +} + +- (BOOL)trackingItem: (Item*)anItem { + for(Item *item in _objectList) { + if( [item isEqualToObject: anItem] ) + return YES; + } + return NO; +} + +- (unsigned)itemCount { + return [_objectList count]; +} + +#pragma mark - + +// this gets the average durability level over all items with durability +- (float)averageItemDurability { + float durability = 0; + int count = 0; + for(Item *item in _objectList) { + if([[item maxDurability] unsignedIntValue]) { + durability += (([[item durability] unsignedIntValue]*1.0)/[[item maxDurability] unsignedIntValue]); + count++; + } + } + return [[NSString stringWithFormat: @"%.2f", durability/count*100.0] floatValue]; +} + +// this gets the durability average of everything as if it was one item +- (float)collectiveDurability { + unsigned curDur = 0, maxDur = 0; + for(Item *item in _objectList) { + curDur += [[item durability] unsignedIntValue]; + maxDur += [[item maxDurability] unsignedIntValue]; + } + return [[NSString stringWithFormat: @"%.2f", (1.0*curDur)/(1.0*maxDur)*100.0] floatValue]; +} + +- (float)averageWearableDurability{ + float durability = 0; + int count = 0; + for(Item *item in _itemsPlayerIsWearing) { + if([[item maxDurability] unsignedIntValue]) { + durability += (([[item durability] unsignedIntValue]*1.0)/[[item maxDurability] unsignedIntValue]); + count++; + } + } + + return [[NSString stringWithFormat: @"%.2f", durability/count*100.0] floatValue]; +} + +- (float)collectiveWearableDurability;{ + unsigned curDur = 0, maxDur = 0; + for(Item *item in _itemsPlayerIsWearing) { + curDur += [[item durability] unsignedIntValue]; + maxDur += [[item maxDurability] unsignedIntValue]; + } + return [[NSString stringWithFormat: @"%.2f", (1.0*curDur)/(1.0*maxDur)*100.0] floatValue]; +} + +#pragma mark - + +- (NSArray*)inventoryItems { + return [[_objectList retain] autorelease]; +} + +- (NSMenu*)inventoryItemsMenu { + + NSMenuItem *menuItem; + NSMenu *menu = [[[NSMenu alloc] initWithTitle: @"Items"] autorelease]; + for(Item *item in _objectList) { + if( [item name]) { + menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ - %d", [item name], [item entryID]] action: nil keyEquivalent: @""]; + } else { + menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%d", [item entryID]] action: nil keyEquivalent: @""]; + } + [menuItem setTag: [item entryID]]; + [menu addItem: [menuItem autorelease]]; + } + + if( [_objectList count] == 0) { + menuItem = [[NSMenuItem alloc] initWithTitle: @"There are no available items." action: nil keyEquivalent: @""]; + [menuItem setTag: 0]; + [menu addItem: [menuItem autorelease]]; + } + + return menu; +} + +// returns all (unique) useable items +- (NSArray*)useableItems{ + + NSMutableDictionary *useableItems = [NSMutableDictionary dictionary]; + for ( Item *item in _objectList ) { + NSNumber *entryID = [NSNumber numberWithUnsignedInt: [item cachedEntryID]]; + + if ( ![useableItems objectForKey:entryID] && [item charges] > 0 ) { + [useableItems setObject: item forKey: entryID]; + } + } + + NSArray *uniqueItems = [useableItems allValues]; + return [[uniqueItems retain] autorelease]; +} + +- (NSMenu*)usableInventoryItemsMenu { + + // first, items + NSMutableDictionary *coalescedItems = [NSMutableDictionary dictionary]; + for(Item *item in _objectList) { + if( [item charges] > 0) { + NSNumber *entryID = [NSNumber numberWithUnsignedInt: [item entryID]]; + NSMutableArray *list = nil; + if( (list = [coalescedItems objectForKey: entryID]) ) { + [list addObject: item]; + } else { + [coalescedItems setObject: [NSMutableArray arrayWithObject: item] forKey: entryID]; + } + } + } + + // now sort those items so they are in alphabetical order + NSMutableArray *nameMap = [NSMutableArray array]; + for(NSNumber *key in [coalescedItems allKeys]) { + [nameMap addObject: [NSDictionary dictionaryWithObjectsAndKeys: + [self nameForID: key], @"name", + [self itemForID: key], @"item", + [coalescedItems objectForKey: key], @"list", nil]]; + } + [nameMap sortUsingDescriptors: [NSArray arrayWithObject: [[[NSSortDescriptor alloc] initWithKey: @"name" ascending: YES] autorelease]]]; + + // finally generate the NSMenu from the sorted list of coalesced items + NSMenuItem *menuItem; + NSMenu *menu = [[[NSMenu alloc] initWithTitle: @"Items"] autorelease]; + for(NSDictionary *dict in nameMap) { + Item *keyItem = [dict objectForKey: @"item"]; + NSArray *itemList = [dict objectForKey: @"list"]; + int count = 0; + for(Item *item in itemList) { + count += [item count]; + } + + // if we have 0 of this item, don't include it + if( count > 0 ) { + int entryID = [keyItem entryID]; + if( [keyItem name] ) { + menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ [x%d] (%d)", [keyItem name], count, entryID] action: nil keyEquivalent: @""]; + } else { + menuItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%d [x%d]", entryID, count] action: nil keyEquivalent: @""]; + } + [menuItem setTag: entryID]; + [menu addItem: [menuItem autorelease]]; + } + } + + if( [_objectList count] == 0) { + menuItem = [[NSMenuItem alloc] initWithTitle: @"There are no available items." action: nil keyEquivalent: @""]; + [menuItem setTag: 0]; + [menu addItem: [menuItem autorelease]]; + } + + return menu; +} + +- (NSMenu*)prettyInventoryItemsMenu { + NSMenu *menu = [[[NSMenu alloc] initWithTitle: @"Pretty Items"] autorelease]; + + NSMenu *useItems = [self usableInventoryItemsMenu]; + NSMenu *allItems = [self inventoryItemsMenu]; + NSMenuItem *anItem; + + // make "Usable Items" header + anItem = [[[NSMenuItem alloc] initWithTitle: @"Usable Items" action: nil keyEquivalent: @""] autorelease]; + [anItem setAttributedTitle: [[[NSAttributedString alloc] initWithString: @"Usable Items" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [anItem setTag: 0]; + [menu addItem: anItem]; + + for(NSMenuItem *item in [useItems itemArray]) { + NSMenuItem *newItem = [item copy]; + [newItem setIndentationLevel: 1]; + [menu addItem: [newItem autorelease]]; + } + + [menu addItem: [NSMenuItem separatorItem]]; + + // make "All Items" header + anItem = [[[NSMenuItem alloc] initWithTitle: @"All Items" action: nil keyEquivalent: @""] autorelease]; + [anItem setTag: 0]; + [anItem setAttributedTitle: [[[NSAttributedString alloc] initWithString: @"All Items" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [menu addItem: anItem]; + + for(NSMenuItem *item in [allItems itemArray]) { + NSMenuItem *newItem = [item copy]; + [newItem setIndentationLevel: 1]; + [menu addItem: [newItem autorelease]]; + } + + return menu; +} + +- (int)pvpMarks{ + + int stacks = 0; + for ( Item *item in _objectList ){ + + switch ( [item entryID] ){ + case 20560: // Alterac Valley Mark of Honor + case 20559: // Arathi Basin Mark of Honor + case 29024: // Eye of Storm Mark of Honor + case 47395: // Isle of Conquest Mark of Honor + case 42425: // Strand of the Ancients Mark of Honor + case 20558: // Warsong Gulch Mark of Honor + stacks += [item count]; + break; + } + } + + return stacks; +} + +// return an array of items for an array of guids +- (NSArray*)itemsForGUIDs: (NSArray*) guids{ + NSMutableArray *items = [NSMutableArray array]; + + for ( NSNumber *guid in guids ){ + Item *item = [self itemForGUID:[guid longLongValue]]; + if ( item ){ + [items addObject:item]; + } + } + + return items; +} + +// return ONLY the items the player is wearing (herro % durability calculation) +- (NSArray*)itemsPlayerIsWearing{ + NSArray *items = [self itemsForGUIDs:[[playerData player] itemGUIDsPlayerIsWearing]]; + return [[items retain] autorelease]; +} + +// will return an array of Item objects +- (NSArray*)itemsInBags{ + + // will store all of our items + NSMutableArray *items = [NSMutableArray array]; + + // grab the GUIDs of our bags + NSArray *GUIDsBagsOnPlayer = [[playerData player] itemGUIDsOfBags]; + + // loop through all of our items to find + for ( Item *item in _objectList ){ + NSNumber *itemContainerGUID = [NSNumber numberWithLongLong:[item containerUID]]; + + if ( [GUIDsBagsOnPlayer containsObject:itemContainerGUID] ){ + [items addObject:item]; + } + } + + // start with the GUIDs of the items in our backpack + NSArray *backpackGUIDs = [[playerData player] itemGUIDsInBackpack]; + + // loop through our backpack guids + for ( NSNumber *guid in backpackGUIDs ){ + Item *item = [self itemForGUID:[guid longLongValue]]; + if ( item ){ + [items addObject:item]; + } + } + + return [[items retain] autorelease]; +} + +- (int)bagSpacesAvailable{ + return [self bagSpacesTotal] - [[self itemsInBags] count]; +} + +- (int)bagSpacesTotal{ + + // grab all of the bags ON the player + NSArray *bagGUIDs = [[playerData player] itemGUIDsOfBags]; + int totalBagSpaces = 16; // have to start w/the backpack size! + // loop through our backpack guids + for ( NSNumber *guid in bagGUIDs ){ + Item *item = [self itemForGUID:[guid longLongValue]]; + if ( item ){ + totalBagSpaces += [item bagSize]; + } + } + + return totalBagSpaces; +} + +- (BOOL)arePlayerBagsFull{ + //log(LOG_ITEM, @"%d == %d", [self bagSpacesAvailable], [self bagSpacesTotal]); + return [self bagSpacesAvailable] == 0; +} + +#define MAX_BAGS 4 +#define MAX_SLOTSIZE 40 // i think it's really 32, but just to be safe ;) + +- (int)mailItemsWithProfile:(MailActionProfile*)profile{ + + int itemsMailed = 0; + + // array of objects which contains: + // item ID, slot $, bag # + Item *allItems[MAX_BAGS+1][MAX_SLOTSIZE] = {{0}}; + int currentSlot = 1; + + // backpack items first + NSArray *backpackGUIDs = [[playerData player] itemGUIDsInBackpack]; + for ( NSNumber *guid in backpackGUIDs ){ + Item *item = [self itemForGUID:[guid unsignedLongLongValue]]; + + if ( item ){ + allItems[0][currentSlot++] = [item retain]; + } + } + + // now for bags! + UInt32 bagListOffset = [offsetController offset:@"BagListOffset"]; + MemoryAccess *memory = [controller wowMemoryAccess]; + + if ( memory && [memory isValid] ){ + + // loop through all valid bags (up to 4)! + int bag = 0; + for ( ; bag < 4; bag++ ){ + + // valid bag? + GUID bagGUID = [memory readLongLong:bagListOffset + ( bag * 8)]; + if ( bagGUID > 0x0 ){ + Item *itemBag = [self itemForGUID:bagGUID]; + + if ( itemBag ){ + int bagSlot = 1; + int bagSize = [itemBag bagSize]; // 1 read + for ( ; bagSlot <= bagSize; bagSlot++ ){ + + // valid item at this slot? + GUID guid = [itemBag itemGUIDinSlot:bagSlot]; + Item *item = [self itemForGUID:guid]; + if ( item ){ + allItems[bag+1][bagSlot] = [item retain]; + } + } + } + } + } + } + + // items to exclude/include! + NSArray *exclusions = [profile exclusions]; + NSArray *inclusions = [profile inclusions]; + + // now remove items from the list we shouldn't mail! + int k = 0; + for ( ; k < MAX_BAGS; k++ ){ + int j = 0; + for ( ; j < MAX_SLOTSIZE; j++ ){ + if ( allItems[k][j] != nil ){ + Item *item = allItems[k][j]; + + // remove exclusions + if ( exclusions != nil ){ + for ( NSString *itemName in exclusions ){ + if ( [[item name] isCaseInsensitiveLike:itemName] ){ + log(LOG_ITEM, @"[Mail] Removing item %@ to be mailed", item); + allItems[k][j] = nil; + } + } + } + + // check for inclusions + if ( inclusions != nil ){ + BOOL found = NO; + for ( NSString *itemName in inclusions ){ + if ( [[item name] isCaseInsensitiveLike:itemName] ){ + found = YES; + log(LOG_ITEM, @"[Mail] Saving %@ to be mailed", item); + itemsMailed++; + + // in case our exclusion removed it + allItems[k][j] = item; + } + } + + // we will want to check for types here, once I figure this out! + if ( !found ){ + log(LOG_ITEM, @"[Mail] Removing %@ to be mailed", item); + allItems[k][j] = nil; + } + } + } + } + } + + // time to mail some items! + if ( itemsMailed > 0 ){ + + // open up the mailbox + Node *mailbox = [nodeController closestNodeWithName:@"Mailbox"]; + + if ( mailbox ){ + [botController interactWithMouseoverGUID:[mailbox GUID]]; + usleep(500000); + + [macroController useMacroOrSendCmd:@"/click MailFrameTab2"]; + usleep(100000); + } + else{ + log(LOG_ITEM, @"[Mail] No mailbox found, aborting"); + return 0; + } + + log(LOG_ITEM, @"[Mail] Found %d items to mail! Beginning process with %@!", itemsMailed, mailbox); + + int totalAdded = 0; + + // while we have items to mail! + while ( itemsMailed > 0 ){ + + // we have items to mail! + if ( totalAdded > 0 ){ + log(LOG_ITEM, @"[Mail] Sending %d items", totalAdded ); + itemsMailed -= totalAdded; + + // send the mail + NSString *macroCommand = [NSString stringWithFormat:@"/script SendMail( \"%@\", \" \", \" \");", profile.sendTo]; + [macroController useMacroOrSendCmd:macroCommand]; + usleep(100000); + totalAdded = 0; + continue; + } + + int k = 0; + for ( ; k < MAX_BAGS; k++ ){ + // time to mail! + if ( totalAdded == 12 ){ + break; + } + + int j = 0; + for ( ; j < MAX_SLOTSIZE; j++ ){ + + // time to mail! + if ( totalAdded == 12 ){ + break; + } + + // we have an item to mail! + if ( allItems[k][j] != nil ){ + log(LOG_ITEM, @"[%d] Found item %@ to mail", totalAdded, allItems[k][j]); + + // move the item to the mail + NSString *macroCommand = [NSString stringWithFormat:@"/script UseContainerItem(%d, %d);", k, j]; + [macroController useMacroOrSendCmd:macroCommand]; + usleep(50000); + + totalAdded++; + allItems[k][j] = nil; + } + } + } + } + } + + return itemsMailed; +} + +- (Item*)getBagItem: (int)bag withSlot:(int)slot{ + + int currentSlot = 1; + + // backpack! + if ( bag == 0 ){ + + NSArray *backpackGUIDs = [[playerData player] itemGUIDsInBackpack]; + NSLog(@"Backpack"); + for ( NSNumber *guid in backpackGUIDs ){ + Item *item = [self itemForGUID:[guid unsignedLongLongValue]]; + + if ( item ){ + NSLog(@" {%d, %d} %@", 0, currentSlot++, [item name]); + return [[item retain] autorelease]; + } + } + } + + else{ + UInt32 bagListOffset = 0xD92660; + MemoryAccess *memory = [controller wowMemoryAccess]; + + if ( memory && [memory isValid] ){ + + // loop through all valid bags (up to 4)! + int bag = 0; + for ( ; bag < 4; bag++ ){ + + // valid bag? + GUID bagGUID = [memory readLongLong:bagListOffset + ( bag * 8)]; + if ( bagGUID > 0x0 ){ + Item *itemBag = [self itemForGUID:bagGUID]; + + if ( itemBag ){ + NSLog(@"Bag: %@", [itemBag name]); + + int bagSlot = 1; + int bagSize = [itemBag bagSize]; // 1 read + for ( ; bagSlot <= bagSize; bagSlot++ ){ + + // valid item at this slot? + GUID guid = [itemBag itemGUIDinSlot:bagSlot]; + Item *item = [self itemForGUID:guid]; + if ( item ){ + NSLog(@" {%d, %d} %@", bag+1, bagSlot, [item name]); + return [[item retain] autorelease]; + } + } + } + } + } + } + } + + return nil; +} + +#pragma mark Sub Class implementations + +- (void)objectAddedToList:(WoWObject*)obj{ + + // load item name + NSNumber *itemID = [NSNumber numberWithInt: [(Item*)obj entryID]]; + if ( [_itemNameList objectForKey: itemID] ) { + [(Item*)obj setName: [_itemNameList objectForKey: itemID]]; + } + else if ( ![(Item*)obj name] ){ + [(Item*)obj loadName]; + } +} + +- (id)objectWithAddress:(NSNumber*) address inMemory:(MemoryAccess*)memory{ + return [Item itemWithAddress:address inMemory:memory]; +} + +- (NSString*)updateFrequencyKey{ + return @"InventoryControllerUpdateFrequency"; +} + + +- (void)refreshData { + + // remove old objects + [_objectDataList removeAllObjects]; + + if ( ![playerData playerIsValid:self] ) return; + + // why do we only update on every 20th read? + // to save memory reads of course! + int freq = (int)(20.0f / _updateFrequency); + + if ( _updateDurabilityCounter > freq || _itemsPlayerIsWearing == nil || _itemsInBags == nil ){ + + // release the old arrays + _itemsPlayerIsWearing = nil; + _itemsInBags = nil; + + // grab the new ones + _itemsPlayerIsWearing = [[self itemsPlayerIsWearing] retain]; + _itemsInBags = [[self itemsInBags] retain]; + + _updateDurabilityCounter = 0; + } + + _updateDurabilityCounter++; + + // is tab viewable? + if ( ![objectsController isTabVisible:Tab_Items] ) + return; + + NSSortDescriptor *nameDesc = [[[NSSortDescriptor alloc] initWithKey: @"name" ascending: YES] autorelease]; + [_objectList sortUsingDescriptors: [NSArray arrayWithObject: nameDesc]]; + + for ( Item *item in _objectList ) { + NSString *durString; + NSNumber *minDur = [item durability], *maxDur = [item maxDurability], *durPercent = nil; + if([maxDur intValue] > 0) { + durString = [NSString stringWithFormat: @"%@/%@", minDur, maxDur]; + durPercent = [NSNumber numberWithFloat: [[NSString stringWithFormat: @"%.2f", + (([minDur unsignedIntValue]*1.0)/[maxDur unsignedIntValue])*100.0] floatValue]]; + } else { + durString = @"-"; + durPercent = [NSNumber numberWithFloat: 101.0f]; + } + + // where is the item? + NSString *location = @"Bank"; + if ( [_itemsPlayerIsWearing containsObject:item] ){ + location = @"Wearing"; + } + else if ( [_itemsInBags containsObject:item] ){ + location = @"Player Bag"; + } + else if ( [item itemType] == ItemType_Money || [item itemType] == ItemType_Key ){ + location = @"Player"; + } + + [_objectDataList addObject: [NSDictionary dictionaryWithObjectsAndKeys: + item, @"Item", + ([item name] ? [item name] : @""), @"Name", + [NSNumber numberWithUnsignedInt: [item cachedEntryID]], @"ItemID", + [NSNumber numberWithUnsignedInt: [item isBag] ? [item bagSize] : [item count]], @"Count", + [item itemTypeString], @"Type", + [item itemSubtypeString], @"Subtype", + durString, @"Durability", + durPercent, @"DurabilityPercent", + location, @"Location", + [NSNumber numberWithInt:[item notInObjectListCounter]], @"Invalid", + nil]]; + } + + // sort + [_objectDataList sortUsingDescriptors: [[objectsController itemTable] sortDescriptors]]; + + // reload table + [objectsController loadTabData]; + + //log(LOG_ITEM, @"enumerateInventory took %.2f seconds...", [date timeIntervalSinceNow]*-1.0); +} + +- (WoWObject*)objectForRowIndex:(int)rowIndex{ + if ( rowIndex >= [_objectDataList count] ) return nil; + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Item"]; +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if ( rowIndex == -1 || rowIndex >= [_objectDataList count] ) return nil; + + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; +} + +- (void)tableDoubleClick: (id)sender{ + [memoryViewController showObjectMemory: [[_objectDataList objectAtIndex: [sender clickedRow]] objectForKey: @"Item"]]; + [controller showMemoryView]; +} + +@end diff --git a/InventoryFreeCondition.xib b/InventoryFreeCondition.xib new file mode 100644 index 0000000..7a4b5a0 --- /dev/null +++ b/InventoryFreeCondition.xib @@ -0,0 +1,1079 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + InventoryFreeConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{176, 6}, {86, 24}} + + YES + + 67239424 + 0 + + LucidaGrande + 13 + 1044 + + + + YES + + 26 + > + 1 + YES + 0 + + + 26 + = + 2 + 0 + + + 26 + < + 3 + 0 + + + 1 + + + + + 268 + {{268, 7}, {47, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + -∞ + + + +∞ + + + # + # + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + NO + YES + YES + + 1 + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{320, 10}, {91, 17}} + + YES + + 67239488 + 272630784 + item slots left + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + + + + 268 + {{32, 10}, {141, 17}} + + YES + + 67239488 + 272630784 + Player's inventory has + + + + + + + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {428, 36} + + NSView + + + + + YES + + + view + + + + 64 + + + + comparatorSegment + + + + 94 + + + + quantityText + + + + 95 + + + + disableButton + + + + 96 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + + 47 + + + YES + + + + + + 48 + + + YES + + + + + + 49 + + + YES + + + + + + 50 + + + + + 51 + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 91 + + + YES + + + + + + 92 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 47.IBPluginDependency + 48.IBPluginDependency + 49.IBPluginDependency + 50.IBPluginDependency + 51.IBNumberFormatterBehaviorMetadataKey + 51.IBNumberFormatterLocalizesFormatMetadataKey + 51.IBPluginDependency + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + 91.CustomClassName + 91.IBPluginDependency + 92.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{768, 538}, {428, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 96 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + InventoryFreeConditionController + ConditionController + + YES + + YES + comparatorSegment + quantityText + + + YES + BetterSegmentedControl + NSTextField + + + + IBProjectSource + InventoryFreeConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/InventoryFreeConditionController.h b/InventoryFreeConditionController.h new file mode 100644 index 0000000..0cc330d --- /dev/null +++ b/InventoryFreeConditionController.h @@ -0,0 +1,19 @@ +// +// InventoryFreeConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface InventoryFreeConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *quantityText; +} + +@end diff --git a/InventoryFreeConditionController.m b/InventoryFreeConditionController.m new file mode 100644 index 0000000..b649aef --- /dev/null +++ b/InventoryFreeConditionController.m @@ -0,0 +1,56 @@ +// +// InventoryFreeConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "InventoryFreeConditionController.h" + + +@implementation InventoryFreeConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"InventoryFreeCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading InventoryFreeCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyInventoryFree + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeValue + value: [NSNumber numberWithInt:[quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyInventoryFree) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + +@end diff --git a/Item.h b/Item.h new file mode 100644 index 0000000..6e40b5d --- /dev/null +++ b/Item.h @@ -0,0 +1,79 @@ +// +// Item.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/20/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import +#import "MemoryAccess.h" +#import "WoWObject.h" + +#define ItemNameLoadedNotification @"ItemNameLoadedNotification" + +typedef enum { + ItemType_Consumable = 0, + ItemType_Container, + ItemType_Weapon, + ItemType_Gem, + ItemType_Armor, + ItemType_Reagent, + ItemType_Projectile, + ItemType_TradeGoods, + ItemType_Generic, + ItemType_Recipe, + ItemType_Money, + ItemType_Quiver, + ItemType_Quest, + ItemType_Key, + ItemType_Permanent, + ItemType_Misc, + ItemType_Glyph, + ItemType_Max = 16 +} ItemType; + +@interface Item : WoWObject { + NSString *_name; + + UInt32 _itemFieldsAddress; + + NSURLConnection *_connection; + NSMutableData *_downloadData; +} ++ (id)itemWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +- (NSString*)name; +- (void)setName: (NSString*)name; +- (void)loadName; + +- (ItemType)itemType; +- (NSString*)itemTypeString; ++ (NSString*)stringForItemType: (ItemType)type; +- (NSString*)itemSubtypeString; + +- (GUID)ownerUID; +- (GUID)containerUID; +- (GUID)creatorUID; +- (GUID)giftCreatorUID; +- (UInt32)count; +- (UInt32)duration; +- (UInt32)charges; +- (NSNumber*)durability; +- (NSNumber*)maxDurability; + +- (UInt32)flags; +- (UInt32)infoFlags; +- (UInt32)infoFlags2; + +// Enchantment info +- (UInt32)hasPermEnchantment; +- (UInt32)hasTempEnchantment; + +- (BOOL)isBag; +- (BOOL)isSoulbound; + +- (UInt32)bagSize; +- (UInt64)itemGUIDinSlot: (UInt32)slotNum; + +@end diff --git a/Item.m b/Item.m new file mode 100644 index 0000000..75cedfa --- /dev/null +++ b/Item.m @@ -0,0 +1,944 @@ +// +// Item.m[self itemFieldsAddress] +// Pocket Gnome +// +// Created by Jon Drummond on 12/20/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Item.h" +#import "ObjectConstants.h" + +enum eItemObject { + // these appear a bit before the InfoStruct starts. + // they are back-to-back values that look like bit fields, eg + // 1) 0x8FF0204 [?] [?] [subType] [itemType] + // 2) 0x5 [?] [?] [EquipLoc2?] [EquipLoc1] + Item_InfoField1 = 0x3FC, + Item_InfoField2 = 0x400, +}; + +enum EnchantmentSlot { + PERM_ENCHANTMENT_SLOT = 0, + TEMP_ENCHANTMENT_SLOT = 1, + SOCK_ENCHANTMENT_SLOT = 2, + SOCK_ENCHANTMENT_SLOT_2 = 3, + SOCK_ENCHANTMENT_SLOT_3 = 4, + BONUS_ENCHANTMENT_SLOT = 5, + MAX_INSPECTED_ENCHANTMENT_SLOT = 6, + + PROP_ENCHANTMENT_SLOT_0 = 6, // used with RandomSuffix + PROP_ENCHANTMENT_SLOT_1 = 7, // used with RandomSuffix + PROP_ENCHANTMENT_SLOT_2 = 8, // used with RandomSuffix and RandomProperty + PROP_ENCHANTMENT_SLOT_3 = 9, // used with RandomProperty + PROP_ENCHANTMENT_SLOT_4 = 10, // used with RandomProperty + MAX_ENCHANTMENT_SLOT = 11 +}; + +enum EnchantmentOffset { + ENCHANTMENT_ID_OFFSET = 0, + ENCHANTMENT_DURATION_OFFSET = 1, // really apply time, not duration + ENCHANTMENT_CHARGES_OFFSET = 2, + ENCHANTMENT_MAX_OFFSET = 3, +}; + +// TO DO: UPDATE THIS! +/*enum eContainerFields { + CONTAINER_FIELD_NUM_SLOTS = 0x100, + CONTAINER_ALIGN_PAD = 0x104, + CONTAINER_FIELD_SLOT_1 = 0x108, + TOTAL_CONTAINER_FIELDS = 3 +};*/ + +enum InventoryType +{ + INVTYPE_NON_EQUIP = 0, + INVTYPE_HEAD = 1, + INVTYPE_NECK = 2, + INVTYPE_SHOULDERS = 3, + INVTYPE_BODY = 4, + INVTYPE_CHEST = 5, + INVTYPE_WAIST = 6, + INVTYPE_LEGS = 7, + INVTYPE_FEET = 8, + INVTYPE_WRISTS = 9, + INVTYPE_HANDS = 10, + INVTYPE_FINGER = 11, + INVTYPE_TRINKET = 12, + INVTYPE_WEAPON = 13, + INVTYPE_SHIELD = 14, + INVTYPE_RANGED = 15, + INVTYPE_CLOAK = 16, + INVTYPE_2HWEAPON = 17, + INVTYPE_BAG = 18, + INVTYPE_TABARD = 19, + INVTYPE_ROBE = 20, + INVTYPE_WEAPONMAINHAND = 21, + INVTYPE_WEAPONOFFHAND = 22, + INVTYPE_HOLDABLE = 23, + INVTYPE_AMMO = 24, + INVTYPE_THROWN = 25, + INVTYPE_RANGEDRIGHT = 26, + INVTYPE_QUIVER = 27, + INVTYPE_RELIC = 28 +}; + +enum eConsumableTypes +{ + CONSUMABLE_TYPE_CONSUMABLE = 0, + CONSUMABLE_TYPE_POTION, + CONSUMABLE_TYPE_ELIXIR, + CONSUMABLE_TYPE_FLASK, + CONSUMABLE_TYPE_SCROLL, + CONSUMABLE_TYPE_FOOD_DRINK, + CONSUMABLE_TYPE_ITEM_ENHANCEMENT, + CONSUMABLE_TYPE_BANDAGE, + CONSUMABLE_TYPE_OTHER +}; + +enum eContainerTypes +{ + CONTAINER_TYPE_BAG = 0, + CONTAINER_TYPE_SOUL_BAG, + CONTAINER_TYPE_HERB_BAG, + CONTAINER_TYPE_ENCHANTING_BAG, + CONTAINER_TYPE_ENGINEERING_BAG, + CONTAINER_TYPE_GEM_BAG, + CONTAINER_TYPE_MINING_BAG, + CONTAINER_TYPE_LEATHERWORKING_BAG, + CONTAINER_TYPE_INSCRIPTIONG_BAG +}; + +enum eWeaponTypes +{ + WEAPON_TYPE_ONE_HANDED_AXE = 0, + WEAPON_TYPE_TWO_HANDED_AXE, + WEAPON_TYPE_BOW, + WEAPON_TYPE_GUN, + WEAPON_TYPE_ONE_HANDED_MACE, + WEAPON_TYPE_TWO_HANDED_MACE, + WEAPON_TYPE_POLEARM, + WEAPON_TYPE_ONE_HANDED_SWORD, + WEAPON_TYPE_TWO_HANDED_SWORD, + WEAPON_TYPE_OBSOLETE, + WEAPON_TYPE_STAVE, + WEAPON_TYPE_ONE_HANDED_EXOTIC, + WEAPON_TYPE_TWO_HANDED_EXOTIC, + WEAPON_TYPE_FIST, + WEAPON_TYPE_MISC, + WEAPON_TYPE_DAGGER, + WEAPON_TYPE_THROWN, + WEAPON_TYPE_SPEAR, + WEAPON_TYPE_CROSSBOW, + WEAPON_TYPE_WAND, + WEAPON_TYPE_FISHING_POLE +}; + +enum eGemTypes +{ + GEM_TYPE_RED = 0, + GEM_TYPE_BLUE, + GEM_TYPE_YELLOW, + GEM_TYPE_PURPLE, + GEM_TYPE_GREEN, + GEM_TYPE_ORANGE, + GEM_TYPE_META, + GEM_TYPE_SIMPLE, + GEM_TYPE_PRISMATIC +}; + +enum eArmorTypes +{ + ARMOR_TYPE_MISC = 0, + ARMOR_TYPE_CLOTH, + ARMOR_TYPE_LEATHER, + ARMOR_TYPE_MAIL, + ARMOR_TYPE_PLATE, + ARMOR_TYPE_BUCKLER, + ARMOR_TYPE_SHIED, + ARMOR_TYPE_LIBRAM, + ARMOR_TYPE_IDOL, + ARMOR_TYPE_TOTEM, + ARMOR_TYPE_SIGIL +}; + +enum eReagentTypes +{ + REAGENT_TYPE_REAGENT = 0 +}; + +enum eProjectileTypes +{ + PROJECTILE_TYPE_WAND_OBSOLETE = 0, + PROJECTILE_TYPE_BOLT_OBSOLETE, + PROJECTILE_TYPE_ARROW, + PROJECTILE_TYPE_BULLET, + PROJECTILE_TYPE_THROWN_OBSOLETE +}; + +enum eTradeGoodTypes +{ + TRADE_GOOD_TYPE_TRADE_GOOD = 0, + TRADE_GOOD_TYPE_PART, + TRADE_GOOD_TYPE_EXPLOSIVE, + TRADE_GOOD_TYPE_DEVICE, + TRADE_GOOD_TYPE_JEWELCRAFTING, + TRADE_GOOD_TYPE_CLOTH, + TRADE_GOOD_TYPE_LEATHER, + TRADE_GOOD_TYPE_METAL_STONE, + TRADE_GOOD_TYPE_MEAT, + TRADE_GOOD_TYPE_HEARB, + TRADE_GOOD_TYPE_ELEMENTAL, + TRADE_GOOD_TYPE_OTHER, + TRADE_GOOD_TYPE_ENCHANTING +}; + +enum eGenericTypes +{ + GENERIC_TYPE_GENERIC = 0 +}; + +enum eRecipeTypes +{ + RECIPE_TYPE_BOOK = 0, + RECIPE_TYPE_LEATHERWORKING, + RECIPE_TYPE_TAILORING, + RECIPE_TYPE_ENGINEERING, + RECIPE_TYPE_BLACKSMITHING, + RECIPE_TYPE_COOKING, + RECIPE_TYPE_ALCHEMY, + RECIPE_TYPE_FIRST_AID, + RECIPE_TYPE_ENCHANTING, + RECIPE_TYPE_FISHING, + RECIPE_TYPE_JEWELCRAFTING +}; + +enum eMoneyTypes +{ + MONEY_TYPE_MONEY = 0 +}; + +enum eQuiverTypes +{ + QUIVER_TYPE_OBSOLETE1 = 0, + QUIVER_TYPE_OBSOLETE2, + QUIVER_TYPE_QUIVER, + QUIVER_TYPE_POUCH +}; + +enum eQuestTypes +{ + QUEST_TYPE_QUEST = 0 +}; + +enum eKeyTypes +{ + KEY_TYPE_KEY= 0, + KEY_TYPE_LOCKPICK +}; + +enum ePermanentTypes +{ + PERMANENT_TYPE_PERMANENT = 0 +}; + +enum eMiscTypes +{ + MISC_TYPE_JUNK = 0, + MISC_TYPE_REAGENT, + MISC_TYPE_PET, + MISC_TYPE_HOLIDAY, + MISC_TYPE_OTHER, + MISC_TYPE_MOUNT +}; + +enum ItemFlags +{ + ItemFlag_Soulbound = 0x1, + ItemFlag_Conjured = 0x2, + ItemFlag_Openable = 0x4, + ItemFlag_Wrapped = 0x8, + ItemFlag_Broken = 0x10, + + ItemFlag_Wrapper = 0x200, + ItemFlag_PartyLoot = 0x800, // item is party lootable + + ItemFlag_Charter = 0x2000, // arena, guild charter + + ItemFlag_Prospectable = 0x40000, + ItemFlag_UniqueEquipped = 0x80000, + + ItemFlag_UsableInArena = 0x200000, + ItemFlag_Throwable = 0x400000, // only used for in-game tooltip? + + ItemFlag_AccountBound = 0x08000000, + + ItemFlag_Millable = 0x20000000, +}; + +#define CONTAINER_FIELD_SLOT_SIZE 0x8 + + +@interface Item (Internal) +- (UInt32)flags; +@end + +@implementation Item + +- (id) init +{ + self = [super init]; + if (self != nil) { + _name = nil; + _itemFieldsAddress = 0; + } + return self; +} + ++ (id)itemWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + return [[[Item alloc] initWithAddress: address inMemory: memory] autorelease]; +} + +- (void) dealloc +{ + [_name release]; + [_connection release]; + [_downloadData release]; + + [super dealloc]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Item *copy = [[[self class] allocWithZone: zone] initWithAddress: _baseAddress inMemory: _memory]; + [copy setName: [self name]]; + return copy; +} + +#pragma mark - + +- (NSString*)description { + int stack = [self count]; + if(stack > 0) + return [NSString stringWithFormat: @"", [self name], [self entryID]]; + else + return [NSString stringWithFormat: @"", [self name], [self entryID], stack]; +} + +- (UInt32)itemFieldsAddress{ + if ( _itemFieldsAddress ){ + return _itemFieldsAddress; + } + + // read it + [_memory loadDataForObject: self atAddress: ([self baseAddress] + ITEM_FIELDS_PTR) Buffer: (Byte *)&_itemFieldsAddress BufLength: sizeof(_itemFieldsAddress)]; + + return _itemFieldsAddress; +} + +#pragma mark - + +- (NSString*)name { + + NSNumber *temp = nil; + @synchronized (@"Name") { + temp = [_name retain]; + } + return [temp autorelease]; +} + +- (void)setName: (NSString*)name { + id temp = nil; + [name retain]; + @synchronized (@"Name") { + temp = _name; + _name = name; + } + [temp release]; +} + +- (void)loadName { + + [_connection cancel]; + [_connection release]; + _connection = [[NSURLConnection alloc] initWithRequest: [NSURLRequest requestWithURL: [NSURL URLWithString: [NSString stringWithFormat: @"http://wowhead.com/?item=%d&xml", [self entryID]]]] delegate: self]; + if(_connection) { + [_downloadData release]; + _downloadData = [[NSMutableData data] retain]; + //[_connection start]; + } else { + [_downloadData release]; + _downloadData = nil; + } +} + +- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response +{ + [_downloadData setLength: 0]; +} + +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data { + [_downloadData appendData: data]; +} + +- (void)connection:(NSURLConnection *)connection + didFailWithError:(NSError *)error +{ + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + // inform the user + log(LOG_GENERAL, @"Connection failed! Error - %@ %@", + [error localizedDescription], + [[error userInfo] objectForKey: NSErrorFailingURLStringKey]); +} + +- (void)connectionDidFinishLoading:(NSURLConnection *)connection +{ + // get the download as a string + NSString *wowhead = [[[NSString alloc] initWithData: _downloadData encoding: NSUTF8StringEncoding] autorelease]; + + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // parse out the name + if([wowhead length]) { + NSScanner *scanner = [NSScanner scannerWithString: wowhead]; + + // check to see if this is a valid item + if([scanner scanUpToString: @"Error - Wowhead" intoString: nil] && ![scanner isAtEnd]) { + log(LOG_GENERAL, @"Item %@ does not exist.", self); + return; + } else { + [scanner setScanLocation: 0]; + } + + // get the item name + if([scanner scanUpToString: @"" intoString: &newName]) { + if(newName && [newName length]) { + [self setName: newName]; + //log(LOG_GENERAL, @"Loaded name: %@", newName); + [[NSNotificationCenter defaultCenter] postNotificationName: ItemNameLoadedNotification object: self]; + } + } + } + } +} + +#pragma mark Item Type/Subtype + +- (UInt32)infoFlags { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + Item_InfoField1) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return CFSwapInt32HostToLittle(value); + } + return 0; +} + +- (UInt32)infoFlags2 { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + Item_InfoField2) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return CFSwapInt32HostToLittle(value); + } + return 0; +} + +- (ItemType)itemType { + return ([self infoFlags] & 0xFF); +} + +- (NSString*)itemTypeString { + return [Item stringForItemType: [self itemType]]; +} + ++ (NSString*)stringForItemType: (ItemType)type { + switch(type) { + case ItemType_Consumable: + return @"Consumable"; break; + case ItemType_Container: + return @"Container"; break; + case ItemType_Weapon: + return @"Weapon"; break; + case ItemType_Gem: + return @"Gem"; break; + case ItemType_Armor: + return @"Armor"; break; + case ItemType_Reagent: + return @"Reagent"; break; + case ItemType_Projectile: + return @"Projectile"; break; + case ItemType_TradeGoods: + return @"Trade Goods"; break; + case ItemType_Generic: + return @"Generic"; break; + case ItemType_Recipe: + return @"Recipe"; break; + case ItemType_Money: + return @"Currency"; break; + case ItemType_Quiver: + return @"Quiver"; break; + case ItemType_Quest: + return @"Quest Item"; break; + case ItemType_Key: + return @"Key"; break; + case ItemType_Permanent: + return @"Permanent"; break; + case ItemType_Misc: + return @"Miscellaneous"; break; + case ItemType_Glyph: + return @"Glyph"; break; + default: + return [NSString stringWithFormat: @"Unknown (%d)", type]; break; + } + return nil; +} + + +- (int)itemSubtype { + return (([self infoFlags] >> 8) & 0xFF); +} + +- (NSString*)itemSubtypeString { + ItemType type = [self itemType]; + int subType = [self itemSubtype]; + + if(type == ItemType_Consumable) { + switch(subType) { + case CONSUMABLE_TYPE_CONSUMABLE: + return @"Consumable"; break; + case CONSUMABLE_TYPE_POTION: + return @"Potion"; break; + case CONSUMABLE_TYPE_ELIXIR: + return @"Elixir"; break; + case CONSUMABLE_TYPE_FLASK: + return @"Flask"; break; + case CONSUMABLE_TYPE_SCROLL: + return @"Scroll"; break; + case CONSUMABLE_TYPE_FOOD_DRINK: + return @"Food/Drink"; break; + case CONSUMABLE_TYPE_ITEM_ENHANCEMENT: + return @"Item Enhancement"; break; + case CONSUMABLE_TYPE_BANDAGE: + return @"Bandage"; break; + case CONSUMABLE_TYPE_OTHER: + return @"Other"; break; + default: + return [NSString stringWithFormat: @"Unknown Consumable (%d)", subType]; break; + } + } + + if(type == ItemType_Container) { + switch(subType) { + case CONTAINER_TYPE_BAG: + return @"Bag"; break; + case CONTAINER_TYPE_SOUL_BAG: + return @"Soul Bag"; break; + case CONTAINER_TYPE_HERB_BAG: + return @"Herbalism Bag"; break; + case CONTAINER_TYPE_ENCHANTING_BAG: + return @"Enchanting Bag"; break; + case CONTAINER_TYPE_ENGINEERING_BAG: + return @"Engineering Bag"; break; + case CONTAINER_TYPE_GEM_BAG: + return @"Gem Bag"; break; + case CONTAINER_TYPE_MINING_BAG: + return @"Mining Bag"; break; + case CONTAINER_TYPE_LEATHERWORKING_BAG: + return @"Leatherworking Bag"; break; + case CONTAINER_TYPE_INSCRIPTIONG_BAG: + return @"Inscription Bag"; break; + default: + return [NSString stringWithFormat: @"Unknown Bag (%d)", subType]; break; + } + } + + + if(type == ItemType_Weapon) { + switch(subType) { + case WEAPON_TYPE_ONE_HANDED_AXE: + return @"One-Handed Axe"; break; + case WEAPON_TYPE_TWO_HANDED_AXE: + return @"Two-Handed Axe"; break; + case WEAPON_TYPE_BOW: + return @"Bow"; break; + case WEAPON_TYPE_GUN: + return @"Gun"; break; + case WEAPON_TYPE_ONE_HANDED_MACE: + return @"One-Handed Mace"; break; + case WEAPON_TYPE_TWO_HANDED_MACE: + return @"Two-Handed Mace"; break; + case WEAPON_TYPE_POLEARM: + return @"Polearm"; break; + case WEAPON_TYPE_ONE_HANDED_SWORD: + return @"One-Handed Sword"; break; + case WEAPON_TYPE_TWO_HANDED_SWORD: + return @"Two-Handed Sword"; break; + case WEAPON_TYPE_OBSOLETE: + return @"Obsolete"; break; + case WEAPON_TYPE_STAVE: + return @"Staff"; break; + case WEAPON_TYPE_ONE_HANDED_EXOTIC: + return @"One-Handed Exotic"; break; + case WEAPON_TYPE_TWO_HANDED_EXOTIC: + return @"Two-Handed Exotic"; break; + case WEAPON_TYPE_FIST: + return @"Fist"; break; + case WEAPON_TYPE_MISC: + return @"Miscellaneous"; break; + case WEAPON_TYPE_DAGGER: + return @"Dagger"; break; + case WEAPON_TYPE_THROWN: + return @"Thrown"; break; + case WEAPON_TYPE_SPEAR: + return @"Spear"; break; + case WEAPON_TYPE_CROSSBOW: + return @"Crossbow"; break; + case WEAPON_TYPE_WAND: + return @"Wand"; break; + case WEAPON_TYPE_FISHING_POLE: + return @"Fishing Pole"; break; + default: + return [NSString stringWithFormat: @"Unknown Weapon (%d)", subType]; break; + } + } + + + if(type == ItemType_Gem) { + switch(subType) { + case GEM_TYPE_RED: + return @"Red"; break; + case GEM_TYPE_BLUE: + return @"Blue"; break; + case GEM_TYPE_YELLOW: + return @"Yellow"; break; + case GEM_TYPE_PURPLE: + return @"Purple"; break; + case GEM_TYPE_GREEN: + return @"Green"; break; + case GEM_TYPE_ORANGE: + return @"Orange"; break; + case GEM_TYPE_META: + return @"Meta"; break; + case GEM_TYPE_SIMPLE: + return @"Simple"; break; + case GEM_TYPE_PRISMATIC: + return @"Prismatic"; break; + default: + return [NSString stringWithFormat: @"Unknown Gem (%d)", subType]; break; + } + } + + if(type == ItemType_Armor) { + switch(subType) { + case ARMOR_TYPE_MISC: + return @"Miscellaneous"; break; + case ARMOR_TYPE_CLOTH: + return @"Cloth"; break; + case ARMOR_TYPE_LEATHER: + return @"Leather"; break; + case ARMOR_TYPE_MAIL: + return @"Mail"; break; + case ARMOR_TYPE_PLATE: + return @"Plate"; break; + case ARMOR_TYPE_BUCKLER: + return @"Buckler"; break; + case ARMOR_TYPE_SHIED: + return @"Shield"; break; + case ARMOR_TYPE_LIBRAM: + return @"Libram"; break; + case ARMOR_TYPE_IDOL: + return @"Idol"; break; + case ARMOR_TYPE_TOTEM: + return @"Totem"; break; + case ARMOR_TYPE_SIGIL: + return @"Sigil"; break; + default: + return [NSString stringWithFormat: @"Unknown Armor (%d)", subType]; break; + } + } + + if(type == ItemType_Reagent) { + return @""; + } + + + if(type == ItemType_Projectile) { + switch(subType) { + case PROJECTILE_TYPE_WAND_OBSOLETE: + return @"Wand (Obsolete)"; break; + case PROJECTILE_TYPE_BOLT_OBSOLETE: + return @"Bolt (Obsolete)"; break; + case PROJECTILE_TYPE_ARROW: + return @"Arrow"; break; + case PROJECTILE_TYPE_BULLET: + return @"Bullet"; break; + case PROJECTILE_TYPE_THROWN_OBSOLETE: + return @"Thrown (Obsolete)"; break; + default: + return [NSString stringWithFormat: @"Unknown Projectile (%d)", subType]; break; + } + } + + if(type == ItemType_TradeGoods) { + switch(subType) { + case TRADE_GOOD_TYPE_TRADE_GOOD: + return @"Trade Good"; break; + case TRADE_GOOD_TYPE_PART: + return @"Part"; break; + case TRADE_GOOD_TYPE_EXPLOSIVE: + return @"Explosive"; break; + case TRADE_GOOD_TYPE_DEVICE: + return @"Device"; break; + case TRADE_GOOD_TYPE_JEWELCRAFTING: + return @"Jewelcrafting"; break; + case TRADE_GOOD_TYPE_CLOTH: + return @"Cloth"; break; + case TRADE_GOOD_TYPE_LEATHER: + return @"Leather"; break; + case TRADE_GOOD_TYPE_METAL_STONE: + return @"Metal/Stone"; break; + case TRADE_GOOD_TYPE_MEAT: + return @"Meat"; break; + case TRADE_GOOD_TYPE_HEARB: + return @"Herbalism"; break; + case TRADE_GOOD_TYPE_ELEMENTAL: + return @"Elemental"; break; + case TRADE_GOOD_TYPE_OTHER: + return @"Other"; break; + case TRADE_GOOD_TYPE_ENCHANTING: + return @"Enchanting"; break; + default: + return [NSString stringWithFormat: @"Unknown Trade Goods (%d)", subType]; break; + } + } + + if(type == ItemType_Generic) { + return @""; + } + + if(type == ItemType_Recipe) { + switch(subType) { + case RECIPE_TYPE_BOOK: + return @"Book"; break; + case RECIPE_TYPE_LEATHERWORKING: + return @"Leatherworking"; break; + case RECIPE_TYPE_TAILORING: + return @"Tailoring"; break; + case RECIPE_TYPE_ENGINEERING: + return @"Engineering"; break; + case RECIPE_TYPE_BLACKSMITHING: + return @"Blacksmithing"; break; + case RECIPE_TYPE_COOKING: + return @"Cooking"; break; + case RECIPE_TYPE_ALCHEMY: + return @"Alchemy"; break; + case RECIPE_TYPE_FIRST_AID: + return @"First Aid"; break; + case RECIPE_TYPE_ENCHANTING: + return @"Enchanting"; break; + case RECIPE_TYPE_FISHING: + return @"Fishing"; break; + case RECIPE_TYPE_JEWELCRAFTING: + return @"Jewelcrafting"; break; + default: + return [NSString stringWithFormat: @"Unknown Recipe (%d)", subType]; break; + } + } + + if(type == ItemType_Money) { + return @""; + } + + + if(type == ItemType_Quiver) { + switch(subType) { + case QUIVER_TYPE_OBSOLETE1: + return @"Obsolete 1"; break; + case QUIVER_TYPE_OBSOLETE2: + return @"Obsolete 2"; break; + case QUIVER_TYPE_QUIVER: + return @"Quiver"; break; + case QUIVER_TYPE_POUCH: + return @"Pouch"; break; + default: + return [NSString stringWithFormat: @"Unknown Quiver (%d)", subType]; break; + } + } + + if(type == ItemType_Quest) { + return @""; + } + + if(type == ItemType_Key) { + switch(subType) { + case KEY_TYPE_KEY: + return @"Key"; break; + case KEY_TYPE_LOCKPICK: + return @"Lockpick"; break; + default: + return [NSString stringWithFormat: @"Unknown Key (%d)", subType]; break; + } + } + + if(type == ItemType_Permanent) { + return @""; + } + + + if(type == ItemType_Misc) { + switch(subType) { + case MISC_TYPE_JUNK: + return @"Junk"; break; + case MISC_TYPE_REAGENT: + return @"Reagent"; break; + case MISC_TYPE_PET: + return @"Pet"; break; + case MISC_TYPE_HOLIDAY: + return @"Holiday"; break; + case MISC_TYPE_OTHER: + return @"Other"; break; + case MISC_TYPE_MOUNT: + return @"Mount"; break; + default: + return [NSString stringWithFormat: @"Unknown Misc (%d)", subType]; break; + } + } + + if(type == ItemType_Glyph) { + if(subType > 0) { + return [NSString stringWithFormat: @"Glyph Type %d", subType]; + } + } + + return [NSString stringWithFormat: @"Unknown (%d / %d)", type, subType]; +} + +#pragma mark Info Accessors + +- (UInt64)ownerUID { + UInt64 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_OWNER) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (UInt64)containerUID { + UInt64 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_CONTAINED) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (UInt64)creatorUID { + UInt64 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_CREATOR) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (UInt64)giftCreatorUID { + UInt64 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_GIFTCREATOR) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +// 1 read +- (UInt32)count { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_STACK_COUNT) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (UInt32)duration { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_DURATION) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (UInt32)charges { + UInt32 value[5]; + if([_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_SPELL_CHARGES) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + int i; + for(i=0; i<5; i++) { + if(value[i] > 0) { + return ((0xFFFFFFFF - value[i]) + 1); + } + } + } + return 0; +} + +- (UInt32)flags { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +// 1 read +- (NSNumber*)durability { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_DURABILITY) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return [NSNumber numberWithUnsignedInt: value]; +} + +// 1 read +- (NSNumber*)maxDurability { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_MAXDURABILITY) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return [NSNumber numberWithUnsignedInt: value]; +} + +- (UInt32)enchantAtSlot: (UInt32)slotNum { + if(slotNum < 0 || slotNum >= MAX_ENCHANTMENT_SLOT) return 0; + + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + ITEM_FIELD_ENCHANTMENT_1_1 + ENCHANTMENT_MAX_OFFSET*sizeof(value)*slotNum) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (UInt32)hasPermEnchantment { + return [self enchantAtSlot: PERM_ENCHANTMENT_SLOT]; +} + +- (UInt32)hasTempEnchantment { + return [self enchantAtSlot: TEMP_ENCHANTMENT_SLOT]; +} + +// 1 read +- (BOOL)isBag { + if( [self objectTypeID] == TYPEID_CONTAINER) return YES; + return NO; +} + +- (BOOL)isSoulbound { + if( ([self flags] & ItemFlag_Soulbound) == ItemFlag_Soulbound) + return YES; + return NO; +} + +- (UInt32)bagSize { + if([self isBag]) { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + CONTAINER_FIELD_NUM_SLOTS) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + } + return 0; +} + + +- (UInt64)itemGUIDinSlot: (UInt32)slotNum { + if ( slotNum < 1 || slotNum > [self bagSize] ) + return 0; + + if ( [self isBag] ) { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self itemFieldsAddress] + CONTAINER_FIELD_SLOT_1 + (CONTAINER_FIELD_SLOT_SIZE*(slotNum-1)) ) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + } + + return 0; +} + +@end diff --git a/ItemAction.xib b/ItemAction.xib new file mode 100644 index 0000000..1721656 --- /dev/null +++ b/ItemAction.xib @@ -0,0 +1,1108 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + ItemActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{311, 8}, {101, 18}} + + YES + + 67239424 + 0 + Instant use? + + LucidaGrande + 13 + 1044 + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{98, 3}, {210, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{32, 9}, {64, 17}} + + YES + + 67239488 + 272630784 + Use item: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 7}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {545, 35} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + itemPopUp + + + + 156 + + + + content: items + + + + + + content: items + content + items + 2 + + + 157 + + + + contentObjects: items + + + + + + contentObjects: items + contentObjects + items + + 2 + + + 160 + + + + contentValues: items.name + + + + + + contentValues: items.name + contentValues + items.name + + 2 + + + 162 + + + + itemInstantButton + + + + 165 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + 122 + + + YES + + + + + + + + 123 + + + + + 124 + + + + + 125 + + + + + 163 + + + YES + + + + + + 164 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 163.IBPluginDependency + 164.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{791, 696}, {545, 35}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 165 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + ItemActionController + ActionController + + YES + + YES + itemInstantButton + itemPopUp + + + YES + NSButton + NSPopUpButton + + + + IBProjectSource + ItemActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/ItemActionController.h b/ItemActionController.h new file mode 100644 index 0000000..ee9efb9 --- /dev/null +++ b/ItemActionController.h @@ -0,0 +1,23 @@ +// +// ItemActionController.h +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import + +#import "ActionController.h" + +@interface ItemActionController : ActionController { + IBOutlet NSPopUpButton *itemPopUp; + IBOutlet NSButton *itemInstantButton; + + NSArray *_items; +} + ++ (id)itemActionControllerWithItems: (NSArray*)items; + +@property (readwrite, copy) NSArray *items; +@end diff --git a/ItemActionController.m b/ItemActionController.m new file mode 100644 index 0000000..861a7d7 --- /dev/null +++ b/ItemActionController.m @@ -0,0 +1,92 @@ +// +// ItemActionController.m +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "ItemActionController.h" +#import "ActionController.h" + +#import "Item.h" +#import "Action.h" + +@implementation ItemActionController + +- (id)init +{ + self = [super init]; + if (self != nil) { + _items = nil; + if(![NSBundle loadNibNamed: @"ItemAction" owner: self]) { + log(LOG_GENERAL, @"Error loading ItemAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithItems: (NSArray*)items{ + self = [self init]; + if (self != nil) { + self.items = items; + } + return self; +} + ++ (id)itemActionControllerWithItems: (NSArray*)items{ + NSMutableArray *arrayToSort = [NSMutableArray arrayWithArray:items]; + [arrayToSort sortUsingDescriptors: [NSArray arrayWithObject: [[[NSSortDescriptor alloc] initWithKey: @"name" ascending: YES] autorelease]]]; + return [[[ItemActionController alloc] initWithItems: arrayToSort] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [itemPopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [itemPopUp unbind: binding]; + } +} + +@synthesize items = _items; + +- (void)setStateFromAction: (Action*)action{ + + NSNumber *itemID = [[action value] objectForKey:@"ItemID"]; + NSNumber *instant = [[action value] objectForKey:@"Instant"]; + + for ( NSMenuItem *item in [itemPopUp itemArray] ){ + if ( [[(Item*)[item representedObject] ID] intValue] == [itemID intValue] ){ + [itemPopUp selectItem:item]; + break; + } + } + + [itemInstantButton setState:[instant boolValue]]; + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Item value:nil]; + + [action setEnabled: self.enabled]; + + NSNumber *spellID = [[[itemPopUp selectedItem] representedObject] ID]; + NSNumber *instant = [NSNumber numberWithBool:[itemInstantButton state]]; + NSDictionary *values = [NSDictionary dictionaryWithObjectsAndKeys: + spellID, @"ItemID", + instant, @"Instant", nil]; + [action setValue: values]; + + return action; +} + +@end diff --git a/JumpAction.xib b/JumpAction.xib new file mode 100644 index 0000000..809f177 --- /dev/null +++ b/JumpAction.xib @@ -0,0 +1,801 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + JumpActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{32, 7}, {37, 17}} + + YES + + 67239488 + 272630784 + Jump + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 5}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {96, 33} + + NSView + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 96 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{934, 572}, {96, 33}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 96 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + JumpActionController + ActionController + + IBProjectSource + JumpActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/JumpActionController.h b/JumpActionController.h new file mode 100644 index 0000000..b1613d9 --- /dev/null +++ b/JumpActionController.h @@ -0,0 +1,16 @@ +// +// JumpActionController.h +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface JumpActionController : ActionController { + +} + +@end diff --git a/JumpActionController.m b/JumpActionController.m new file mode 100644 index 0000000..aff14a6 --- /dev/null +++ b/JumpActionController.m @@ -0,0 +1,42 @@ +// +// JumpActionController.m +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "JumpActionController.h" +#import "ActionController.h" + +@implementation JumpActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"JumpAction" owner: self]) { + log(LOG_GENERAL, @"Error loading JumpAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Jump value:nil]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/JumpToWaypointAction.xib b/JumpToWaypointAction.xib new file mode 100644 index 0000000..2e78aca --- /dev/null +++ b/JumpToWaypointAction.xib @@ -0,0 +1,994 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + JumpToWaypointActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{156, 0}, {85, 22}} + + YES + + -1804468671 + 138413056 + + + LucidaGrande + 13 + 1044 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{32, 3}, {119, 17}} + + YES + + 67239488 + 272630784 + Jump to waypoint: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + + + + 268 + {{7, 1}, {21, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {261, 29} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + validateState: + + + + 192 + + + + waypointNumTextView + + + + 193 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 189 + + + YES + + + + + + 190 + + + YES + + + + + + 191 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 189.IBPluginDependency + 190.IBPluginDependency + 191.IBNumberFormatterBehaviorMetadataKey + 191.IBNumberFormatterLocalizesFormatMetadataKey + 191.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + {{927, 656}, {261, 29}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 193 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + JumpToWaypointActionController + ActionController + + waypointNumTextView + NSTextField + + + IBProjectSource + JumpToWaypointActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/JumpToWaypointActionController.h b/JumpToWaypointActionController.h new file mode 100644 index 0000000..d696b09 --- /dev/null +++ b/JumpToWaypointActionController.h @@ -0,0 +1,21 @@ +// +// JumpToWaypointActionController.h +// Pocket Gnome +// +// Created by Josh on 3/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface JumpToWaypointActionController : ActionController { + + int _maxWaypoints; + + IBOutlet NSTextField *waypointNumTextView; +} + ++ (id)jumpToWaypointActionControllerWithTotalWaypoints: (int)waypoints; + +@end diff --git a/JumpToWaypointActionController.m b/JumpToWaypointActionController.m new file mode 100644 index 0000000..d26c042 --- /dev/null +++ b/JumpToWaypointActionController.m @@ -0,0 +1,67 @@ +// +// JumpToWaypointActionController.m +// Pocket Gnome +// +// Created by Josh on 3/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "JumpToWaypointActionController.h" +#import "ActionController.h" + +@implementation JumpToWaypointActionController + +- (id)init +{ + self = [super init]; + if (self != nil){ + _maxWaypoints = 0; + + if(![NSBundle loadNibNamed: @"JumpToWaypointAction" owner: self]) { + log(LOG_GENERAL, @"Error loading JumpToWaypointAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithWaypoints: (int)waypoints{ + self = [self init]; + if (self != nil) { + _maxWaypoints = waypoints; + } + return self; +} + ++ (id)jumpToWaypointActionControllerWithTotalWaypoints: (int)waypoints{ + return [[[JumpToWaypointActionController alloc] initWithWaypoints: waypoints] autorelease]; +} + +- (IBAction)validateState: (id)sender { + + if ( [waypointNumTextView intValue] > _maxWaypoints || [waypointNumTextView intValue] < 1 ){ + [waypointNumTextView setStringValue:@"1"]; + } +} + +- (void)setStateFromAction: (Action*)action{ + + [waypointNumTextView setIntValue:[[action value] intValue]]; + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_JumpToWaypoint value:nil]; + + [action setEnabled: self.enabled]; + [action setValue: [waypointNumTextView stringValue]]; + + return action; +} + +@end diff --git a/Keybindings.png b/Keybindings.png new file mode 100644 index 0000000..2c6504d Binary files /dev/null and b/Keybindings.png differ diff --git a/LastSpellCast.xib b/LastSpellCast.xib new file mode 100644 index 0000000..1a577f5 --- /dev/null +++ b/LastSpellCast.xib @@ -0,0 +1,1187 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + LastSpellCastConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{324, 4}, {98, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 1 + + + 400 + 75 + + + was + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + 4 + + + YES + + OtherViews + + YES + + + + was not + + 1048576 + 2147483647 + + + _popUpItemAction: + 5 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{32, 10}, {39, 17}} + + YES + + 68288064 + 272630784 + Spell + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{74, 6}, {108, 24}} + + YES + + 67239424 + 0 + + + + YES + + 51 + Num + Spell ID + 1 + YES + 0 + + + 50 + Name + Spell Name + 3 + 0 + + + 1 + + + + + 268 + {{188, 7}, {126, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{424, 10}, {130, 17}} + + YES + + 68288064 + 272630784 + the last spell cast. + + + + + + + + {571, 36} + + NSView + + + + + YES + + + view + + + + 25 + + + + disableButton + + + + 28 + + + + disableCondition: + + + + 29 + + + + valueText + + + + 35 + + + + typeSegment + + + + 36 + + + + validateState: + + + + 37 + + + + validateState: + + + + 38 + + + + comparatorPopUp + + + + 44 + + + + validateState: + + + + 45 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + 4 + + + YES + + + + + + 5 + + + + + 9 + + + YES + + + + + + 10 + + + YES + + + + + 13 + + + YES + + + + + + 14 + + + + + 8 + + + YES + + + + + + 12 + + + + + 26 + + + YES + + + + + + 27 + + + + + 39 + + + YES + + + + + + 40 + + + YES + + + + + + 41 + + + YES + + + + + + + 42 + + + + + 43 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 10.IBPluginDependency + 12.IBPluginDependency + 12.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 13.IBPluginDependency + 14.IBPluginDependency + 26.IBAttributePlaceholdersKey + 26.IBPluginDependency + 27.IBPluginDependency + 39.IBPluginDependency + 4.IBPluginDependency + 40.IBPluginDependency + 41.IBEditorWindowLastContentRect + 41.IBPluginDependency + 41.editorWindowContentRectSynchronizationRect + 42.IBPluginDependency + 43.IBPluginDependency + 5.IBPluginDependency + 8.CustomClassName + 8.IBPluginDependency + 8.IBSegmentedControlTracker.RoundRobinState + 8.IBSegmentedControlTracker.WasGrowing + 9.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{331, 505}, {571, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{357, 416}, {480, 272}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{644, 492}, {119, 43}} + com.apple.InterfaceBuilder.CocoaPlugin + {{372, 435}, {170, 43}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 45 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + LastSpellCastConditionController + ConditionController + + YES + + YES + comparatorPopUp + typeSegment + valueText + + + YES + NSPopUpButton + BetterSegmentedControl + NSTextField + + + + IBProjectSource + LastSpellCastConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/LastSpellCastConditionController.h b/LastSpellCastConditionController.h new file mode 100644 index 0000000..ac3279e --- /dev/null +++ b/LastSpellCastConditionController.h @@ -0,0 +1,20 @@ +// +// LastSpellCastConditionController.h +// Pocket Gnome +// +// Created by Josh on 12/28/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface LastSpellCastConditionController : ConditionController { + IBOutlet BetterSegmentedControl *typeSegment; + IBOutlet NSPopUpButton *comparatorPopUp; + IBOutlet NSTextField *valueText; +} + +@end diff --git a/LastSpellCastConditionController.m b/LastSpellCastConditionController.m new file mode 100644 index 0000000..a301e12 --- /dev/null +++ b/LastSpellCastConditionController.m @@ -0,0 +1,67 @@ +// +// LastSpellCastConditionController.m +// Pocket Gnome +// +// Created by Josh on 12/28/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "LastSpellCastConditionController.h" + + +@implementation LastSpellCastConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"LastSpellCast" owner: self]) { + log(LOG_GENERAL, @"Error loading LastSpellCast.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + id value = nil; + if( [typeSegment selectedTag] == TypeValue ) + value = [NSNumber numberWithInt: [valueText intValue]]; + if( [typeSegment selectedTag] == TypeString ) + value = [valueText stringValue]; + + Condition *condition = [Condition conditionWithVariety: VarietyLastSpellCast + unit: UnitNone + quality: QualityNone + comparator: [[comparatorPopUp selectedItem] tag] + state: StateNone + type: [typeSegment selectedTag] + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyLastSpellCast ) return; + + if ( ![comparatorPopUp selectItemWithTag: [condition comparator]] ) { + [comparatorPopUp selectItemWithTag: CompareIs]; + } + + [typeSegment selectSegmentWithTag: [condition type]]; + [valueText setStringValue:[NSString stringWithFormat:@"%@", [condition value]]]; + + [self validateState: nil]; +} + +@end diff --git a/LogController.h b/LogController.h new file mode 100644 index 0000000..b002cc2 --- /dev/null +++ b/LogController.h @@ -0,0 +1,60 @@ +// +// LogController.h +// Pocket Gnome +// +// Created by benemorius on 12/17/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import +#define log(...) if([LogController canLog:__VA_ARGS__]) PGLog(@"%@", [LogController log: __VA_ARGS__]); + +#define LOG_FUNCTION "Function" +#define LOG_DEV "Dev" +#define LOG_DEV1 "Dev1" +#define LOG_DEV2 "Dev2" +#define LOG_TARGET "Target" +#define LOG_MOVEMENT_CORRECTION "Movement_Correction" +#define LOG_MOVEMENT "Movement" +#define LOG_RULE "Rule" +#define LOG_CONDITION "Condition" +#define LOG_BEHAVIOR "Behavior" +#define LOG_LOOT "Loot" +#define LOG_HEAL "Heal" +#define LOG_COMBAT "Combat" +#define LOG_GENERAL "General" +#define LOG_MACRO "Macro" +#define LOG_CHAT "Chat" +#define LOG_ERROR "Error" +#define LOG_PVP "PvP" +#define LOG_NODE "Node" +#define LOG_FISHING "Fishing" +#define LOG_AFK "AFK" +#define LOG_MEMORY "Memory" +#define LOG_BLACKLIST "Blacklist" +#define LOG_WAYPOINT "Waypoint" +#define LOG_POSITION "Position" +#define LOG_ACTION "Action" +#define LOG_PARTY "Party" +#define LOG_GHOST "Ghost" +#define LOG_EVALUATE "Evaluate" +#define LOG_STARTUP "Startup" +#define LOG_REGEN "Regen" +#define LOG_PROCEDURE "Procedure" +#define LOG_MOUNT "Mount" +#define LOG_CONTROLLER "Controller" +#define LOG_STATISTICS "Statistics" +#define LOG_BINDINGS "Bindings" +#define LOG_FOLLOW "Follow" +#define LOG_ITEM "Item" +#define LOG_PROFILE "Profile" +#define LOG_FILEMANAGER "FileManager" + +@interface LogController : NSObject { + +} + ++ (BOOL) canLog:(char*)type_s, ...; ++ (NSString*) log:(char*)type_s, ...; + +@end \ No newline at end of file diff --git a/LogController.m b/LogController.m new file mode 100644 index 0000000..5bbda3b --- /dev/null +++ b/LogController.m @@ -0,0 +1,69 @@ +// +// LogController.m +// Pocket Gnome +// +// Created by benemorius on 12/17/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "LogController.h" + + +@implementation LogController + ++ (BOOL) canLog:(char*)type_s, ... +{ + + + return YES; + + // Check to see whether or not extended logging is even on + if ( [[[NSUserDefaults standardUserDefaults] objectForKey: @"ExtendedLoggingEnable"] boolValue] ) { + + // Extended logging is on so lets see if we're supposed to log the requested type + NSString* type = [NSString stringWithFormat:@"ExtendedLogging%s", type_s]; + + if ([[NSUserDefaults standardUserDefaults] objectForKey: type]) + return( [[[NSUserDefaults standardUserDefaults] objectForKey: type] boolValue] ); + + // return([[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: type] boolValue]); + + } else { + // These are the types we supress when Extended Logging isn't enabled + + if (strcmp(type_s, LOG_CONDITION) == 0) return NO; + if (strcmp(type_s, LOG_RULE) == 0) return NO; + if (strcmp(type_s, LOG_MOVEMENT) == 0) return NO; + if (strcmp(type_s, LOG_DEV) == 0) return NO; + if (strcmp(type_s, LOG_WAYPOINT) == 0) return NO; + if (strcmp(type_s, LOG_BINDINGS) == 0) return NO; + if (strcmp(type_s, LOG_STATISTICS) == 0) return NO; + if (strcmp(type_s, LOG_MACRO) == 0) return NO; + if (strcmp(type_s, LOG_EVALUATE) == 0) return NO; + if (strcmp(type_s, LOG_BLACKLIST) == 0) return NO; + if (strcmp(type_s, LOG_FUNCTION) == 0) return NO; + if (strcmp(type_s, LOG_MEMORY) == 0) return NO; + //if (strcmp(type_s, LOG_PROCEDURE) == 0) return NO; + if (strcmp(type_s, LOG_CONTROLLER) == 0) return NO; + + } + + // If it's not been supressed let's allow it + return YES; + +} + ++ (NSString*) log:(char*)type_s, ... +{ + NSString* type = [NSString stringWithFormat:@"%s", type_s]; + va_list args; + va_start(args, type_s); + NSString* format = va_arg(args, NSString*); + NSMutableString* output = [[NSMutableString alloc] initWithFormat:format arguments:args]; + va_end(args); + + output = [NSString stringWithFormat:@"[%@] %@", type, output]; + return output; +} + +@end diff --git a/LootController.h b/LootController.h new file mode 100644 index 0000000..5252e6b --- /dev/null +++ b/LootController.h @@ -0,0 +1,40 @@ +// +// LootController.h +// Pocket Gnome +// +// Created by Josh on 6/7/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +#define ItemLootedNotification @"ItemLootedNotification" +#define AllItemsLootedNotification @"AllItemsLootedNotification" + +@class Controller; +@class InventoryController; +@class ChatController; +@class PlayerDataController; +@class OffsetController; +@class MacroController; + +@interface LootController : NSObject { + IBOutlet Controller *controller; + IBOutlet InventoryController *itemController; + IBOutlet ChatController *chatController; + IBOutlet PlayerDataController *playerDataController; + IBOutlet OffsetController *offsetController; + IBOutlet MacroController *macroController; + + NSMutableDictionary *_itemsLooted; + + int _lastLootedItem; + BOOL _shouldMonitor; +} + +- (NSDictionary*)itemsLooted; +- (void)resetLoot; + +- (BOOL)isLootWindowOpen; +- (void)acceptLoot; +@end diff --git a/LootController.m b/LootController.m new file mode 100644 index 0000000..7197ad7 --- /dev/null +++ b/LootController.m @@ -0,0 +1,259 @@ +// +// LootController.m +// Pocket Gnome +// +// Created by Josh on 6/7/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +#import "LootController.h" + +#import "Controller.h" +#import "InventoryController.h" +#import "ChatController.h" +#import "PlayerDataController.h" +#import "OffsetController.h" +#import "MacroController.h" + +#import "Item.h" +#import "Offsets.h" + + +@interface LootController (Internal) +- (void)addItem: (int)itemID Quantity:(int)quantity Location:(int)location; +- (void)lootingComplete; +- (void)itemLooted: (NSArray*)data; +@end + +@implementation LootController + +- (id)init{ + self = [super init]; + if (self != nil) { + + _itemsLooted = [[NSMutableDictionary alloc] init]; + _lastLootedItem = 0; + _shouldMonitor = NO; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsInvalid:) + name: PlayerIsInvalidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil]; + } + return self; +} + +- (void)dealloc { + [_itemsLooted release]; + [super dealloc]; +} + +- (void)resetLoot{ + [_itemsLooted removeAllObjects]; +} + +// return a copy of our list +- (NSDictionary*)itemsLooted{ + return [[[NSDictionary alloc] initWithDictionary:_itemsLooted] autorelease]; +} + +// save a copy of this item as it was looted +- (void)addItem: (int)itemID Quantity:(int)quantity Location:(int)location{ + + NSString *key = [NSString stringWithFormat:@"%d",itemID]; + + // item exists in our list, increment + if ( [_itemsLooted objectForKey:key] ){ + [_itemsLooted setValue:[NSNumber numberWithInt:[[_itemsLooted objectForKey:key] intValue]+quantity] forKey:key]; + } + // new object + else{ + [_itemsLooted setObject:[NSNumber numberWithInt:1] forKey:key]; + } + + // pass the item ID and the location + NSArray *data = [NSArray arrayWithObjects:[NSNumber numberWithInt:itemID], [NSNumber numberWithInt:location], nil]; + [self itemLooted:data]; +} + +// this will continuously check to see if we are looting! +- (void)lootMonitor{ + + // Player is invalid, lets stop monitoring! + if ( !_shouldMonitor ) + return; + + MemoryAccess *memory = [controller wowMemoryAccess]; + + if ( memory ){ + UInt32 lootedItem = 0, quantity = 0; + unsigned long offset = [offsetController offset:@"ITEM_IN_LOOT_WINDOW"]; + + // check for our first looted item + if ( [memory loadDataForObject: self atAddress: offset Buffer: (Byte *)&lootedItem BufLength: sizeof(lootedItem)] ){ + + // make sure we have a new item + if ( lootedItem > 0 && _lastLootedItem == 0 && _lastLootedItem != lootedItem ){ + _lastLootedItem = lootedItem; + + // grab the quantity + [memory loadDataForObject: self atAddress: offset + LOOT_QUANTITY Buffer: (Byte *)&quantity BufLength: sizeof(quantity)]; + + // add our item + [self addItem:lootedItem Quantity:quantity Location:0]; + + // check for more to add + int i = 1; + while ([memory loadDataForObject: self atAddress: offset + (LOOT_NEXT * (i)) Buffer: (Byte *)&lootedItem BufLength: sizeof(lootedItem)] && lootedItem > 0 ){ + [memory loadDataForObject: self atAddress: offset + (LOOT_NEXT * (i)) + LOOT_QUANTITY Buffer: (Byte *)&quantity BufLength: sizeof(quantity)]; + [self addItem:lootedItem Quantity:quantity Location:i]; + i++; + } + + [self lootingComplete]; + } + // reset so we can continue scanning again + else if ( lootedItem == 0 ){ + _lastLootedItem = 0; + } + } + } + + // keep monitoring + [self performSelector:@selector(lootMonitor) withObject:nil afterDelay:0.1f]; +} + + +#define MAX_ITEMS_IN_LOOT_WINDOW 10 // I don't actually know if this is correct, just an estimate +- (BOOL)isLootWindowOpen{ + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return NO; + + UInt32 item = 0; + UInt32 offset = [offsetController offset:@"ITEM_IN_LOOT_WINDOW"]; + int i = 0; + + for ( ; i < MAX_ITEMS_IN_LOOT_WINDOW; i++ ){ + [memory loadDataForObject: self atAddress: offset + (LOOT_NEXT * (i)) Buffer: (Byte *)&item BufLength: sizeof(item)]; + if ( item > 0 ){ + return YES; + } + } + + return NO; +} + +// simply loots an item w/a macro or sends the command +- (void)lootItem:(int)slotNum{ + NSString *lootSlot = [NSString stringWithFormat: @"/script LootSlot(%d);%c", slotNum, '\n']; + NSString *lootBoP = [NSString stringWithFormat: @"/script ConfirmLootSlot(%d);%c", slotNum, '\n']; + + // use macro to loot + BOOL success = [macroController useMacroWithCommand:lootSlot]; + if ( !success ){ + + // hit escape to close the chat window if it's open + if ( [controller isWoWChatBoxOpen] ){ + log(LOG_GENERAL, @"[Loot] Sending escape to close open chat!"); + [chatController sendKeySequence: [NSString stringWithFormat: @"%c", kEscapeCharCode]]; + usleep(100000); + } + + [chatController enter]; // open/close chat box + usleep(100000); + [chatController sendKeySequence: [NSString stringWithFormat: @"/script LootSlot(%d);%c", slotNum, '\n']]; + usleep(500000); + } + + success = [macroController useMacroWithCommand:lootBoP]; + if ( !success ){ + + // hit escape to close the chat window if it's open + if ( [controller isWoWChatBoxOpen] ){ + log(LOG_GENERAL, @"[Loot] Sending escape to close open chat!"); + [chatController sendKeySequence: [NSString stringWithFormat: @"%c", kEscapeCharCode]]; + usleep(100000); + } + + [chatController enter]; // open/close chat box + usleep(100000); + [chatController sendKeySequence: [NSString stringWithFormat: @"/script ConfirmLootSlot(%d);%c", slotNum, '\n']]; + usleep(500000); + } +} + +// auto loot? PLAYER_AUTOLOOT{INT} = [Pbase + 0xD8] + 0x1010 +- (void)acceptLoot{ + + UInt32 item; + int i = 0; + unsigned long offset = [offsetController offset:@"ITEM_IN_LOOT_WINDOW"]; + MemoryAccess *memory = [controller wowMemoryAccess]; + while ( offset && memory && [memory loadDataForObject: self atAddress: offset + (LOOT_NEXT * (i)) Buffer: (Byte *)&item BufLength: sizeof(item)] && i < MAX_ITEMS_IN_LOOT_WINDOW ) { + if ( item > 0 ){ + [self lootItem:i+1]; + [self lootItem:i+2]; + } + + i++; + } +} + +#pragma mark Notification Firing Mechanisms + +- (void)lootingComplete{ + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(lootingComplete) object: nil]; + + // Only call our notifier if the loot window isn't open! + if ( ![self isLootWindowOpen] ){ + [[NSNotificationCenter defaultCenter] postNotificationName: AllItemsLootedNotification object: nil]; + } + // Lets check again shortly! + else{ + [self performSelector: @selector(lootingComplete) withObject: nil afterDelay: 0.1f]; + } +} + +// future improvement: we could just monitor the items in our bag? (only drawback here is the object list is only updated every second) +- (void)itemLooted: (NSArray*)data{ + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return; + + int location = [[data objectAtIndex:1] intValue]; + UInt32 itemID = 0; + unsigned long offset = [offsetController offset:@"ITEM_IN_LOOT_WINDOW"]; + + // check to see if the item is still in the list! + if ( [memory loadDataForObject: self atAddress: offset + (LOOT_NEXT * (location)) Buffer: (Byte *)&itemID BufLength: sizeof(itemID)] && itemID > 0 ){ + [self performSelector:@selector(itemLooted:) withObject:data afterDelay:0.1f]; + return; + } + + // fire off the notification + [[NSNotificationCenter defaultCenter] postNotificationName: ItemLootedNotification object: [data objectAtIndex:0]]; +} + +#pragma mark Notifications + +// lets stop monitoring! +- (void)playerIsInvalid: (NSNotification*)not { + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + _shouldMonitor = NO; +} + +// start monitoring! +- (void)playerIsValid: (NSNotification*)not { + _shouldMonitor = YES; + // Fire off a thread to start monitoring our loot + [self performSelector:@selector(lootMonitor) withObject:nil afterDelay:0.1f]; +} + +@end diff --git a/LuaController.h b/LuaController.h new file mode 100644 index 0000000..d37b42d --- /dev/null +++ b/LuaController.h @@ -0,0 +1,18 @@ +// +// LuaController.h +// Pocket Gnome +// +// Created by Josh on 10/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#include "lua.h" +#include "lualib.h" +#include "lauxlib.h" + +@interface LuaController : NSObject { + +} + +@end diff --git a/LuaController.m b/LuaController.m new file mode 100644 index 0000000..9665577 --- /dev/null +++ b/LuaController.m @@ -0,0 +1,14 @@ +// +// LuaController.m +// Pocket Gnome +// +// Created by Josh on 10/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "LuaController.h" + + +@implementation LuaController + +@end diff --git a/Macro.h b/Macro.h new file mode 100644 index 0000000..d44c581 --- /dev/null +++ b/Macro.h @@ -0,0 +1,27 @@ +// +// Macro.h +// Pocket Gnome +// +// Created by Jon Drummond on 6/24/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + + +@interface Macro : NSObject { + NSString *name, *body; + NSNumber *number; + BOOL isCharacter; +} + ++ (id)macroWithName: (NSString*)name number: (NSNumber*)number body: (NSString*)body isCharacter: (BOOL)isChar; + +@property (readwrite, retain) NSString *name; +@property (readwrite, retain) NSString *body; +@property (readwrite, retain) NSNumber *number; +@property BOOL isCharacter; + +- (NSString*)nameWithType; + +@end diff --git a/Macro.m b/Macro.m new file mode 100644 index 0000000..1ddc3ca --- /dev/null +++ b/Macro.m @@ -0,0 +1,49 @@ +// +// Macro.m +// Pocket Gnome +// +// Created by Jon Drummond on 6/24/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Macro.h" + + +@implementation Macro + ++ (id)macroWithName: (NSString*)name number: (NSNumber*)number body: (NSString*)body isCharacter: (BOOL)isChar { + Macro *newMacro = [[Macro alloc] init]; + if(newMacro) { + newMacro.name = name; + newMacro.body = body; + newMacro.number = number; + newMacro.isCharacter = isChar; + } + return [newMacro autorelease]; +} + +- (void) dealloc +{ + self.name = nil; + self.body = nil; + self.number = nil; + [super dealloc]; +} + + +@synthesize name; +@synthesize body; +@synthesize number; +@synthesize isCharacter; + +- (NSString*)nameWithType{ + + if ( self.isCharacter ){ + return [NSString stringWithFormat:@"Character - %@", self.name]; + } + else{ + return [NSString stringWithFormat:@"Account - %@", self.name]; + } +} + +@end diff --git a/MacroAction.xib b/MacroAction.xib new file mode 100644 index 0000000..cbe218f --- /dev/null +++ b/MacroAction.xib @@ -0,0 +1,1108 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + MacroActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{311, 6}, {101, 18}} + + YES + + 67239424 + 0 + Instant use? + + LucidaGrande + 13 + 1044 + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{109, 1}, {199, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{32, 7}, {75, 17}} + + YES + + 67239488 + 272630784 + Use macro: + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{7, 5}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {490, 33} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 97 + + + + macroPopUp + + + + 156 + + + + content: macros + + + + + + content: macros + content + macros + 2 + + + 157 + + + + contentObjects: macros + + + + + + contentObjects: macros + contentObjects + macros + + 2 + + + 161 + + + + contentValues: macros.nameWithType + + + + + + contentValues: macros.nameWithType + contentValues + macros.nameWithType + + 2 + + + 163 + + + + instantButton + + + + 166 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 105 + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + 122 + + + YES + + + + + + + + 123 + + + + + 124 + + + + + 125 + + + + + 164 + + + YES + + + + + + 165 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 164.IBPluginDependency + 165.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{791, 698}, {490, 33}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 166 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + MacroActionController + ActionController + + YES + + YES + instantButton + macroPopUp + + + YES + NSButton + NSPopUpButton + + + + IBProjectSource + MacroActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/MacroActionController.h b/MacroActionController.h new file mode 100644 index 0000000..dffbc0a --- /dev/null +++ b/MacroActionController.h @@ -0,0 +1,22 @@ +// +// MacroActionController.h +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ActionController.h" + +@interface MacroActionController : ActionController { + IBOutlet NSPopUpButton *macroPopUp; + IBOutlet NSButton *instantButton; + + NSArray *_macros; +} + ++ (id)macroActionControllerWithMacros: (NSArray*)macros; + +@property (readwrite, copy) NSArray *macros; +@end diff --git a/MacroActionController.m b/MacroActionController.m new file mode 100644 index 0000000..9541fa3 --- /dev/null +++ b/MacroActionController.m @@ -0,0 +1,92 @@ +// +// MacroActionController.m +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// +#import "ActionController.h" +#import "MacroActionController.h" + +#import "Action.h" +#import "Macro.h" + +@implementation MacroActionController + +- (id)init +{ + self = [super init]; + if (self != nil) { + _macros = nil; + if(![NSBundle loadNibNamed: @"MacroAction" owner: self]) { + log(LOG_GENERAL, @"Error loading MacroAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithMacros: (NSArray*)macros{ + self = [self init]; + if (self != nil) { + self.macros = macros; + } + return self; +} + ++ (id)macroActionControllerWithMacros: (NSArray*)macros{ + NSMutableArray *arrayToSort = [NSMutableArray arrayWithArray:macros]; + [arrayToSort sortUsingDescriptors: [NSArray arrayWithObject: [[[NSSortDescriptor alloc] initWithKey: @"nameWithType" ascending: YES] autorelease]]]; + return [[[MacroActionController alloc] initWithMacros: arrayToSort] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [macroPopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [macroPopUp unbind: binding]; + } +} + +@synthesize macros = _macros; + +- (void)setStateFromAction: (Action*)action{ + + NSNumber *macroID = [[action value] objectForKey:@"MacroID"]; + NSNumber *instant = [[action value] objectForKey:@"Instant"]; + + for ( NSMenuItem *item in [macroPopUp itemArray] ){ + if ( [[(Macro*)[item representedObject] number] intValue] == [macroID intValue] ){ + [macroPopUp selectItem:item]; + break; + } + } + + [instantButton setState:[instant boolValue]]; + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Macro value:nil]; + + [action setEnabled: self.enabled]; + + NSNumber *macroID = [[[macroPopUp selectedItem] representedObject] number]; + NSNumber *instant = [NSNumber numberWithBool:[instantButton state]]; + NSDictionary *values = [NSDictionary dictionaryWithObjectsAndKeys: + macroID, @"MacroID", + instant, @"Instant", nil]; + [action setValue: values]; + + return action; +} + + +@end diff --git a/MacroController.h b/MacroController.h new file mode 100644 index 0000000..29997d2 --- /dev/null +++ b/MacroController.h @@ -0,0 +1,61 @@ +// +// MacroController.m +// Pocket Gnome +// +// Created by Josh on 9/21/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class BotController; +@class PlayerDataController; +@class AuraController; +@class ChatController; +@class OffsetController; + +@interface MacroController : NSObject { + IBOutlet Controller *controller; + IBOutlet BotController *botController; + IBOutlet PlayerDataController *playerData; + IBOutlet AuraController *auraController; + IBOutlet ChatController *chatController; + IBOutlet OffsetController *offsetController; + + NSArray *_playerMacros; + NSDictionary *_macroDictionary; + NSDictionary *_macroMap; +} + +@property (readonly) NSArray *playerMacros; + +// this will make us do something! +- (void)useMacroOrSendCmd: (NSString*)key; + +// check to see if the macro exists + will return the key +- (int)macroIDForCommand: (NSString*)command; + +// execute a macro by it's ID +- (void)useMacroByID: (int)macroID; + +// only use the macro (it won't send the command) +- (BOOL)useMacro: (NSString*)key; + +// use a macro with a parameter +- (BOOL)useMacroWithKey: (NSString*)key andInt:(int)param; + +// use a macro +- (BOOL)useMacroWithCommand: (NSString*)macroCommand; + +- (NSArray*)macros; + +- (NSString*)nameForID:(UInt32)macroID; + +- (NSString*)macroTextForKey:(NSString*)key; + +/* + "Swift Flight Form" >>> "Forme de vol rapide" + "Flight Form" >>> "Forme de vol" + */ +@end diff --git a/MacroController.m b/MacroController.m new file mode 100644 index 0000000..9a9d575 --- /dev/null +++ b/MacroController.m @@ -0,0 +1,382 @@ +// +// MacroController.m +// Pocket Gnome +// +// Created by Josh on 9/21/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import + +#import "MacroController.h" +#import "Controller.h" +#import "BotController.h" +#import "ActionMenusController.h" +#import "PlayerDataController.h" +#import "AuraController.h" +#import "ChatController.h" +#import "OffsetController.h" + +#import "Player.h" +#import "MemoryAccess.h" +#import "Macro.h" + +@interface MacroController (Internal) +- (void)reloadMacros; +- (BOOL)executeMacro: (NSString*)key; +- (Macro*)findMacro: (NSString*)key; +- (BOOL)overwriteMacro: (NSString*)macroCommand; +@end + +@implementation MacroController + + +- (id) init{ + self = [super init]; + if (self != nil) { + + _playerMacros = nil; + _macroDictionary = [[NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"Macros" ofType: @"plist"]] retain]; + + // Notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil]; + } + return self; +} + +- (void) dealloc{ + [_macroDictionary release]; + [super dealloc]; +} + +@synthesize playerMacros = _playerMacros; + +#pragma mark Notifications + +// update our list of macros when the player is valid +- (void)playerIsValid: (NSNotification*)not { + [self reloadMacros]; +} + +- (BOOL)useMacroWithCommand: (NSString*)macroCommand{ + return [self overwriteMacro:macroCommand]; +} + +- (BOOL)useMacro: (NSString*)key;{ + + if ( _macroDictionary ){ + NSDictionary *macroData = [_macroDictionary valueForKey:key]; + NSString *macroCommand = [macroData valueForKey:@"Macro"]; + + return [self overwriteMacro:macroCommand]; + } + + return NO; +} + +- (BOOL)useMacroWithKey: (NSString*)key andInt:(int)param{ + + // set up the command + NSDictionary *macroData = [_macroDictionary valueForKey:key]; + NSString *macroCommand = [macroData valueForKey:@"Macro"]; + macroCommand = [NSString stringWithFormat:@"%@%d", macroCommand, param]; + + return [self overwriteMacro:macroCommand]; +} + +// returns the macro command for a key! +- (NSString*)macroTextForKey:(NSString*)key{ + NSDictionary *macroData = [_macroDictionary valueForKey:key]; + NSString *macroCommand = [macroData valueForKey:@"Macro"]; + return [[macroCommand retain] autorelease]; +} + +// actually will take an action (macro or send command) +- (void)useMacroOrSendCmd: (NSString*)key{ + + NSDictionary *macroData = [_macroDictionary valueForKey:key]; + NSString *macroCommand = [macroData valueForKey:@"Macro"]; + + if ( !macroCommand || [macroCommand length] == 0 ) { + log(LOG_MACRO, @"Using the key as a command!"); + macroCommand = key; + } + + BOOL macroExecuted = [self overwriteMacro:macroCommand]; + + // if we didn't find a macro, lets send the command! + if ( !macroExecuted ){ + + // hit escape to close the chat window if it's open + if ( [controller isWoWChatBoxOpen] ){ + log(LOG_MACRO, @"Sending escape to close open chat!"); + [chatController sendKeySequence: [NSString stringWithFormat: @"%c", kEscapeCharCode]]; + usleep(100000); + } + + // send the command + [chatController enter]; + usleep(100000); + [chatController sendKeySequence: [NSString stringWithFormat: @"%@%c", macroCommand, '\n']]; + + log(LOG_MACRO, @"I just typed the '%@' command. I'm not really sure why.", key); + } +} + +// this function will pull player macros from memory! +- (void)reloadMacros{ + + // technically the first release does nothing + [_playerMacros release]; _playerMacros = nil; + + // this is where we will store everything + NSMutableArray *macros = [NSMutableArray array]; + + // + 0x10 from this ptr is a ptr to the macro object list (but we don't need this) + UInt32 offset = [offsetController offset:@"MACRO_LIST_PTR"]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return; + + UInt32 objectPtr = 0, macroID = 0; + [memory loadDataForObject:self atAddress:offset Buffer:(Byte *)&objectPtr BufLength:sizeof(objectPtr)]; + + // while we have a valid ptr! + while ( ( objectPtr & 0x1 ) == 0 ){ + + // 0x0==0x18 macro ID + // 0x10 next ptr + // 0x20 macro name + // 0x60 macro icon + // 0x160 macro text + // how to determine if it's a character macro: (macroID & 0x1000000) == 0x1000000 + + // initialize variables + char macroName[17], macroText[256]; + macroName[16] = 0; + macroText[255] = 0; + NSString *newMacroName = nil; + NSString *newMacroText = nil; + + // get the macro name + if ( [memory loadDataForObject: self atAddress: objectPtr+0x20 Buffer: (Byte *)¯oName BufLength: sizeof(macroName)-1] ) { + newMacroName = [NSString stringWithUTF8String: macroName]; + } + + // get the macro text + if ( [memory loadDataForObject: self atAddress: objectPtr+0x160 Buffer: (Byte *)¯oText BufLength: sizeof(macroText)-1] ) { + newMacroText = [NSString stringWithUTF8String: macroText]; + } + + // get the macro ID + [memory loadDataForObject:self atAddress:objectPtr Buffer:(Byte *)¯oID BufLength:sizeof(macroID)]; + + // add it to our list + Macro *macro = [Macro macroWithName:newMacroName number:[NSNumber numberWithInt:macroID] body:newMacroText isCharacter:((macroID & 0x1000000) == 0x1000000)]; + [macros addObject:macro]; + + // get the next object ptr + [memory loadDataForObject:self atAddress:objectPtr+0x10 Buffer:(Byte *)&objectPtr BufLength:sizeof(objectPtr)]; + } + + _playerMacros = [macros retain]; +} + +// pass an identifier and the macro will be executed! +- (BOOL)executeMacro: (NSString*)key{ + + Macro *macro = [self findMacro:key]; + + if ( macro ){ + UInt32 macroID = [[macro number] unsignedIntValue]; + + //log(LOG_MACRO, @"Executing macro '%@' with id 0x%X", key, macroID); + + [botController performAction:USE_MACRO_MASK + macroID]; + usleep(100000); + + return YES; + } + + return NO; +} + +// find a macro given the key (check Macros.plist) +- (Macro*)findMacro: (NSString*)key{ + + // update our internal macro list first! + [self reloadMacros]; + + if ( _macroDictionary && _playerMacros ){ + + // grab the macro data! (macro and the description) + NSDictionary *macroData = [_macroDictionary valueForKey:key]; + + // the actual command + NSString *macroCommand = [macroData valueForKey:@"Macro"]; + + // now lets loop through all of our player macros! + for ( Macro *macro in _playerMacros ){ + + // match found! yay! + if ( [[macro body] isEqualToString:[NSString stringWithFormat:@"%@%c", macroCommand, '\n']] ){ + return macro; + } + + // search for partial match! + NSRange range = [[macro body] rangeOfString : macroCommand]; + if ( range.location != NSNotFound ) { + log(LOG_MACRO, @"Found partial match! '%@'", macroCommand); + return macro; + } + } + } + + return nil; +} + +// return a macro's name based on the ID! +- (NSString*)nameForID:(UInt32)macroID{ + + // update our internal macro list first! + [self reloadMacros]; + + if ( _playerMacros ){ + + // now lets loop through all of our player macros! + for ( Macro *macro in _playerMacros ){ + + if ( [[macro number] unsignedIntValue] == macroID ){ + return [[[macro name] retain] autorelease]; + } + } + } + + return nil; +} + +// check to see if a macro exists with the following command IN it +- (int)macroIDForCommand: (NSString*)command{ + + // update our internal macro list first! + [self reloadMacros]; + + if ( _playerMacros ){ + + // now lets loop through all of our player macros! + for ( Macro *macro in _playerMacros ){ + + // match found! yay! + if ( [[macro body] isEqualToString:[NSString stringWithFormat:@"%@%c", command, '\n']] ){ + return [macro.number intValue]; + } + + // search for partial match! + NSRange range = [[macro body] rangeOfString : command]; + if ( range.location != NSNotFound ) { + log(LOG_MACRO, @"Found partial match! '%@'", command); + return [macro.number intValue]; + } + } + } + + return -1; +} + +// complicated i know +- (void)useMacroByID: (int)macroID{ + [botController performAction:USE_MACRO_MASK + macroID]; +} + +// this function will over-write the first macro found, use it, then set it back! +- (BOOL)overwriteMacro: (NSString*)macroCommand{ + + // + 0x10 from this ptr is a ptr to the macro object list (but we don't need this) + UInt32 offset = [offsetController offset:@"MACRO_LIST_PTR"]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return NO; + + UInt32 objectPtr = 0; + [memory loadDataForObject:self atAddress:offset Buffer:(Byte *)&objectPtr BufLength:sizeof(objectPtr)]; + + // just use the first found macro + if ( ( objectPtr & 0x1 ) == 0 && _macroDictionary ){ + + if ( macroCommand ){ + + UInt32 macroID = 0; + char macroName[17], macroBody[256]; + macroName[16] = 0; + macroBody[255] = 0; + NSString *newMacroName = nil; + NSString *oldMacroBody = nil; + + // get the macro ID + [memory loadDataForObject:self atAddress:objectPtr Buffer:(Byte *)¯oID BufLength:sizeof(macroID)]; + + // get the macro name + if ( [memory loadDataForObject: self atAddress: objectPtr+0x20 Buffer: (Byte *)¯oName BufLength: sizeof(macroName)-1] ) { + newMacroName = [NSString stringWithUTF8String: macroName]; + } + + // get the macro text + if ( [memory loadDataForObject: self atAddress: objectPtr+0x160 Buffer: (Byte *)¯oBody BufLength: sizeof(macroBody)-1] ) { + oldMacroBody = [NSString stringWithUTF8String: macroBody]; + } + + // over-write the text + char newMacroBody[255]; + const char *body = [macroCommand UTF8String]; + + // no reason it shouldn't be less than, but just in case some1 tries to buffer overflow our asses + if ( strlen(body) < 255 ){ + strcpy( newMacroBody, body ); + + // null-terminate our string + newMacroBody[strlen(body)] = '\0'; + } + else{ + newMacroBody[0] = '\0'; + } + + // write the new command + [memory saveDataForAddress: objectPtr+0x160 Buffer: (Byte *)newMacroBody BufLength:sizeof(newMacroBody)]; + + // probably not necessary + usleep(100000); + + // execute macro + [botController performAction:macroID + USE_MACRO_MASK]; + + // probably not necessary + usleep(100000); + + // set the text back + const char *oldBody = [oldMacroBody UTF8String]; + strcpy( newMacroBody, oldBody ); + newMacroBody[strlen(oldBody)] = '\0'; + [memory saveDataForAddress: objectPtr+0x160 Buffer: (Byte *)newMacroBody BufLength:sizeof(newMacroBody)]; + + log(LOG_MACRO, @"Completed execution of %@ using macro ID %d", macroCommand, macroID); + + return YES; + } + else{ + log(LOG_MACRO, @"Error, unable to find execute a null macro command!"); + } + } + + return NO; +} + +- (NSArray*)macros{ + return [[_playerMacros retain] autorelease]; +} + +@end diff --git a/Macros.plist b/Macros.plist new file mode 100644 index 0000000..36d5a8c --- /dev/null +++ b/Macros.plist @@ -0,0 +1,314 @@ + + + + + QueueForBattleground + + Macro + for i=1,GetNumBattlegroundTypes() do _,e,_,_,z=GetBattlegroundInfo(i); for j=1,#a do if (e==1 and a[j]==z) then tinsert(b,i); end end end if (#b>0) then RequestBattlegroundInstanceInfo(b[random(#b)]); end + Description + This will queue for battlegrounds! + + BGScrollUp + + Macro + /click PVPBattlegroundFrameTypeScrollFrameScrollBarScrollUpButton + Description + This will scroll up in the Battleground list + + PartyGreedLoot + + Macro + /click GroupLootFrame1GreedButton + Description + Roll greed on an item + + PartyNeedLoot + + Macro + /click GroupLootFrame1RollButton + Description + Roll need on an item + + PartyDisenchantLoot + + Macro + /click GroupLootFrame1DisenchantButton + Description + Roll disenchant on an item + + QuestCancel + + Macro + /click QuestFrameGoodbyeButton + Description + Click cancel + + QuestComplete + + Macro + /click QuestFrameCompleteQuestButton + Description + Complete quest + + QuestContinue + + Macro + /click QuestFrameCompleteButton + Description + Complete a quest when you are viewing the turn in panel + + QuestAccept + + Macro + /click QuestFrameAcceptButton + Description + Accept a quest once you're viewing it + + QuestClickGossip + + Macro + /click GossipTitleButton + Description + Clicks an initial gossip (we need to add an int to it) + + CompleteQuest + + Macro + /click QuestFrameCompleteQuestButton + Description + Complete quest + + Questing + + Macro + /script SelectGossipAvailableQuest(1) +/script SelectGossipActiveQuest(1) +/script CompleteQuest() +/script SelectGossipOption(1) +/script AcceptQuest() + Description + This will turn in and grab quests! + + RepairAllGuild + + Macro + /click MerchantGuildBankRepairButton; + Description + This will repair everything + + RepairAll + + Macro + /click MerchantRepairAllButton; + Description + This will repair everything + + AuctioneerClick + + Macro + /run if (AucAdvancedBuyPromptYes) then AucAdvancedBuyPromptYes:Click() end + Description + This will confirm purchase! + + SelectTarget + + Macro + /cleartarget +/targetlasttarget + Description + This will correctly target the mob + + LootItems2 + + Macro + /script LootSlot(6); +/script ConfirmLootSlot(6); +/script LootSlot(7); +/script ConfirmLootSlot(7); +/script LootSlot(8); +/script ConfirmLootSlot(8); +/script LootSlot(9); +/script ConfirmLootSlot(9); + Description + This will loot items if for some reason it's not done automatically (or is a BoP item) + + LootItems1 + + Macro + /script LootSlot(1); +/script ConfirmLootSlot(1); +/script LootSlot(2); +/script ConfirmLootSlot(2); +/script LootSlot(3); +/script ConfirmLootSlot(3); +/script LootSlot(4); +/script ConfirmLootSlot(4); +/script LootSlot(5); +/script ConfirmLootSlot(5); + Description + This will loot items if for some reason it's not done automatically (or is a BoP item) + + BGMoveToBGTab + + Macro + /click PVPParentFrameTab2 + Description + This will move the honor window to the BG tab + + BGClickType1 + + Macro + /click BattlegroundType1 + Description + This will click the first item in the BG list + + BGClickType2 + + Macro + /click BattlegroundType2 + Description + This will click the second item in the BG list + + BGClickType3 + + Macro + /click BattlegroundType3 + Description + This will click the third item in the BG list + + BGClickType4 + + Macro + /click BattlegroundType4 + Description + This will click the fourth item in the BG list + + BGClickType5 + + Macro + /click BattlegroundType5 + Description + This will click the fifth item in the BG list + + BGClickJoin + + Macro + /click PVPBattlegroundFrameJoinButton + Description + This will click the join button + + BGScrollDown + + Macro + /click PVPBattlegroundFrameTypeScrollFrameScrollBarScrollDownButton + Description + This will scroll down in the Battleground list + + LeaveParty + + Macro + /script LeaveParty(); + Description + This will leave a party/raid + + ReleaseCorpse + + Macro + /script RepopMe(); + Description + This will release your corpse after you die + + JoinBattlefield + + Macro + /run JoinBattlefield(0); + Description + This will queue you for the battleground + + LeaveBattlefield + + Macro + /script LeaveBattlefield(); + Description + This will make you leave the battleground + + AcceptBattlefield + + Macro + /script AcceptBattlefieldPort(1,1); + Description + This will accept the battleground queue + + Resurrect + + Macro + /script RetrieveCorpse(); + Description + This will resurrect your body + + Dismount + + Macro + /dismount + Description + This will dismount + + CancelSwiftFlightForm + + Macro + /cancelaura Swift Flight Form + Description + This will dismount + + CancelFlightForm + + Macro + /cancelaura Flight Form + Description + This will dismount + + ClickFirstButton + + Macro + /run if StaticPopup1:IsVisible() then StaticPopup_OnClick(StaticPopup1, 1) end + Description + This will click a dialogue box. (useful for auto-joining WG or accepting a BoP button) + + PetFollow + + Macro + /petfollow + Description + This will make your pet follow or stop attack. + + Follow + + Macro + /follow + Description + This will make you follow the selected target. + + ReplyKK + + Macro + /r kk + Description + This will reply to the previous whisper with kk. + + ReplyOMW + + Macro + /r omw + Description + This will reply to the previous whisper with omw. + + StartAttack + + Macro + /startattack + Description + Starts your auto attack. + + + diff --git a/Mage.png b/Mage.png new file mode 100644 index 0000000..3db1ae8 Binary files /dev/null and b/Mage.png differ diff --git a/Mage_Small.gif b/Mage_Small.gif new file mode 100644 index 0000000..71325dc Binary files /dev/null and b/Mage_Small.gif differ diff --git a/Mail.png b/Mail.png new file mode 100644 index 0000000..946efb5 Binary files /dev/null and b/Mail.png differ diff --git a/MailAction.xib b/MailAction.xib new file mode 100644 index 0000000..3cd095c --- /dev/null +++ b/MailAction.xib @@ -0,0 +1,1008 @@ + + + + 1050 + 10D573 + 762 + 1038.29 + 460.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 762 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + MailActionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{32, 1}, {222, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 1044 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{7, 5}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {338, 33} + + NSView + + + YES + + + + + YES + + + disableButton + + + + 94 + + + + disableAction: + + + + 95 + + + + view + + + + 96 + + + + content: profiles + + + + + + content: profiles + content + profiles + 2 + + + 106 + + + + contentObjects: profiles + + + + + + contentObjects: profiles + contentObjects + profiles + + 2 + + + 112 + + + + contentValues: profiles.name + + + + + + contentValues: profiles.name + contentValues + profiles.name + + 2 + + + 113 + + + + profilesPopUp + + + + 114 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + 79 + + + YES + + + + + + 80 + + + + + 97 + + + YES + + + + + + 98 + + + YES + + + + + + 99 + + + YES + + + + + + + + 100 + + + + + 101 + + + + + 102 + + + + + 103 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 100.IBPluginDependency + 101.IBPluginDependency + 102.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + 97.IBPluginDependency + 98.IBPluginDependency + 99.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{796, 460}, {338, 33}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 114 + + + + YES + + ActionController + NSObject + + YES + + YES + disableAction: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ActionController.h + + + + MailActionController + ActionController + + profilesPopUp + NSPopUpButton + + + IBProjectSource + MailActionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + NSStopProgressTemplate + + + YES + {9, 8} + {7, 2} + {11, 11} + + + + diff --git a/MailActionController.h b/MailActionController.h new file mode 100644 index 0000000..0ba1bdb --- /dev/null +++ b/MailActionController.h @@ -0,0 +1,39 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: MailActionController.h 435 2010-04-23 19:01:10Z ootoaoo $ + * + */ + +#import +#import "ActionController.h" + +@interface MailActionController : ActionController { + IBOutlet NSPopUpButton *profilesPopUp; + + NSArray *_profiles; +} + ++ (id)mailActionControllerWithProfiles: (NSArray*)profiles; + +@property (readwrite, copy) NSArray *profiles; + +@end diff --git a/MailActionController.m b/MailActionController.m new file mode 100644 index 0000000..ec091d3 --- /dev/null +++ b/MailActionController.m @@ -0,0 +1,110 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: MailActionController.m 435 2010-04-23 19:01:10Z ootoaoo $ + * + */ + +#import "MailActionController.h" +#import "ActionController.h" +#import "FileObject.h" + +@implementation MailActionController : ActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"MailAction" owner: self]) { + PGLog(@"Error loading MailAction.nib."); + _profiles = nil; + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithProfiles: (NSArray*)profiles{ + self = [self init]; + if (self != nil) { + self.profiles = profiles; + + if ( [profiles count] == 0 ){ + [self removeBindings]; + + NSMenu *menu = [[[NSMenu alloc] initWithTitle: @"No Profiles"] autorelease]; + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"Create a mail action on the profile tab first!" action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setTag:0]; + [menu addItem: item]; + + [profilesPopUp setMenu:menu]; + } + } + return self; +} + ++ (id)mailActionControllerWithProfiles: (NSArray*)profiles{ + return [[[MailActionController alloc] initWithProfiles: profiles] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [profilesPopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [profilesPopUp unbind: binding]; + } +} + +@synthesize profiles = _profiles; + +- (IBAction)validateState: (id)sender { + +} + +- (void)setStateFromAction: (Action*)action{ + + for ( NSMenuItem *item in [profilesPopUp itemArray] ){ + if ( [[(FileObject*)[item representedObject] UUID] isEqualToString:[action value]] ){ + [profilesPopUp selectItem:item]; + break; + } + } + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Mail value:nil]; + id value = [(FileObject*)[[profilesPopUp selectedItem] representedObject] UUID]; + + [action setEnabled: self.enabled]; + [action setValue: value]; + + return action; +} + +@end diff --git a/MailActionProfile.h b/MailActionProfile.h new file mode 100644 index 0000000..c08ea8c --- /dev/null +++ b/MailActionProfile.h @@ -0,0 +1,54 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: MailActionProfile.h 315 2010-04-17 04:12:45Z Tanaris4 $ + * + */ + +#import +#import "Profile.h" + +@interface MailActionProfile : Profile { + + BOOL _qualityPoor, _qualityCommon, _qualityUncommon, _qualityRare, _qualityEpic, _qualityLegendary; + BOOL _includeItems, _excludeItems; + NSString *_itemsToInclude, *_itemsToExclude, *_sendTo; +} + ++ (id)mailActionProfileWithName: (NSString*)name; + +@property (readwrite, assign) BOOL qualityPoor; +@property (readwrite, assign) BOOL qualityCommon; +@property (readwrite, assign) BOOL qualityUncommon; +@property (readwrite, assign) BOOL qualityRare; +@property (readwrite, assign) BOOL qualityEpic; +@property (readwrite, assign) BOOL qualityLegendary; +@property (readwrite, assign) BOOL includeItems; +@property (readwrite, assign) BOOL excludeItems; +@property (readwrite, copy) NSString *itemsToInclude; +@property (readwrite, copy) NSString *itemsToExclude; +@property (readwrite, copy) NSString *sendTo; + +// returns an array of the names trimmed +- (NSArray*)inclusions; +- (NSArray*)exclusions; + +@end \ No newline at end of file diff --git a/MailActionProfile.m b/MailActionProfile.m new file mode 100644 index 0000000..0f66484 --- /dev/null +++ b/MailActionProfile.m @@ -0,0 +1,172 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: MailActionProfile.m 315 2010-04-17 04:12:45Z Tanaris4 $ + * + */ + +#import "MailActionProfile.h" + +@implementation MailActionProfile + +- (id) init +{ + self = [super init]; + if (self != nil) { + _qualityPoor = NO; + _qualityCommon = YES; + _qualityUncommon = YES; + _qualityRare = YES; + _qualityEpic = YES; + _qualityLegendary = YES; + _includeItems = NO; + _excludeItems = YES; + _itemsToInclude = @"*"; + _itemsToExclude = @"Hearthstone, Mining Pick, Strong Fishing Pole"; + _sendTo = @""; + + _observers = [[NSArray arrayWithObjects: + @"qualityPoor", + @"qualityCommon", + @"qualityUncommon", + @"qualityRare", + @"qualityEpic", + @"qualityLegendary", + @"includeItems", + @"excludeItems", + @"itemsToInclude", + @"itemsToExclude", + @"sendTo", + nil] retain]; + } + return self; +} + ++ (id)mailActionProfileWithName: (NSString*)name { + return [[[MailActionProfile alloc] initWithName: name] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder{ + self = [self init]; + if ( self ) { + + self.qualityPoor = [[decoder decodeObjectForKey: @"QualityPoor"] boolValue]; + self.qualityCommon = [[decoder decodeObjectForKey: @"QualityCommon"] boolValue]; + self.qualityUncommon = [[decoder decodeObjectForKey: @"QualityUncommon"] boolValue]; + self.qualityRare = [[decoder decodeObjectForKey: @"QualityRare"] boolValue]; + self.qualityEpic = [[decoder decodeObjectForKey: @"QualityEpic"] boolValue]; + self.qualityLegendary = [[decoder decodeObjectForKey: @"QualityLegendary"] boolValue]; + + self.includeItems = [[decoder decodeObjectForKey:@"IncludeItems"] boolValue]; + self.excludeItems = [[decoder decodeObjectForKey:@"ExcludeItems"] boolValue]; + + self.itemsToInclude = [decoder decodeObjectForKey:@"ItemsToInclude"]; + self.itemsToExclude = [decoder decodeObjectForKey:@"ItemsToExclude"]; + + self.sendTo = [decoder decodeObjectForKey:@"SendTo"]; + + [super initWithCoder:decoder]; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)coder{ + + [super encodeWithCoder:coder]; + + [coder encodeObject: [NSNumber numberWithBool:self.qualityPoor] forKey:@"QualityPoor"]; + [coder encodeObject: [NSNumber numberWithBool:self.qualityCommon] forKey:@"QualityCommon"]; + [coder encodeObject: [NSNumber numberWithBool:self.qualityUncommon] forKey:@"QualityUncommon"]; + [coder encodeObject: [NSNumber numberWithBool:self.qualityRare] forKey:@"QualityRare"]; + [coder encodeObject: [NSNumber numberWithBool:self.qualityEpic] forKey:@"QualityEpic"]; + [coder encodeObject: [NSNumber numberWithBool:self.qualityLegendary] forKey:@"QualityLegendary"]; + + [coder encodeObject: [NSNumber numberWithBool:self.includeItems] forKey:@"IncludeItems"]; + [coder encodeObject: [NSNumber numberWithBool:self.excludeItems] forKey:@"ExcludeItems"]; + + [coder encodeObject: self.itemsToInclude forKey:@"ItemsToInclude"]; + [coder encodeObject: self.itemsToExclude forKey:@"ItemsToExclude"]; + [coder encodeObject: self.sendTo forKey:@"SendTo"]; +} + +- (id)copyWithZone:(NSZone *)zone{ + MailActionProfile *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.qualityPoor = self.qualityPoor; + copy.qualityCommon = self.qualityCommon; + copy.qualityUncommon = self.qualityCommon; + copy.qualityRare = self.qualityRare; + copy.qualityEpic = self.qualityEpic; + copy.qualityLegendary = self.qualityLegendary; + + copy.includeItems = self.includeItems; + copy.excludeItems = self.excludeItems; + + copy.itemsToInclude = self.itemsToInclude; + copy.itemsToExclude = self.itemsToExclude; + copy.sendTo = self.sendTo; + + return copy; +} + +@synthesize qualityPoor = _qualityPoor; +@synthesize qualityCommon = _qualityCommon; +@synthesize qualityUncommon = _qualityUncommon; +@synthesize qualityRare = _qualityRare; +@synthesize qualityEpic = _qualityEpic; +@synthesize qualityLegendary = _qualityLegendary; +@synthesize includeItems = _includeItems; +@synthesize excludeItems = _excludeItems; +@synthesize itemsToInclude = _itemsToInclude; +@synthesize itemsToExclude = _itemsToExclude; +@synthesize sendTo = _sendTo; + +- (NSArray*)inclusions{ + + if ( !self.includeItems ){ + return nil; + } + + NSMutableArray *final = [NSMutableArray array]; + NSArray *list = [self.itemsToInclude componentsSeparatedByString:@","]; + + for ( NSString *str in list ){ + [final addObject:[str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]]; + } + + return final; +} + +- (NSArray*)exclusions{ + if ( !self.excludeItems ){ + return nil; + } + + NSMutableArray *final = [NSMutableArray array]; + NSArray *list = [self.itemsToExclude componentsSeparatedByString:@","]; + + for ( NSString *str in list ){ + [final addObject:[str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]]]; + } + + return final; +} +@end \ No newline at end of file diff --git a/MainMenu.xib b/MainMenu.xib new file mode 100644 index 0000000..4b8a0ec --- /dev/null +++ b/MainMenu.xib @@ -0,0 +1,19265 @@ + + + + 1050 + 10F569 + 762 + 1038.29 + 461.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 762 + + + YES + + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + NoAccessApplication + + + FirstResponder + + + NSApplication + + + AMainMenu + + YES + + + Pocket Gnome + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + Pocket Gnome + + YES + + + About Pocket Gnome + + 2147483647 + + + + + + YES + Check for updates... + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences… + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + Services + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide Pocket Gnome + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit Pocket Gnome + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + File + + 1048576 + 2147483647 + + + submenuAction: + + File + + YES + + + Main Window + n + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close + w + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + Edit + + YES + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1179648 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Delete + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + Find + + YES + + + Find… + f + 1048576 + 2147483647 + + + 1 + + + + Find Next + g + 1048576 + 2147483647 + + + 2 + + + + Find Previous + G + 1179648 + 2147483647 + + + 3 + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + 7 + + + + Jump to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling and Grammar + + 1048576 + 2147483647 + + + submenuAction: + + Spelling and Grammar + + YES + + + Show Spelling… + : + 1048576 + 2147483647 + + + + + + Check Spelling + ; + 1048576 + 2147483647 + + + + + + Check Spelling While Typing + + 1048576 + 2147483647 + + + + + + Check Grammar With Spelling + + 1048576 + 2147483647 + + + + + + + + + Substitutions + + 1048576 + 2147483647 + + + submenuAction: + + Substitutions + + YES + + + Smart Copy/Paste + f + 1048576 + 2147483647 + + + 1 + + + + Smart Quotes + g + 1048576 + 2147483647 + + + 2 + + + + Smart Links + G + 1179648 + 2147483647 + + + 3 + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + Speech + + YES + + + Start Speaking + + 1048576 + 2147483647 + + + + + + Stop Speaking + + 1048576 + 2147483647 + + + + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + Window + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + _NSMainMenu + + + 4367 + 2 + {{212, 832}, {749, 200}} + 1677721600 + Main + NSWindow + + + 9859C378-9173-4C79-AE07-6BACF90576AD + + + YES + YES + YES + YES + 1 + 1 + + YES + + YES + 07725E07-8272-45B3-8E61-4F0DE5CB6FA3 + 1AB5F1BB-1F41-4416-ABA3-968123DB2AA9 + 1EC440B1-046C-46D8-8B82-5AFAE091B652 + 9EE3016C-0962-4579-8A78-D9D7C0ADB621 + A203409D-7D49-42C3-9426-D16B9D2DA37A + A3C977D0-AC84-4970-ADF4-9EE1E7EE4C52 + AC3CE7D1-FD9A-4988-8CAE-0407AAD23ADF + B2A74294-0FE0-4D41-B504-51CA3ED45339 + B63A3426-1473-4336-8F1D-5BCB25041F68 + C8D3D151-66DC-4B26-9227-FD886A23058B + F6035D3E-470C-423D-A669-9427AFE6E2BB + FFFAE74F-76CD-461B-8798-3C00CA631D4A + NSToolbarCustomizeToolbarItem + NSToolbarFlexibleSpaceItem + NSToolbarSeparatorItem + NSToolbarSpaceItem + + + YES + + + 07725E07-8272-45B3-8E61-4F0DE5CB6FA3 + + Stats + Stats + + + + NSImage + Ability_DualWieldSpecialization + + + + {0, 0} + {0, 0} + YES + YES + 14 + YES + 0 + + + + 1AB5F1BB-1F41-4416-ABA3-968123DB2AA9 + + Memory + Memory + + + + NSImage + INV_Misc_Orb_05 + + + + {0, 0} + {0, 0} + YES + YES + 10 + YES + 0 + + + + 1EC440B1-046C-46D8-8B82-5AFAE091B652 + + Spells + Spells + + + + NSImage + Spell_FireResistanceTotem_01 + + + + {0, 0} + {0, 0} + YES + YES + 3 + YES + 0 + + + + 9EE3016C-0962-4579-8A78-D9D7C0ADB621 + + Bot + Start/Stop Bot + + + + NSImage + Spell_Holy_MindVision + + + + {0, 0} + {0, 0} + YES + YES + 1 + YES + 0 + + + + A203409D-7D49-42C3-9426-D16B9D2DA37A + + PvP + PvP + + + + NSImage + PVP + + + + {0, 0} + {0, 0} + YES + YES + 16 + YES + 0 + + + + A3C977D0-AC84-4970-ADF4-9EE1E7EE4C52 + + Settings + Settings + + + + NSImage + INV_Misc_Gear_01 + + + + {0, 0} + {0, 0} + YES + YES + 9 + YES + 0 + + + + AC3CE7D1-FD9A-4988-8CAE-0407AAD23ADF + + Chat + Chat Log + + + + NSImage + Trade_Engraving + + + + {0, 0} + {0, 0} + YES + YES + 12 + YES + 0 + + + + B2A74294-0FE0-4D41-B504-51CA3ED45339 + + Player + Player + + + + NSImage + Ability_Warrior_Revenge + + + + {0, 0} + {0, 0} + YES + YES + 2 + YES + 0 + + + + B63A3426-1473-4336-8F1D-5BCB25041F68 + + Objects + Objects + + + + NSImage + INV_Misc_Head_Dragon_Blue + + + + {0, 0} + {0, 0} + YES + YES + 15 + YES + 0 + + + + C8D3D151-66DC-4B26-9227-FD886A23058B + + Routes + Routes + + + + NSImage + Ability_Rogue_Sprint + + + + {0, 0} + {0, 0} + YES + YES + 6 + YES + 0 + + + + F6035D3E-470C-423D-A669-9427AFE6E2BB + + Behavior + Behavior + + + + NSImage + Spell_Nature_PoisonCleansingTotem + + + + {0, 0} + {0, 0} + YES + YES + 7 + YES + 0 + + + + FFFAE74F-76CD-461B-8798-3C00CA631D4A + + Profiles + Profiles + + + + NSImage + Spell_Holy_PrayerofSpirit + + + + {0, 0} + {0, 0} + YES + YES + 17 + YES + 0 + + + NSToolbarCustomizeToolbarItem + Customize + Customize + Customize Toolbar + + + NSImage + NSToolbarCustomizeToolbarItemImage + + + runToolbarCustomizationPalette: + {0, 0} + {0, 0} + YES + YES + -1 + YES + 0 + + + NSToolbarFlexibleSpaceItem + + Flexible Space + + + + + + {1, 5} + {20000, 32} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + NSToolbarSeparatorItem + + Separator + + + + + + {12, 5} + {12, 1000} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + NSToolbarSpaceItem + + Space + + + + + + {32, 5} + {32, 32} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + + + YES + + + + + + + + + + + + + + + + + + + YES + + + + + + + + + + + + + + + + + + + YES + + + {3.40282e+38, 3.40282e+38} + {700, 200} + + + 256 + + YES + + + 18 + + YES + + + 256 + {{1, 1}, {748, 179}} + + + + {{-1, 20}, {750, 181}} + + {0, 0} + + 67239424 + 0 + Box + + LucidaGrande + 11 + 3100 + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 2 + MC4yNTA5ODA0MDcgMC4yNTA5ODA0MDcgMC4yNTA5ODA0MDcAA + + + 2 + MC45MDk4MDM5ODY1IDAuOTA5ODAzOTg2NSAwLjkwOTgwMzk4NjUAA + + + + + 292 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {20, 20} + + YES + + 130560 + 33554432 + + NSImage + off + + 0 + 0 + 0 + NO + + YES + + + + 292 + {{17, 3}, {136, 14}} + + YES + + 67239488 + 272761856 + Memory Access Invalid + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2ODY1AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 290 + {{284, 3}, {399, 14}} + + YES + + 67239488 + 71435264 + + + + + + + + + {749, 200} + + {{0, 0}, {1920, 1178}} + {700, 277} + {3.40282e+38, 3.40282e+38} + MainWindow + + + Controller + + + BotController + + + ChatController + + + PlayerDataController + + + MemoryViewController + + + WaypointController + + + MovementController + + + MobController + + + CombatController + + + SpellController + + + AuraController + + + NodeController + + + InventoryController + + + ProcedureController + + + RuleEditor + + + 9 + 2 + {{196, 68}, {749, 477}} + 1677721600 + Rule Editor + NSPanel + + {3.40282e+38, 3.40282e+38} + {749, 477} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {707, 248} + + YES + + + 256 + {707, 17} + + + + + + -2147483392 + {{-26, 0}, {16, 17}} + + + + YES + + Conditions + 704 + 640 + 10000 + + 75628096 + 2048 + Conditions + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + YES + + 6 + System + controlBackgroundColor + + + + + 1 + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 38 + 1388314624 + + + 4 + 15 + 0 + NO + 1 + + + {{1, 17}, {707, 248}} + + + + + 4 + + + + -2147483392 + {{624, 17}, {15, 95}} + + + _doScroller: + 0.99193549156188965 + + + + -2147483392 + {{1, 163}, {638, 15}} + + 1 + + _doScroller: + 0.99222397804260254 + + + + 2304 + + YES + + + {{1, 0}, {707, 17}} + + + + + 4 + + + + {{20, 163}, {709, 266}} + + + 562 + + + + + + QSAAAEEgAABCIAAAQiAAAA + + + + 268 + {{17, 440}, {119, 17}} + + YES + + 67239488 + 272630784 + Match Conditions: + + + + + + + + + 268 + {{139, 434}, {88, 24}} + + YES + + -2080244224 + 0 + + LucidaGrande + 13 + 16 + + + + YES + + All + YES + 0 + + + Any + 1 + 0 + + + 1 + + + + + 34 + + YES + + + 256 + + YES + + + 292 + {{67, 9}, {261, 24}} + + YES + + -2080244224 + 0 + + + + YES + + + NSImage + NSStopProgressTemplate + + + No Action + YES + 2 + + + 75 + Cast Spell + Cast a spell or use a class ability. + 1 + 0 + + + 75 + Use Item + Use an item from your inventory. + 2 + 0 + + + 75 + Macro + Use a macro. + 3 + 0 + + + 1 + + + + + 268 + {{15, 14}, {49, 17}} + + YES + + 67239488 + 272630784 + Action: + + + + + + + + + 290 + {{331, 8}, {367, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Spell 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Spell 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Spell 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + {{1, 1}, {713, 44}} + + + + {{17, 111}, {715, 46}} + + {0, 0} + + 67239424 + 0 + Action + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 34 + + YES + + + 256 + + YES + + + 266 + {{113, 10}, {372, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + + 6 + System + textColor + + + + + + + 268 + {{15, 13}, {93, 17}} + + YES + + 67239488 + 272630784 + Name of Rule: + + + + + + + + + 289 + {{601, 3}, {100, 32}} + + YES + + 67239424 + 134217728 + Save Rule + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 289 + {{487, 3}, {114, 32}} + + YES + + 67239424 + 134217728 + Cancel Rule + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + {{1, 1}, {713, 43}} + + + + {{17, 16}, {715, 45}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 265 + {{581, 433}, {151, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + YES + Add Condition + + 1048576 + 2147483647 + 1 + + NSImage + NSAddTemplate + + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + YES + General Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Health/Power + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + 1 + Status + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + 1 + Combat Count + + 1048576 + 2147483647 + + + _popUpItemAction: + 12 + + + + + YES + Aura Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Aura Existence & Type + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + 1 + Aura Stack Count + + 1048576 + 2147483647 + + + _popUpItemAction: + 7 + + + + + YES + Distance Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Distance to Target + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + 1 + Proximity Count + + 1048576 + 2147483647 + + + _popUpItemAction: + 13 + + + + + YES + Target Classification + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Target Type + + 1048576 + 2147483647 + + + _popUpItemAction: + 10 + + + + + 1 + Target Class + + 1048576 + 2147483647 + + + _popUpItemAction: + 11 + + + + + YES + Item Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Inventory Check + + 1048576 + 2147483647 + + + _popUpItemAction: + 5 + + + + + 1 + Temp. Weapon Enchants + + 1048576 + 2147483647 + + + _popUpItemAction: + 9 + + + + + YES + Spell Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Spell Cooldown + + 1048576 + 2147483647 + + + _popUpItemAction: + 14 + + + + + 1 + Last Spell Cast + + 1048576 + 2147483647 + + + _popUpItemAction: + 15 + + + + + YES + YES + + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + YES + Class Specific Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Totem Check + + 1048576 + 2147483647 + + + _popUpItemAction: + 8 + + + + + 1 + Combo Points + + 1048576 + 2147483647 + + + _popUpItemAction: + 6 + + + + + 1 + Runes + + 1048576 + 2147483647 + + + _popUpItemAction: + 16 + + + + YES + + YES + 1 + YES + YES + 2 + + + + + 268 + {{230, 433}, {110, 26}} + + YES + + -2076049856 + 2048 + + + 112345343 + 129 + + + 400 + 75 + + + YES + Testing + + 1048576 + 2147483647 + 1 + + NSImage + NSActionTemplate + + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Test Entire Rule + + 1048576 + 2147483647 + + NSImage + BinderGossipIcon + + + + _popUpItemAction: + + + + + Test Selected Condition + + 1048576 + 2147483647 + + NSImage + ActiveQuestIcon + + + + _popUpItemAction: + + + + + YES + 1 + YES + YES + 2 + + + + + 34 + + YES + + + 256 + + YES + + + 292 + {{68, 9}, {438, 24}} + + YES + + -2080244224 + 0 + + + + YES + + None + Spell requires no target + 2 + + + Self + Cast a spell on yourself + 1 + 0 + + + Enemy + Cast a spell on an enemy + 2 + YES + 0 + + + Friend + The friend that is your current target. + 3 + 0 + + + Add + Cast a spell on a nearby aggroed unit + 4 + 0 + + + Pet + Cast a spell on your pet + 5 + 0 + + + Friendlies + All friendlies become a potential target. + 6 + 0 + + + Pat + A mob that you're not in combat with. + 7 + 0 + + + 2 + 1 + + + + + 268 + {{15, 14}, {50, 17}} + + YES + + 67239488 + 272630784 + Target: + + + + + + + + + -2147483380 + {{509, 13}, {98, 17}} + + YES + + 68288064 + 272630784 + Select a target! + + + + + 1 + MSAwIDAAA + + + + + {{1, 1}, {713, 44}} + + + + {{17, 63}, {715, 46}} + + {0, 0} + + 67239424 + 0 + Action + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {749, 477} + + + {{0, 0}, {1920, 1178}} + {749, 499} + {3.40282e+38, 3.40282e+38} + RulesEditor + + + + 268 + + YES + + + 268 + {{200, 113}, {386, 34}} + + YES + + 67239424 + 272891904 + This version of {name} is confirmed to work with WoW 2.4.1. + + + + + + + + + 268 + {{179, 155}, {397, 22}} + + YES + + 67239488 + 272630784 + {name} is here to help! + + LucidaGrande + 18 + 16 + + + + + + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{182, 132}, {13, 13}} + + YES + + 130560 + 33554432 + + NSImage + good + + 0 + 0 + 0 + NO + + YES + + + + -2147483380 + {{512, 18}, {75, 19}} + + YES + + -2080244224 + 134217728 + Open Site + + LucidaGrande + 12 + 16 + + + -2038152961 + 164 + + + 400 + 75 + + + + + -2147483380 + {{188, 21}, {319, 14}} + + YES + + 67239488 + 272761856 + For the latest updates, visit our site: + + + + + + + + + 12 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{0, -7}, {182, 211}} + + YES + + 130560 + 33554432 + + NSImage + NSApplicationIcon + + 0 + 3 + 0 + NO + + YES + + + {607, 197} + NSView + + + + 268 + + YES + + + 18 + {{13, 10}, {714, 397}} + + + YES + + 1 + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{342, 131}, {15, 22}} + + YES + + 68025888 + 131072 + + + 6 + 6 + 60 + 1 + YES + + + + + 268 + {{15, 134}, {130, 18}} + + YES + + 67239424 + 131072 + Enable Jumping. + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{201, 133}, {46, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + YES + + YES + NSColor + NSFont + NSOriginalFont + NSParagraphStyle + + + YES + + + + + 4 + 2 + + + + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + YES + + + YES + + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{253, 131}, {15, 22}} + + YES + + 68025888 + 131072 + + + 2 + 2 + 30 + 1 + YES + + + + + 268 + {{290, 133}, {46, 19}} + + YES + + 343014977 + 138544128 + + + + YES + + YES + allowsFloats + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + . + + , + + + + 0 + + + + 0 + + + + + 0 + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{271, 136}, {20, 14}} + + YES + + 67239488 + 272761856 + to + + + + + + + + + 268 + {{360, 136}, {60, 14}} + + YES + + 67239488 + 272761856 + seconds. + + + + + + + + + 268 + {{36, 31}, {485, 42}} + + YES + + 67239424 + 272891904 + Use the keyboard arrow keys to turn, rather than manually set the character's direction. Movement will appear more natural and less mechanical, but turns are slower and wider. Click to move utilizes the built in click to move feature, it will be the most accurate. + + LucidaGrande + 9 + 3614 + + + + + + + + + 268 + {{36, 97}, {485, 28}} + + YES + + 67239424 + 272891904 + Jumping requires the next waypoint be farther away (in yards) than your current speed. This ensures that you do not jump past a sharp turn or skip a waypoint while in the air. + + + + + + + + + 268 + {{129, 136}, {74, 14}} + + YES + + 68288064 + 272761856 + Jump every + + + + + + + + + 268 + {{111, 77}, {236, 22}} + + YES + + -2076049856 + 133120 + + + 109199615 + 129 + + + 400 + 75 + + + Normal (Mouse movements) + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Keyboard Turning (does not work w/flying) + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Click to Move + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{16, 83}, {93, 14}} + + YES + + 68288064 + 272761856 + Movement Type: + + + + + + + + + 268 + {{18, 151}, {485, 18}} + + YES + + 67239424 + 272891904 + For the best experience, disable jumping (especially when flying) and use click to move. + + + + + + + + {{1, 1}, {680, 173}} + + + + {{6, 84}, {682, 189}} + + {0, 0} + + 67239424 + 0 + Movement + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{16, 32}, {427, 18}} + + YES + + -2080244224 + 0 + Check for updates on application launch (highly recommended). + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 12}, {386, 18}} + + YES + + -2080244224 + 0 + Send Growl notifications (only works if Growl is installed). + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {680, 58}} + + + + {{6, 277}, {682, 74}} + + {0, 0} + + 67239424 + 0 + General + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{189, 21}, {192, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 268 + {{15, 28}, {172, 17}} + + YES + + 68288064 + 272630784 + WoW Instance to attach to: + + + + + + + + + 268 + {{383, 23}, {197, 17}} + + YES + + 68288064 + 272892928 + Note: This may take a few seconds to attach + + + + + + + + {{1, 1}, {680, 58}} + + + + {{6, 6}, {682, 74}} + + {0, 0} + + 67239424 + 0 + Miscellaneous + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {694, 351}} + + General + + + + + 2 + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{106, 14}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 15 + 3 + 7 + 0.0 + 13 + 0 + YES + NO + + + + + 268 + {{15, 15}, {86, 14}} + + YES + + 67239488 + 272761856 + Not in Combat: + + + + + + + + + 268 + {{450, 16}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + {{1, 1}, {680, 41}} + + + + {{6, 294}, {682, 57}} + + {0, 0} + + 67239424 + 0 + Blacklist Triggers + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{253, 9}, {420, 28}} + + YES + + 67239424 + 272760832 + + + Ignore units that are more than this number of yards above or below your character. In PvP, this value is strictly enforced, even if you are attacked first. + + + + + + + + 268 + {{15, 16}, {84, 14}} + + YES + + 67239488 + 272761856 + Vertical Offset: + + + + + + + + + 268 + {{104, 13}, {96, 19}} + + YES + + -1804468671 + -2008939520 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0.00 + + + . + + , + + + + 0.00 + + + + 0.00 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 10 + + YES + 1 + + + + + + + 268 + {{205, 16}, {39, 14}} + + YES + + 67239488 + 272761856 + yards + + + + + + + + {{1, 1}, {680, 44}} + + + + {{6, 160}, {682, 46}} + + {0, 0} + + 67239424 + 0 + Vertical Blacklist + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{131, 39}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 90 + 5 + 45 + 0.0 + 18 + 0 + YES + NO + + + + + 268 + {{40, 40}, {86, 14}} + + YES + + 67239488 + 272761856 + Not In Combat: + + + + + + + + + 268 + {{475, 40}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + + 268 + {{131, 14}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 90 + 5 + 20 + 0.0 + 18 + 0 + YES + NO + + + + + 268 + {{15, 16}, {111, 14}} + + YES + + 67239488 + 272761856 + Not In Line of Sight: + + + + + + + + + 268 + {{475, 16}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + {{1, 1}, {680, 66}} + + + + {{6, 208}, {682, 82}} + + {0, 0} + + 67239424 + 0 + Blacklist Durations + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{107, 63}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 10 + 1 + 3 + 0.0 + 10 + 0 + YES + NO + + + + + 268 + {{15, 66}, {86, 14}} + + YES + + 67239488 + 272761856 + Failed to Reach: + + + + + + + + + 268 + {{451, 66}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + + 268 + {{107, 14}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 10 + 1 + 2 + 0.0 + 10 + 0 + YES + NO + + + + + 268 + {{26, 15}, {77, 14}} + + YES + + 67239488 + 272761856 + Made Me Fall: + + + + + + + + + 268 + {{451, 15}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + + 268 + {{107, 39}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 10 + 1 + 4 + 0.0 + 10 + 0 + YES + NO + + + + + 268 + {{21, 41}, {81, 14}} + + YES + + 67239488 + 272761856 + Failed to Loot: + + + + + + + + + 268 + {{451, 41}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + {{1, 1}, {680, 91}} + + + + {{6, 49}, {682, 107}} + + {0, 0} + + 67239424 + 0 + Mining and Herbalism + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {694, 351}} + + Blacklist + + + + + Item 2 + + + 256 + + YES + + + 268 + {{192, 334}, {309, 14}} + + YES + + 67239424 + 272760832 + This section allows you to set automatic log out features + + + + + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{189, 186}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{34, 154}, {241, 28}} + + YES + + 67239424 + 272760832 + Log out when ALL of your items reach the above durability percentage. + + + + + + + + + 268 + {{16, 188}, {167, 18}} + + YES + + 67239424 + 0 + Item durability reaches + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{248, 188}, {20, 17}} + + YES + + 67239424 + 272629760 + % + + + + + + + + + 268 + {{355, 188}, {167, 18}} + + YES + + 67239424 + 0 + Full inventory + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{375, 159}, {211, 28}} + + YES + + 67239424 + 272760832 + Log out when your inventory is full. + + + + + + + + + 268 + {{16, 123}, {137, 18}} + + YES + + 67239424 + 0 + After running for + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{149, 122}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0.0 + + + . + + , + + + + 0.0 + + + + 0.0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{208, 124}, {54, 17}} + + YES + + 67239424 + 272629760 + hours + + + + + + + + + 268 + {{34, 89}, {241, 28}} + + YES + + 67239424 + 272760832 + Stop the bot after running for the above length of time. + + + + + + + + + 268 + {{355, 123}, {134, 18}} + + YES + + 67239424 + 0 + Being stuck after + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{489, 121}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{375, 89}, {283, 28}} + + YES + + 67239424 + 272760832 + Log out after being stuck. Pocket Gnome will attempt to resume your route before quitting. + + + + + + + + + 268 + {{548, 121}, {122, 19}} + + YES + + 67239424 + 272629760 + recovery attempts + + + + + + + + + 268 + {{16, 52}, {167, 18}} + + YES + + 67239424 + 0 + Use hearthstone + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{34, 18}, {241, 28}} + + YES + + 67239424 + 272760832 + Should we use our heathstone before logging out? + + + + + + + + {{1, 1}, {680, 214}} + + + + {{6, 96}, {682, 230}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{192, 319}, {309, 14}} + + YES + + 67239424 + 138543104 + These settings will go into effect immediately. + + + + + + + + {{10, 33}, {694, 351}} + + + Log Out + + + + + Alarms + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{355, 188}, {167, 18}} + + YES + + 67239424 + 0 + On death + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{375, 159}, {211, 28}} + + YES + + 67239424 + 272760832 + Play an alarm after you die + + + + + + + + + 268 + {{16, 188}, {162, 18}} + + YES + + 67239424 + 0 + After being whispered + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{132, 64}, {76, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 32491 + + YES + 1 + + + + + + + 268 + {{34, 154}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm after being whispered by the same player multiple times! + + + + + + + + + 268 + {{238, 189}, {54, 17}} + + YES + + 67239424 + 272629760 + times + + + + + + + + + 268 + {{355, 123}, {134, 18}} + + YES + + 67239424 + 0 + Being stuck after + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{490, 121}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{549, 123}, {122, 19}} + + YES + + 67239424 + 272629760 + recovery attempts + + + + + + + + + 268 + {{375, 87}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm after being stuck + + + + + + + + + 268 + {{16, 123}, {269, 18}} + + YES + + 67239424 + 0 + After being flagged as AFK/Idle in a BG + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{34, 94}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm if you are flagged as AFK or Idle in a Battleground! + + + + + + + + + 268 + {{16, 66}, {110, 18}} + + YES + + 67239424 + 0 + If nearby mob + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{218, 67}, {74, 17}} + + YES + + 67239424 + 272629760 + is found + + + + + + + + + 268 + {{34, 31}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm if the nearby mob above is found! + + + + + + + + + 268 + {{179, 184}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + {{1, 1}, {680, 214}} + + + + {{6, 96}, {682, 230}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{206, 319}, {282, 14}} + + YES + + 67239424 + 138543104 + These settings will go into effect immediately. + + + + + + + + + 268 + {{206, 334}, {282, 14}} + + YES + + 67239424 + 272760832 + This section allows you to configure alarm settings! + + + + + + + + + 268 + {{314, 73}, {66, 20}} + + YES + + -2080244224 + 134348800 + Test Sound + + + -2033434369 + 162 + + + 400 + 75 + + + + {{10, 33}, {694, 351}} + + Alarms + + + + + Set up macros for all the /script commands! + + + 256 + + YES + + + 268 + {{-6, 334}, {706, 14}} + + YES + + 67239424 + 138543104 + By setting up a macro, PG will no longer send /script commands + + + + + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{15, 215}, {650, 51}} + + YES + + 67239424 + 138674176 + You no longer need to set up macros! All that is required is that ONE macro exists. PG will automatically replace that macro with whatever it needs to do (then set it back of course). + + + + + + + + {{1, 1}, {680, 305}} + + + + {{6, 5}, {682, 321}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {694, 351}} + + Macros + + + + + Item 6 + + + 256 + + YES + + + 268 + {{118, 298}, {454, 41}} + + 2 + YES + + 67239424 + 138412032 + Please note that none of these settings will have any effect if you have selected "Disable Logging" under the tab "Security" + + + + + + + + + 268 + {{42, 217}, {541, 28}} + + 2 + YES + + 67239424 + 272760832 + Makes the application more verbose in the system log. Unless you're trying to figure out a problem or a developer asked you to, there is no reason to enable this option. + + + + + + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{16, 32}, {87, 18}} + + YES + + -2080244224 + 0 + Dev + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 12}, {87, 18}} + + YES + + -2080244224 + 0 + Evaluate + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{118, 32}, {85, 18}} + + YES + + -2080244224 + 0 + Bindings + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{118.5, 12}, {84, 18}} + + YES + + -2080244224 + 0 + Macro + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{223, 32}, {94, 18}} + + YES + + -2080244224 + 0 + Movement + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{223, 12}, {94, 18}} + + YES + + -2080244224 + 0 + Waypoint + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{339, 32}, {91, 18}} + + YES + + -2080244224 + 0 + Condition + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{339, 12}, {91, 18}} + + YES + + -2080244224 + 0 + Rule + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{449, 32}, {84, 18}} + + YES + + -2080244224 + 0 + Blacklist + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{449, 12}, {84, 18}} + + YES + + -2080244224 + 0 + Statistics + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{561, 32}, {82, 18}} + + YES + + -2080244224 + 0 + Function + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{561, 12}, {82, 18}} + + YES + + -2080244224 + 0 + Memory + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {660, 58}} + + 2 + + + {{16, 118}, {662, 74}} + + 2 + {0, 0} + + 67239424 + 0 + Logging levels + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{17, 259}, {144, 18}} + + YES + + -2080244224 + 0 + Extended Logging + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{10, 33}, {694, 351}} + 2 + + Logging + + + + + + + 0 + YES + YES + + YES + + + + + {740, 413} + + NSView + + + YES + + + PlayersController + + + ActionMenusController + + + 31 + 2 + {{196, 264}, {416, 246}} + 1677721600 + Aura Tracker + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {415, 229} + + YES + + + 256 + {415, 17} + + + + + + -2147483392 + {{-26, 0}, {16, 17}} + + + + YES + + Order + 20 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + + + + 6 + System + headerColor + + + + + + 337772096 + 2048 + Text Cell + + + + + + YES + + + Order + YES + compare: + + + + ID + 56 + 40 + 1000 + + 75628096 + 2048 + ID + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + ID + YES + compare: + + + + Level + 31 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Lvl + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Level + YES + compare: + + + + Name + 219 + 40 + 1000 + + 75628096 + 2048 + [Stacks] Aura Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Name + YES + compare: + + + + TimeRemaining + 74 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Expires + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Expiration + YES + compare: + + + + Bytes + 163 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Bytes + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + Bytes + YES + compare: + + YES + + + 3 + 2 + + + 17 + 1455423488 + + + + YES + + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {415, 229}} + + + + + 4 + + + + -2147483392 + {{-100, -100}, {15, 299}} + + + _doScroller: + 37 + 0.1947367936372757 + + + + -2147483392 + {{-100, -100}, {283, 15}} + + 1 + + _doScroller: + 0.99647891521453857 + + + + 2304 + + YES + + + {{1, 0}, {415, 17}} + + + + + 4 + + + + {{-1, 0}, {417, 247}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {416, 246} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + AuraTrackerWindow + + + ChatLogController + + + QuestController + + + CorpseController + + + FishController + + + LootController + + + 31 + 2 + {{196, 271}, {1214, 239}} + 1677721600 + Cooldown Tracker + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {1214, 229} + + YES + + + 256 + {1214, 17} + + + + + + -2147483392 + {{531, 0}, {16, 17}} + + + + YES + + Address + 89 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Address + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Address + YES + compare: + + YES + + + ID + 15 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + ID + YES + compare: + + + + SpellName + 166 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Spell Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + SpellName + YES + compare: + + + + SpellID + 66 + 40 + 1000 + + 75628096 + 2048 + ID + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + SpellID + YES + compare: + + + + StartTime + 130 + 40 + 1000 + + 75628096 + 2048 + Start Time + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + StartTime + YES + compare: + + YES + + + Cooldown + 89 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Cooldown + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Cooldown + YES + compare: + + + + Bytes + 163 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Bytes + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + Bytes + YES + compare: + + YES + + + TimeRemaining + 126 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Time Remaining + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + GCD + 65 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + GCD (ms) + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + GCD + YES + compare: + + + + Unk + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Unk3 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk3 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Unk4 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk4 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Unk5 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk5 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + OriginalStartTime + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + OriginalStartTime + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + StartNotUsed + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + StartNotUsed + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + CD1 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + CD1 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + CD2 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + CD2 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Enabled + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Enabled + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + GCD + 63 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + GCD + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + 1455423488 + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {1214, 229}} + + + + + 4 + + + + -2147483392 + {{531, 17}, {15, 214}} + + + _doScroller: + 0.93449783325195312 + + + + -2147483392 + {{1, 231}, {1227, 15}} + + 1 + + _doScroller: + 0.99918568134307861 + + + + 2304 + + YES + + + {{1, 0}, {1214, 17}} + + + + + 4 + + + + {{-1, -7}, {1216, 247}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {1214, 239} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + CooldownTrackerWindow + + + OffsetController + + + MacroController + + + StatisticsController + + + EventController + + + BlacklistController + + + Player + + + WaypointActionEditor + + + 31 + 2 + {{196, 265}, {662, 245}} + 1677721600 + Combat Tracker + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {662, 229} + + YES + + + 256 + {662, 17} + + + + + + -2147483392 + {{401, 0}, {16, 17}} + + + + YES + + Level + 20 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Lvl + + + + + + 337772096 + 2048 + Text Cell + + + + + + YES + + + Level + YES + compare: + + + + Name + 134 + 40 + 1000 + + 75628096 + 2048 + Name + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Name + YES + compare: + + + + Race + 134 + 40 + 1000 + + 75628096 + 2048 + Race + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Race + YES + compare: + + + + Class + 107 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Class + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Class + YES + compare: + + + + Bytes + 163 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Bytes + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + Bytes + YES + compare: + + YES + + + Distance + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Distance + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Distance + YES + compare: + + + + Health + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Health + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Health + YES + compare: + + + + Weight + 118 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Weight + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Weight + YES + compare: + + + + 3 + 2 + + + 17 + 1455423488 + + + + YES + + + Weight + NO + compare: + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {662, 229}} + + + + + 4 + + + + -2147483392 + {{401, 17}, {15, 214}} + + + _doScroller: + 0.93449783325195312 + + + + -2147483392 + {{1, 231}, {521, 15}} + + 1 + + _doScroller: + 0.99250376224517822 + + + + 2304 + + YES + + + {{1, 0}, {662, 17}} + + + + + 4 + + + + {{-1, -1}, {664, 247}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {662, 245} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + CombatTrackerWindow + + + BindingsController + + + ObjectsController + + + SUUpdater + + + PvPController + + + FileController + + + ProfileController + + + + + YES + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + toggleContinuousSpellChecking: + + + + 222 + + + + undo: + + + + 223 + + + + copy: + + + + 224 + + + + checkSpelling: + + + + 225 + + + + paste: + + + + 226 + + + + stopSpeaking: + + + + 227 + + + + cut: + + + + 228 + + + + showGuessPanel: + + + + 230 + + + + redo: + + + + 231 + + + + selectAll: + + + + 232 + + + + startSpeaking: + + + + 233 + + + + delete: + + + + 235 + + + + performZoom: + + + + 240 + + + + performFindPanelAction: + + + + 241 + + + + centerSelectionInVisibleArea: + + + + 245 + + + + toggleGrammarChecking: + + + + 347 + + + + toggleSmartInsertDelete: + + + + 355 + + + + toggleAutomaticQuoteSubstitution: + + + + 356 + + + + toggleAutomaticLinkDetection: + + + + 357 + + + + hide: + + + + 367 + + + + hideOtherApplications: + + + + 368 + + + + terminate: + + + + 369 + + + + unhideAllApplications: + + + + 370 + + + + controller + + + + 660 + + + + memoryViewController + + + + 672 + + + + controller + + + + 764 + + + + playerData + + + + 766 + + + + movementController + + + + 775 + + + + controller + + + + 776 + + + + controller + + + + 799 + + + + mobController + + + + 805 + + + + memoryViewController + + + + 809 + + + + playerData + + + + 810 + + + + combatController + + + + 824 + + + + playerData + + + + 825 + + + + combatController + + + + 826 + + + + controller + + + + 827 + + + + movementController + + + + 839 + + + + controller + + + + 860 + + + + playerController + + + + 887 + + + + spellController + + + + 888 + + + + mobController + + + + 892 + + + + controller + + + + 894 + + + + nodeController + + + + 895 + + + + controller + + + + 896 + + + + dataSource + + + + 1777 + + + + delegate + + + + 1778 + + + + spellRuleTableView + + + + 1780 + + + + conditionMatchingSegment + + + + 1789 + + + + conditionResultTypeSegment + + + + 1790 + + + + spellController + + + + 1791 + + + + ruleNameText + + + + 1857 + + + + ruleEditor + + + + 1899 + + + + ruleEditorWindow + + + + 1901 + + + + saveRule: + + + + 1904 + + + + cancelRule: + + + + 1909 + + + + resultActionDropdown + + + + 1910 + + + + controller + + + + 2002 + + + + waypointController + + + + 2004 + + + + movementController + + + + 2005 + + + + mobController + + + + 2006 + + + + combatController + + + + 2007 + + + + spellController + + + + 2008 + + + + nodeController + + + + 2010 + + + + procedureController + + + + 2011 + + + + playerController + + + + 2021 + + + + botController + + + + 2022 + + + + auraController + + + + 2027 + + + + botController + + + + 2028 + + + + playerData + + + + 2029 + + + + itemController + + + + 2033 + + + + itemController + + + + 2034 + + + + setResultType: + + + + 2035 + + + + inventoryController + + + + 2036 + + + + mobController + + + + 2102 + + + + toolbarItemSelected: + + + + 2296 + + + + toolbarItemSelected: + + + + 2298 + + + + toolbarItemSelected: + + + + 2299 + + + + toolbarItemSelected: + + + + 2300 + + + + toolbarItemSelected: + + + + 2301 + + + + mainWindow + + + + 2303 + + + + botController + + + + 2304 + + + + spellController + + + + 2305 + + + + behaviorController + + + + 2306 + + + + routeController + + + + 2307 + + + + delegate + + + + 2327 + + + + botToolbarItem + + + + 2328 + + + + playerToolbarItem + + + + 2329 + + + + spellsToolbarItem + + + + 2331 + + + + routesToolbarItem + + + + 2334 + + + + behavsToolbarItem + + + + 2335 + + + + prefsToolbarItem + + + + 2336 + + + + delegate + + + + 2337 + + + + memoryViewController + + + + 2338 + + + + toolbarItemSelected: + + + + 2340 + + + + memoryToolbarItem + + + + 2341 + + + + botController + + + + 2343 + + + + botController + + + + 2344 + + + + botController + + + + 2345 + + + + mainBackgroundBox + + + + 2350 + + + + memoryAccessLight + + + + 2353 + + + + memoryAccessValidText + + + + 2356 + + + + currentStatusText + + + + 2360 + + + + botController + + + + 2361 + + + + botController + + + + 2362 + + + + spellController + + + + 2363 + + + + itemController + + + + 2364 + + + + controller + + + + 2366 + + + + memoryViewController + + + + 2367 + + + + playerController + + + + 2369 + + + + value: stateImage + + + + + + value: stateImage + value + stateImage + 2 + + + 2372 + + + + value: stateString + + + + + + value: stateString + value + stateString + 2 + + + 2374 + + + + movementController + + + + 2384 + + + + auraController + + + + 2385 + + + + movementController + + + + 2387 + + + + showAbout: + + + + 2395 + + + + aboutView + + + + 2396 + + + + settingsView + + + + 2397 + + + + showSettings: + + + + 2398 + + + + showSettings: + + + + 2399 + + + + mainToolbar + + + + 2400 + + + + aboutValidImage + + + + 2404 + + + + memoryViewController + + + + 2405 + + + + spellController + + + + 2406 + + + + value: values.SUCheckAtStartup + + + + + + value: values.SUCheckAtStartup + value + values.SUCheckAtStartup + 2 + + + 2422 + + + + launchWebsite: + + + + 2440 + + + + spellController + + + + 2445 + + + + minValue: values.MovementMinJumpTime + + + + + + minValue: values.MovementMinJumpTime + minValue + values.MovementMinJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 2539 + + + + value: values.MovementMaxJumpTime + + + + + + value: values.MovementMaxJumpTime + value + values.MovementMaxJumpTime + + YES + + YES + NSContinuouslyUpdatesValue + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + + 2 + + + 2540 + + + + maxValue: values.MovementMaxJumpTime + + + + + + maxValue: values.MovementMaxJumpTime + maxValue + values.MovementMaxJumpTime + 2 + + + 2541 + + + + value: values.MovementMinJumpTime + + + + + + value: values.MovementMinJumpTime + value + values.MovementMinJumpTime + + YES + + YES + NSContinuouslyUpdatesValue + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + + 2 + + + 2542 + + + + maxValue: values.MovementMaxJumpTime + + + + + + maxValue: values.MovementMaxJumpTime + maxValue + values.MovementMaxJumpTime + 2 + + + 2543 + + + + value: values.MovementMinJumpTime + + + + + + value: values.MovementMinJumpTime + value + values.MovementMinJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + 2 + + + 2544 + + + + minValue: values.MovementMinJumpTime + + + + + + minValue: values.MovementMinJumpTime + minValue + values.MovementMinJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 2547 + + + + value: values.MovementMaxJumpTime + + + + + + value: values.MovementMaxJumpTime + value + values.MovementMaxJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + 2 + + + 2548 + + + + enabled: shouldJump + + + + + + enabled: shouldJump + enabled + shouldJump + 2 + + + 2550 + + + + enabled: shouldJump + + + + + + enabled: shouldJump + enabled + shouldJump + 2 + + + 2552 + + + + controller + + + + 2554 + + + + chatController + + + + 2557 + + + + playerData + + + + 2559 + + + + controller + + + + 2561 + + + + playerData + + + + 2562 + + + + memoryViewController + + + + 2563 + + + + playersController + + + + 2566 + + + + playersController + + + + 2569 + + + + combatController + + + + 2585 + + + + movementController + + + + 2586 + + + + chatController + + + + 2603 + + + + botController + + + + 2639 + + + + controller + + + + 2641 + + + + value: values.GlobalSendGrowlNotifications + + + + + + value: values.GlobalSendGrowlNotifications + value + values.GlobalSendGrowlNotifications + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 2662 + + + + mobController + + + + 2664 + + + + makeKeyAndOrderFront: + + + + 2666 + + + + performClose: + + + + 2684 + + + + displayPatternValue1: appName + + + + + + displayPatternValue1: appName + displayPatternValue1 + appName + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@ is here to help! + + + + + + + + 2 + + + 2714 + + + + title: appName + + + + + + title: appName + title + appName + 2 + + + 2717 + + + + addCondition: + + + + 2918 + + + + spellRuleTypeDropdown + + + + 3087 + + + + enabled: validSelection + + + + + + enabled: validSelection + enabled + validSelection + 2 + + + 3094 + + + + enabled2: playerIsValid + + + + + + enabled2: playerIsValid + enabled2 + playerIsValid + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 3095 + + + + enabled: playerIsValid + + + + + + enabled: playerIsValid + enabled + playerIsValid + 2 + + + 3096 + + + + testRule: + + + + 3097 + + + + testCondition: + + + + 3098 + + + + controller + + + + 3116 + + + + spellController + + + + 3117 + + + + inventoryController + + + + 3118 + + + + controller + + + + 3137 + + + + aurasPanel + + + + 3151 + + + + aurasPanelTable + + + + 3152 + + + + delegate + + + + 3154 + + + + dataSource + + + + 3155 + + + + controller + + + + 3166 + + + + chatLogToolbarItem + + + + 3169 + + + + chatLogController + + + + 3170 + + + + toolbarItemSelected: + + + + 3171 + + + + questController + + + + 3173 + + + + controller + + + + 3174 + + + + playerDataController + + + + 3175 + + + + controller + + + + 3177 + + + + corpseController + + + + 3178 + + + + corpseController + + + + 3179 + + + + controller + + + + 3185 + + + + nodeController + + + + 3186 + + + + playerController + + + + 3187 + + + + botController + + + + 3189 + + + + itemController + + + + 3190 + + + + controller + + + + 3193 + + + + itemController + + + + 3194 + + + + lootController + + + + 3195 + + + + spellController + + + + 3196 + + + + chatController + + + + 3198 + + + + mobController + + + + 3207 + + + + nodeController + + + + 3208 + + + + playersController + + + + 3209 + + + + cooldownPanel + + + + 3230 + + + + cooldownPanelTable + + + + 3231 + + + + delegate + + + + 3232 + + + + dataSource + + + + 3233 + + + + wowInstancePopUpButton + + + + 3282 + + + + selectedObject: selectedPID + + + + + + selectedObject: selectedPID + selectedObject + selectedPID + 2 + + + 3291 + + + + pidSelected: + + + + 3292 + + + + lootController + + + + 3295 + + + + playerDataController + + + + 3296 + + + + conditionTargetType + + + + 3310 + + + + selectedTag: values.MovementType + + + + + + selectedTag: values.MovementType + selectedTag + values.MovementType + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3345 + + + + offsetController + + + + 3347 + + + + controller + + + + 3348 + + + + logOutOnTimerExpireCheckbox + + + + 3484 + + + + logOutOnFullInventoryCheckbox + + + + 3485 + + + + logOutOnBrokenItemsCheckbox + + + + 3486 + + + + value: values.LogOutOnBrokenItemsPercentage + + + + + + value: values.LogOutOnBrokenItemsPercentage + value + values.LogOutOnBrokenItemsPercentage + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3487 + + + + value: values.LogOutFullInventoryCheck + + + + + + value: values.LogOutFullInventoryCheck + value + values.LogOutFullInventoryCheck + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3488 + + + + value: values.LogOutOnBrokenItems + + + + + + value: values.LogOutOnBrokenItems + value + values.LogOutOnBrokenItems + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3489 + + + + value: values.LogOutTimer + + + + + + value: values.LogOutTimer + value + values.LogOutTimer + 2 + + + 3490 + + + + value: values.LogOutAfterBeingStuck + + + + + + value: values.LogOutAfterBeingStuck + value + values.LogOutAfterBeingStuck + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3514 + + + + value: values.LogOutStuckTries + + + + + + value: values.LogOutStuckTries + value + values.LogOutStuckTries + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3519 + + + + logOutAfterStuckCheckbox + + + + 3520 + + + + value: values.LogOutUseHearth + + + + + + value: values.LogOutUseHearth + value + values.LogOutUseHearth + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3526 + + + + logOutUseHearthstoneCheckbox + + + + 3527 + + + + value: values.LogOutTimerLength + + + + + + value: values.LogOutTimerLength + value + values.LogOutTimerLength + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3533 + + + + value: values.PvPPlayWarningSound + + + + + + value: values.PvPPlayWarningSound + value + values.PvPPlayWarningSound + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3618 + + + + value: values.AlarmWhispered + + + + + + value: values.AlarmWhispered + value + values.AlarmWhispered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3626 + + + + value: values.AlarmOnDeath + + + + + + value: values.AlarmOnDeath + value + values.AlarmOnDeath + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3628 + + + + value: values.AlarmOnStuck + + + + + + value: values.AlarmOnStuck + value + values.AlarmOnStuck + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3629 + + + + value: values.AlarmOnStuckAttempts + + + + + + value: values.AlarmOnStuckAttempts + value + values.AlarmOnStuckAttempts + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3630 + + + + nodeController + + + + 3635 + + + + fishController + + + + 3636 + + + + botController + + + + 3794 + + + + playerData + + + + 3849 + + + + auraController + + + + 3850 + + + + chatController + + + + 3851 + + + + macroController + + + + 3852 + + + + controller + + + + 3853 + + + + offsetController + + + + 3863 + + + + offsetController + + + + 3864 + + + + offsetController + + + + 3865 + + + + offsetController + + + + 3866 + + + + offsetController + + + + 3867 + + + + offsetController + + + + 3868 + + + + playerData + + + + 3998 + + + + memoryViewController + + + + 4006 + + + + movementController + + + + 4007 + + + + value: values.AlarmOnNearbyMob + + + + + + value: values.AlarmOnNearbyMob + value + values.AlarmOnNearbyMob + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4016 + + + + value: values.AlarmOnNearbyMobID + + + + + + value: values.AlarmOnNearbyMobID + value + values.AlarmOnNearbyMobID + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4023 + + + + offsetController + + + + 4024 + + + + macroController + + + + 4025 + + + + value: values.AlarmWhisperedTimes + + + + + + value: values.AlarmWhisperedTimes + value + values.AlarmWhisperedTimes + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4030 + + + + controller + + + + 4038 + + + + playerController + + + + 4039 + + + + toolbarItemSelected: + + + + 4041 + + + + statisticsToolbarItem + + + + 4044 + + + + statisticsController + + + + 4045 + + + + offsetController + + + + 4046 + + + + logOutDurabilityTextField + + + + 4047 + + + + logOutAfterRunningTextField + + + + 4048 + + + + movementController + + + + 4052 + + + + mobController + + + + 4053 + + + + auraController + + + + 4056 + + + + macroController + + + + 4057 + + + + controller + + + + 4059 + + + + playerController + + + + 4060 + + + + blacklistController + + + + 4064 + + + + blacklistController + + + + 4065 + + + + blacklistController + + + + 4066 + + + + playersController + + + + 4068 + + + + labelNoTarget + + + + 4071 + + + + dataSource + + + + 4093 + + + + delegate + + + + 4094 + + + + combatPanel + + + + 4095 + + + + combatTable + + + + 4102 + + + + auraController + + + + 4103 + + + + macroController + + + + 4104 + + + + macroController + + + + 4118 + + + + waypointController + + + + 4163 + + + + inventoryController + + + + 4164 + + + + spellController + + + + 4165 + + + + macroController + + + + 4166 + + + + waypointController + + + + 4168 + + + + statisticsController + + + + 4183 + + + + mobController + + + + 4184 + + + + nodeController + + + + 4185 + + + + controller + + + + 4188 + + + + chatController + + + + 4189 + + + + bindingsController + + + + 4190 + + + + toolbarItemSelected: + + + + 4193 + + + + objectsToolbarItem + + + + 4194 + + + + controller + + + + 4196 + + + + itemController + + + + 4197 + + + + memoryViewController + + + + 4198 + + + + mobController + + + + 4199 + + + + nodeController + + + + 4200 + + + + playersController + + + + 4201 + + + + objectsController + + + + 4202 + + + + offsetController + + + + 4205 + + + + playerData + + + + 4206 + + + + objectsController + + + + 4207 + + + + objectsController + + + + 4208 + + + + objectsController + + + + 4209 + + + + objectsController + + + + 4210 + + + + movementController + + + + 4211 + + + + playerController + + + + 4212 + + + + versionInfoText + + + + 4219 + + + + checkForUpdates: + + + + 4250 + + + + delegate + + + + 4251 + + + + mobController + + + + 4252 + + + + playersController + + + + 4253 + + + + botController + + + + 4254 + + + + macroController + + + + 4255 + + + + itemController + + + + 4256 + + + + toolbarItemSelected: + + + + 4258 + + + + pvpController + + + + 4260 + + + + pvpToolbarItem + + + + 4261 + + + + waypointController + + + + 4262 + + + + pvpController + + + + 4263 + + + + movementTypePopUp + + + + 4264 + + + + logOutStuckAttemptsTextField + + + + 4265 + + + + value: values.MovementShouldJump + + + + + + value: values.MovementShouldJump + value + values.MovementShouldJump + 2 + + + 4267 + + + + enabled: values.MovementShouldJump + + + + + + enabled: values.MovementShouldJump + enabled + values.MovementShouldJump + 2 + + + 4272 + + + + enabled: values.MovementShouldJump + + + + + + enabled: values.MovementShouldJump + enabled + values.MovementShouldJump + 2 + + + 4274 + + + + mobController + + + + 4275 + + + + statisticsController + + + + 4277 + + + + offsetController + + + + 4278 + + + + bindingsController + + + + 4279 + + + + bindingsController + + + + 4280 + + + + value: values.ExtendedLoggingEnable + + + + + + value: values.ExtendedLoggingEnable + value + values.ExtendedLoggingEnable + 2 + + + 4544 + + + + enabled: values.SecurityDisableLogging + + + + + + enabled: values.SecurityDisableLogging + enabled + values.SecurityDisableLogging + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 4545 + + + + value: values.ExtendedLoggingDev + + + + + + value: values.ExtendedLoggingDev + value + values.ExtendedLoggingDev + 2 + + + 4548 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4550 + + + + value: values.ExtendedLoggingEvaluate + + + + + + value: values.ExtendedLoggingEvaluate + value + values.ExtendedLoggingEvaluate + 2 + + + 4574 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4576 + + + + value: values.ExtendedLoggingBindings + + + + + + value: values.ExtendedLoggingBindings + value + values.ExtendedLoggingBindings + 2 + + + 4579 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4581 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4583 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4585 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4587 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4589 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4591 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4593 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4595 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4597 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4599 + + + + value: values.ExtendedLoggingMemory + + + + + + value: values.ExtendedLoggingMemory + value + values.ExtendedLoggingMemory + 2 + + + 4601 + + + + value: values.ExtendedLoggingFunction + + + + + + value: values.ExtendedLoggingFunction + value + values.ExtendedLoggingFunction + 2 + + + 4603 + + + + value: values.ExtendedLoggingStatistics + + + + + + value: values.ExtendedLoggingStatistics + value + values.ExtendedLoggingStatistics + 2 + + + 4605 + + + + value: values.ExtendedLoggingBlacklist + + + + + + value: values.ExtendedLoggingBlacklist + value + values.ExtendedLoggingBlacklist + 2 + + + 4607 + + + + value: values.ExtendedLoggingRule + + + + + + value: values.ExtendedLoggingRule + value + values.ExtendedLoggingRule + 2 + + + 4609 + + + + value: values.ExtendedLoggingCondition + + + + + + value: values.ExtendedLoggingCondition + value + values.ExtendedLoggingCondition + 2 + + + 4611 + + + + value: values.ExtendedLoggingMacro + + + + + + value: values.ExtendedLoggingMacro + value + values.ExtendedLoggingMacro + 2 + + + 4615 + + + + value: values.ExtendedLoggingMovement + + + + + + value: values.ExtendedLoggingMovement + value + values.ExtendedLoggingMovement + 2 + + + 4617 + + + + value: values.ExtendedLoggingWaypoint + + + + + + value: values.ExtendedLoggingWaypoint + value + values.ExtendedLoggingWaypoint + 2 + + + 4618 + + + + value: values.BlacklistTriggerNotInCombat + + + + + + value: values.BlacklistTriggerNotInCombat + value + values.BlacklistTriggerNotInCombat + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4620 + + + + value: values.BlacklistVerticalOffset + + + + + + value: values.BlacklistVerticalOffset + value + values.BlacklistVerticalOffset + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4621 + + + + value: values.BlacklistDurationNotInCombat + + + + + + value: values.BlacklistDurationNotInCombat + value + values.BlacklistDurationNotInCombat + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4630 + + + + displayPatternValue1: values.BlacklistTriggerNotInCombat + + + + + + displayPatternValue1: values.BlacklistTriggerNotInCombat + displayPatternValue1 + values.BlacklistTriggerNotInCombat + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ sec + 7 + 7 + 7 + 7 + + + 2 + + + 4631 + + + + displayPatternValue1: values.BlacklistDurationNotInCombat + + + + + + displayPatternValue1: values.BlacklistDurationNotInCombat + displayPatternValue1 + values.BlacklistDurationNotInCombat + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ sec + 7 + 7 + 7 + 7 + + + 2 + + + 4632 + + + + value: values.BlacklistDurationNotInLos + + + + + + value: values.BlacklistDurationNotInLos + value + values.BlacklistDurationNotInLos + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4641 + + + + displayPatternValue1: values.BlacklistDurationNotInLos + + + + + + displayPatternValue1: values.BlacklistDurationNotInLos + displayPatternValue1 + values.BlacklistDurationNotInLos + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ sec + 7 + 7 + 7 + 7 + + + 2 + + + 4642 + + + + value: values.BlacklistTriggerNodeMadeMeFall + + + + + + value: values.BlacklistTriggerNodeMadeMeFall + value + values.BlacklistTriggerNodeMadeMeFall + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4672 + + + + value: values.BlacklistTriggerNodeFailedToReach + + + + + + value: values.BlacklistTriggerNodeFailedToReach + value + values.BlacklistTriggerNodeFailedToReach + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4673 + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToReach + + + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToReach + displayPatternValue1 + values.BlacklistTriggerNodeFailedToReach + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ attempts + 3 + 3 + 3 + 3 + + + 2 + + + 4675 + + + + value: values.BlacklistTriggerNodeFailedToLoot + + + + + + value: values.BlacklistTriggerNodeFailedToLoot + value + values.BlacklistTriggerNodeFailedToLoot + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4684 + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToLoot + + + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToLoot + displayPatternValue1 + values.BlacklistTriggerNodeFailedToLoot + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ attempts + 3 + 3 + 3 + 3 + + + 2 + + + 4685 + + + + displayPatternValue1: values.BlacklistTriggerNodeMadeMeFall + + + + + + displayPatternValue1: values.BlacklistTriggerNodeMadeMeFall + displayPatternValue1 + values.BlacklistTriggerNodeMadeMeFall + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ times + 3 + 3 + 3 + 3 + + + 2 + + + 4686 + + + + fileController + + + + 4688 + + + + fileController + + + + 4690 + + + + toolbarItemSelected: + + + + 4693 + + + + profilesToolbarItem + + + + 4694 + + + + profileController + + + + 4695 + + + + profileController + + + + 4697 + + + + profileController + + + + 4698 + + + + profileController + + + + 4699 + + + + controller + + + + 4700 + + + + playersController + + + + 4701 + + + + mobController + + + + 4702 + + + + fileController + + + + 4703 + + + + fileController + + + + 4704 + + + + offsetController + + + + 4705 + + + + nodeController + + + + 4706 + + + + macroController + + + + 4707 + + + + playerController + + + + 4708 + + + + botController + + + + 4709 + + + + combatController + + + + 4710 + + + + bindingsController + + + + 4711 + + + + itemController + + + + 4712 + + + + itemController + + + + 4713 + + + + mobController + + + + 4714 + + + + playersController + + + + 4715 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 29 + + + YES + + + + + + + MainMenu + + + 19 + + + YES + + + + + + 56 + + + YES + + + + + + 217 + + + YES + + + + + + 83 + + + YES + + + + + + 81 + + + YES + + + + + + + + 82 + + + 9 + + + 205 + + + YES + + + + + + + + + + + + + + + + + + 202 + + + + + 198 + + + + + 207 + + + + + 214 + + + + + 199 + + + + + 203 + + + + + 197 + + + + + 206 + + + + + 215 + + + + + 218 + + + YES + + + + + + 216 + + + YES + + + + + + 200 + + + YES + + + + + + + + + 219 + + + + + 201 + + + + + 204 + + + + + 220 + + + YES + + + + + + + + + + 213 + + + + + 210 + + + + + 221 + + + + + 208 + + + + + 209 + + + + + 57 + + + YES + + + + + + + + + + + + + + + + + 58 + + + + + 134 + + + + + 150 + + + + + 136 + + + 1111 + + + 144 + + + + + 129 + + + 121 + + + 143 + + + + + 236 + + + + + 131 + + + YES + + + + + + 149 + + + + + 145 + + + + + 130 + + + + + 24 + + + YES + + + + + + + + + 92 + + + + + 5 + + + + + 239 + + + + + 23 + + + + + 211 + + + YES + + + + + + 212 + + + YES + + + + + + + 195 + + + + + 196 + + + + + 346 + + + + + 348 + + + YES + + + + + + 349 + + + YES + + + + + + + + 350 + + + + + 351 + + + + + 354 + + + + + 480 + + + + + 481 + + + PlayerData + + + 655 + + + MemView + + + 731 + + + Waypoints + + + 773 + + + Movement + + + 795 + + + Mobs + + + 823 + + + Combat + + + 843 + + + Spells + + + 885 + + + Auras + + + 893 + + + Nodes + + + 1723 + + + YES + + + + RuleEditor + + + 1724 + + + YES + + + + + + + + + + + + + 1768 + + + YES + + + + + + 1769 + + + + + 1770 + + + YES + + + + + + 1771 + + + + + 1774 + + + + + 1725 + + + YES + + + + + + + + + 1744 + + + + + 1746 + + + + + 1747 + + + + + 1745 + + + YES + + + + + + 1749 + + + YES + + + + + + 1750 + + + + + 1781 + + + YES + + + + + + + + 1726 + + + YES + + + + + + 1743 + + + + + 1782 + + + YES + + + + + + 1783 + + + + + 1848 + + + YES + + + + + + + + + 1849 + + + YES + + + + + + 1850 + + + YES + + + + + + 1851 + + + + + 1852 + + + + + 1853 + + + YES + + + + + + 1854 + + + YES + + + + + + 1855 + + + + + 1856 + + + + + 1858 + + + Behavior + + + 1955 + + + + + 1956 + + + YES + + + + + Main + + + 1957 + + + YES + + + + + + + + + 1958 + + + YES + + + + + + + + + + + + + + + + + + + + + 1961 + + + + + 1963 + + + + + 1964 + + + + + 1965 + + + + + 1966 + + + + + 1967 + + + + + 1969 + + + + + 1971 + + + + + 1972 + + + + + 2030 + + + Inventory + + + 2321 + + + + + 2339 + + + + + 2349 + + + YES + + + + + 2351 + + + YES + + + + + + 2352 + + + + + 2354 + + + YES + + + + + + 2355 + + + + + 2358 + + + YES + + + + + + 2359 + + + + + 2375 + + + YES + + + + + + + + + About + + + 2378 + + + YES + + + + Settings + + + 2407 + + + YES + + + + + + 2408 + + + + + 2410 + + + YES + + + + + + 2411 + + + + + 2402 + + + YES + + + + + + 2403 + + + + + 2421 + + + + + 2436 + + + YES + + + + + + 2437 + + + + + 2553 + + + + + 2560 + + + + + 2682 + + + + + 2683 + + + + + 2686 + + + YES + + + + + + + + + + + 2687 + + + YES + + + + + + 2688 + + + YES + + + + + + + + 2689 + + + YES + + + + + + 2690 + + + YES + + + + + + + + + 2571 + + + YES + + + + + + + + + + + + + + + + + + 2601 + + + YES + + + + + + 2468 + + + YES + + + + + + 2462 + + + YES + + + + + + 2464 + + + YES + + + + + + 2460 + + + YES + + + + + + 2448 + + + YES + + + + + + 2446 + + + YES + + + + + + 2465 + + + YES + + + + + + 2466 + + + + + 2447 + + + + + 2449 + + + YES + + + + + + 2475 + + + + + 2461 + + + + + 2467 + + + YES + + + + + + 2480 + + + + + 2463 + + + + + 2469 + + + + + 2602 + + + + + 2577 + + + YES + + + + + + + 2660 + + + YES + + + + + + 2419 + + + YES + + + + + + 2420 + + + + + 2661 + + + + + 2691 + + + YES + + + + + + + + 2692 + + + YES + + + + + + 2693 + + + YES + + + + + + 2694 + + + YES + + + + + + 2697 + + + + + 2698 + + + + + 2699 + + + + + 2703 + + + YES + + + + + + + + + 2706 + + + YES + + + + + + 2707 + + + + + 2708 + + + YES + + + + + + 2709 + + + YES + + + + + + 2710 + + + YES + + + + + + 2711 + + + + + 2712 + + + + + 2865 + + + YES + + + + + + 2866 + + + + + 2867 + + + YES + + + + + + 2868 + + + + + 2911 + + + YES + + + + + + 2912 + + + YES + + + + + + 2913 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2948 + + + + + 2949 + + + + + 2950 + + + + + 2951 + + + + + 2952 + + + + + 2953 + + + + + 2954 + + + + + 2955 + + + + + 2956 + + + + + 2957 + + + + + 2958 + + + + + 2959 + + + + + 2960 + + + + + 2961 + + + + + 2962 + + + + + 2963 + + + + + 2964 + + + + + 2965 + + + + + 2966 + + + + + 3040 + + + + + 3041 + + + + + 3088 + + + YES + + + + + + 3089 + + + YES + + + + + + 3090 + + + YES + + + + + + + + 3091 + + + + + 3092 + + + + + 3093 + + + + + 3115 + + + + + 3138 + + + YES + + + + + + 3139 + + + YES + + + + + + 3140 + + + YES + + + + + + + + + 3141 + + + + + 3142 + + + YES + + + + + + + + + + + 3143 + + + + + 3144 + + + + + 3145 + + + YES + + + + + + 3146 + + + YES + + + + + + 3147 + + + YES + + + + + + 3148 + + + + + 3149 + + + + + 3150 + + + + + 3156 + + + YES + + + + + + 3157 + + + + + 3158 + + + YES + + + + + + 3159 + + + + + 3160 + + + YES + + + + + + 3161 + + + + + 3165 + + + + + 3168 + + + + + 3172 + + + + + 3176 + + + + + 3180 + + + + + 3192 + + + + + 3210 + + + YES + + + + + + 3211 + + + YES + + + + + + 3212 + + + YES + + + + + + + + + 3213 + + + + + 3214 + + + + + 3215 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + 3216 + + + + + 3219 + + + YES + + + + + + 3220 + + + YES + + + + + + 3221 + + + YES + + + + + + 3222 + + + YES + + + + + + 3223 + + + + + 3224 + + + + + 3225 + + + + + 3226 + + + + + 3234 + + + YES + + + + + + 3235 + + + + + 3236 + + + YES + + + + + + 3237 + + + + + 3246 + + + YES + + + + + + 3247 + + + + + 3248 + + + YES + + + + + + 3249 + + + + + 3250 + + + YES + + + + + + 3251 + + + + + 3252 + + + YES + + + + + + + + 3276 + + + YES + + + + + + 3277 + + + YES + + + + + + 3278 + + + YES + + + + + + + + 3279 + + + + + 3280 + + + + + 3281 + + + + + 3287 + + + YES + + + + + + 3288 + + + + + 3293 + + + YES + + + + + + 3294 + + + + + 3299 + + + YES + + + + + + + + 3300 + + + YES + + + + + + 3302 + + + YES + + + + + + 3303 + + + + + 3309 + + + + + 3311 + + + YES + + + + + + 3312 + + + YES + + + + + + 3313 + + + YES + + + + + + + + 3314 + + + + + 3315 + + + + + 3316 + + + + + 3318 + + + YES + + + + + + 3319 + + + + + 3346 + + + Offsets + + + 3349 + + + YES + + + + + + 3350 + + + YES + + + + + + + + 3427 + + + YES + + + + + + 3428 + + + + + 3429 + + + YES + + + + + + + + + + + + + + + + + + + + + 3431 + + + YES + + + + + + 3436 + + + YES + + + + + + 3437 + + + + + 3425 + + + YES + + + + + + 3426 + + + + + 3420 + + + YES + + + + + + 3421 + + + + + 3440 + + + YES + + + + + + 3441 + + + + + 3461 + + + YES + + + + + + 3462 + + + + + 3465 + + + YES + + + + + + 3466 + + + + + 3469 + + + YES + + + + + + 3470 + + + + + 3472 + + + YES + + + + + + 3473 + + + YES + + + + + + 3474 + + + + + 3476 + + + YES + + + + + + 3477 + + + + + 3478 + + + YES + + + + + + 3479 + + + + + 1730 + + + YES + + + + + + 1731 + + + YES + + + + + + 1732 + + + YES + + + + + + + + 1735 + + + + + 1734 + + + + + 1733 + + + + + 3501 + + + YES + + + + + + 3502 + + + YES + + + + + + + + + 3503 + + + YES + + + + + + 3504 + + + + + 3506 + + + YES + + + + + + 3507 + + + + + 3508 + + + YES + + + + + + 3509 + + + YES + + + + + + 3510 + + + + + 3512 + + + YES + + + + + + 3513 + + + + + 3521 + + + YES + + + + + + 3522 + + + + + 3524 + + + YES + + + + + + 3525 + + + + + 3543 + + + YES + + + + + + + + + + + + + + + + + + + + + 3546 + + + YES + + + + + + 3547 + + + YES + + + + + + 3548 + + + YES + + + + + + 3549 + + + YES + + + + + + 3550 + + + YES + + + + + + 3551 + + + YES + + + + + + 3570 + + + + + 3571 + + + + + 3572 + + + + + 3573 + + + YES + + + + + + 3574 + + + + + 3575 + + + + + 3576 + + + + + 3587 + + + YES + + + + + + 3588 + + + + + 3596 + + + YES + + + + + + 3597 + + + + + 3599 + + + YES + + + + + + 3600 + + + YES + + + + + + 3601 + + + + + 3603 + + + YES + + + + + + 3604 + + + + + 3605 + + + YES + + + + + + 3606 + + + + + 3612 + + + YES + + + + + + 3613 + + + + + 3615 + + + YES + + + + + + 3616 + + + + + 3619 + + + YES + + + + + + 3620 + + + + + 3637 + + + YES + + + + + + 3638 + + + YES + + + + + + + 3639 + + + YES + + + + + + 3640 + + + + + 3793 + + + Macros + + + 4003 + + + YES + + + + + + 4004 + + + + + 4008 + + + YES + + + + + + 4009 + + + + + 4013 + + + YES + + + + + + 4014 + + + + + 4017 + + + YES + + + + + + 4018 + + + + + 4026 + + + YES + + + + + + 4027 + + + YES + + + + + + 4028 + + + + + 4031 + + + YES + + + + + + 4032 + + + + + 4035 + + + YES + + + + + + 4036 + + + + + 4037 + + + Statistics + + + 4040 + + + Stats + + + 4058 + + + Events + + + 4061 + + + + + 4062 + + + + + 4063 + + + Blacklist + + + 4067 + + + + + 4069 + + + YES + + + + + + 4070 + + + + + 4072 + + + YES + + + + + + 4073 + + + YES + + + + + + 4074 + + + YES + + + + + + + + + 4075 + + + + + 4076 + + + + + 4077 + + + YES + + + + + + + + + + + + + 4078 + + + + + 4080 + + + YES + + + + + + 4081 + + + YES + + + + + + 4082 + + + YES + + + + + + 4083 + + + YES + + + + + + 4084 + + + YES + + + + + + 4085 + + + + + 4086 + + + + + 4087 + + + + + 4088 + + + + + 4089 + + + + + 4096 + + + YES + + + + + + 4097 + + + + + 4098 + + + YES + + + + + + 4099 + + + + + 4100 + + + YES + + + + + + 4101 + + + + + 4105 + + + + + 3641 + + + YES + + + + + + 4108 + + + YES + + + + + + 4109 + + + + + 4117 + + + + + 4156 + + + + + 4187 + + + Bindings + + + 4191 + + + + + 4192 + + + + + 2438 + + + YES + + + + + + 2439 + + + + + 4217 + + + YES + + + + + + 4218 + + + + + 4222 + + + YES + + + + + + 4223 + + + + + 4224 + + + YES + + + + + + 4225 + + + + + 4226 + + + YES + + + + + + 4227 + + + + + 4228 + + + YES + + + + + + 4229 + + + + + 4230 + + + YES + + + + + + 4231 + + + + + 4232 + + + YES + + + + + + 4233 + + + + + 4234 + + + YES + + + + + + 4235 + + + + + 4236 + + + YES + + + + + + 4237 + + + + + 4238 + + + YES + + + + + + 4239 + + + + + 4240 + + + YES + + + + + + 4241 + + + + + 4244 + + + + + 4248 + + + + + 4257 + + + + + 4259 + + + + + 4281 + + + YES + + + + + + 4282 + + + YES + + + + + + + + + 4283 + + + YES + + + + + + 4284 + + + + + 4285 + + + YES + + + + + + 4287 + + + YES + + + + + + + + + + + + + + + + + 4313 + + + + + 4531 + + + YES + + + + + + 4532 + + + + + 4546 + + + YES + + + + + + 4547 + + + + + 4551 + + + YES + + + + + + 4552 + + + + + 4553 + + + YES + + + + + + 4554 + + + + + 4555 + + + YES + + + + + + 4556 + + + + + 4557 + + + YES + + + + + + 4558 + + + + + 4559 + + + YES + + + + + + 4560 + + + + + 4561 + + + YES + + + + + + 4562 + + + + + 4563 + + + YES + + + + + + 4564 + + + + + 4565 + + + YES + + + + + + 4566 + + + + + 4567 + + + YES + + + + + + 4568 + + + + + 4569 + + + YES + + + + + + 4570 + + + + + 4571 + + + YES + + + + + + 4572 + + + + + 4619 + + + YES + + + + + + + + + + + 4622 + + + YES + + + + + + 4623 + + + YES + + + + + + 4624 + + + YES + + + + + + 4625 + + + + + 4626 + + + + + 4627 + + + + + 4633 + + + YES + + + + + + 4634 + + + YES + + + + + + 4635 + + + YES + + + + + + 4636 + + + + + 4637 + + + + + 4638 + + + + + 2704 + + + YES + + + + + + 2705 + + + + + 4663 + + + YES + + + + + + + + + + + + + + 4643 + + + YES + + + + + + 4648 + + + + + 4644 + + + YES + + + + + + 4647 + + + + + 4645 + + + YES + + + + + + 4646 + + + + + 4664 + + + YES + + + + + + 4665 + + + YES + + + + + + 4666 + + + YES + + + + + + 4667 + + + + + 4668 + + + + + 4669 + + + + + 4676 + + + YES + + + + + + 4677 + + + YES + + + + + + 4678 + + + YES + + + + + + 4679 + + + + + 4680 + + + + + 4681 + + + + + 4687 + + + + + 4689 + + + + + 4691 + + + + + + + YES + + YES + -3.IBPluginDependency + 129.IBPluginDependency + 129.ImportedFromIB2 + 130.IBPluginDependency + 130.ImportedFromIB2 + 130.editorWindowContentRectSynchronizationRect + 131.IBPluginDependency + 131.ImportedFromIB2 + 134.IBPluginDependency + 134.ImportedFromIB2 + 136.IBPluginDependency + 136.ImportedFromIB2 + 143.IBPluginDependency + 143.ImportedFromIB2 + 144.IBPluginDependency + 144.ImportedFromIB2 + 145.IBPluginDependency + 145.ImportedFromIB2 + 149.IBPluginDependency + 149.ImportedFromIB2 + 150.IBPluginDependency + 150.ImportedFromIB2 + 1723.IBEditorWindowLastContentRect + 1723.IBPluginDependency + 1723.IBWindowTemplateEditedContentRect + 1723.NSWindowTemplate.visibleAtLaunch + 1723.editorWindowContentRectSynchronizationRect + 1723.windowTemplate.hasMinSize + 1723.windowTemplate.minSize + 1724.IBPluginDependency + 1725.IBPluginDependency + 1726.CustomClassName + 1726.IBPluginDependency + 1730.IBPluginDependency + 1731.IBPluginDependency + 1732.IBEditorWindowLastContentRect + 1732.IBPluginDependency + 1732.editorWindowContentRectSynchronizationRect + 1733.IBPluginDependency + 1734.IBPluginDependency + 1735.IBPluginDependency + 1743.IBPluginDependency + 1743.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 1744.IBPluginDependency + 1745.CustomClassName + 1745.IBPluginDependency + 1746.IBPluginDependency + 1747.IBPluginDependency + 1749.IBPluginDependency + 1750.IBPluginDependency + 1768.IBPluginDependency + 1769.IBPluginDependency + 1770.IBPluginDependency + 1771.IBPluginDependency + 1771.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 1781.IBPluginDependency + 1782.IBPluginDependency + 1783.IBPluginDependency + 1848.IBPluginDependency + 1849.IBPluginDependency + 1850.IBPluginDependency + 1851.IBPluginDependency + 1852.IBPluginDependency + 1853.IBPluginDependency + 1854.IBPluginDependency + 1855.IBPluginDependency + 1856.IBPluginDependency + 19.IBPluginDependency + 19.ImportedFromIB2 + 195.IBPluginDependency + 195.ImportedFromIB2 + 1956.IBEditorWindowLastContentRect + 1956.IBPluginDependency + 1956.IBWindowTemplateEditedContentRect + 1956.NSWindowTemplate.visibleAtLaunch + 1956.editorWindowContentRectSynchronizationRect + 1956.windowTemplate.hasMinSize + 1956.windowTemplate.minSize + 1957.IBPluginDependency + 1958.IBEditorWindowLastContentRect + 1958.IBPluginDependency + 1958.editorWindowContentRectSynchronizationRect + 196.IBPluginDependency + 196.ImportedFromIB2 + 1965.IBPluginDependency + 1966.IBPluginDependency + 1967.IBPluginDependency + 1969.IBPluginDependency + 197.IBPluginDependency + 197.ImportedFromIB2 + 1971.IBPluginDependency + 1972.IBPluginDependency + 198.IBPluginDependency + 198.ImportedFromIB2 + 199.IBPluginDependency + 199.ImportedFromIB2 + 200.IBPluginDependency + 200.ImportedFromIB2 + 200.editorWindowContentRectSynchronizationRect + 201.IBPluginDependency + 201.ImportedFromIB2 + 202.IBPluginDependency + 202.ImportedFromIB2 + 203.IBPluginDependency + 203.ImportedFromIB2 + 204.IBPluginDependency + 204.ImportedFromIB2 + 205.IBEditorWindowLastContentRect + 205.IBPluginDependency + 205.ImportedFromIB2 + 205.editorWindowContentRectSynchronizationRect + 206.IBPluginDependency + 206.ImportedFromIB2 + 207.IBPluginDependency + 207.ImportedFromIB2 + 208.IBPluginDependency + 208.ImportedFromIB2 + 209.IBPluginDependency + 209.ImportedFromIB2 + 210.IBPluginDependency + 210.ImportedFromIB2 + 211.IBPluginDependency + 211.ImportedFromIB2 + 212.IBPluginDependency + 212.ImportedFromIB2 + 212.editorWindowContentRectSynchronizationRect + 213.IBPluginDependency + 213.ImportedFromIB2 + 214.IBPluginDependency + 214.ImportedFromIB2 + 215.IBPluginDependency + 215.ImportedFromIB2 + 216.IBPluginDependency + 216.ImportedFromIB2 + 217.IBPluginDependency + 217.ImportedFromIB2 + 218.IBPluginDependency + 218.ImportedFromIB2 + 219.IBPluginDependency + 219.ImportedFromIB2 + 220.IBPluginDependency + 220.ImportedFromIB2 + 220.editorWindowContentRectSynchronizationRect + 221.IBPluginDependency + 221.ImportedFromIB2 + 23.IBPluginDependency + 23.ImportedFromIB2 + 2321.IBPluginDependency + 2339.IBPluginDependency + 2349.IBPluginDependency + 2351.IBPluginDependency + 2352.IBPluginDependency + 2354.IBPluginDependency + 2355.IBPluginDependency + 2358.IBPluginDependency + 2359.IBPluginDependency + 236.IBPluginDependency + 236.ImportedFromIB2 + 2375.IBEditorWindowLastContentRect + 2375.IBPluginDependency + 2375.editorWindowContentRectSynchronizationRect + 2378.IBEditorWindowLastContentRect + 2378.IBPluginDependency + 2378.editorWindowContentRectSynchronizationRect + 239.IBPluginDependency + 239.ImportedFromIB2 + 24.IBEditorWindowLastContentRect + 24.IBPluginDependency + 24.ImportedFromIB2 + 24.editorWindowContentRectSynchronizationRect + 2402.IBPluginDependency + 2403.IBPluginDependency + 2407.IBPluginDependency + 2408.IBPluginDependency + 2410.IBPluginDependency + 2411.IBPluginDependency + 2419.IBPluginDependency + 2420.IBPluginDependency + 2421.IBPluginDependency + 2436.IBPluginDependency + 2437.IBPluginDependency + 2438.IBPluginDependency + 2439.IBPluginDependency + 2446.IBPluginDependency + 2447.IBPluginDependency + 2448.IBPluginDependency + 2449.IBPluginDependency + 2460.IBPluginDependency + 2461.IBPluginDependency + 2462.IBPluginDependency + 2463.IBPluginDependency + 2464.IBPluginDependency + 2465.IBPluginDependency + 2466.IBPluginDependency + 2467.IBPluginDependency + 2468.IBPluginDependency + 2469.IBPluginDependency + 2475.IBPluginDependency + 2480.IBPluginDependency + 2571.IBPluginDependency + 2577.IBPluginDependency + 2601.IBPluginDependency + 2602.IBPluginDependency + 2660.IBPluginDependency + 2661.IBPluginDependency + 2682.IBPluginDependency + 2683.IBPluginDependency + 2686.IBAttributePlaceholdersKey + 2686.IBPluginDependency + 2687.IBPluginDependency + 2688.IBPluginDependency + 2689.IBPluginDependency + 2690.IBPluginDependency + 2691.IBAttributePlaceholdersKey + 2691.IBPluginDependency + 2692.IBAttributePlaceholdersKey + 2692.IBPluginDependency + 2693.IBAttributePlaceholdersKey + 2693.IBPluginDependency + 2694.IBAttributePlaceholdersKey + 2694.IBPluginDependency + 2697.IBPluginDependency + 2698.IBPluginDependency + 2699.IBPluginDependency + 2703.IBPluginDependency + 2704.IBPluginDependency + 2704.IBViewIntegration.shadowBlurRadius + 2704.IBViewIntegration.shadowColor + 2704.IBViewIntegration.shadowOffsetHeight + 2704.IBViewIntegration.shadowOffsetWidth + 2705.IBPluginDependency + 2706.IBAttributePlaceholdersKey + 2706.IBPluginDependency + 2707.IBPluginDependency + 2708.IBAttributePlaceholdersKey + 2708.IBPluginDependency + 2709.IBPluginDependency + 2710.IBAttributePlaceholdersKey + 2710.IBPluginDependency + 2711.IBPluginDependency + 2712.IBPluginDependency + 2865.IBPluginDependency + 2866.IBPluginDependency + 2867.IBPluginDependency + 2868.IBPluginDependency + 29.IBEditorWindowLastContentRect + 29.IBPluginDependency + 29.ImportedFromIB2 + 29.WindowOrigin + 29.editorWindowContentRectSynchronizationRect + 2911.IBPluginDependency + 2912.IBPluginDependency + 2913.IBEditorWindowLastContentRect + 2913.IBPluginDependency + 2948.IBPluginDependency + 2949.IBPluginDependency + 2950.IBPluginDependency + 2951.IBPluginDependency + 2952.IBPluginDependency + 2953.IBPluginDependency + 2954.IBPluginDependency + 2955.IBPluginDependency + 2956.IBPluginDependency + 2957.IBPluginDependency + 2958.IBPluginDependency + 2959.IBPluginDependency + 2960.IBPluginDependency + 2961.IBPluginDependency + 2962.IBPluginDependency + 2963.IBPluginDependency + 2964.IBPluginDependency + 2965.IBPluginDependency + 2966.IBPluginDependency + 3040.IBPluginDependency + 3041.IBPluginDependency + 3088.IBPluginDependency + 3089.IBPluginDependency + 3090.IBEditorWindowLastContentRect + 3090.IBPluginDependency + 3091.IBPluginDependency + 3092.IBPluginDependency + 3093.IBPluginDependency + 3138.IBEditorWindowLastContentRect + 3138.IBPluginDependency + 3138.IBWindowTemplateEditedContentRect + 3138.NSWindowTemplate.visibleAtLaunch + 3138.windowTemplate.maxSize + 3139.IBPluginDependency + 3140.IBPluginDependency + 3141.IBPluginDependency + 3142.IBPluginDependency + 3143.IBPluginDependency + 3144.IBPluginDependency + 3145.IBPluginDependency + 3146.IBPluginDependency + 3147.IBPluginDependency + 3148.IBPluginDependency + 3149.IBPluginDependency + 3150.IBPluginDependency + 3156.IBPluginDependency + 3157.IBPluginDependency + 3158.IBPluginDependency + 3159.IBPluginDependency + 3160.IBPluginDependency + 3161.IBPluginDependency + 3168.IBPluginDependency + 3210.IBEditorWindowLastContentRect + 3210.IBPluginDependency + 3210.IBWindowTemplateEditedContentRect + 3210.NSWindowTemplate.visibleAtLaunch + 3210.windowTemplate.maxSize + 3211.IBPluginDependency + 3212.IBPluginDependency + 3213.IBPluginDependency + 3214.IBPluginDependency + 3215.IBPluginDependency + 3216.IBPluginDependency + 3219.IBPluginDependency + 3220.IBPluginDependency + 3221.IBPluginDependency + 3222.IBPluginDependency + 3223.IBPluginDependency + 3224.IBPluginDependency + 3225.IBPluginDependency + 3226.IBPluginDependency + 3234.IBPluginDependency + 3235.IBPluginDependency + 3236.IBPluginDependency + 3237.IBPluginDependency + 3246.IBPluginDependency + 3247.IBPluginDependency + 3248.IBPluginDependency + 3249.IBPluginDependency + 3250.IBPluginDependency + 3251.IBPluginDependency + 3252.IBPluginDependency + 3276.IBPluginDependency + 3277.IBPluginDependency + 3278.IBPluginDependency + 3279.IBPluginDependency + 3280.IBPluginDependency + 3281.IBPluginDependency + 3287.IBPluginDependency + 3288.IBPluginDependency + 3293.IBPluginDependency + 3294.IBPluginDependency + 3299.IBPluginDependency + 3300.IBPluginDependency + 3302.CustomClassName + 3302.IBPluginDependency + 3302.IBSegmentedControlTracker.RoundRobinState + 3302.IBSegmentedControlTracker.WasGrowing + 3303.IBPluginDependency + 3303.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 3309.IBPluginDependency + 3311.IBPluginDependency + 3312.IBPluginDependency + 3313.IBEditorWindowLastContentRect + 3313.IBPluginDependency + 3314.IBPluginDependency + 3315.IBPluginDependency + 3316.IBPluginDependency + 3318.IBPluginDependency + 3319.IBPluginDependency + 3349.IBPluginDependency + 3350.IBPluginDependency + 3350.IBUserGuides + 3420.IBPluginDependency + 3421.IBPluginDependency + 3425.IBPluginDependency + 3426.IBPluginDependency + 3427.IBPluginDependency + 3428.IBPluginDependency + 3429.IBPluginDependency + 3431.IBPluginDependency + 3436.IBPluginDependency + 3437.IBPluginDependency + 3440.IBPluginDependency + 3441.IBPluginDependency + 346.IBPluginDependency + 346.ImportedFromIB2 + 3461.IBPluginDependency + 3462.IBPluginDependency + 3465.IBPluginDependency + 3466.IBPluginDependency + 3469.IBPluginDependency + 3470.IBPluginDependency + 3472.IBPluginDependency + 3473.IBPluginDependency + 3474.IBPluginDependency + 3476.IBPluginDependency + 3477.IBPluginDependency + 3478.IBPluginDependency + 3479.IBPluginDependency + 348.IBPluginDependency + 348.ImportedFromIB2 + 349.IBPluginDependency + 349.ImportedFromIB2 + 349.editorWindowContentRectSynchronizationRect + 350.IBPluginDependency + 350.ImportedFromIB2 + 3501.IBPluginDependency + 3502.IBPluginDependency + 3503.IBPluginDependency + 3504.IBPluginDependency + 3506.IBPluginDependency + 3507.IBPluginDependency + 3508.IBPluginDependency + 3509.IBPluginDependency + 351.IBPluginDependency + 351.ImportedFromIB2 + 3510.IBPluginDependency + 3512.IBPluginDependency + 3513.IBPluginDependency + 3521.IBPluginDependency + 3522.IBPluginDependency + 3524.IBPluginDependency + 3525.IBPluginDependency + 354.IBPluginDependency + 354.ImportedFromIB2 + 3543.IBPluginDependency + 3546.IBPluginDependency + 3547.IBPluginDependency + 3548.IBPluginDependency + 3549.IBPluginDependency + 3550.IBPluginDependency + 3551.IBPluginDependency + 3570.IBPluginDependency + 3571.IBPluginDependency + 3572.IBPluginDependency + 3573.IBPluginDependency + 3574.IBPluginDependency + 3575.IBPluginDependency + 3576.IBPluginDependency + 3587.IBPluginDependency + 3588.IBPluginDependency + 3596.IBPluginDependency + 3597.IBPluginDependency + 3599.IBPluginDependency + 3600.IBPluginDependency + 3601.IBPluginDependency + 3603.IBPluginDependency + 3604.IBPluginDependency + 3605.IBPluginDependency + 3606.IBPluginDependency + 3612.IBPluginDependency + 3613.IBPluginDependency + 3615.IBPluginDependency + 3616.IBPluginDependency + 3619.IBPluginDependency + 3620.IBPluginDependency + 3637.IBPluginDependency + 3638.IBPluginDependency + 3639.IBPluginDependency + 3640.IBPluginDependency + 3641.IBPluginDependency + 4003.IBPluginDependency + 4004.IBPluginDependency + 4008.IBPluginDependency + 4009.IBPluginDependency + 4013.IBPluginDependency + 4014.IBPluginDependency + 4017.IBPluginDependency + 4018.IBPluginDependency + 4026.IBPluginDependency + 4027.IBPluginDependency + 4028.IBPluginDependency + 4031.IBPluginDependency + 4032.IBPluginDependency + 4035.IBPluginDependency + 4036.IBPluginDependency + 4040.IBPluginDependency + 4061.IBPluginDependency + 4062.IBPluginDependency + 4069.IBPluginDependency + 4070.IBPluginDependency + 4072.IBEditorWindowLastContentRect + 4072.IBPluginDependency + 4072.IBWindowTemplateEditedContentRect + 4072.NSWindowTemplate.visibleAtLaunch + 4072.windowTemplate.maxSize + 4073.IBPluginDependency + 4074.IBPluginDependency + 4075.IBPluginDependency + 4076.IBPluginDependency + 4077.IBPluginDependency + 4078.IBPluginDependency + 4080.IBPluginDependency + 4081.IBPluginDependency + 4082.IBPluginDependency + 4083.IBPluginDependency + 4084.IBPluginDependency + 4085.IBPluginDependency + 4086.IBPluginDependency + 4087.IBPluginDependency + 4088.IBPluginDependency + 4089.IBPluginDependency + 4096.IBPluginDependency + 4097.IBPluginDependency + 4098.IBPluginDependency + 4099.IBPluginDependency + 4100.IBPluginDependency + 4101.IBPluginDependency + 4105.IBPluginDependency + 4108.IBPluginDependency + 4109.IBPluginDependency + 4117.IBPluginDependency + 4192.IBPluginDependency + 4217.IBPluginDependency + 4218.IBPluginDependency + 4222.IBPluginDependency + 4223.IBPluginDependency + 4224.IBPluginDependency + 4225.IBPluginDependency + 4226.IBPluginDependency + 4227.IBPluginDependency + 4228.IBPluginDependency + 4229.IBPluginDependency + 4230.IBPluginDependency + 4231.IBPluginDependency + 4232.IBPluginDependency + 4233.IBPluginDependency + 4234.IBPluginDependency + 4235.IBPluginDependency + 4236.IBPluginDependency + 4237.IBPluginDependency + 4238.IBPluginDependency + 4239.IBPluginDependency + 4240.IBPluginDependency + 4241.IBPluginDependency + 4248.IBPluginDependency + 4248.ImportedFromIB2 + 4257.IBPluginDependency + 4281.IBPluginDependency + 4282.IBPluginDependency + 4283.IBPluginDependency + 4284.IBPluginDependency + 4285.IBPluginDependency + 4287.IBPluginDependency + 4313.IBPluginDependency + 4531.IBPluginDependency + 4532.IBPluginDependency + 4546.IBPluginDependency + 4547.IBPluginDependency + 4551.IBPluginDependency + 4552.IBPluginDependency + 4553.IBPluginDependency + 4554.IBPluginDependency + 4555.IBPluginDependency + 4556.IBPluginDependency + 4557.IBPluginDependency + 4558.IBPluginDependency + 4559.IBPluginDependency + 4560.IBPluginDependency + 4561.IBPluginDependency + 4562.IBPluginDependency + 4563.IBPluginDependency + 4564.IBPluginDependency + 4565.IBPluginDependency + 4566.IBPluginDependency + 4567.IBPluginDependency + 4568.IBPluginDependency + 4569.IBPluginDependency + 4570.IBPluginDependency + 4571.IBPluginDependency + 4572.IBPluginDependency + 4619.IBAttributePlaceholdersKey + 4619.IBPluginDependency + 4622.IBAttributePlaceholdersKey + 4622.IBPluginDependency + 4623.IBAttributePlaceholdersKey + 4623.IBPluginDependency + 4624.IBAttributePlaceholdersKey + 4624.IBPluginDependency + 4625.IBPluginDependency + 4626.IBPluginDependency + 4627.IBPluginDependency + 4633.IBAttributePlaceholdersKey + 4633.IBPluginDependency + 4634.IBAttributePlaceholdersKey + 4634.IBPluginDependency + 4635.IBAttributePlaceholdersKey + 4635.IBPluginDependency + 4636.IBPluginDependency + 4637.IBPluginDependency + 4638.IBPluginDependency + 4643.IBAttributePlaceholdersKey + 4643.IBPluginDependency + 4644.IBAttributePlaceholdersKey + 4644.IBPluginDependency + 4645.IBAttributePlaceholdersKey + 4645.IBPluginDependency + 4646.IBPluginDependency + 4647.IBPluginDependency + 4648.IBPluginDependency + 4663.IBPluginDependency + 4664.IBAttributePlaceholdersKey + 4664.IBPluginDependency + 4665.IBAttributePlaceholdersKey + 4665.IBPluginDependency + 4666.IBAttributePlaceholdersKey + 4666.IBPluginDependency + 4667.IBPluginDependency + 4668.IBPluginDependency + 4669.IBPluginDependency + 4676.IBAttributePlaceholdersKey + 4676.IBPluginDependency + 4677.IBAttributePlaceholdersKey + 4677.IBPluginDependency + 4678.IBAttributePlaceholdersKey + 4678.IBPluginDependency + 4679.IBPluginDependency + 4680.IBPluginDependency + 4681.IBPluginDependency + 4691.IBPluginDependency + 5.IBPluginDependency + 5.ImportedFromIB2 + 56.IBPluginDependency + 56.ImportedFromIB2 + 57.IBEditorWindowLastContentRect + 57.IBPluginDependency + 57.ImportedFromIB2 + 57.editorWindowContentRectSynchronizationRect + 58.IBPluginDependency + 58.ImportedFromIB2 + 81.IBEditorWindowLastContentRect + 81.IBPluginDependency + 81.ImportedFromIB2 + 81.editorWindowContentRectSynchronizationRect + 82.IBPluginDependency + 82.ImportedFromIB2 + 83.IBPluginDependency + 83.ImportedFromIB2 + 92.IBPluginDependency + 92.ImportedFromIB2 + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{436, 809}, {64, 6}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{329, 80}, {749, 477}} + com.apple.InterfaceBuilder.CocoaPlugin + {{329, 80}, {749, 477}} + + {{99, 739}, {705, 301}} + + {749, 477} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{960, 394}, {300, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + {{728, 496}, {243, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + BetterTableView + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{414, 725}, {749, 200}} + com.apple.InterfaceBuilder.CocoaPlugin + {{414, 725}, {749, 200}} + + {{49, 661}, {640, 200}} + + {700, 200} + com.apple.InterfaceBuilder.CocoaPlugin + {{480, 925}, {617, 0}} + com.apple.InterfaceBuilder.CocoaPlugin + {{57, 707}, {616, 0}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{608, 612}, {275, 83}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{175, 743}, {240, 243}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{181, 736}, {243, 243}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{608, 612}, {167, 43}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{608, 612}, {241, 103}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + {{627, 403}, {607, 197}} + com.apple.InterfaceBuilder.CocoaPlugin + {{422, 211}, {607, 197}} + {{503, 130}, {740, 413}} + com.apple.InterfaceBuilder.CocoaPlugin + {{0, 92}, {588, 290}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{219, 913}, {194, 73}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{225, 906}, {197, 73}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + YES + + + YES + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + The Blacklist Triggers set how much time passes before an object is blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If a unit does not enter combat after this length of time, it is blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If a unit does not enter combat after this length of time, it is blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If a unit does not enter combat after this length of time, it is blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Ignore units that are more than this number of yards above or below your character. In PvP, this value is strictly enforced, even if you are attacked first. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Ignore units that are more than this number of yards above or below your character. In PvP, this value is strictly enforced, even if you are attacked first. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Ignore units that are more than this number of yards above or below your character. In PvP, this value is strictly enforced, even if you are attacked first. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{450, 836}, {302, 20}} + com.apple.InterfaceBuilder.CocoaPlugin + + {74, 862} + {{6, 979}, {302, 20}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{899, 114}, {236, 493}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{352, 987}, {230, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{443, 792}, {416, 246}} + com.apple.InterfaceBuilder.CocoaPlugin + {{443, 792}, {416, 246}} + + {3.40282e+38, 3.40282e+38} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{66, 124}, {1214, 239}} + com.apple.InterfaceBuilder.CocoaPlugin + {{66, 124}, {1214, 239}} + + {3.40282e+38, 3.40282e+38} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{580, 388}, {290, 54}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + YES + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{608, 612}, {215, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{493, 582}, {662, 245}} + com.apple.InterfaceBuilder.CocoaPlugin + {{493, 582}, {662, 245}} + + {3.40282e+38, 3.40282e+38} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + The Blacklist Durations set how long the object is blacklisted for. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + How long we blacklist this unit for. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + How long we blacklist this unit for. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + How long we blacklist this unit for. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + How long we blacklist this unit for. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + How long we blacklist this unit for. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + How long we blacklist this unit for. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node cannot be reached after this many attempts it will be blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node cannot be reached after this many attempts it will be blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node cannot be reached after this many attempts it will be blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node makes you fall it will be blacklisted after this many attempts. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node makes you fall it will be blacklisted after this many attempts. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node makes you fall it will be blacklisted after this many attempts. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node cannot be looted after this many attempts it will be blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node cannot be looted after this many attempts it will be blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If the node cannot be looted after this many attempts it will be blacklisted. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + {{462, 633}, {233, 203}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{18, 776}, {236, 203}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{133, 933}, {167, 53}} + com.apple.InterfaceBuilder.CocoaPlugin + + {{139, 926}, {170, 53}} + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 4715 + + + + YES + + ActionMenusController + NSObject + + YES + + YES + controller + inventoryController + macroController + mobController + nodeController + spellController + + + YES + Controller + InventoryController + MacroController + MobController + NodeController + SpellController + + + + IBProjectSource + ActionMenusController.h + + + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + AuraController + NSObject + + IBUserSource + + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BindingsController + NSObject + + YES + + YES + botController + chatController + controller + offsetController + + + YES + BotController + ChatController + Controller + OffsetController + + + + IBProjectSource + BindingsController.h + + + + BlacklistController + NSObject + + YES + + YES + mobController + playersController + + + YES + MobController + PlayersController + + + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + closeHotkeyHelp: + closeLootHotkeyHelp: + editBehavior: + editBehaviorPvP: + editProfile: + editProfilePvP: + editRoute: + editRoutePvP: + hotkeyHelp: + login: + lootHotkeyHelp: + maltby: + startBot: + startStopBot: + stopBot: + test2: + test: + testHotkey: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + Route + allChatButton + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + behaviorPopup + behaviorPvPPopup + bindingsController + blacklistController + chatController + chatLogController + combatController + combatProfilePopup + combatProfilePvPPopup + controller + corpseController + databaseManager + fishController + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootController + lootHotkeyHelpPanel + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + mobController + movementController + nodeController + offsetController + overlayWindow + playerController + playersController + procedureController + profileController + pvpController + questController + routePopup + routePvPPopup + runningTimer + scanGrid + spellController + startStopButton + startstopRecorder + statisticsController + statusText + view + wallWalkButton + waypointController + + + YES + Route + NSButton + NSButton + NSButton + id + AuraController + id + id + BindingsController + BlacklistController + ChatController + ChatLogController + CombatController + id + id + Controller + CorpseController + DatabaseManager + FishController + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + MobController + MovementController + NodeController + OffsetController + NSWindow + PlayerDataController + PlayersController + ProcedureController + ProfileController + PvPController + QuestController + id + id + NSTextField + ScanGridView + SpellController + NSButton + SRRecorderControl + StatisticsController + NSTextField + NSView + NSButton + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + chatController + combatPanel + combatTable + controller + macroController + mobController + movementController + playerData + playersController + + + YES + AuraController + BindingsController + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + Controller + NSObject + + YES + + YES + launchWebsite: + pidSelected: + showAbout: + showSettings: + toolbarItemSelected: + + + YES + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + newIdentifierField + newNameField + newSignatureField + nodeController + objectsController + objectsToolbarItem + offsetController + playerData + playerToolbarItem + playersController + prefsToolbarItem + profileController + profilesToolbarItem + pvpController + pvpToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSTextField + NSTextField + NSTextField + NodeController + ObjectsController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + ProfileController + NSToolbarItem + PvPController + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + DatabaseManager + NSObject + + YES + + YES + controller + offsetController + + + YES + Controller + OffsetController + + + + IBProjectSource + DatabaseManager.h + + + + EventController + NSObject + + YES + + YES + botController + controller + offsetController + playerController + + + YES + BotController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + EventController.h + + + + FileController + NSObject + + IBProjectSource + FileController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + ObjectController + + YES + + YES + botController + macroController + memoryViewController + nodeController + objectsController + offsetController + + + YES + BotController + MacroController + MemoryViewController + NodeController + ObjectsController + OffsetController + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + macroController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + MacroController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + menuAction: + offsetSelectAction: + openOffsetPanel: + openPointerPanel: + openSearch: + pointerSelectAction: + saveValues: + selectInstance: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + emulatePPCButton + instanceList + itemController + maskTextField + memoryTable + memoryViewWindow + mobController + nodeController + offsetController + offsetScanPanel + operatorPopUpButton + playersController + pointerScanCancelButton + pointerScanFindButton + pointerScanNumTextField + pointerScanPanel + pointerScanProgressIndicator + pointerScanVariationButton + pointerScanVariationTextField + resultsTextView + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + signatureTextField + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + NSButton + NSPopUpButton + InventoryController + NSTextField + id + id + MobController + NodeController + OffsetController + NSPanel + NSPopUpButton + PlayersController + NSButton + NSButton + NSTextField + NSPanel + NSProgressIndicator + NSButton + NSTextField + NSTextView + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSTextField + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + ObjectController + + updateTracking: + id + + + YES + + YES + additionalList + auraController + botController + combatController + memoryViewController + movementController + objectsController + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + + + YES + NSPopUpButton + id + BotController + id + id + id + ObjectsController + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + combatController + controller + itemController + logOutStuckAttemptsTextField + macroController + mobController + movementTypePopUp + offsetController + playerData + profileController + statisticsController + waypointController + + + YES + AuraController + BindingsController + BlacklistController + BotController + CombatController + Controller + InventoryController + NSTextField + MacroController + MobController + NSPopUpButton + OffsetController + PlayerDataController + ProfileController + StatisticsController + WaypointController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NSObject + + IBUserSource + + + + + NoAccessApplication + NSApplication + + IBProjectSource + NoAccessApplication.h + + + + NodeController + ObjectController + + YES + + YES + botController + memoryViewController + moveToList + movementController + objectsController + + + YES + id + id + NSPopUpButton + id + ObjectsController + + + + IBProjectSource + NodeController.h + + + + ObjectController + NSObject + + tableDoubleClick: + id + + + YES + + YES + controller + playerData + view + + + YES + Controller + PlayerDataController + NSView + + + + IBProjectSource + ObjectController.h + + + + ObjectsController + NSObject + + YES + + YES + faceObject: + filter: + moveToStart: + moveToStop: + refreshData: + reloadNames: + resetObjects: + targetObject: + updateTracking: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + controller + itemController + itemTable + memoryViewController + mobController + mobTable + moveToMobPopUpButton + moveToNodePopUpButton + movementController + nodeController + nodeTable + playerController + playersController + playersTable + tabView + view + + + YES + Controller + InventoryController + NSTableView + MemoryViewController + MobController + NSTableView + NSPopUpButton + NSPopUpButton + MovementController + NodeController + NSTableView + PlayerDataController + PlayersController + NSTableView + NSTabView + NSView + + + + IBProjectSource + ObjectsController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + Player + Unit + + playersController + PlayersController + + + IBProjectSource + Player.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + bindingsController + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BindingsController + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + ObjectController + + updateTracking: + id + + + YES + + YES + memoryViewController + movementController + objectsController + playerColorByLevel + + + YES + MemoryViewController + MovementController + ObjectsController + NSButton + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + showInFinder: + tableRowDoubleClicked: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + fileController + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + FileController + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + ProfileController + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + createProfile: + deleteIgnoreEntry: + deleteProfile: + duplicateProfile: + exportProfile: + importProfile: + renameProfile: + showInFinder: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + assistPopUpButton + controller + fileController + followPopUpButton + ignoreTable + mobController + playersController + profileOutlineView + profileTabView + profileTitle + profileTypePopUp + tankPopUpButton + view + + + YES + NSPopUpButton + Controller + FileController + NSPopUpButton + NSTableView + MobController + PlayersController + NSOutlineView + NSTabView + NSTextField + NSPopUpButton + NSPopUpButton + NSView + + + + IBProjectSource + ProfileController.h + + + + PvPController + NSObject + + YES + + YES + closeRename: + createBehavior: + deleteBehavior: + duplicateBehavior: + exportBehavior: + importBehavior: + renameBehavior: + saveAllObjects: + showInFinder: + test: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + fileController + renamePanel + view + waypointController + + + YES + FileController + NSPanel + NSView + WaypointController + + + + IBProjectSource + PvPController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + Route + NSObject + + IBProjectSource + Route.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + RuleEditor + NSObject + + YES + + YES + addCondition: + cancelRule: + saveRule: + setResultType: + testCondition: + testRule: + + + YES + id + id + id + id + id + id + + + + YES + + YES + botController + conditionMatchingSegment + conditionResultTypeSegment + conditionTargetType + controller + inventoryController + labelNoTarget + resultActionDropdown + ruleEditorWindow + ruleNameText + spellController + spellRuleTableView + spellRuleTypeDropdown + + + YES + BotController + id + id + BetterSegmentedControl + Controller + id + NSTextField + NSPopUpButton + id + id + id + id + id + + + + IBProjectSource + RuleEditor.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + itemController + macroController + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + InventoryController + MacroController + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + Unit + WoWObject + + playerController + PlayerDataController + + + IBProjectSource + Unit.h + + + + WaypointActionEditor + NSObject + + YES + + YES + addAction: + addCondition: + closeEditor: + saveWaypoint: + + + YES + id + id + id + id + + + + YES + + YES + actionTableView + addActionDropDown + addConditionDropDown + conditionMatchingSegment + conditionTableView + editorPanel + inventoryController + macroController + mobController + nodeController + profileController + spellController + waypointController + waypointDescription + + + YES + NSTableView + NSPopUpButton + NSPopUpButton + NSSegmentedControl + NSTableView + NSPanel + InventoryController + MacroController + MobController + NodeController + ProfileController + SpellController + WaypointController + NSTextField + + + + IBProjectSource + WaypointActionEditor.h + + + + WaypointController + NSObject + + YES + + YES + addRouteCollection: + addRouteSet: + addWaypoint: + closeAutomatorPanel: + closeDescription: + closeHelpPanel: + closeVisualize: + closestWaypoint: + deleteRouteButton: + deleteRouteMenu: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + showInFinder: + startStopAutomator: + startingRouteClicked: + stopMovement: + testWaypointSequence: + visualize: + waypointMenuAction: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + descriptionPanel + fileController + helpPanel + mobController + movementController + playerData + routeTypeSegment + routesTable + scrollWithRoute + shortcutRecorder + startingRouteButton + testingMenu + view + visualizePanel + visualizeView + waypointSectionTitle + waypointTabView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + BotController + CombatController + Controller + NSPanel + FileController + NSPanel + MobController + MovementController + PlayerDataController + id + NSOutlineView + NSButton + SRRecorderControl + NSButton + NSMenu + NSView + NSPanel + RouteVisualizationView + NSTextField + NSTabView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + WoWObject + NSObject + + IBProjectSource + WoWObject.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSBrowser + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSBrowser.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSImageCell.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSMovieView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMovieView.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSOutlineView + NSTableView + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSSlider + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSlider.h + + + + NSSliderCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSliderCell.h + + + + NSStepper + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSStepper.h + + + + NSStepperCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSStepperCell.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTabViewItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabViewItem.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableHeaderView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTableHeaderView.h + + + + NSTableView + NSControl + + + + NSText + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSTextView + NSText + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + SUUpdater + NSObject + + checkForUpdates: + id + + + delegate + id + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + YES + + YES + Ability_DualWieldSpecialization + Ability_Rogue_Sprint + Ability_Warrior_Revenge + ActiveQuestIcon + BinderGossipIcon + INV_Misc_Gear_01 + INV_Misc_Head_Dragon_Blue + INV_Misc_Orb_05 + NSActionTemplate + NSAddTemplate + NSApplicationIcon + NSMenuCheckmark + NSMenuMixedState + NSStopProgressTemplate + NSSwitch + NSToolbarCustomizeToolbarItemImage + PVP + Spell_FireResistanceTotem_01 + Spell_Holy_MindVision + Spell_Holy_PrayerofSpirit + Spell_Nature_PoisonCleansingTotem + Trade_Engraving + good + off + + + YES + {64, 64} + {67.7747, 67.7747} + {67.7747, 67.7747} + {16, 16} + {16, 16} + {67.7747, 67.7747} + {67.7747, 67.7747} + {67.7747, 67.7747} + {15, 15} + {8, 8} + {512, 512} + {9, 8} + {7, 2} + {11, 11} + {15, 15} + {32, 32} + {64, 64} + {67.7747, 67.7747} + {67.7747, 67.7747} + {67.7747, 67.7747} + {67.7747, 67.7747} + {64, 64} + {13, 13} + {16, 16} + + + + diff --git a/Male.png b/Male.png new file mode 100644 index 0000000..c8bdeab Binary files /dev/null and b/Male.png differ diff --git a/Memory.xib b/Memory.xib new file mode 100644 index 0000000..0a45335 --- /dev/null +++ b/Memory.xib @@ -0,0 +1,7512 @@ + + + + 1050 + 10D2094 + 762 + 1038.29 + 460.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 762 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + MemoryViewController + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 292 + {{17, 22}, {66, 17}} + + YES + + 68288064 + 272630784 + Attach to: + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2ODY1AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 292 + {{85, 16}, {195, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 292 + {{17, 47}, {103, 17}} + + YES + + 67239488 + 272630784 + View values as: + + + + + 1 + MCAwIDAAA + + + + + + 274 + + YES + + + 2304 + + YES + + + 256 + {683, 201} + + YES + + + 256 + {683, 17} + + + + + + 256 + {{684, 0}, {16, 17}} + + + + YES + + Address + 101 + 40 + 1000 + + 75628096 + 2048 + Address + + LucidaGrande + 11 + 3100 + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 2048 + Text Cell + + + + 6 + System + controlBackgroundColor + + + + + 2 + YES + + + + Offset + 78 + 40 + 1000 + + 75628096 + 2048 + Offset + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + + + + Value + 92 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Value + + + 6 + System + headerColor + + 3 + MQA + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Info + 139 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Info + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + + Saved + 258 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Saved + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -759169024 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {683, 201}} + + + + + 4 + + + + 256 + {{684, 17}, {15, 201}} + + + _doScroller: + 37 + 0.1947367936372757 + + + + 256 + {{1, 218}, {683, 15}} + + 1 + + _doScroller: + 0.99801188707351685 + + + + 2304 + + YES + + + {{1, 0}, {683, 17}} + + + + + 4 + + + + {{20, 73}, {700, 234}} + + + 50 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 292 + {{122, 41}, {158, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Unsigned 32-bit + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + Unsigned 16-bit + + 2147483647 + + + _popUpItemAction: + 5 + + + + + + Signed 32-bit + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Unsigned 64-bit + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + Float + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + Hex 32-bit + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + 1 + 1 + YES + YES + 2 + + + + + -2147483358 + {{143, -33}, {465, 25}} + + YES + + 67239424 + 0 + + + Helvetica + 12 + 16 + + + 1 + 0.10000000000000001 + 0.55000000000000004 + 0.0 + 19 + 1 + YES + NO + + + + + -2147483356 + {{17, -25}, {123, 17}} + + YES + + 67239488 + 272630784 + Refresh frequency: + + + + + + + + + -2147483359 + {{619, -25}, {104, 17}} + + YES + + 67239488 + 272630784 + 0.25 seconds. + + + + + + + + + 289 + {{592, 44}, {128, 22}} + + YES + + -1804468671 + 134218752 + + + 0x1234ABCD + + YES + 1 + + 6 + System + textBackgroundColor + + + + 6 + System + textColor + + + + + + + 289 + {{490, 47}, {97, 17}} + + YES + + 67239488 + 272630784 + Load address: + + + + + + + + + 10 + + YES + + + 256 + + YES + + + 265 + {{451, 7}, {144, 14}} + + YES + + 67239488 + 71435264 + Update every + + + + + 1 + MC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMAA + + + + + + 265 + {{600, 3}, {125, 17}} + + YES + + -2079981824 + 131072 + + + + 1 + 0.10000000000000001 + 0.5 + 0.0 + 19 + 0 + YES + NO + + + + + 268 + {{12, 7}, {236, 17}} + + YES + + 69336641 + 4195328 + Viewing address: 0x1234ABCD + + + + + + + + + 256 + {{275, 13}, {101, 16}} + + YES + + 67239424 + 134479872 + Signature Scanner + + LucidaGrande + 9 + 3614 + + + -2038284033 + 129 + + + 200 + 25 + + + + + 264 + {{373, 13}, {103, 16}} + + YES + + 67239424 + 134479872 + Find Pointers + + + -2038284033 + 129 + + + 200 + 25 + + + + + 264 + {{373, -1}, {103, 16}} + + YES + + 67239424 + 134479872 + Clear Values + + + -2038284033 + 129 + + + 200 + 25 + + + + + 264 + {{275, -1}, {101, 16}} + + YES + + 67239424 + 134479872 + Save Values + + + -2038284033 + 129 + + + 200 + 25 + + + + {{1, 1}, {740, 30}} + + + + {{-1, 323}, {742, 32}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA + + + 1 + MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA + + + + {741, 354} + + NSView + + + MemoryView + + YES + + + Jump to Address + + 2147483647 + + + + + + Copy Value + + 2147483647 + + + 1 + + + + Copy Address + + 2147483647 + + + 2 + + + + View bits + + 2147483647 + + + 3 + + + + Find Pointers to here + + 2147483647 + + + 4 + + + + + 19 + 2 + {{196, 220}, {206, 290}} + 1685585920 + Bits + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 268 + + YES + + + 2304 + + YES + + + 256 + {206, 274} + + YES + + + 256 + {206, 17} + + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + YES + + Bit + 101 + 40 + 1000 + + 75628096 + 134219776 + Bit + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + On/Off + 99 + 40 + 1000 + + 75628096 + 134219776 + On/Off + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + -700448768 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {206, 274}} + + + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + _doScroller: + 37 + 0.1947367936372757 + + + + -2147483392 + {{1, 119}, {223, 15}} + + 1 + + _doScroller: + 0.57142859697341919 + + + + 2304 + + YES + + + {{1, 0}, {206, 17}} + + + + + 4 + + + + {{-1, -1}, {208, 292}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {206, 290} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + 27 + 2 + {{230, -170}, {647, 711}} + 1685585920 + Search + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 12 + {{12, 688}, {623, 5}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + 3 + 2 + 0 + NO + + + + 268 + + YES + + + 2304 + + YES + + + 256 + {354, 589} + + YES + + + 256 + {354, 17} + + + + + + -2147483392 + {{224, 0}, {16, 17}} + + + + YES + + 158 + 40 + 1000 + + 75628096 + 2048 + Address + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 190 + 40 + 1000 + + 75628096 + 2048 + Value + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + -700448768 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {354, 589}} + + + + + 4 + + + + -2147483392 + {{224, 17}, {15, 102}} + + + _doScroller: + 37 + 0.1947367936372757 + + + + -2147483392 + {{1, 119}, {223, 15}} + + 1 + + _doScroller: + 0.57142859697341919 + + + + 2304 + + YES + + + {{1, 0}, {354, 17}} + + + + + 4 + + + + {{271, 61}, {356, 607}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 268 + {{94, 629}, {161, 22}} + + YES + + -2076049856 + 133120 + + + 109199615 + 129 + + + 400 + 75 + + + 32-bit Integer + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 2 + + + YES + + OtherViews + + YES + + + 08-bit Integer + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 16-bit Integer + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + + 64-bit Integer + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + YES + YES + + + 2147483647 + 1 + + + _popUpItemAction: + + + + + Float + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + Double + + 1048576 + 2147483647 + + + _popUpItemAction: + 5 + + + + + YES + YES + + + 2147483647 + + + _popUpItemAction: + + + + + ASCII String + + 1048576 + 2147483647 + + + _popUpItemAction: + 6 + + + + + + 2 + 1 + YES + YES + 2 + + + + + 268 + {{96, 607}, {156, 18}} + + YES + 1 + 2 + + YES + + -2080244224 + 131072 + Signed + + + 1 + 1211912703 + 0 + + NSRadioButton + + + + 200 + 25 + + + 67239424 + 131072 + Unsigned + + + 1211912703 + 0 + + 12779520 + + YES + + YES + + + + YES + + YES + size + state + value + widget + + + YES + regular + normal + + radiobutton + + + {18, 18} + 0 + YES + NSCalibratedRGBColorSpace + + + + + 3 + MCAwAA + + + + 400 + 75 + + + {76, 18} + {4, 2} + 1168646144 + NSActionCell + + 67239424 + 0 + Radio + + 1211912703 + 0 + + 549453824 + {18, 18} + + YES + + YES + + + + TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw +IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ +29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 +dXV198PDw//8/Pz////////////////////////////U1NT/fHx89yUlJXkAAAAFAAAAAAAAAAAAAAAA +AAAAAxEREUZqamrmtbW1/+3t7f/+/v7//v7+//7+/v/9/f3//f39//39/f/39/f/xMTE/3d3d+YZGRlG +AAAAAwAAAAAAAAAAAAAACkJCQqGtra3/xsbG/+vr6//y8vL/9fX1//X19f/z8/P/9fX1//Ly8v/u7u7/ +0tLS/6+vr/9KSkqhAAAACgAAAAAAAAAAAAAAF3h4eN2/v7//z8/P/93d3f/q6ur/7+/v/+/v7//w8PD/ +7e3t/+3t7f/i4uL/zs7O/8XFxf98fHzdAAAAFwAAAAAAAAADAAAAJKSkpPjOzs7/2dnZ/+Dg4P/i4uL/ +5eXl/+bm5v/n5+f/5eXl/+Li4v/e3t7/2tra/9DQ0P+srKz4AAAAJAAAAAMAAAADAAAALrCwsPrW1tb/ +3t7e/+Tk5P/p6en/6+vr/+zs7P/p6en/6+vr/+fn5//k5OT/4ODg/9nZ2f+zs7P6AAAALgAAAAMAAAAD +AAAALp2dnezg4OD/5eXl/+rq6v/u7u7/8PDw//Dw8P/x8fH/8PDw/+7u7v/q6ur/5ubm/+Hh4f+ZmZns +AAAALgAAAAMAAAADAAAAJG5ubs/l5eX/6enp/+/v7//y8vL/9vb2//r6+v/5+fn/9/f3//b29v/x8fH/ +6+vr/+Tk5P9ra2vPAAAAJAAAAAMAAAAAAAAAFy4uLpPCwsL67Ozs//Pz8//5+fn//v7+//7+/v/+/v7/ +/v7+//v7+//19fX/8PDw/8LCwvosLCyTAAAAFwAAAAAAAAAAAAAACgAAAENfX1/S5OTk/vn5+f/+/v7/ +///////////////////////////8/Pz/5ubm/l9fX9IAAABDAAAACgAAAAAAAAAAAAAAAwAAABcAAABl +YmJi3NLS0v3////////////////////////////////V1dX9ZGRk3AAAAGUAAAAXAAAAAwAAAAAAAAAA +AAAAAAAAAAUAAAAfAAAAZTMzM8KAgIDwv7+//O3t7f/t7e3/v7+//ICAgPAzMzPCAAAAZQAAAB8AAAAF +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAFwAAAEMAAAB3AAAAnwAAALMAAACzAAAAnwAAAHcAAABD +AAAAFwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAoAAAAXAAAAJAAAAC4AAAAu +AAAAJAAAABcAAAAKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQEAAAMAAAABABIAAAEB +AAMAAAABABIAAAECAAMAAAAEAAAFugEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES +AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS +AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA + + + + + + + + 400 + 75 + + + + + + + + + 268 + {{12, 633}, {80, 14}} + + YES + + 68288064 + 272761856 + Variable Type: + + + + + + + + + 268 + {{110, 130}, {145, 22}} + + YES + + -2076049856 + 133120 + + + 109199615 + 129 + + + 400 + 75 + + + Variable ≠ Value + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + Variable = Value + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + Variable < Value + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + + + Variable > Value + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + 1 + YES + YES + 2 + + + + + 268 + {{113, 61}, {139, 19}} + + YES + + -1804468671 + 272761856 + + + + YES + 1 + + + + + + + 268 + {{113, 88}, {139, 38}} + + YES + 2 + 1 + + YES + + 67239424 + 131072 + Last Value + + + 1 + 1211912703 + 0 + + + + 200 + 25 + + + -2080244224 + 131072 + This Search Value: + + + 1211912703 + 0 + + 549453824 + {18, 18} + + YES + + YES + + + + TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw +IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ +29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 +dXV198PDw//8/Pz////////////////////////////U1NT/fHx89yUlJXkAAAAFAAAAAAAAAAAAAAAA +AAAAAxEREUZqamrmtbW1/+3t7f/+/v7//v7+//7+/v/9/f3//f39//39/f/39/f/xMTE/3d3d+YZGRlG +AAAAAwAAAAAAAAAAAAAACkJCQqGtra3/xsbG/+vr6//y8vL/9fX1//X19f/z8/P/9fX1//Ly8v/u7u7/ +0tLS/6+vr/9KSkqhAAAACgAAAAAAAAAAAAAAF3h4eN2/v7//z8/P/93d3f/q6ur/7+/v/+/v7//w8PD/ +7e3t/+3t7f/i4uL/zs7O/8XFxf98fHzdAAAAFwAAAAAAAAADAAAAJKSkpPjOzs7/2dnZ/+Dg4P/i4uL/ +5eXl/+bm5v/n5+f/5eXl/+Li4v/e3t7/2tra/9DQ0P+srKz4AAAAJAAAAAMAAAADAAAALrCwsPrW1tb/ +3t7e/+Tk5P/p6en/6+vr/+zs7P/p6en/6+vr/+fn5//k5OT/4ODg/9nZ2f+zs7P6AAAALgAAAAMAAAAD +AAAALp2dnezg4OD/5eXl/+rq6v/u7u7/8PDw//Dw8P/x8fH/8PDw/+7u7v/q6ur/5ubm/+Hh4f+ZmZns +AAAALgAAAAMAAAADAAAAJG5ubs/l5eX/6enp/+/v7//y8vL/9vb2//r6+v/5+fn/9/f3//b29v/x8fH/ +6+vr/+Tk5P9ra2vPAAAAJAAAAAMAAAAAAAAAFy4uLpPCwsL67Ozs//Pz8//5+fn//v7+//7+/v/+/v7/ +/v7+//v7+//19fX/8PDw/8LCwvosLCyTAAAAFwAAAAAAAAAAAAAACgAAAENfX1/S5OTk/vn5+f/+/v7/ +///////////////////////////8/Pz/5ubm/l9fX9IAAABDAAAACgAAAAAAAAAAAAAAAwAAABcAAABl +YmJi3NLS0v3////////////////////////////////V1dX9ZGRk3AAAAGUAAAAXAAAAAwAAAAAAAAAA +AAAAAAAAAAUAAAAfAAAAZTMzM8KAgIDwv7+//O3t7f/t7e3/v7+//ICAgPAzMzPCAAAAZQAAAB8AAAAF +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAFwAAAEMAAAB3AAAAnwAAALMAAACzAAAAnwAAAHcAAABD +AAAAFwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAoAAAAXAAAAJAAAAC4AAAAu +AAAAJAAAABcAAAAKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgEAAAMAAAABABIAAAEB +AAMAAAABABIAAAECAAMAAAAEAAAFxgEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES +AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS +AAMAAAABAAEAAAFTAAMAAAAEAAAFzodzAAcAAAwYAAAF1gAAAAAACAAIAAgACAABAAEAAQABAAAMGGFw +cGwCAAAAbW50clJHQiBYWVogB9YABAADABMALAASYWNzcEFQUEwAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAPbWAAEAAAAA0y1hcHBsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAOclhZWgAAASwAAAAUZ1hZWgAAAUAAAAAUYlhZWgAAAVQAAAAUd3RwdAAAAWgAAAAUY2hhZAAA +AXwAAAAsclRSQwAAAagAAAAOZ1RSQwAAAbgAAAAOYlRSQwAAAcgAAAAOdmNndAAAAdgAAAMSbmRpbgAA +BOwAAAY+ZGVzYwAACywAAABkZHNjbQAAC5AAAAAubW1vZAAAC8AAAAAoY3BydAAAC+gAAAAtWFlaIAAA +AAAAAF1KAAA0kQAACCVYWVogAAAAAAAAdCAAALRgAAAjPVhZWiAAAAAAAAAlbAAAFyoAAKfDWFlaIAAA +AAAAAPNSAAEAAAABFs9zZjMyAAAAAAABDEIAAAXe///zJgAAB5IAAP2R///7ov///aMAAAPcAADAbGN1 +cnYAAAAAAAAAAQHNAABjdXJ2AAAAAAAAAAEBzQAAY3VydgAAAAAAAAABAc0AAHZjZ3QAAAAAAAAAAAAD +AQAAAQACBAUGBwkKCw0ODxASExQWFxgaGxweHyAiIyQmJygpKywtLzAxMjM1Njc4OTs8PT5AQUJDREZH +SElKS0xOT1BRUlNUVVZXWFlaW1xdXl9hYmNkZWZnaGlqa2xtbm9wcXJzdHV2d3h5ent8fX5/gIGCg4SF +hoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnZ6foKGio6SlpqanqKmqq6ytra6vsLGysrO0tba3uLi5uru8 +vL2+v8DBwcLDxMXGxsfIycrKy8zNzs7P0NHS0tPU1dbW19jZ2drb3Nzd3t/g4eLi4+Tl5ufo6enq6+zt +7u/w8fHy8/T19vf4+fr7/P3+/v8AAgMEBQYHCAkKCwwNDg8QERITFBUWFxgZGhscHR8gISIjJCUnKCkq +Ky0uLzAxMzQ1Njc4OTo7PD0/QEFCQ0RFRkdISUpLTE1OT1BRUlNUVVZXWFlaWltcXV5fYGFiY2RlZmdo +aWprbG1ub3BxcnN0dXZ3d3h5ent8fH1+f4CBgoKDhIWGh4iIiYqLjI2Oj5CRkpOUlJWWl5iZmpucnZ2e +n6ChoqOkpaamp6ipqqusra6vsLCxsrO0tba3uLm5uru8vb6/wMHCw8TFx8jJysvMzc7P0NDR0tPU1dbX +2Nna29ze3+Dh4uPk5ebn6err7O3u7/Hy8/T19vf5+vv8/f7/AAIDAwQFBgcICQoKCwwNDg8QERITFBUW +FxgZGhscHR4fICEiIyQlJicoKSorLC0uLzAxMjM0NTY3ODg5Ojs8PT4+P0BBQkNDREVGR0hJSUpLTE1O +Tk9QUVJSU1RVVVZXWFhZWltbXF1eXl9gYWFiY2RkZWZnZ2hpaWprbGxtbm5vcHFxcnNzdHV1dnd4eHl6 +ent8fH1+fn+AgYGCg4SEhYaHiImJiouMjY6Oj5CRkpOTlJWWl5iZmZqbnJ2en6ChoqOkpaanqKmqq6yt +rq+xsrO0tba3uLq7vL2+wMHDxMbHycrMzs/R0tTW19nb3d7g4uTm6Ors7vDy9Pb4+vz+/wAAbmRpbgAA +AAAAAAY2AACXGgAAVjoAAFPKAACJ3gAAJ8IAABaoAABQDQAAVDkAAiuFAAIZmQABeFEAAwEAAAIAAAAA +AAEABgANABcAIwAxAEAAUgBlAHsAkwCrAMUA4gD/AR8BPwFhAYUBqgHQAfgCIAJLAncCpQLSAwIDMwNl +A5gDzgQFBD0EdQSvBOsFKQVnBacF6AYqBm4GtQb8B0UHkgfkCDkIkAjnCT4JmAn0ClAKrQsLC2sLygwq +DIwM8Q1XDcAOKA6SDv4PbA/bEE0QxBE7EbQSMRKwEzITuRREFNAVYBXxFocXHhfAGGIZBBmsGlQa+RuU +HC4czh1yHhQeux9jIA0gvCFoIhkizyOJJEEk+SW6JnknOygFKMspkypiKzIsASzXLawuhy9gMD4xGzH8 +MtszvzSgNYY2cjdcOEw5OTorOxs8CD0EPfU+6z/nQOFB2ELUQ9VE00XcRttH5EjxSgBLCUwdTTFOUE9v +UI9Rt1LdVAVVNlZsV6VY4FohW21ct135X09goGH0Y0tkqGYFZ19oxGova5ptCG54b/BxbnLsdG119Xd/ +eQh6knwqfcV/W4D4gpSEO4Xih4CJKorYjIqOOY/jkZuTWJUOlsyYiZpSnB6d4Z+soX+jWqUvpxOo+6rj +rMuuwLC4sra0rra0uL+60LzfvwDBHcLdxLXGhchYyi7MCs3lz7rRmtOA1WPXR9kq2xPc/97s4M/iveSn +5o3obupT7ELuLPAM8fLz0PW396H5f/tZ/T3//wAAAAEAAwALABYAJQA3AE0AZQCBAJ8AwQDlAQsBNQFh +AZABwQH1AisCZAKfAtwDHANfA6MD6gQ0BH8EzQT1BR0FcAXEBhsGdAbPBy0HXAeMB+4IUgi4CSAJVAmK +CfYKZArVC0cLgQu8DDIMqw0mDaIOIQ6hDyQPqRAvELgQ/RFDEc8SXRLuE4AUFRSrFUMV3RZ5FxcXthhY +GPwZoRpIGvEbnBxJHPgdqB5bHw8fxSB9ITch8iKwJDAk8yW3Jn4nRigQKNwpqSp5K0osHCzxLccuoC95 +MFUxMzISMvMz1TS5NaA2hzdxOFw5STo4Oyg8Gj4DPvs/9EDuQepD6ETpRexG8Uf3SP9LFEwhTTBOQE9S +UGZSklOrVMVV4Vb/WB5ZP1phW4Vcq13SXvthUmJ/Y69k4GYSZ0dofGm0au1tZG6ib+FxInJlc6l073Y2 +d396FXtjfLJ+A39VgKmB/4NWhK+GCYjCiiGLgYzjjkePrJESknuT5Ja8mCuZm5sMnH+d9J9qoOGiWqPV +pVGmz6eOqE6pzqtRrNSuWq/gsWmy8rR+tgu5Kbq6vE294b93wQ7Cp8RBxd3He8kZyrrLisxbzf/Po9FK +0vHUm9ZF1/HZn9tO3Cbc/96x4GTiGePQ5YjnQegf6Pzquex27jbv9/G583z0X/VC9wj40Pqa/GX+Mf// +AAAAAQADAAsAJQA3AE0AZQCBAJ8AwQELATUBYQGQAcEB9QIrAmQCnwLcAxwDXwOjA+oENAR/BM0FHQVw +BcQGGwZ0Bs8HLQeMB+4IUgi4CSAJign2CmQK1QtHC7wMMgyrDSYNog4hDqEPJA+pEC8QuBFDEl0S7hOA +FBUUqxVDFnkXFxe2GFgY/BpIGvEbnBxJHPgdqB8PH8UgfSE3IfIjbyQwJPMltydGKBAo3Cp5K0osHC3H +LqAveTEzMhIy8zS5NaA2hzhcOUk6ODwaPQ4+Az/0QO5C6EPoROlG8Uf3SglLFEwhTkBPUlF7UpJUxVXh +Vv9ZP1phXKtd0mAlYVJjr2TgZhJofGm0au1tZG6ib+FxInJldO92Nnd/eMl6FXyyfgN/VYCpgf+Er4YJ +h2WIwoohi4GOR4+skRKSe5PklVCWvJgrmZubDJx/nfSfaqDholqj1aVRps+oTqnOq1Gs1K2Xrlqv4LFp +svK0frYLt5m5Kbnxurq8Tb3hv3fBDsHawqfEQcUPxd3He8hKyRnKusuKzFvN/87Rz6PQdtFK0vHTxtSb +1kXXG9fx2MjZn9tO3Cbc/93Y3rHfiuBk4hni9ePQ5KzliOZk50HoH+j86drqueuX7HbtVu427xbv9/DX +8bnymvN89F/1QvYl9wj37PjQ+bX6mvt//GX9S/4x//8AAGRlc2MAAAAAAAAACkNvbG9yIExDRAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAABtbHVjAAAAAAAAAAEAAAAMZW5VUwAAABIAAAAcAEMAbwBsAG8AcgAgAEwAQwBE +AABtbW9kAAAAAAAABhAAAJxOAAAAAL5zkQAAAAAAAAAAAAAAAAAAAAAAdGV4dAAAAABDb3B5cmlnaHQg +QXBwbGUgQ29tcHV0ZXIsIEluYy4sIDIwMDUAAAAAA + + + + + + + + 400 + 75 + + + {139, 18} + {4, 2} + 1151868928 + NSActionCell + + 67239424 + 131072 + Radio + + 1211912703 + 0 + + 549453824 + {18, 18} + + YES + + YES + + + + TU0AKgAABRgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAMAAAADAAAAAwAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAADwRERGLJycnySsrK/A1NTXw +IyMjyRwcHIsJCQk8AAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFRUVdVBQUOCoqKj/ +29vb//n5+f/6+vr/2tra/6qqqv9UVFTgHx8fdQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUZGRl5 +dXV198PDw//8/Pz////////////////////////////U1NT/fHx89yUlJXkAAAAFAAAAAAAAAAAAAAAA +AAAAAxEREUZqamrmtbW1/+3t7f/+/v7//v7+//7+/v/9/f3//f39//39/f/39/f/xMTE/3d3d+YZGRlG +AAAAAwAAAAAAAAAAAAAACkJCQqGtra3/xsbG/+vr6//y8vL/9fX1//X19f/z8/P/9fX1//Ly8v/u7u7/ +0tLS/6+vr/9KSkqhAAAACgAAAAAAAAAAAAAAF3h4eN2/v7//z8/P/93d3f/q6ur/7+/v/+/v7//w8PD/ +7e3t/+3t7f/i4uL/zs7O/8XFxf98fHzdAAAAFwAAAAAAAAADAAAAJKSkpPjOzs7/2dnZ/+Dg4P/i4uL/ +5eXl/+bm5v/n5+f/5eXl/+Li4v/e3t7/2tra/9DQ0P+srKz4AAAAJAAAAAMAAAADAAAALrCwsPrW1tb/ +3t7e/+Tk5P/p6en/6+vr/+zs7P/p6en/6+vr/+fn5//k5OT/4ODg/9nZ2f+zs7P6AAAALgAAAAMAAAAD +AAAALp2dnezg4OD/5eXl/+rq6v/u7u7/8PDw//Dw8P/x8fH/8PDw/+7u7v/q6ur/5ubm/+Hh4f+ZmZns +AAAALgAAAAMAAAADAAAAJG5ubs/l5eX/6enp/+/v7//y8vL/9vb2//r6+v/5+fn/9/f3//b29v/x8fH/ +6+vr/+Tk5P9ra2vPAAAAJAAAAAMAAAAAAAAAFy4uLpPCwsL67Ozs//Pz8//5+fn//v7+//7+/v/+/v7/ +/v7+//v7+//19fX/8PDw/8LCwvosLCyTAAAAFwAAAAAAAAAAAAAACgAAAENfX1/S5OTk/vn5+f/+/v7/ +///////////////////////////8/Pz/5ubm/l9fX9IAAABDAAAACgAAAAAAAAAAAAAAAwAAABcAAABl +YmJi3NLS0v3////////////////////////////////V1dX9ZGRk3AAAAGUAAAAXAAAAAwAAAAAAAAAA +AAAAAAAAAAUAAAAfAAAAZTMzM8KAgIDwv7+//O3t7f/t7e3/v7+//ICAgPAzMzPCAAAAZQAAAB8AAAAF +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAFwAAAEMAAAB3AAAAnwAAALMAAACzAAAAnwAAAHcAAABD +AAAAFwAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAAAAoAAAAXAAAAJAAAAC4AAAAu +AAAAJAAAABcAAAAKAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAwAAAAMAAAADAAAAAwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADQEAAAMAAAABABIAAAEB +AAMAAAABABIAAAECAAMAAAAEAAAFugEDAAMAAAABAAEAAAEGAAMAAAABAAIAAAERAAQAAAABAAAACAES +AAMAAAABAAEAAAEVAAMAAAABAAQAAAEWAAMAAAABABIAAAEXAAQAAAABAAAFEAEcAAMAAAABAAEAAAFS +AAMAAAABAAEAAAFTAAMAAAAEAAAFwgAAAAAACAAIAAgACAABAAEAAQABA + + + + + + + + 400 + 75 + + 1 + + + + + + + + 268 + {{52, 137}, {56, 14}} + + YES + + 68288064 + 71435264 + Operator: + + + + + + + + + 268 + {{70, 112}, {38, 14}} + + YES + + 68288064 + 71435264 + Value: + + + + + + + + + 268 + {{32, 63}, {76, 14}} + + YES + + 68288064 + 71435264 + Search Value: + + + + + + + + + 268 + {{161, 22}, {96, 28}} + + YES + + 67239424 + 134348800 + Search + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{30, 22}, {128, 28}} + + YES + + 604110336 + 134348800 + Clear Search + + + -2038284033 + 129 + + + 200 + 25 + + + + {647, 711} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + 17 + 2 + {{196, 207}, {486, 303}} + -469762048 + Offset Scanner + NSPanel + + {3.40282e+38, 3.40282e+38} + {488, 156} + + + 256 + + YES + + + 268 + {{370, 12}, {96, 32}} + + + 1 + YES + + 67239424 + 134217728 + Scan + + + -2034876161 + 129 + + DQ + 200 + 25 + + + + + 268 + {{274, 12}, {96, 32}} + + + YES + + 67239424 + 134217728 + Cancel + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + + 36 + + YES + + + 256 + + YES + + + 268 + {{15, 58}, {98, 17}} + + + YES + + 68288064 + 71304192 + Byte signature: + + + + + + + + + 268 + {{15, 33}, {98, 17}} + + + YES + + 68288064 + 71304192 + Byte mask: + + + + + + + + + 268 + {{118, 57}, {316, 19}} + + + YES + + -1804468671 + 272761856 + + + \x8B\x55\x0C\x8D\x45\xD8\x89\x04\x24\xC7\x44\x24\x04\xFC\x73\x0C\x01\x89\x54\x24\x08 + + YES + 1 + + + + + + + 268 + {{118, 32}, {316, 19}} + + + YES + + -1804468671 + 272761856 + + + xxxxxxxxxxxxx????xxxx + + YES + 1 + + + + + + + 268 + {{360, 11}, {76, 18}} + + + YES + + 67239424 + 262144 + Emulate PPC + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + {{1, 1}, {452, 85}} + + + + + {{15, 193}, {454, 101}} + + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 36 + + YES + + + 256 + + YES + + + 256 + + YES + + + 2304 + + YES + + + 2322 + {399, 99} + + + + + + + + + + + + YES + + + 134 + + + + 399 + 1 + + + 11237 + 0 + + + + YES + + YES + NSBackgroundColor + NSColor + + + YES + + 6 + System + selectedTextBackgroundColor + + + + 6 + System + selectedTextColor + + + + + + + YES + + YES + NSColor + NSCursor + NSUnderline + + + YES + + 1 + MCAwIDEAA + + + {8, -8} + 13 + + + + + + + 6 + {463, 1e+07} + {223, 99} + + + + {{1, 1}, {399, 99}} + + + + + + + {4, -5} + 1 + + 4 + + + + 256 + {{400, 1}, {15, 99}} + + + + _doScroller: + 0.99248123168945312 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + + 1 + + _doScroller: + 1 + 0.94565218687057495 + + + {{18, 14}, {416, 101}} + + + + 18 + + + + + + {{1, 1}, {452, 125}} + + + + + {{15, 48}, {454, 141}} + + + {0, 0} + + 67239424 + 0 + Results + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{15, 18}, {250, 22}} + + + YES + + 67239424 + 272891904 + Note: Scanning can take anywhere from 1-30 seconds depending on the speed of your machine + + + + + + + + {486, 303} + + + + {{0, 0}, {1680, 1028}} + {488, 172} + {3.40282e+38, 3.40282e+38} + + + YES + + + 17 + 2 + {{731, 446}, {285, 186}} + -469762048 + Pointer Search + NSPanel + + {3.40282e+38, 3.40282e+38} + + + 256 + + YES + + + 268 + {{14, 12}, {96, 32}} + + 1 + YES + + 67239424 + 134217728 + Find + + + -2034876161 + 129 + + DQ + 200 + 25 + + + + + 268 + {{108, 12}, {96, 32}} + + YES + + 67239424 + 134217728 + Cancel + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + + 36 + + YES + + + 256 + + YES + + + 268 + {{15, 47}, {132, 17}} + + YES + + 68288064 + 4195328 + Number of pointers + + + + + + + + + 268 + {{146, 44}, {52, 22}} + + YES + + 343014977 + 138413056 + + + + + YES + + YES + allowsFloats + formatterBehavior + locale + maximum + minimum + negativeInfinitySymbol + nilSymbol + positiveInfinitySymbol + + + YES + + + + + + + + -∞ + + +∞ + + + # + # + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + NO + NO + YES + + + YES + 1 + + + + + + + 268 + {{123, 14}, {57, 22}} + + YES + + -1267597759 + 138413056 + + + 2nd + + YES + 1 + + + + + + + 268 + {{16, 16}, {101, 18}} + + YES + + 604110336 + 0 + Search every + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{185, 17}, {54, 17}} + + YES + + 68288064 + 272630784 + address + + + + + + + + {{1, 1}, {254, 74}} + + + + {{15, 87}, {256, 90}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{17, 50}, {250, 33}} + + YES + + 67239424 + 272891904 + Note: It takes roughly 1-5 seconds per pointer scan, take this into consideration when you are selecting how many pointers to search for + + + + + + + + + -2147482356 + + {{204, 18}, {66, 20}} + + 16392 + 100 + + + {285, 186} + + {{0, 0}, {1920, 1178}} + {3.40282e+38, 3.40282e+38} + + + + + YES + + + view + + + + 29 + + + + selectedTag: displayFormat + + + + + + selectedTag: displayFormat + selectedTag + displayFormat + 2 + + + 30 + + + + dataSource + + + + 31 + + + + delegate + + + + 32 + + + + memoryTable + + + + 33 + + + + value: refreshFrequency + + + + + + value: refreshFrequency + value + refreshFrequency + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 43 + + + + displayPatternValue1: refreshFrequency + + + + + + displayPatternValue1: refreshFrequency + displayPatternValue1 + refreshFrequency + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@ seconds. + + + + + + + + 2 + + + 47 + + + + setCustomAddress: + + + + 50 + + + + value: refreshFrequency + + + + + + value: refreshFrequency + value + refreshFrequency + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 65 + + + + displayPatternValue1: refreshFrequency + + + + + + displayPatternValue1: refreshFrequency + displayPatternValue1 + refreshFrequency + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + Update every %{value1}@s: + + + + + + + + 2 + + + 66 + + + + displayPatternValue1: currentAddress + + + + + + displayPatternValue1: currentAddress + displayPatternValue1 + currentAddress + + YES + + YES + NSDisplayPattern + NSValueTransformerName + + + YES + Viewing address: %{value1}@ + NSNumberToHexString + + + 2 + + + 69 + + + + enabled: controller.isRegistered + + + + + + enabled: controller.isRegistered + enabled + controller.isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + + + + + + + + 2 + + + 70 + + + + hidden: controller.isRegistered + + + + + + hidden: controller.isRegistered + hidden + controller.isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSNegateBoolean + + + 2 + + + 72 + + + + saveValues: + + + + 103 + + + + clearValues: + + + + 106 + + + + menu + + + + 117 + + + + menuAction: + + + + 118 + + + + menuAction: + + + + 119 + + + + menuAction: + + + + 120 + + + + menuAction: + + + + 121 + + + + bitPanel + + + + 133 + + + + menuAction: + + + + 139 + + + + searchTypePopUpButton + + + + 205 + + + + signMatrix + + + + 206 + + + + operatorPopUpButton + + + + 207 + + + + valueMatrix + + + + 208 + + + + searchText + + + + 209 + + + + clearButton + + + + 210 + + + + searchButton + + + + 211 + + + + searchPanel + + + + 214 + + + + dataSource + + + + 215 + + + + delegate + + + + 216 + + + + searchTableView + + + + 217 + + + + startSearch: + + + + 218 + + + + startSearch: + + + + 219 + + + + clearSearch: + + + + 220 + + + + typeSelected: + + + + 221 + + + + offsetScanPanel + + + + 246 + + + + maskTextField + + + + 261 + + + + signatureTextField + + + + 262 + + + + emulatePPCButton + + + + 268 + + + + openOffsetPanel: + + + + 275 + + + + offsetSelectAction: + + + + 276 + + + + offsetSelectAction: + + + + 277 + + + + value: values.ByteSignature + + + + + + value: values.ByteSignature + value + values.ByteSignature + 2 + + + 280 + + + + value: values.ByteMask + + + + + + value: values.ByteMask + value + values.ByteMask + 2 + + + 282 + + + + pointerScanVariationTextField + + + + 328 + + + + pointerScanVariationButton + + + + 329 + + + + pointerScanProgressIndicator + + + + 330 + + + + pointerScanNumTextField + + + + 331 + + + + pointerSelectAction: + + + + 333 + + + + pointerSelectAction: + + + + 334 + + + + openPointerPanel: + + + + 335 + + + + pointerScanPanel + + + + 336 + + + + pointerScanFindButton + + + + 337 + + + + pointerScanCancelButton + + + + 338 + + + + resultsTextView + + + + 354 + + + + instanceList + + + + 363 + + + + selectInstance: + + + + 364 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + + + + + + 2 + + + YES + + + + + + 3 + + + YES + + + + + + + + + 4 + + + YES + + + + + + 5 + + + YES + + + + + + 6 + + + YES + + + + + + + + + + + 7 + + + + + 8 + + + + + 9 + + + + + 10 + + + + + 11 + + + + + 12 + + + + + 13 + + + YES + + + + + + + + + + 14 + + + + + 15 + + + + + 16 + + + YES + + + + + + 17 + + + YES + + + + + + 18 + + + YES + + + + + + 19 + + + + + 20 + + + + + 21 + + + + + 22 + + + + + 37 + + + YES + + + + + + 38 + + + + + 39 + + + YES + + + + + + 40 + + + + + 41 + + + YES + + + + + + 42 + + + + + 44 + + + YES + + + + + + 45 + + + + + 48 + + + YES + + + + + + 49 + + + + + 51 + + + YES + + + + + + 52 + + + + + 58 + + + YES + + + + + + + + + + + + 60 + + + YES + + + + + + 63 + + + + + 98 + + + + + 61 + + + YES + + + + + + 62 + + + + + 99 + + + YES + + + + + + 100 + + + + + 111 + + + YES + + + + + + + + + + 112 + + + + + 113 + + + + + 114 + + + + + 115 + + + + + 122 + + + YES + + + + + + 123 + + + YES + + + + + + 124 + + + YES + + + + + + + + + 125 + + + + + 126 + + + + + 127 + + + YES + + + + + + + 128 + + + + + 129 + + + YES + + + + + + 130 + + + YES + + + + + + 131 + + + + + 132 + + + + + 138 + + + + + 151 + + + YES + + + + + + 152 + + + YES + + + + + + + + + + + + + + + + + + 153 + + + + + 154 + + + YES + + + + + + + + + 155 + + + + + 156 + + + + + 157 + + + YES + + + + + + + 158 + + + + + 159 + + + YES + + + + + + 160 + + + YES + + + + + + 161 + + + + + 162 + + + + + 163 + + + YES + + + + + + 164 + + + YES + + + + + + 165 + + + YES + + + + + + + + + + + + + + 166 + + + + + 167 + + + + + 168 + + + + + 169 + + + YES + + + + + + + + 170 + + + + + 172 + + + + + 173 + + + + + 174 + + + YES + + + + + + 175 + + + + + 176 + + + + + 177 + + + + + 178 + + + + + 179 + + + + + 180 + + + + + 181 + + + + + 182 + + + YES + + + + + + 183 + + + YES + + + + + + 184 + + + YES + + + + + + + + + 185 + + + + + 186 + + + + + 187 + + + + + 188 + + + + + 189 + + + YES + + + + + + 190 + + + + + 191 + + + YES + + + + + + + + 192 + + + + + 193 + + + + + 194 + + + + + 195 + + + YES + + + + + + 196 + + + + + 197 + + + YES + + + + + + 198 + + + + + 199 + + + YES + + + + + + 200 + + + + + 201 + + + YES + + + + + + 202 + + + + + 203 + + + YES + + + + + + 204 + + + + + 222 + + + YES + + + + Offset Scan Panel + + + 223 + + + YES + + + + + + + + + + 225 + + + YES + + + + + + 226 + + + YES + + + + + + 228 + + + YES + + + + + + 229 + + + YES + + + + + + + + + + 243 + + + + + 244 + + + + + 247 + + + YES + + + + + + 248 + + + + + 249 + + + YES + + + + + + 250 + + + + + 251 + + + YES + + + + + + 252 + + + + + 253 + + + YES + + + + + + 254 + + + + + 259 + + + YES + + + + + + 260 + + + + + 266 + + + YES + + + + + + 267 + + + + + 278 + + + + + 59 + + + YES + + + + + + 64 + + + + + 273 + + + YES + + + + + + 274 + + + + + 140 + + + YES + + + + + + 141 + + + + + 104 + + + YES + + + + + + 105 + + + + + 101 + + + YES + + + + + + 102 + + + + + 293 + + + YES + + + + Pointer Search + + + 294 + + + YES + + + + + + + + + + 296 + + + YES + + + + + + 297 + + + YES + + + + + + 298 + + + YES + + + + + + 299 + + + YES + + + + + + + + + + 301 + + + YES + + + + + + 304 + + + YES + + + + + + 305 + + + + + 308 + + + YES + + + + + + 310 + + + + + 311 + + + + + 312 + + + + + 321 + + + YES + + + + + + 322 + + + + + 319 + + + YES + + + + + + 320 + + + + + 323 + + + YES + + + + + + 324 + + + + + 325 + + + + + 327 + + + + + 350 + + + YES + + + + + + + + 351 + + + + + 352 + + + + + 353 + + + + + 355 + + + YES + + + + + + 356 + + + YES + + + + + + 357 + + + YES + + + + + + + + 358 + + + + + 359 + + + + + 360 + + + + + 361 + + + YES + + + + + + 362 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 10.IBPluginDependency + 101.IBPluginDependency + 102.IBPluginDependency + 104.IBPluginDependency + 105.IBPluginDependency + 11.IBPluginDependency + 111.IBEditorWindowLastContentRect + 111.IBPluginDependency + 112.IBPluginDependency + 113.IBPluginDependency + 114.IBPluginDependency + 115.IBPluginDependency + 12.IBPluginDependency + 122.IBEditorWindowLastContentRect + 122.IBPluginDependency + 122.IBWindowTemplateEditedContentRect + 122.NSWindowTemplate.visibleAtLaunch + 123.IBPluginDependency + 124.IBPluginDependency + 125.IBPluginDependency + 126.IBPluginDependency + 127.IBPluginDependency + 128.IBPluginDependency + 129.IBPluginDependency + 13.IBPluginDependency + 130.IBPluginDependency + 131.IBPluginDependency + 132.IBPluginDependency + 138.IBPluginDependency + 14.IBPluginDependency + 140.IBPluginDependency + 141.IBPluginDependency + 15.IBPluginDependency + 151.IBEditorWindowLastContentRect + 151.IBPluginDependency + 151.IBWindowTemplateEditedContentRect + 151.NSWindowTemplate.visibleAtLaunch + 152.IBPluginDependency + 153.IBPluginDependency + 154.IBPluginDependency + 155.IBPluginDependency + 156.IBPluginDependency + 157.IBPluginDependency + 158.IBPluginDependency + 159.IBPluginDependency + 160.IBPluginDependency + 161.IBPluginDependency + 162.IBPluginDependency + 163.IBPluginDependency + 164.IBPluginDependency + 165.IBEditorWindowLastContentRect + 165.IBPluginDependency + 166.IBPluginDependency + 167.IBPluginDependency + 168.IBPluginDependency + 169.IBPluginDependency + 17.IBPluginDependency + 170.IBPluginDependency + 172.IBPluginDependency + 174.IBPluginDependency + 175.IBPluginDependency + 176.IBPluginDependency + 177.IBPluginDependency + 178.IBPluginDependency + 179.IBPluginDependency + 18.IBPluginDependency + 180.IBPluginDependency + 181.IBPluginDependency + 182.IBPluginDependency + 183.IBPluginDependency + 184.IBEditorWindowLastContentRect + 184.IBPluginDependency + 185.IBPluginDependency + 186.IBPluginDependency + 187.IBPluginDependency + 188.IBPluginDependency + 189.IBPluginDependency + 19.IBPluginDependency + 190.IBPluginDependency + 191.IBPluginDependency + 192.IBPluginDependency + 193.IBPluginDependency + 194.IBPluginDependency + 195.IBPluginDependency + 196.IBPluginDependency + 197.IBPluginDependency + 198.IBPluginDependency + 199.IBPluginDependency + 2.IBPluginDependency + 20.IBPluginDependency + 200.IBPluginDependency + 201.IBPluginDependency + 202.IBPluginDependency + 203.IBPluginDependency + 204.IBPluginDependency + 22.IBPluginDependency + 222.IBEditorWindowLastContentRect + 222.IBPluginDependency + 222.IBWindowTemplateEditedContentRect + 222.NSWindowTemplate.visibleAtLaunch + 222.editorWindowContentRectSynchronizationRect + 222.windowTemplate.hasMaxSize + 222.windowTemplate.hasMinSize + 222.windowTemplate.maxSize + 222.windowTemplate.minSize + 223.IBPluginDependency + 225.IBPluginDependency + 226.IBPluginDependency + 243.IBPluginDependency + 244.IBPluginDependency + 247.IBPluginDependency + 248.IBPluginDependency + 249.IBPluginDependency + 250.IBPluginDependency + 251.IBPluginDependency + 252.IBPluginDependency + 253.IBPluginDependency + 254.IBPluginDependency + 259.IBPluginDependency + 260.IBPluginDependency + 266.IBPluginDependency + 267.IBPluginDependency + 273.IBPluginDependency + 274.IBPluginDependency + 293.IBEditorWindowLastContentRect + 293.IBPluginDependency + 293.IBWindowTemplateEditedContentRect + 293.NSWindowTemplate.visibleAtLaunch + 293.editorWindowContentRectSynchronizationRect + 293.windowTemplate.hasMaxSize + 293.windowTemplate.hasMinSize + 293.windowTemplate.maxSize + 293.windowTemplate.minSize + 294.IBPluginDependency + 296.IBPluginDependency + 297.IBPluginDependency + 298.IBPluginDependency + 3.IBPluginDependency + 301.IBPluginDependency + 304.IBPluginDependency + 305.IBPluginDependency + 308.IBPluginDependency + 310.IBPluginDependency + 311.IBPluginDependency + 312.IBPluginDependency + 319.IBPluginDependency + 320.IBPluginDependency + 321.IBPluginDependency + 322.IBPluginDependency + 323.IBPluginDependency + 324.IBPluginDependency + 325.IBNumberFormatterBehaviorMetadataKey + 325.IBNumberFormatterLocalizesFormatMetadataKey + 325.IBPluginDependency + 327.IBPluginDependency + 350.IBPluginDependency + 351.IBPluginDependency + 352.IBPluginDependency + 353.IBPluginDependency + 355.IBPluginDependency + 356.IBPluginDependency + 357.IBPluginDependency + 358.IBPluginDependency + 359.IBPluginDependency + 360.IBPluginDependency + 361.IBPluginDependency + 362.IBPluginDependency + 39.IBPluginDependency + 4.IBPluginDependency + 40.IBPluginDependency + 41.IBPluginDependency + 42.IBPluginDependency + 44.IBPluginDependency + 45.IBPluginDependency + 48.IBPluginDependency + 49.IBPluginDependency + 5.IBPluginDependency + 51.IBPluginDependency + 52.IBPluginDependency + 58.IBPluginDependency + 59.IBPluginDependency + 6.IBEditorWindowLastContentRect + 6.IBPluginDependency + 6.editorWindowContentRectSynchronizationRect + 60.IBPluginDependency + 61.IBPluginDependency + 62.IBPluginDependency + 63.IBPluginDependency + 64.IBPluginDependency + 7.IBPluginDependency + 8.IBPluginDependency + 9.IBPluginDependency + 98.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{393, 392}, {741, 354}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{318, 276}, {559, 330}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{727, 725}, {194, 103}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{388, 441}, {206, 290}} + com.apple.InterfaceBuilder.CocoaPlugin + {{388, 441}, {206, 290}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{464, 114}, {647, 711}} + com.apple.InterfaceBuilder.CocoaPlugin + {{464, 114}, {647, 711}} + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{702, 578}, {161, 142}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{563, 195}, {152, 71}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{568, 302}, {486, 303}} + com.apple.InterfaceBuilder.CocoaPlugin + {{568, 302}, {486, 303}} + + {{729, 172}, {486, 369}} + + + {488, 156} + {488, 156} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{946, 330}, {285, 186}} + com.apple.InterfaceBuilder.CocoaPlugin + {{946, 330}, {285, 186}} + + {{729, 172}, {486, 369}} + + + {488, 156} + {488, 156} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{317, 303}, {178, 123}} + com.apple.InterfaceBuilder.CocoaPlugin + {{708, 839}, {181, 103}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 364 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BindingsController + NSObject + + YES + + YES + botController + chatController + controller + offsetController + + + YES + BotController + ChatController + Controller + OffsetController + + + + IBProjectSource + BindingsController.h + + + + BlacklistController + NSObject + + YES + + YES + mobController + playersController + + + YES + MobController + PlayersController + + + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + closeHotkeyHelp: + closeLootHotkeyHelp: + editCombatProfiles: + gatheringLootingOptions: + gatheringLootingSelectAction: + hotkeyHelp: + login: + lootHotkeyHelp: + maltby: + startBot: + startStopBot: + stopBot: + test2: + test: + testHotkey: + toggleAllChat: + toggleWallWalk: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + Route + allChatButton + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + autoJoinWG + behaviorPopup + bindingsController + blacklistController + chatController + chatLogController + combatController + combatDisableRelease + combatProfilePopup + controller + corpseController + databaseManager + fishController + fishingApplyLureCheckbox + fishingCheckbox + fishingGatherDistanceText + fishingLurePopUpButton + fishingOnlySchoolsCheckbox + fishingRecastCheckbox + fishingUseContainersCheckbox + gatherDistText + gatheringLootingPanel + herbalismCheckbox + herbalismSkillText + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootCheckbox + lootController + lootHotkeyHelpPanel + lootUseItemsCheckbox + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + miningCheckbox + miningSkillText + mobController + movementController + netherwingEggCheckbox + ninjaSkinCheckbox + nodeController + nodeIgnoreFriendlyCheckbox + nodeIgnoreFriendlyDistanceText + nodeIgnoreHostileCheckbox + nodeIgnoreHostileDistanceText + nodeIgnoreMobCheckbox + nodeIgnoreMobDistanceText + offsetController + overlayWindow + playerController + playersController + procedureController + profileController + pvpBehaviorPopUp + pvpController + questController + routePopup + runningTimer + scanGrid + skinningCheckbox + skinningSkillText + spellController + startStopButton + startstopRecorder + statisticsController + statusText + view + wallWalkButton + waypointController + + + YES + Route + NSButton + NSButton + NSButton + id + AuraController + NSButton + id + BindingsController + BlacklistController + ChatController + ChatLogController + CombatController + NSButton + id + Controller + CorpseController + DatabaseManager + FishController + NSButton + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + id + NSPanel + NSButton + id + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + NSButton + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + NSButton + id + MobController + MovementController + NSButton + NSButton + NodeController + NSButton + NSTextField + NSButton + NSTextField + NSButton + NSTextField + OffsetController + NSWindow + PlayerDataController + PlayersController + ProcedureController + ProfileController + NSPopUpButton + PvPController + QuestController + id + NSTextField + ScanGridView + NSButton + id + SpellController + NSButton + SRRecorderControl + StatisticsController + NSTextField + NSView + NSButton + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + chatController + combatPanel + combatTable + controller + macroController + mobController + movementController + playerData + playersController + + + YES + AuraController + BindingsController + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + Controller + NSObject + + YES + + YES + confirmAppRename: + launchWebsite: + pidSelected: + renameShowHelp: + renameUseExisting: + showAbout: + showSettings: + testFront: + toggleGUIScripting: + toggleSecurePrefs: + toolbarItemSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + newIdentifierField + newNameField + newSignatureField + nodeController + objectsController + objectsToolbarItem + offsetController + playerData + playerToolbarItem + playersController + prefsToolbarItem + profileController + profilesToolbarItem + pvpController + pvpToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSTextField + NSTextField + NSTextField + NodeController + ObjectsController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + ProfileController + NSToolbarItem + PvPController + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + DatabaseManager + NSObject + + YES + + YES + controller + offsetController + + + YES + Controller + OffsetController + + + + IBProjectSource + DatabaseManager.h + + + + FileController + NSObject + + IBProjectSource + FileController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + ObjectController + + YES + + YES + botController + macroController + memoryViewController + nodeController + objectsController + offsetController + + + YES + BotController + MacroController + MemoryViewController + NodeController + ObjectsController + OffsetController + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + macroController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + MacroController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + menuAction: + offsetSelectAction: + openOffsetPanel: + openPointerPanel: + openSearch: + pointerSelectAction: + saveValues: + selectInstance: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + emulatePPCButton + instanceList + itemController + maskTextField + memoryTable + memoryViewWindow + mobController + nodeController + offsetController + offsetScanPanel + operatorPopUpButton + playersController + pointerScanCancelButton + pointerScanFindButton + pointerScanNumTextField + pointerScanPanel + pointerScanProgressIndicator + pointerScanVariationButton + pointerScanVariationTextField + resultsTextView + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + signatureTextField + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + NSButton + NSPopUpButton + InventoryController + NSTextField + id + id + MobController + NodeController + OffsetController + NSPanel + NSPopUpButton + PlayersController + NSButton + NSButton + NSTextField + NSPanel + NSProgressIndicator + NSButton + NSTextField + NSTextView + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSTextField + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + ObjectController + + updateTracking: + id + + + YES + + YES + additionalList + auraController + botController + combatController + memoryViewController + movementController + objectsController + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + + + YES + NSPopUpButton + id + BotController + id + id + id + ObjectsController + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + combatController + controller + itemController + logOutStuckAttemptsTextField + macroController + mobController + movementTypePopUp + offsetController + playerData + profileController + statisticsController + waypointController + + + YES + AuraController + BindingsController + BlacklistController + BotController + CombatController + Controller + InventoryController + NSTextField + MacroController + MobController + NSPopUpButton + OffsetController + PlayerDataController + ProfileController + StatisticsController + WaypointController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + ObjectController + + YES + + YES + botController + memoryViewController + moveToList + movementController + objectsController + + + YES + id + id + NSPopUpButton + id + ObjectsController + + + + IBProjectSource + NodeController.h + + + + ObjectController + NSObject + + tableDoubleClick: + id + + + YES + + YES + controller + playerData + view + + + YES + Controller + PlayerDataController + NSView + + + + IBProjectSource + ObjectController.h + + + + ObjectsController + NSObject + + YES + + YES + faceObject: + filter: + moveToStart: + moveToStop: + refreshData: + reloadNames: + resetObjects: + targetObject: + updateTracking: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + controller + itemController + itemTable + memoryViewController + mobController + mobTable + moveToMobPopUpButton + moveToNodePopUpButton + movementController + nodeController + nodeTable + playerController + playersController + playersTable + tabView + view + + + YES + Controller + InventoryController + NSTableView + MemoryViewController + MobController + NSTableView + NSPopUpButton + NSPopUpButton + MovementController + NodeController + NSTableView + PlayerDataController + PlayersController + NSTableView + NSTabView + NSView + + + + IBProjectSource + ObjectsController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + bindingsController + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BindingsController + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + ObjectController + + updateTracking: + id + + + YES + + YES + memoryViewController + movementController + objectsController + playerColorByLevel + + + YES + MemoryViewController + MovementController + ObjectsController + NSButton + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + showInFinder: + tableRowDoubleClicked: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + fileController + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + FileController + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + ProfileController + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + createProfile: + deleteIgnoreEntry: + deleteProfile: + duplicateProfile: + exportProfile: + importProfile: + renameProfile: + showInFinder: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + assistPopUpButton + controller + fileController + followPopUpButton + ignoreTable + mobController + playersController + profileOutlineView + profileTabView + profileTitle + profileTypePopUp + tankPopUpButton + view + + + YES + NSPopUpButton + Controller + FileController + NSPopUpButton + NSTableView + MobController + PlayersController + NSOutlineView + NSTabView + NSTextField + NSPopUpButton + NSPopUpButton + NSView + + + + IBProjectSource + ProfileController.h + + + + PvPController + NSObject + + YES + + YES + closeRename: + createBehavior: + deleteBehavior: + duplicateBehavior: + exportBehavior: + importBehavior: + renameBehavior: + saveAllObjects: + showInFinder: + test: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + fileController + renamePanel + view + waypointController + + + YES + FileController + NSPanel + NSView + WaypointController + + + + IBProjectSource + PvPController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + Route + NSObject + + IBProjectSource + Route.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + itemController + macroController + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + InventoryController + MacroController + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + WaypointController + NSObject + + YES + + YES + addRouteCollection: + addRouteSet: + addWaypoint: + closeAutomatorPanel: + closeDescription: + closeHelpPanel: + closeVisualize: + closestWaypoint: + deleteRouteButton: + deleteRouteMenu: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + showInFinder: + startStopAutomator: + startingRouteClicked: + stopMovement: + testWaypointSequence: + visualize: + waypointMenuAction: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + descriptionPanel + fileController + helpPanel + mobController + movementController + playerData + routeTypeSegment + routesTable + scrollWithRoute + shortcutRecorder + startingRouteButton + testingMenu + view + visualizePanel + visualizeView + waypointSectionTitle + waypointTabView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + BotController + CombatController + Controller + NSPanel + FileController + NSPanel + MobController + MovementController + PlayerDataController + id + NSOutlineView + NSButton + SRRecorderControl + NSButton + NSMenu + NSView + NSPanel + RouteVisualizationView + NSTextField + NSTabView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSOutlineView + NSTableView + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSSlider + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSlider.h + + + + NSSliderCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSliderCell.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableHeaderView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTableHeaderView.h + + + + NSTableView + NSControl + + + + NSText + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSTextView + NSText + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + IBCocoaFramework + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + YES + + YES + NSMenuCheckmark + NSMenuMixedState + NSSwitch + + + YES + {9, 8} + {7, 2} + {15, 15} + + + + diff --git a/MemoryAccess.h b/MemoryAccess.h new file mode 100755 index 0000000..9762919 --- /dev/null +++ b/MemoryAccess.h @@ -0,0 +1,87 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id$ + * + */ + +#import + + +@interface MemoryAccess : NSObject +{ + pid_t AppPid; + mach_port_t MySlaveTask; + AuthorizationRef gAuth; + + int readsProcessed; + float throughput; + + // statistics info + int _totalReadsProcessed; + int _totalWritesProcessed; + NSDate *_startTime; + + NSMutableDictionary *_loaderDict; +} + +// we shouldn't really use this ++ (MemoryAccess*)sharedMemoryAccess; + + +- (id)init; +- (id)initWithPID:(pid_t)PID; +- (BOOL)isValid; + +@property float throughput; +@property (readonly) NSDictionary *operationsDictionary; + +- (void)resetLoadCount; +- (void)printLoadCount; +- (int)loadCount; + +// for statistics +- (float)readsPerSecond; +- (float)writesPerSecond; +- (void)resetCounters; +- (NSDictionary*)operationsByClassPerSecond; + +// save record to application addresses +- (BOOL)saveDataForAddress: (UInt32)address Buffer: (Byte *)DataBuffer BufLength: (vm_size_t)Bytes; + +// force a save +- (BOOL)saveDataForAddressForce:(UInt32)Address Buffer:(Byte *)DataBuffer BufLength:(vm_size_t)Bytes; + +// load record from application addresses +- (BOOL)loadDataForObject: (id)object atAddress: (UInt32)address Buffer: (Byte *)DataBuffer BufLength: (vm_size_t)Bytes; +//- (BOOL)loadDataForAddress: (UInt32)address Buffer: (Byte *)DataBuffer BufLength: (vm_size_t)Bytes; + +// raw reading, minimal error checking, actual return result +- (kern_return_t)readAddress: (UInt32)address Buffer: (Byte *)DataBuffer BufLength: (vm_size_t)Bytes; + +- (int)readInt: (UInt32)address withSize:(size_t)size; +- (long long)readLongLong: (UInt32)address; +- (NSNumber*)readNumber: (UInt32)address withSize:(size_t)size; + +// must be null terminated! +- (NSString*)readString: (UInt32)address; + +@end \ No newline at end of file diff --git a/MemoryAccess.m b/MemoryAccess.m new file mode 100755 index 0000000..604d8b9 --- /dev/null +++ b/MemoryAccess.m @@ -0,0 +1,317 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id$ + * + */ + +#import "MemoryAccess.h" +#import +#import + +#import "Globals.h" +#import "ToolCommon.h" +#import "BetterAuthorizationSampleLib.h" + +#import + +@implementation MemoryAccess + +static MemoryAccess *sharedMemoryAccess = nil; + +- (id)init { + return [self initWithPID:0]; +} + +- (id)initWithPID:(pid_t)PID { + [super init]; + AppPid = PID; + log(LOG_MEMORY, @"Got WoW PID: %d; GodMode: %d", PID, MEMORY_GOD_MODE); + task_for_pid(current_task(), AppPid, &MySlaveTask); + + _loaderDict = [[NSMutableDictionary dictionary] retain]; + readsProcessed = 0; + gAuth = NULL; + self.throughput = 0.0f; + _totalReadsProcessed = 0; + _totalWritesProcessed = 0; + _startTime = [[NSDate date] retain]; + + //if(!MEMORY_GOD_MODE) [self performToolVersionCheck]; + [NSTimer scheduledTimerWithTimeInterval: 5.0 target: self selector: @selector(refreshThroughput:) userInfo: nil repeats: YES]; + + // for those using shared memory - lets hope not many!! + if ( sharedMemoryAccess ){ + [sharedMemoryAccess release]; + } + sharedMemoryAccess = [self retain]; + + return self; +} + ++ (MemoryAccess*)sharedMemoryAccess{ + if (sharedMemoryAccess == nil) + sharedMemoryAccess = [[[self class] alloc] init]; + return sharedMemoryAccess; +} + +@synthesize throughput; +@synthesize operationsDictionary = _loaderDict; + +- (BOOL)isValid { + ProcessSerialNumber psn = { kNoProcess, kNoProcess }; + OSStatus err = GetProcessForPID(AppPid, &psn); + if( err != noErr) { + usleep(50000); + err = GetProcessForPID(AppPid, &psn); + if( err != noErr) { + log(LOG_MEMORY, @"appPID = %d; err = %d; pSN = { %d, %d }", AppPid, err, psn.lowLongOfPSN, psn.highLongOfPSN); + return NO; + } + } + return YES; +} + +- (void)resetLoadCount { + readsProcessed = 0; +} + +- (void)printLoadCount { + log(LOG_MEMORY, @"%@ has processed %d reads.", self, readsProcessed); +} + +- (int)loadCount { + return readsProcessed; +} + +- (BOOL)saveDataForAddress:(UInt32)Address Buffer:(Byte *)DataBuffer BufLength:(vm_size_t)Bytes +{ + if(![self isValid]) return NO; + if(Address == 0) return NO; + if(DataBuffer == NULL) return NO; + if(Bytes <= 0) return NO; + + _totalWritesProcessed++; + + if(MEMORY_GOD_MODE) { + bool retVal; + NS_DURING + retVal = (KERN_SUCCESS == vm_write(MySlaveTask,Address,(vm_offset_t)DataBuffer,Bytes)); + NS_HANDLER + retVal = false; + NS_ENDHANDLER + + return retVal; + } +} + +- (BOOL)saveDataForAddressForce:(UInt32)Address Buffer:(Byte *)DataBuffer BufLength:(vm_size_t)Bytes +{ + if(![self isValid]) return NO; + if(Address == 0) return NO; + if(DataBuffer == NULL) return NO; + if(Bytes <= 0) return NO; + + _totalWritesProcessed++; + + if(MEMORY_GOD_MODE) { + + // what is the current protection mode for this block of memory? + vm_address_t SourceAddress = Address; + vm_size_t SourceSize = Bytes; + vm_region_basic_info_data_t SourceInfo; + mach_msg_type_number_t SourceInfoSize = VM_REGION_BASIC_INFO_COUNT; + mach_port_t ObjectName = MACH_PORT_NULL; + int result = vm_region(MySlaveTask,&SourceAddress,&SourceSize,VM_REGION_BASIC_INFO,(vm_region_info_t) &SourceInfo,&SourceInfoSize,&ObjectName); + if ( result == KERN_SUCCESS ){ + NSLog(@"Protection type: 0x%X", SourceInfo.protection); + } + + // make the location writable! + vm_protect( MySlaveTask, + (vm_address_t) Address, + Bytes, false, (VM_PROT_ALL | VM_PROT_COPY | VM_PROT_READ) ); + + bool retVal; + NS_DURING + NSLog(@"Writing 0x%X to 0x%X", DataBuffer, Address); + int val = vm_write(MySlaveTask,Address,(vm_offset_t)DataBuffer,Bytes); + retVal = (KERN_SUCCESS == val); + NS_HANDLER + retVal = false; + NS_ENDHANDLER + + // set it back! + vm_protect( MySlaveTask, + (vm_address_t) Address, Bytes, false, + SourceInfo.protection ); + + return retVal; + } +} + +// this is the main memory reading function. +- (BOOL)loadDataForObject: (id)object atAddress: (UInt32)address Buffer: (Byte *)DataBuffer BufLength: (vm_size_t)Bytes; +{ + if(![self isValid]) return NO; + if(address == 0) return NO; + if(DataBuffer == NULL) return NO; + if(Bytes <= 0) return NO; + + readsProcessed++; + _totalReadsProcessed++; + + + NSString *className = [object className]; + if ( className ){ + if( [_loaderDict objectForKey: className]) { + [_loaderDict setObject: [NSNumber numberWithInt: [[_loaderDict objectForKey: className] intValue]+1] forKey: className]; + } else { + [_loaderDict setObject: [NSNumber numberWithInt: 1] forKey: className]; + } + } + + /* + if(readsProcessed % 20000 == 0) { + [self printLoadCount]; + PGLog(@"Loader Dict: %@", loaderDict); + }*/ + + if(MEMORY_GOD_MODE) { + bool retVal; + vm_size_t retBytes = Bytes; + NS_DURING + retVal = ( (KERN_SUCCESS == vm_read_overwrite(MySlaveTask,address,Bytes,(vm_address_t)DataBuffer,&retBytes)) && (retBytes == Bytes) ); + NS_HANDLER + retVal = false; + NS_ENDHANDLER + + return retVal; + + } +} + +- (int)readInt: (UInt32)address withSize:(size_t)size{ + + int buffer[size]; + + if ( [self loadDataForObject: self atAddress:address Buffer:(Byte *)&buffer BufLength:size] ){ + int val = 0; + val = (int)*buffer; + return val; + } + + return 0; +} + +- (long long)readLongLong: (UInt32)address{ + UInt64 val = 0; + [self loadDataForObject: self atAddress:address Buffer:(Byte *)&val BufLength:sizeof(val)]; + return val; +} + +- (NSString*)readString: (UInt32)address{ + + char str[256]; + str[255] = 0; + + if ( [self loadDataForObject: self atAddress:address Buffer:(Byte *)&str BufLength:sizeof(str)-1] ){ + NSString *newStr = [NSString stringWithUTF8String: str]; + return [[newStr retain] autorelease]; + } + + return nil; +} + +- (NSNumber*)readNumber: (UInt32)address withSize:(size_t)size{ + void *buffer = malloc(size); + if ( [self loadDataForObject: self atAddress:address Buffer:buffer BufLength:size] ){ + NSNumber *num = [NSNumber numberWithInt:(int)buffer]; + free(buffer); + return num; + } + + return nil; +} + + +// basically just a raw reading function. +// use this method if you need the actual return value from the kernel and want to do your own error checking. +- (kern_return_t)readAddress: (UInt32)address Buffer: (Byte *)DataBuffer BufLength: (vm_size_t)Bytes { + + if(![self isValid]) return KERN_FAILURE; + if(address == 0) return KERN_FAILURE; + if(DataBuffer == NULL) return KERN_FAILURE; + if(Bytes <= 0) return KERN_FAILURE; + + _totalReadsProcessed++; + + vm_size_t retBytes = Bytes; + return vm_read_overwrite(MySlaveTask, address, Bytes, (vm_address_t)DataBuffer, &retBytes); +} + +- (void)refreshThroughput: (id)timer { + self.throughput = [self loadCount]/5.0f; +} + +- (float)readsPerSecond{ + if ( !_startTime || !_totalReadsProcessed ) + return 0.0f; + + NSTimeInterval timeIntervalInSeconds = [[NSDate date] timeIntervalSinceDate:_startTime]; + return _totalReadsProcessed/timeIntervalInSeconds; +} + +- (float)writesPerSecond{ + if ( !_startTime || !_totalWritesProcessed ) + return 0.0f; + + NSTimeInterval timeIntervalInSeconds = [[NSDate date] timeIntervalSinceDate:_startTime]; + return _totalWritesProcessed/timeIntervalInSeconds; +} + +// return a new dictionary that's value per class is the memory reads/second +- (NSDictionary*)operationsByClassPerSecond{ + + NSMutableDictionary *dict = [NSMutableDictionary dictionary]; + NSTimeInterval timeIntervalInSeconds = [[NSDate date] timeIntervalSinceDate:_startTime]; + NSArray *keys = [_loaderDict allKeys]; + + // loop through + re-calculate + for ( NSString *key in keys ){ + NSNumber *readsPerSecond = [NSNumber numberWithInt:[[_loaderDict objectForKey:key] intValue]/timeIntervalInSeconds]; + + [dict setObject:readsPerSecond forKey:key]; + } + + return dict; +} + +- (void)resetCounters{ + _totalReadsProcessed = 0; + _totalWritesProcessed = 0; + [_loaderDict removeAllObjects]; + [_startTime release];_startTime=nil; + _startTime = [[NSDate date] retain]; + [_loaderDict removeAllObjects]; +} + +@end \ No newline at end of file diff --git a/MemoryAccessTool.c b/MemoryAccessTool.c new file mode 100755 index 0000000..27f32bc --- /dev/null +++ b/MemoryAccessTool.c @@ -0,0 +1,276 @@ +/* + File: SampleTool.c + + Contains: Helper tool side of the example of how to use BetterAuthorizationSampleLib. + + Written by: DTS + + Copyright: Copyright (c) 2007 Apple Inc. All Rights Reserved. + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple, Inc. + ("Apple") in consideration of your agreement to the following terms, and your + use, installation, modification or redistribution of this Apple software + constitutes acceptance of these terms. If you do not agree with these terms, + please do not use, install, modify or redistribute this Apple software. + + In consideration of your agreement to abide by the following terms, and subject + to these terms, Apple grants you a personal, non-exclusive license, under Apple's + copyrights in this original Apple software (the "Apple Software"), to use, + reproduce, modify and redistribute the Apple Software, with or without + modifications, in source and/or binary forms; provided that if you redistribute + the Apple Software in its entirety and without modifications, you must retain + this notice and the following text and disclaimers in all such redistributions of + the Apple Software. Neither the name, trademarks, service marks or logos of + Apple, Inc. may be used to endorse or promote products derived from the + Apple Software without specific prior written permission from Apple. Except as + expressly stated in this notice, no other rights or licenses, express or implied, + are granted by Apple herein, including but not limited to any patent rights that + may be infringed by your derivative works or by other works in which the Apple + Software may be incorporated. + + The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO + WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED + WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN + COMBINATION WITH YOUR PRODUCTS. + + IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION + OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT + (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + */ + + +#import +#import + +#include +#include "BetterAuthorizationSampleLib.h" +#include "ToolCommon.h" + +#ifndef NDEBUG +#define NDEBUG +#endif + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Get Version Command + +static OSStatus DoGetVersion( + AuthorizationRef auth, + const void * userData, + CFDictionaryRef request, + CFMutableDictionaryRef response, + aslclient asl, + aslmsg aslMsg +) + // Implements the kGetVersionCommand. Returns the version number of + // the helper tool. +{ + OSStatus retval = noErr; + CFNumberRef value; + static const int kCurrentVersion = kToolCurrentVersion; // something very easy to spot + + asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "DoGetVersion()"); + + // Pre-conditions + + assert(auth != NULL); + // userData may be NULL + assert(request != NULL); + assert(response != NULL); + // asl may be NULL + // aslMsg may be NULL + + // Add them to the response. + + value = CFNumberCreate(NULL, kCFNumberIntType, &kCurrentVersion); + if (value == NULL) { + retval = coreFoundationUnknownErr; + } else { + CFDictionaryAddValue(response, CFSTR(kGetVersionResponse), value); + } + + if (value != NULL) { + CFRelease(value); + } + + return retval; +} + +///////////////////////////////////////////////////////////////// +#pragma mark ***** Load Memory Command + +static OSStatus DoLoadMemory( + AuthorizationRef auth, + const void * userData, + CFDictionaryRef request, + CFMutableDictionaryRef response, + aslclient asl, + aslmsg aslMsg +) + // Implements the kGetUIDsCommand. Gets the process's three UIDs and + // adds them to the response dictionary. +{ + //asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "DoLoadMemory()"); + + // Pre-conditions + if(auth == NULL || request == NULL || response == NULL) + return kMemToolBadParameter; + + // CFShow(request); + + // load in the WoW ProcessID + pid_t wowPID = 0; + CFNumberRef cfPID = CFDictionaryGetValue(request, CFSTR(kWarcraftPID)); + if(!CFNumberGetValue(cfPID, kCFNumberIntType, &wowPID) || wowPID <= 0) { + return kMemToolBadPID; + } + + // load in the memory address + unsigned int address = 0; + CFNumberRef cfAddress = CFDictionaryGetValue(request, CFSTR(kMemoryAddress)); + if(!CFNumberGetValue(cfAddress, kCFNumberIntType, &address) || address == 0) { + return kMemToolBadAddress; + } + + // load in memory length + vm_size_t length = 0; + CFNumberRef cfLength = CFDictionaryGetValue(request, CFSTR(kMemoryLength)); + if(!CFNumberGetValue(cfLength, kCFNumberIntType, &length) || length == 0) { + return kMemToolBadLength; + } + + bool memSuccess = false; + if(wowPID && address && length) { + //asl_log(asl, aslMsg, ASL_LEVEL_DEBUG, "Reading pid %d at address 0x%X for length %d", wowPID, address, length); + + // create buffer for our data + Byte buffer[length]; + + int i; + for(i=0; i +#import "MemoryAccess.h" + +@class Controller; +@class OffsetController; +@class InventoryController; +@class MobController; +@class PlayersController; +@class NodeController; + +@interface MemoryViewController : NSView { + IBOutlet Controller *controller; + IBOutlet OffsetController *offsetController; + IBOutlet id memoryTable; + IBOutlet id memoryViewWindow; + IBOutlet InventoryController *itemController; + IBOutlet MobController *mobController; + IBOutlet PlayersController *playersController; + IBOutlet NodeController *nodeController; + + + IBOutlet NSView *view; + NSNumber *_currentAddress; + NSTimer *_refreshTimer; + NSMutableDictionary *_lastValues; + int _formatOfSavedValues; + + IBOutlet NSTableView *bitTableView; + IBOutlet NSPanel *bitPanel; + + // search options + IBOutlet NSPanel *searchPanel; + IBOutlet NSPopUpButton *searchTypePopUpButton; + IBOutlet NSPopUpButton *operatorPopUpButton; + IBOutlet NSMatrix *signMatrix; + IBOutlet NSMatrix *valueMatrix; + IBOutlet NSTextField *searchText; + IBOutlet NSButton *searchButton; + IBOutlet NSButton *clearButton; + IBOutlet NSTableView *searchTableView; + NSArray *_searchArray; + + // offset scanning + IBOutlet NSPanel *offsetScanPanel; + IBOutlet NSTextView *resultsTextView; + IBOutlet NSTextField *maskTextField; + IBOutlet NSTextField *signatureTextField; + IBOutlet NSButton *emulatePPCButton; + + // pointer scanning + IBOutlet NSPanel *pointerScanPanel; + IBOutlet NSProgressIndicator *pointerScanProgressIndicator; + IBOutlet NSTextField *pointerScanNumTextField; + IBOutlet NSTextField *pointerScanVariationTextField; + IBOutlet NSButton *pointerScanVariationButton; + IBOutlet NSButton *pointerScanCancelButton; + IBOutlet NSButton *pointerScanFindButton; + NSThread *_pointerScanThread; + + float refreshFrequency; + int _displayFormat; + int _displayCount; + //id callback; + + // new method to select non wow-processes + NSTimer *_instanceListTimer; + IBOutlet NSPopUpButton *instanceList; + pid_t _attachedPID; + MemoryAccess *_memory; + + // new pointer search + NSMutableDictionary *_pointerList; + + id _wowObject; + + NSSize minSectionSize, maxSectionSize; +} + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property (readwrite) float refreshFrequency; + +- (void)showObjectMemory: (id)object; + +- (void)monitorObject: (id)object; +- (void)monitorObjects: (id)objects; + +- (void)setBaseAddress: (NSNumber*)address; + +- (IBAction)setCustomAddress: (id)sender; +- (IBAction)clearTable: (id)sender; +- (IBAction)snapshotMemory: (id)sender; +- (IBAction)saveValues: (id)sender; +- (IBAction)clearValues: (id)sender; + +// menu options +- (IBAction)menuAction: (id)sender; + +- (int)displayFormat; +- (void)setDisplayFormat: (int)displayFormat; + +// search option +- (IBAction)openSearch: (id)sender; +- (IBAction)startSearch: (id)sender; +- (IBAction)clearSearch: (id)sender; +- (IBAction)typeSelected: (id)sender; + +// offset scanning +- (IBAction)openOffsetPanel: (id)sender; +- (IBAction)offsetSelectAction: (id)sender; + +// pointer scanning +- (IBAction)openPointerPanel: (id)sender; +- (IBAction)pointerSelectAction: (id)sender; + +// new instance list +- (IBAction)selectInstance: (id)sender; + +@end diff --git a/MemoryViewController.m b/MemoryViewController.m new file mode 100644 index 0000000..4ebc2fd --- /dev/null +++ b/MemoryViewController.m @@ -0,0 +1,1383 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: MemoryViewController.m 435 2010-04-23 19:01:10Z ootoaoo $ + * + */ + +#import "MemoryViewController.h" +#import "Controller.h" +#import "OffsetController.h" + +#import "InventoryController.h" +#import "MobController.h" +#import "NodeController.h" +#import "PlayersController.h" + +#import "Item.h" + +#import "WoWObject.h" + +typedef enum ViewTypes { + View_UInt32 = 0, + View_Int32 = 1, + View_UInt64 = 2, + View_Float = 3, + View_Hex32 = 4, + View_UInt16 = 5, +} ViewTypes; + +@interface MemoryViewController () +@property (readwrite, retain) NSNumber *currentAddress; +@property (readwrite, retain) id wowObject; +@end + +@interface MemoryViewController (Internal) +- (void)setBaseAddress: (NSNumber*)address withCount: (int)count; +- (NSString*)formatNumber:(NSNumber *)num WithAddress:(UInt32)addr DisplayFormat:(int)displayFormat; +- (NSDictionary*)valuesForObject: (id)object withAddressSize:(int)addressSize; +- (void)findPointersToAddress: (NSNumber*)address; +@end + +@implementation MemoryViewController + +- (id) init +{ + self = [super init]; + if (self != nil) { + [NSBundle loadNibNamed: @"Memory" owner: self]; + self.currentAddress = nil; + _displayCount = 0; + self.wowObject = nil; + _lastValues = [[NSMutableDictionary dictionary] retain]; + _pointerList = [[NSMutableDictionary dictionary] retain]; + _formatOfSavedValues = 0; + _searchArray = nil; + _pointerScanThread = nil; + + _attachedPID = 0; + } + return self; +} + +- (void)dealloc { + self.currentAddress = nil; + + [_lastValues release]; + [_pointerList release]; + + [super dealloc]; +} + +- (void)awakeFromNib { + + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; + + [memoryTable setDoubleAction: @selector(tableDoubleClick:)]; + [(NSTableView*)memoryTable setTarget: self]; + + [self setRefreshFrequency: 0.5]; + + _instanceListTimer = [NSTimer scheduledTimerWithTimeInterval: 1.0f target: self selector: @selector(updateInstanceList:) userInfo: nil repeats: YES]; +} + +@synthesize view; +@synthesize refreshFrequency; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize currentAddress = _currentAddress; +@synthesize wowObject = _wowObject; + +- (NSString*)sectionTitle { + return @"Memory"; +} + +- (void)setRefreshFrequency: (float)frequency { + [_refreshTimer invalidate]; + [_refreshTimer release]; + + [self willChangeValueForKey: @"refreshFrequency"]; + refreshFrequency = frequency; + [self didChangeValueForKey: @"refreshFrequency"]; + + _refreshTimer = [NSTimer scheduledTimerWithTimeInterval: frequency target: self selector: @selector(reloadData:) userInfo: nil repeats: YES]; + [_refreshTimer retain]; +} + +- (int)displayFormat { + return _displayFormat; +} + +- (void)setDisplayFormat: (int)displayFormat { + _displayFormat = displayFormat; + [memoryTable reloadData]; +} + + +- (void)showObjectMemory: (id)object { + if( [object conformsToProtocol: @protocol(WoWObjectMemory)]) { + self.wowObject = object; + [self setBaseAddress: [NSNumber numberWithUnsignedInt: [object baseAddress]] + withCount: (([object memoryEnd] - [object memoryStart] + 0x1000) / sizeof(UInt32))]; + } else { + self.wowObject = nil; + } +} + +- (void)setBaseAddress: (NSNumber*)address { + self.wowObject = nil; + [self setBaseAddress: address withCount: 5000]; +} + +- (void)setBaseAddress: (NSNumber*)address withCount: (int)count { + _displayCount = count; + + self.currentAddress = address; + + [memoryTable reloadData]; +} + +- (IBAction)setCustomAddress: (id)sender { + + if( [[sender stringValue] length]) { + NSScanner *scanner = [NSScanner scannerWithString: [sender stringValue]]; + uint32_t addr; + [scanner scanHexInt: &addr]; + [self setBaseAddress: [NSNumber numberWithUnsignedInt: addr]]; + } else { + self.currentAddress = nil; + } + + [memoryTable reloadData]; +} + +- (IBAction)clearTable: (id)sender { + self.currentAddress = nil; + _displayCount = 0; + self.wowObject = nil; +} + +- (IBAction)snapshotMemory: (id)sender { + + UInt32 startAddress = [self.currentAddress unsignedIntValue]; + + if(!startAddress || !_memory || ([self displayFormat] == 2) || ([self displayFormat] == 5)) { + NSBeep(); + return; + } + + int i = 0; + UInt32 buffer = 0; + //Byte buffer[4] = { 0, 0, 0, 0 }; + NSString *export = @""; + + for(i=0; i<_displayCount; i++) { + if([_memory loadDataForObject: self atAddress: (startAddress + sizeof(buffer)*i) Buffer: (Byte*)&buffer BufLength: sizeof(buffer)]) { + if([self displayFormat] == 0) + export = [NSString stringWithFormat: @"%@\n0x%X: %u", export, 4*i, (UInt32)buffer]; + if([self displayFormat] == 1) + export = [NSString stringWithFormat: @"%@\n0x%X: %d", export, 4*i, (int)buffer]; + if([self displayFormat] == 3) + export = [NSString stringWithFormat: @"%@\n0x%X: %f", export, 4*i, *(float*)&buffer]; + if([self displayFormat] == 4) + export = [NSString stringWithFormat: @"%@\n0x%X: 0x%X", export, 4*i, (UInt32)buffer]; + } + else { + export = [NSString stringWithFormat: @"%@\n0x%X: err", export, 4*i]; + } + } + + + NSSavePanel *savePanel = [NSSavePanel savePanel]; + [savePanel setCanCreateDirectories: YES]; + [savePanel setTitle: @"Save Snapshot"]; + [savePanel setMessage: @"Please choose a destination for this snapshot."]; + int ret = [savePanel runModalForDirectory: @"~/" file: [[NSString stringWithFormat: @"%X", startAddress] stringByAppendingPathExtension: @"txt"]]; + + if(ret == NSFileHandlingPanelOKButton) { + NSString *saveLocation = [savePanel filename]; + [export writeToFile: saveLocation atomically: YES encoding: NSUTF8StringEncoding error: NULL]; + } +} + +#pragma mark - Menu Options + +- (IBAction)menuAction: (id)sender{ + + int clickedRow = [memoryTable clickedRow]; + unsigned startAddress = [self.currentAddress unsignedIntValue]; + + PGLog(@"[Memory] Clicked with tag %d and row %d", [sender tag], clickedRow); + + // jump to address + if ( [sender tag] == 0 ){ + // we have to be in 32 bit mode! + if ( clickedRow >= 0 && ( [self displayFormat] == 0 || [self displayFormat] == 1 || [self displayFormat] == 4 ) ){ + size_t size = sizeof(uint32_t); + uint32_t addr = startAddress + clickedRow*size; + uint32_t value32 = 0; + if ( _memory && [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(value32)] ){ + [self setBaseAddress:[NSNumber numberWithInt:value32]]; + [memoryTable scrollRowToVisible: 0]; + } + } + } + + // copy value + else if ( [sender tag] == 1 ){ + if ( clickedRow > 0 ){ + size_t size = ([self displayFormat] == 2) ? sizeof(uint64_t) : sizeof(uint32_t); + size = ([self displayFormat] == 5) ? sizeof(uint16_t) : size; + uint32_t addr = startAddress + clickedRow*size; + NSString *num = [self formatNumber:nil WithAddress:addr DisplayFormat:[self displayFormat]]; + [[NSPasteboard generalPasteboard] declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:nil]; + [[NSPasteboard generalPasteboard] setString:num forType:NSStringPboardType]; + PGLog(@"[Memory] Put %@ on the clipboard 1", num); + } + } + + // copy address + else if ( [sender tag] == 2 ){ + if ( clickedRow > 0 ){ + size_t size = ([self displayFormat] == 2) ? sizeof(uint64_t) : sizeof(uint32_t); + size = ([self displayFormat] == 5) ? sizeof(uint16_t) : size; + uint32_t addr = startAddress + clickedRow*size; + NSString *num = [self formatNumber:[NSNumber numberWithLong:addr] WithAddress:0 DisplayFormat:4]; + [[NSPasteboard generalPasteboard] declareTypes:[NSArray arrayWithObject:NSStringPboardType] owner:nil]; + [[NSPasteboard generalPasteboard] setString:num forType:NSStringPboardType]; + PGLog(@"[Memory] Put %@ on the clipboard 2", num); + } + } + + // view bits + else if ( [sender tag] == 3 ){ + [bitPanel makeKeyAndOrderFront: self]; + [bitTableView reloadData]; + } + + // find all pointers + else if ( [sender tag] == 4 ){ + size_t size = sizeof(uint32_t); + uint32_t addr = startAddress + clickedRow*size; + NSNumber *address = [NSNumber numberWithInt:addr]; + PGLog(@"[Memory] Searching for pointers to 0x%X", addr); + _pointerScanThread = [[NSThread alloc] initWithTarget:self + selector:@selector(pointerScan:) + object:address]; + //[pointerScanNumTextField setIntValue:1]; // only scan the 1! + [_pointerScanThread start]; + } +} + +- (NSString*)formatNumber:(NSNumber *)num WithAddress:(UInt32)addr DisplayFormat:(int)displayFormat{ + + // Then we need to read the value! + if ( num == nil && addr > 0 ){ + + // 32 bit + if ( displayFormat == 0 || displayFormat == 1 || displayFormat == 4 ){ + uint32_t value32; + if ( [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(value32)] ) + num = [NSNumber numberWithInt:value32]; + } + // 64 bit + else if ( displayFormat == 2 ){ + uint64_t value64; + if ( [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value64 BufLength: sizeof(uint64_t)] ){ + num = [NSNumber numberWithLongLong:value64]; + } + } + // Float + else if ( displayFormat == 3 ){ + float floatVal; + if ( [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&floatVal BufLength: sizeof(float)] ){ + num = [NSNumber numberWithFloat:floatVal]; + } + } + // 16 bit + else if ( displayFormat == 5 ){ + uint16_t value16 = 0; + if ( [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value16 BufLength: sizeof(uint16_t)] ){ + num = [NSNumber numberWithShort:value16]; + } + } + } + + // We have a number to display! Yay! + if ( num != nil ){ + // Unsigned int 32-bit + if ( displayFormat == 0 ){ + return [NSString stringWithFormat: @"%u", [num unsignedIntValue]]; + } + // Signed int 32-bit + else if ( displayFormat == 1 ){ + return [NSString stringWithFormat: @"%d", [num intValue]]; + } + // Unsigned int 64-bit + else if ( displayFormat == 2 ){ + return [NSString stringWithFormat: @"%llu", [num unsignedLongLongValue]]; + } + // Float + else if ( displayFormat == 3 ){ + return [NSString stringWithFormat: @"%f", [num floatValue]]; + } + // Hex 32-bit + else if ( displayFormat == 4 ){ + return [NSString stringWithFormat: @"0x%X", [num intValue]]; + } + // Unsigned int 16-bit + else if ( displayFormat == 5 ){ + return [NSString stringWithFormat: @"%d", [num unsignedShortValue]]; + } + } + // Error while reading + else if ( addr > 0 ){ + uint32_t value32; + int ret = [_memory readAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(value32)]; + return [NSString stringWithFormat: @"(error: %d)", ret]; + } + + // Will be here if we have no saved values + return @""; +} + +- (IBAction)saveValues: (id)sender{ + + unsigned startAddress = [self.currentAddress unsignedIntValue]; + size_t size = ([self displayFormat] == 2) ? sizeof(uint64_t) : sizeof(uint32_t); + size = ([self displayFormat] == 5) ? sizeof(uint16_t) : size; + + _formatOfSavedValues = [self displayFormat]; + + uint32_t value32; + int i; + for ( i = 0; i < _displayCount; i++ ){ + uint32_t addr = startAddress + i*size; + + int ret = [_memory readAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(value32)]; + if((ret == KERN_SUCCESS)) { + + if ( [self displayFormat] == 2 ){ + uint64_t value64; + [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value64 BufLength: sizeof(uint64_t)]; + [_lastValues setObject:[NSNumber numberWithLongLong:value64] forKey:[NSNumber numberWithInt:addr]]; + } + else if ( [self displayFormat] == 3 ){ + float floatVal; + [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&floatVal BufLength: sizeof(float)]; + [_lastValues setObject:[NSNumber numberWithFloat:floatVal] forKey:[NSNumber numberWithInt:addr]]; + } + else if ( [self displayFormat] == 5 ){ + uint16_t value16 = 0; + [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value16 BufLength: sizeof(uint16_t)]; + [_lastValues setObject:[NSNumber numberWithShort:value16] forKey:[NSNumber numberWithInt:addr]]; + } + else{ + uint32_t value32; + [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(uint32_t)]; + [_lastValues setObject:[NSNumber numberWithLong:value32] forKey:[NSNumber numberWithInt:addr]]; + } + } + } +} + +- (IBAction)clearValues: (id)sender{ + [_lastValues removeAllObjects]; +} + +#pragma mark - + +- (void)reloadData: (id)timer { + if([memoryTable editedRow] == -1) + [memoryTable reloadData]; +} + +- (BOOL)validState { + return (self.currentAddress && _memory && [_memory isValid]); +} + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + + // memory table + if ( aTableView == memoryTable ){ + if ( [self validState] ) { + return _displayCount; + } + } + + // bit table + else if ( aTableView == bitTableView ){ + size_t size = ([self displayFormat] == 2) ? sizeof(uint64_t) : sizeof(uint32_t); + size = ([self displayFormat] == 5) ? sizeof(uint16_t) : size; + + // Our length will be the number of bytes! + return size * 8; + } + + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if(rowIndex == -1) return nil; + + // memory table + if ( aTableView == memoryTable ){ + if(![self validState]) return nil; + + unsigned startAddress = [self.currentAddress unsignedIntValue]; + size_t size = ([self displayFormat] == 2) ? sizeof(uint64_t) : sizeof(uint32_t); + size = ([self displayFormat] == 5) ? sizeof(uint16_t) : size; + + uint32_t addr = startAddress + rowIndex*size; + + NSString *value = [self formatNumber:nil WithAddress:addr DisplayFormat:[self displayFormat]]; + + if( [[aTableColumn identifier] isEqualToString: @"Address"] ) { + return [NSString stringWithFormat: @"0x%X", addr]; + } + if( [[aTableColumn identifier] isEqualToString: @"Offset"] ) { + return [NSString stringWithFormat: @"+0x%X", (addr - startAddress)]; + } + + if( [[aTableColumn identifier] isEqualToString: @"Saved"] ) { + return [self formatNumber:[_lastValues objectForKey:[NSNumber numberWithInt:addr]] WithAddress:0 DisplayFormat:_formatOfSavedValues]; + } + + if( [[aTableColumn identifier] isEqualToString: @"Value"] ) { + return value; + } + + if( [[aTableColumn identifier] isEqualToString: @"Info"] ) { + + NSArray *pointers = [_pointerList valueForKey:[NSString stringWithFormat:@"%d", addr]]; + if ( pointers ){ + // is it a number? o noes nothing found + if ( [[pointers className] isEqualToString:@"NSCFNumber"] ){ + return @"No pointer found"; + } + // we have an array of ptrs! + else{ + if ( [pointers count] > 1 ){ + NSMutableString *addresses = [NSMutableString string]; + + for ( NSNumber *address in pointers ){ + [addresses appendString:[NSString stringWithFormat:@"0x%X ", [address unsignedIntValue]]]; + } + return addresses; + } + else{ + return [NSString stringWithFormat:@"PTR: 0x%X", [[pointers objectAtIndex:0] unsignedIntValue]]; + } + } + } + + NSNumber *num = [NSNumber numberWithInt:[[self formatNumber:nil WithAddress:addr DisplayFormat:0] integerValue]]; + NSArray *objectAddresses = [controller allObjectAddresses]; + + if ( [objectAddresses containsObject:num] ){ + return @"OBJECT POINTER"; + } + + + + // 64-bit + if ( [self displayFormat] == 2 ){ + //NSLog(@"0x%qX %@", [value longLongValue], itemController); + Item *item = [itemController itemForGUID:[value longLongValue]]; + if ( item ){ + return [NSString stringWithFormat:@"Item: %@", [item name]]; + } + Mob *mob = [mobController mobWithGUID:[value longLongValue]]; + if ( mob ){ + return [NSString stringWithFormat:@"Mob: %@", [mob name]]; + } + Player *player = [playersController playerWithGUID:[value longLongValue]]; + if ( player ){ + return [NSString stringWithFormat:@"Player: %@", [playersController playerNameWithGUID:[value longLongValue]]]; + } + /*Node *node = [nodeController nodeWithGUID:[value longLongValue]]; + if ( node ){ + return [NSString stringWithFormat:@"Mob: %@", [node name]]; + }*/ + } + + NSArray *objectGUIDs = [controller allObjectGUIDs]; + if ( [objectGUIDs containsObject:num] ){ + return @"OBJECT GUID (LOW32)"; + } + + id info = nil; + if([self.wowObject respondsToSelector: @selector(descriptionForOffset:)]) + info = [self.wowObject descriptionForOffset: (addr - startAddress)]; + + if(!info || ![info length]) { + char str[5]; + str[4] = '\0'; + [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&str BufLength: 4]; + + NSString *tehString = [NSString stringWithUTF8String: str]; + if([tehString length]) + return [NSString stringWithFormat: @"\"%@\"", [NSString stringWithUTF8String: str]]; + } + return info; + } + } + + // bit table + else if ( aTableView == bitTableView ){ + + if( [[aTableColumn identifier] isEqualToString: @"Bit"] ) { + + // 0x0 0x1 0x2 0x4 0x8 0x10 0x20 0x40 0x80 0x100 + + NSString *num = [NSString stringWithFormat:@"0x%X", rowIndex]; + + return num; + } + if( [[aTableColumn identifier] isEqualToString: @"On/Off"] ) { + return @"0"; + } + } + + return nil; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + + // memory table + if ( aTableView == memoryTable ){ + if([[aTableColumn identifier] isEqualToString: @"Value"]) + return YES; + } + + return NO; +} + +- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + + // memory table + if ( aTableView == memoryTable ){ + int type = [self displayFormat]; + if(type == 0 || type == 4) { + UInt32 value = [anObject intValue]; + [_memory saveDataForAddress: ([self.currentAddress unsignedIntValue] + rowIndex*4) Buffer: (Byte*)&value BufLength: sizeof(value)]; + } + if(type == 1) { + SInt32 value = [anObject intValue]; + [_memory saveDataForAddress:([self.currentAddress unsignedIntValue] + rowIndex*4) Buffer: (Byte*)&value BufLength: sizeof(value)]; + } + if(type == 2) { + UInt64 value = [anObject longLongValue]; + [_memory saveDataForAddress: ([self.currentAddress unsignedIntValue] + rowIndex*4) Buffer: (Byte*)&value BufLength: sizeof(value)]; + } + if(type == 3) { + float value = [anObject floatValue]; + [_memory saveDataForAddress: ([self.currentAddress unsignedIntValue] + rowIndex*4) Buffer: (Byte*)&value BufLength: sizeof(value)]; + } + if(type == 5) { + UInt16 value = [anObject intValue]; + [_memory saveDataForAddress: ([self.currentAddress unsignedIntValue] + rowIndex*4) Buffer: (Byte*)&value BufLength: sizeof(value)]; + } + } + + // bit table + else if ( aTableView == bitTableView ){ + + } +} + +// memory table +- (void)tableDoubleClick: (id)sender { + if( [sender clickedRow] == -1 ) return; + + unsigned startAddress = [self.currentAddress unsignedIntValue]; + size_t size = ([self displayFormat] == 2) ? sizeof(uint64_t) : sizeof(uint32_t); + size = ([self displayFormat] == 5) ? sizeof(uint16_t) : size; + + uint32_t addr = startAddress + [sender clickedRow]*size; + + uint32_t value = 0; + if([_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value BufLength: sizeof(value)] && value) { + if(value >= startAddress && value <= startAddress + _displayCount*size) { + int line = (value - startAddress)/4; + [memoryTable scrollRowToVisible: line]; + [memoryTable selectRowIndexes: [NSIndexSet indexSetWithIndex: line] byExtendingSelection: NO]; + } + } +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex{ + if(aRowIndex == -1) return; + + // memory table + if ( aTableView == memoryTable ){ + if(![self validState]) return; + + int size = 4; + if ( [self displayFormat] == View_UInt16 ) + size = 2; + else if ( [self displayFormat] == View_UInt64 ) + size = 8; + + UInt32 addr = [self.currentAddress intValue] + aRowIndex * size; + + // we want the rows that have values changed to be red! + NSNumber *savedNum = [_lastValues objectForKey:[NSNumber numberWithInt:addr]]; + if ( savedNum && [savedNum intValue] > 0 ){ + NSString *currentNum = [self formatNumber:nil WithAddress:addr DisplayFormat:[self displayFormat]]; + + if ( [savedNum longLongValue] != [currentNum longLongValue] ){ + [aCell setTextColor: [NSColor redColor]]; + //PGLog(@"[Memory] Different values found at address 0x%X 0x%qX 0x%qX", addr, [currentNum longLongValue], [savedNum longLongValue] ); + return; + } + } + + [aCell setTextColor: [NSColor blackColor]]; + } + + return; +} + +#pragma mark Experimental Object Monitoring + +- (void)monitorObjects: (id)objects{ + + BOOL firstCall = NO; + + if ( objects && [objects count] && ![[[objects objectAtIndex:0] className] isEqualToString:@"NSCFDictionary"] ){ + firstCall = YES; + } + + PGLog(@"%@ %@", [objects className], [[objects objectAtIndex:0] className]); + // here is where we do our comparisons + if ( !firstCall ){ + + int totalInvalids = 0; + // update values + for ( NSMutableDictionary *dict in (NSArray*)objects ){ + + WoWObject *obj = [dict valueForKey:@"Object"]; + + if ( [obj isStale] || ![obj isValid] ){ + PGLog(@"[Memory] Object no longer valid, aborting"); + totalInvalids++; + continue; + } + + UInt32 addressSize = [[(NSMutableDictionary*)dict valueForKey:@"Size"] unsignedIntValue]; + NSDictionary *currentValues = [self valuesForObject:obj withAddressSize:addressSize]; + + [dict setObject:currentValues forKey:@"StartValues"]; + } + + // now compare all objects! + NSDictionary *firstObjectDict = [(NSArray*)objects objectAtIndex:0]; + uint32_t firstObjectStartAddress = [(WoWObject*)[firstObjectDict valueForKey:@"Object"] baseAddress]; + NSDictionary *firstObjectValues = [firstObjectDict valueForKey:@"StartValues"]; + UInt32 addressSize = [[firstObjectDict valueForKey:@"Size"] unsignedIntValue]; + int i; + for ( i = 0; i < addressSize; i++ ){ + uint32_t addr = firstObjectStartAddress + i*4; + NSNumber *value = [firstObjectValues objectForKey:[NSNumber numberWithUnsignedInt:addr]]; + + BOOL different = NO; + // now check the other objects! + int j = 1; + for ( ;j < [(NSArray*)objects count];j++){ + WoWObject *obj = [[(NSArray*)objects objectAtIndex:j] valueForKey:@"Object"]; + uint32_t startAddress = [obj baseAddress]; + NSDictionary *objectValues = [[(NSArray*)objects objectAtIndex:j] valueForKey:@"StartValues"]; + uint32_t addr2 = startAddress + i*4; + NSNumber *value2 = [objectValues objectForKey:[NSNumber numberWithUnsignedInt:addr2]]; + + if ( [value2 intValue] != [value intValue] ){ + different = YES; + break; + } + } + + if ( different ){ + WoWObject *obj = [[(NSArray*)objects objectAtIndex:0] valueForKey:@"Object"]; + uint32_t startAddress = [obj baseAddress]; + uint32_t addr3 = startAddress + i*4; + NSNumber *value0 = [[[(NSArray*)objects objectAtIndex:0] valueForKey:@"StartValues"] objectForKey:[NSNumber numberWithUnsignedInt:addr3]]; + + obj = [[(NSArray*)objects objectAtIndex:1] valueForKey:@"Object"]; + startAddress = [obj baseAddress]; + addr3 = startAddress + i*4; + NSNumber *value1 = [[[(NSArray*)objects objectAtIndex:1] valueForKey:@"StartValues"] objectForKey:[NSNumber numberWithUnsignedInt:addr3]]; + + /*obj = [[(NSArray*)objects objectAtIndex:2] valueForKey:@"Object"]; + startAddress = [obj baseAddress]; + addr3 = startAddress + i*4; + NSNumber *value2 = [[[(NSArray*)objects objectAtIndex:2] valueForKey:@"StartValues"] objectForKey:[NSNumber numberWithUnsignedInt:addr3]]; + + obj = [[(NSArray*)objects objectAtIndex:3] valueForKey:@"Object"]; + startAddress = [obj baseAddress]; + addr3 = startAddress + i*4; + NSNumber *value3 = [[[(NSArray*)objects objectAtIndex:3] valueForKey:@"StartValues"] objectForKey:[NSNumber numberWithUnsignedInt:addr3]];*/ + + UInt32 offset = addr - firstObjectStartAddress; + + PGLog(@"[0x%X] 0x%X 0x%X", offset, value0, value1); + } + + } + + PGLog(@"------------------------------"); + + + // all are invalid :( + if ( totalInvalids == [objects count] ){ + PGLog(@"[Memory] All monitored objects are invalid, quitting"); + return; + } + + [self performSelector:@selector(monitorObjects:) withObject:objects afterDelay:0.1f]; + } + + // lets start monitoring! + else { + + NSMutableArray *objectsWithData = [[NSMutableArray array] retain]; + + + for ( WoWObject *obj in (NSArray*)objects ){ + + NSNumber *addressesToMonitor = [NSNumber numberWithUnsignedInt:(([obj memoryEnd] - [obj memoryStart] + 0x1000) / sizeof(UInt32))]; + NSDictionary *startValues = [self valuesForObject:obj withAddressSize:[addressesToMonitor intValue]]; + + NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithObjectsAndKeys: + obj, @"Object", + addressesToMonitor, @"Size", + startValues,@"StartValues", + nil]; + + [objectsWithData addObject:dict]; + } + + [self performSelector:@selector(monitorObjects:) withObject:objectsWithData afterDelay:0.1f]; + } + +} + +// this function will monitor an object for changes! +- (void)monitorObject: (id)object{ + + if ( object ){ + // check to see if we have a dictionary - if so then we're monitoring already! + if ( [[object className] isEqualToString:@"NSCFDictionary"] ){ + WoWObject *obj = [object valueForKey:@"Object"]; + + if ( [obj isStale] || ![obj isValid] ){ + PGLog(@"[Memory] Object no longer valid, aborting"); + return; + } + + UInt32 addressSize = [[(NSMutableDictionary*)object valueForKey:@"Size"] unsignedIntValue]; + NSMutableDictionary *startValues = [NSMutableDictionary dictionaryWithDictionary:[(NSMutableDictionary*)object valueForKey:@"StartValues"]]; + NSDictionary *currentValues = [self valuesForObject:obj withAddressSize:addressSize]; + + NSArray *allKeys = [startValues allKeys]; + for ( NSNumber *key in allKeys ){ + + NSNumber *current = [currentValues objectForKey:key]; + NSNumber *start = [startValues objectForKey:key]; + + if ( [start intValue] != [current intValue] ){ + PGLog(@"[Memory] %@ at 0x%X from 0x%X to 0x%X", obj, [key unsignedIntValue], [start intValue], [current intValue] ); + [startValues setObject:current forKey:key]; + } + } + + [(NSMutableDictionary*)object setObject:startValues forKey:@"StartValues"]; + + [self performSelector:@selector(monitorObject:) withObject:object afterDelay:0.1f]; + } + + // starting to monitor + else{ + NSNumber *addressesToMonitor = [NSNumber numberWithUnsignedInt:(([object memoryEnd] - [object memoryStart] + 0x1000) / sizeof(UInt32))]; + NSDictionary *startValues = [self valuesForObject:object withAddressSize:[addressesToMonitor intValue]]; + + NSMutableDictionary *dict = [NSMutableDictionary dictionaryWithObjectsAndKeys: + object, @"Object", + addressesToMonitor, @"Size", + startValues,@"StartValues", + nil]; + + PGLog(@"[Memory] Starting to monitor %@ with base address 0x%X!", object, [object baseAddress]); + [self performSelector:@selector(monitorObject:) withObject:dict afterDelay:0.1f]; + } + } +} + +- (NSDictionary*)valuesForObject: (id)object withAddressSize:(int)addressSize{ + unsigned startAddress = [(WoWObject*)object baseAddress]; + size_t size = 4; + + //PGLog(@"[Memory] Scanning object %@ starting at 0x%X with length %d", object, startAddress, addressSize); + + NSMutableDictionary *dict = [[NSMutableDictionary dictionary] retain]; + + uint32_t value32; + int i; + for ( i = 0; i < addressSize; i++ ){ + uint32_t addr = startAddress + i*size; + + int ret = [_memory readAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(value32)]; + if((ret == KERN_SUCCESS)) { + uint32_t value32; + [_memory loadDataForObject: self atAddress: addr Buffer: (Byte*)&value32 BufLength: sizeof(uint32_t)]; + [dict setObject:[NSNumber numberWithLong:value32] forKey:[NSNumber numberWithInt:addr]]; + } + } + + //PGLog(@"[Memory] Total found: %d", [dict count]); + + return [dict autorelease]; +} + +#pragma mark Search Options + +typedef enum Types { + Type_8bit = 0, + Type_16bit = 1, + Type_32bit = 2, + Type_64bit = 3, + Type_Float = 4, + Type_Double = 5, + Type_String = 6, +} Types; + +typedef enum Signage{ + Type_Unsigned = 0, + Type_Signed = 1, +} Signage; + +typedef enum SearchType{ + Value_Current = 0, + Value_Last = 1, +} SearchType; + +- (IBAction)openSearch: (id)sender{ + [searchPanel makeKeyAndOrderFront: self]; +} + +- (IBAction)startSearch: (id)sender{ + + // we're currently searching + if ( [[searchButton title] isEqualToString:@"Search"] ){ + + // only want to check what we've already searched + if ( [valueMatrix selectedTag] == Value_Last ){ + PGLog(@"updating latest..."); + } + // current value + else{ + PGLog(@"searching for new values... %d %d", sizeof(float), sizeof(double)); + + /*NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithInt:[signMatrix selectedTag]], @"Sign", + [NSNumber numberWithInt:[signMatrix selectedTag]], @"Type", + [searchText stringValue], @"Value", + nil];*/ + + //[NSThread detachNewThreadSelector: @selector(searchPlease:) toTarget: self withObject: dict]; + } + + [searchButton setTitle:@"Cancel"]; + } + else{ + + [searchButton setTitle:@"Search"]; + } +} + +- (IBAction)clearSearch: (id)sender{ + [_searchArray release]; _searchArray = nil; +} + +// we just want to disable the signed/unsigned if we selected a float/double/string +- (IBAction)typeSelected: (id)sender{ + +} + +- (void)searchPlease: (NSDictionary*)dict{ + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + int searchType = [[dict objectForKey:@"Type"] intValue]; + //int signage = [[dict objectForKey:@"Sign"] intValue]; + //NSString *value = [dict objectForKey:@"Value"]; + NSDate *date = [NSDate date]; + + // determine the size we are searching for + size_t size = 0; + if ( searchType == Type_8bit ) // 1 + size = sizeof(uint8_t); + else if ( searchType == Type_16bit ) // 2 + size = sizeof(uint16_t); + else if ( searchType == Type_32bit ) // 4 + size = sizeof(uint32_t); + else if ( searchType == Type_64bit ) // 8 + size = sizeof(uint64_t); + else if ( searchType == Type_Float ) // 4 + size = sizeof(float); + else if ( searchType == Type_Double ) // 8 + size = sizeof(double); + + // block of data! + Byte *dataBlock = malloc(size); + + // get the WoW PID + pid_t wowPID = 0; + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + OSStatus err = GetProcessPID(&wowPSN, &wowPID); + + if((err == noErr) && (wowPID > 0)) { + + // now we need a Task for this PID + mach_port_t MySlaveTask; + kern_return_t KernelResult = task_for_pid(current_task(), wowPID, &MySlaveTask); + if(KernelResult == KERN_SUCCESS) { + // Cool! we have a task... + // Now we need to start grabbing blocks of memory from our slave task and copying it into our memory space for analysis + vm_address_t SourceAddress = 0; + vm_size_t SourceSize = 0; + vm_region_basic_info_data_t SourceInfo; + mach_msg_type_number_t SourceInfoSize = VM_REGION_BASIC_INFO_COUNT; + mach_port_t ObjectName = MACH_PORT_NULL; + + // this will always be 4, as the address space will only be 32-bit! + int MemSize = sizeof(UInt32); + int x; + vm_size_t ReturnedBufferContentSize; + Byte *ReturnedBuffer = nil; + + while(KERN_SUCCESS == (KernelResult = vm_region(MySlaveTask,&SourceAddress,&SourceSize,VM_REGION_BASIC_INFO,(vm_region_info_t) &SourceInfo,&SourceInfoSize,&ObjectName))) { + // If we get here then we have a block of memory and we know how big it is... let's copy readable blocks and see what we've got! + //PGLog(@"we have a block of memory!"); + + // ensure we have access to this block + if ((SourceInfo.protection & VM_PROT_READ)) { + NS_DURING { + ReturnedBuffer = malloc(SourceSize); + ReturnedBufferContentSize = SourceSize; + if ( (KERN_SUCCESS == vm_read_overwrite(MySlaveTask,SourceAddress,SourceSize,(vm_address_t)ReturnedBuffer,&ReturnedBufferContentSize)) && + (ReturnedBufferContentSize > 0) ) + { + // the last address we check must be far enough from the end of the buffer to check all the bytes of our sought value + if((ReturnedBufferContentSize % MemSize) != 0) { + ReturnedBufferContentSize -= (ReturnedBufferContentSize % MemSize); + } + + + // Note: We can assume memory alignment because... well, it's always aligned. + for (x=0; x 0 && [signature length] > 0 ){ + [resultsTextView setString: @""]; + + NSDictionary *offsetDict = [offsetController offsetWithByteSignature:signature + withMask:mask]; + + // do we have any offsets? + if ( [offsetDict count] > 0 ){ + + NSString *offsets = [[NSString alloc] init]; + + NSArray *allKeys = [offsetDict allKeys]; + + int loc = 1; + for ( NSNumber *key in allKeys ){ + offsets = [offsets stringByAppendingString: [NSString stringWithFormat:@"%d: 0x%X found at 0x%X\n", loc++, [[offsetDict objectForKey:key] unsignedIntValue], [key unsignedIntValue]]]; + } + + [resultsTextView setString: offsets]; + + } + // none :( + else{ + [resultsTextView setString: @"None found :("]; + } + } +} + +#pragma mark Pointer Scanner + +- (IBAction)openPointerPanel: (id)sender{ + + [NSApp beginSheet: pointerScanPanel + modalForWindow: [self.view window] + modalDelegate: self + didEndSelector: @selector(pointerSheetDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (void)pointerSheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo { + [pointerScanPanel orderOut: nil]; +} + +- (IBAction)pointerSelectAction: (id)sender{ + if ( [sender tag] == NSCancelButton ){ + + if ( _pointerScanThread != nil ){ + PGLog(@"[Memory] Cancelling pointer scan thread"); + [_pointerScanThread cancel]; + // we can safely release since the pointer will still have a retainCount of 1 (as it's in use) + [_pointerScanThread release]; _pointerScanThread = nil; + } + + [NSApp endSheet: pointerScanPanel returnCode: [sender tag]]; + return; + } + + // otherwise they clicked find! + + // cancel UI interactions since we will be running in another thread + [pointerScanFindButton setEnabled:NO]; + [pointerScanNumTextField setEnabled:NO]; + //[pointerScanVariationButton setEnabled:NO]; + //[pointerScanVariationTextField setEnabled:NO]; + + // set up the progress indicator + [pointerScanProgressIndicator setHidden: NO]; + [pointerScanProgressIndicator setMaxValue: [pointerScanNumTextField intValue]]; + [pointerScanProgressIndicator setDoubleValue: 0]; + [pointerScanProgressIndicator setUsesThreadedAnimation: YES]; + + + // detach a thread since this will take a while! + UInt32 currentAddress = [self.currentAddress unsignedIntValue]; + + _pointerScanThread = [[NSThread alloc] initWithTarget:self + selector:@selector(pointerScan:) + object:[NSNumber numberWithUnsignedInt:currentAddress]]; + [_pointerScanThread start]; +} + +- (void)pointerScan:(NSNumber*)startAddress{ + + NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; + + int numPointers = [pointerScanNumTextField intValue]; + + int i = 0; + for ( ; i < numPointers; i++ ){ + if ( [[NSThread currentThread] isCancelled] ){ + break; + } + + // find pointers + NSNumber *address = [NSNumber numberWithInt:[startAddress intValue] + i*4]; + PGLog(@"[Memory] Searching for pointers at 0x%X", [address unsignedIntValue]); + [self findPointersToAddress:address]; + + // increment progress indicator + [pointerScanProgressIndicator incrementBy: 1.0]; + [pointerScanProgressIndicator displayIfNeeded]; + } + + // reset the UI + [pointerScanCancelButton setEnabled:YES]; + [pointerScanFindButton setEnabled:YES]; + [pointerScanNumTextField setEnabled:YES]; + //[pointerScanVariationButton setEnabled:YES]; + //[pointerScanVariationTextField setEnabled:YES]; + [pointerScanProgressIndicator setHidden: YES]; + + [pool release]; +} + +- (void)findPointersToAddress: (NSNumber*)address { + + UInt32 addressToFind = [address unsignedIntValue]; + NSMutableArray *addressesFound = [[NSMutableArray array] retain]; + NSDate *date = [NSDate date]; + + // get the WoW PID + pid_t wowPID = 0; + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + OSStatus err = GetProcessPID(&wowPSN, &wowPID); + + if((err == noErr) && (wowPID > 0)) { + + // now we need a Task for this PID + mach_port_t MySlaveTask; + kern_return_t KernelResult = task_for_pid(current_task(), wowPID, &MySlaveTask); + if(KernelResult == KERN_SUCCESS) { + // Cool! we have a task... + // Now we need to start grabbing blocks of memory from our slave task and copying it into our memory space for analysis + vm_address_t SourceAddress = 0; + vm_size_t SourceSize = 0; + vm_region_basic_info_data_t SourceInfo; + mach_msg_type_number_t SourceInfoSize = VM_REGION_BASIC_INFO_COUNT; + mach_port_t ObjectName = MACH_PORT_NULL; + + // this will always be 4, as the address space will only be 32-bit! + int MemSize = sizeof(UInt32); + int x; + vm_size_t ReturnedBufferContentSize; + Byte *ReturnedBuffer = nil; + + while(KERN_SUCCESS == (KernelResult = vm_region(MySlaveTask,&SourceAddress,&SourceSize,VM_REGION_BASIC_INFO,(vm_region_info_t) &SourceInfo,&SourceInfoSize,&ObjectName))) { + + // check for thread cancellation + if ( [[NSThread currentThread] isCancelled] ){ + break; + } + + // ensure we have access to this block + if ((SourceInfo.protection & VM_PROT_READ)) { + NS_DURING { + ReturnedBuffer = malloc(SourceSize); + ReturnedBufferContentSize = SourceSize; + if ( (KERN_SUCCESS == vm_read_overwrite(MySlaveTask,SourceAddress,SourceSize,(vm_address_t)ReturnedBuffer,&ReturnedBufferContentSize)) && + (ReturnedBufferContentSize > 0) ) + { + // the last address we check must be far enough from the end of the buffer to check all the bytes of our sought value + if((ReturnedBufferContentSize % MemSize) != 0) { + ReturnedBufferContentSize -= (ReturnedBufferContentSize % MemSize); + } + + // search our buffer + for ( x=0; x 0 ){ + _attachedPID = newPID; + [self setNewMemory]; + } +} + +- (void)updateInstanceList: (NSTimer*)timer{ + + pid_t currentPID = _attachedPID; + + NSMenu *instanceMenu = [[[NSMenu alloc] initWithTitle: @"Instances"] autorelease]; + NSMenuItem *instanceItem; + pid_t pidToSelect = 0; + + // loop through all running processes + for ( NSDictionary *processDict in [[NSWorkspace sharedWorkspace] launchedApplications] ) { + + ProcessSerialNumber pSN = {kNoProcess, kNoProcess}; + pSN.highLongOfPSN = [[processDict objectForKey: @"NSApplicationProcessSerialNumberHigh"] longValue]; + pSN.lowLongOfPSN = [[processDict objectForKey: @"NSApplicationProcessSerialNumberLow"] longValue]; + pid_t pid = 0; + OSStatus err = GetProcessPID(&pSN, &pid); + + // valid process + if ( (err == noErr) && ( pid > 0 ) ) { + + // so we know the first + if ( pidToSelect == 0 ){ + pidToSelect = pid; + } + + NSString *appName = [processDict objectForKey: @"NSApplicationName"]; + + // add a menu item + instanceItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ - %d", appName, pid] action: nil keyEquivalent: @""]; + [instanceItem setTag: pid]; + [instanceItem setRepresentedObject: [NSNumber numberWithInt:pid]]; + [instanceItem setIndentationLevel: 0]; + [instanceMenu addItem: [instanceItem autorelease]]; + } + } + + // if we don't have a PID, then we need to select the current wow (or the first one we find) + if ( _attachedPID == 0 ){ + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + pid_t pid = 0; + OSStatus err = GetProcessPID(&wowPSN, &pid); + if ( (err == noErr) && ( pid > 0 ) ) { + _attachedPID = pid; + pidToSelect = pid; + } + } + else{ + pidToSelect = _attachedPID; + } + + // we need a new memory access! + if ( currentPID != pidToSelect ){ + [self setNewMemory]; + } + + [instanceList setMenu: instanceMenu]; + [instanceList selectItemWithTag: pidToSelect]; +} + +@end diff --git a/Mob.h b/Mob.h new file mode 100644 index 0000000..cd38f2d --- /dev/null +++ b/Mob.h @@ -0,0 +1,53 @@ +// +// Mob.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/20/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import +#import "Position.h" +#import "Unit.h" + + +@interface Mob : Unit { + UInt32 _stateFlags; + + NSString *_name; + UInt32 _nameEntryID; +} ++ (id)mobWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +- (UInt32)experience; + +- (void)select; +- (void)deselect; +- (BOOL)isSelected; + +// npc type +- (BOOL)isVendor; +- (BOOL)canRepair; +- (BOOL)isFlightMaster; +- (BOOL)canGossip; +- (BOOL)isTrainer; +- (BOOL)isYourClassTrainer; +- (BOOL)isYourProfessionTrainer; +- (BOOL)isQuestGiver; +- (BOOL)isStableMaster; +- (BOOL)isBanker; +- (BOOL)isAuctioneer; +- (BOOL)isInnkeeper; +- (BOOL)isFoodDrinkVendor; +- (BOOL)isReagentVendor; +- (BOOL)isSpiritHealer; +- (BOOL)isBattlemaster; + +// status +- (BOOL)isTapped; +- (BOOL)isTappedByMe; +- (BOOL)isTappedByOther; +- (BOOL)isBeingTracked; + + +@end diff --git a/Mob.m b/Mob.m new file mode 100644 index 0000000..18705b3 --- /dev/null +++ b/Mob.m @@ -0,0 +1,363 @@ +// +// Mob.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/20/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Mob.h" +#import "Offsets.h" + + +#define MOB_NAMESTRUCT_POINTER_OFFSET 0x9F8 + +enum eMobNameStructFields { + NAMESTRUCT_TITLE_PTR = 0x4, + NAMESTRUCT_NAMESPACE_END_PTR = 0x8, // this is bogus half the time, so I don't know + NAMESTRUCT_CreatureType = 0x10, + NAMESTRUCT_NAME_PTR = 0x60, + NAMESTRUCT_ENTRY_ID = 0x70, +}; + +@interface Mob () +@property (readwrite, retain) NSString *name; +@end + +@interface Mob (Internal) +- (BOOL)isHostileDeprecated; +@end + +@implementation Mob + ++ (id)mobWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + return [[[Mob alloc] initWithAddress: address inMemory: memory] autorelease]; +} + +- (NSString*)description { + if( [self isFeignDeath] ) + return [NSString stringWithFormat: @"] \"%@\" (%d) (0x%X)>", [self level], [self percentHealth], self.name, [self entryID], [self lowGUID]]; + else + return [NSString stringWithFormat: @"", [self level], [self percentHealth], self.name, [self entryID], [self lowGUID]]; + // +} + + +- (void) dealloc +{ + [_name release]; _name = nil; + [super dealloc]; +} + + +#pragma mark - + +// 3 reads +- (NSString*)name { + // if we already have a name saved, return it + if(_name && [_name length]) { + if(_nameEntryID == [self entryID]) + return [[_name retain] autorelease]; + } + + // if we don't, load the name out of memory + if([self objectTypeID] == TYPEID_UNIT) { + + // get the address from the object itself + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + MOB_NAMESTRUCT_POINTER_OFFSET) Buffer: (Byte *)&value BufLength: sizeof(value)]) + { + UInt32 entryID = 0, stringPtr = 0, titlePtr = 0; + + // verify that the entry IDs match, then follow the pointer to the string value + if([_memory loadDataForObject: self atAddress: (value + NAMESTRUCT_NAME_PTR) Buffer: (Byte *)&stringPtr BufLength: sizeof(stringPtr)] && + [_memory loadDataForObject: self atAddress: (value + NAMESTRUCT_ENTRY_ID) Buffer: (Byte *)&entryID BufLength: sizeof(entryID)]) + { + + if( (entryID == [self entryID]) && stringPtr ) + { + // get title ptr if it exists; we dont care if this op fails + [_memory loadDataForObject: self atAddress: (value + NAMESTRUCT_TITLE_PTR) Buffer: (Byte *)&titlePtr BufLength: sizeof(titlePtr)]; + + char name[97]; + name[96] = 0; // make sure it's null terminated, just incase + if([_memory loadDataForObject: self atAddress: stringPtr Buffer: (Byte *)&name BufLength: sizeof(name)-1]) + { + NSString *newName = [NSString stringWithUTF8String: name]; // will stop after it's first encounter with '\0' + if([newName length]) { + // now see if there's a title + NSString *title = nil; + UInt32 titleOffset = titlePtr - stringPtr; + if(titlePtr && (titleOffset > 0) && (titleOffset < 96)) { + title = [NSString stringWithUTF8String: (name + titleOffset)]; + } + + [self setName: [title length] ? [NSString stringWithFormat: @"%@ <%@>", newName, title] : newName]; + return newName; + } + } + } + } + } + } + return @""; +} + +- (void)setName: (NSString*)name { + id temp = nil; + [name retain]; + @synchronized (@"Name") { + temp = _name; + _name = name; + _nameEntryID = [self entryID]; + } + [temp release]; +} + + +// 1 read +// broken at the moment +- (UInt32)experience { + return 0; +} + +#pragma mark - +#pragma mark Selection + +#define UnitSelectedFlag (1 << 12) // 0x1000 +#define UnitFocusedFlag (1 << 13) // 0x2000 + +- (BOOL)valueMeansSelected: (UInt32)value { + return ((value & UnitSelectedFlag) == UnitSelectedFlag); +} + +// 1 read, 1 write +- (void)select { + UInt32 select = UnitSelectedFlag, value = 0; + [_memory loadDataForObject: self atAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&value BufLength: sizeof(value)]; + select |= value; + [_memory saveDataForAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&select BufLength: sizeof(select)]; +} + +// this isn't used right now, but might be useful for Focus support? +- (void)focus { + UInt32 focus = UnitFocusedFlag, value = 0; + [_memory loadDataForObject: self atAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&value BufLength: sizeof(value)]; + focus |= value; + [_memory saveDataForAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&focus BufLength: sizeof(focus)]; +} + +// 1 read, 1 write +- (void)deselect { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&value BufLength: sizeof(value)]; + if([self valueMeansSelected: value]) { + value ^= UnitSelectedFlag; + [_memory saveDataForAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&value BufLength: sizeof(value)]; + } +} + +// 1 read +- (BOOL)isSelected { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: [self baseAddress] + BaseField_SelectionFlags Buffer: (Byte *)&value BufLength: sizeof(value)] && [self valueMeansSelected: value]) + return YES; + return NO; +} + + +#pragma mark - + +// redefined from Unit +- (BOOL)isTotem { + if([self creatureType] == CreatureType_Totem) + return YES; + return NO; +} + +- (CreatureType)creatureType { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + MOB_NAMESTRUCT_POINTER_OFFSET) Buffer: (Byte *)&value BufLength: sizeof(value)] && value) + { + UInt32 type = 0; + if([_memory loadDataForObject: self atAddress: (value + NAMESTRUCT_CreatureType) Buffer: (Byte *)&type BufLength: sizeof(type)] && type) { + if( (type > CreatureType_Unknown) && (type < CreatureType_Max)) { + return type; + } + } + } + return CreatureType_Unknown; +} + +- (BOOL)isSkinnable { + if( ([self stateFlags] & (1 << UnitStatus_Skinnable)) == (1 << UnitStatus_Skinnable)) + return YES; + return NO; +} + +- (BOOL)isElite { + if( ([self stateFlags] & (1 << UnitStatus_Elite)) == (1 << UnitStatus_Elite)) + return YES; + return NO; +} + +#pragma mark NPC Flags + +- (BOOL)canGossip { + if( ([self npcFlags] & 0x1) == 0x1) + return YES; + return NO; +} + +- (BOOL)isQuestGiver { + if( ([self npcFlags] & 0x2) == 0x2) + return YES; + return NO; +} + +- (BOOL)isTrainer { + if( ([self npcFlags] & 0x10) == 0x10) + return YES; + return NO; +} + +- (BOOL)isYourClassTrainer { + if( ([self npcFlags] & 0x20) == 0x20) + return YES; + return NO; +} + +- (BOOL)isYourProfessionTrainer { + if( ([self npcFlags] & 0x40) == 0x40) + return YES; + return NO; +} + +- (BOOL)isVendor { + if( ([self npcFlags] & 0x80) == 0x80) + return YES; + return NO; +} + +- (BOOL)isGeneralGoodsVendor { + if( ([self npcFlags] & 0x100) == 0x100) + return YES; + return NO; +} + +- (BOOL)isFoodDrinkVendor { + if( ([self npcFlags] & 0x200) == 0x200) + return YES; + return NO; +} + +- (BOOL)isPoisonVendor { + if( ([self npcFlags] & 0x400) == 0x400) + return YES; + return NO; +} + +- (BOOL)isReagentVendor { + if( ([self npcFlags] & 0x800) == 0x800) + return YES; + return NO; +} + +- (BOOL)canRepair { + if( ([self npcFlags] & 0x1000) == 0x1000) + return YES; + return NO; +} + +- (BOOL)isFlightMaster { + if( ([self npcFlags] & 0x2000) == 0x2000) + return YES; + return NO; +} + +- (BOOL)isSpiritHealer { + if( ([self npcFlags] & 0x4000) == 0x4000) + return YES; + return NO; +} + +- (BOOL)isSpiritGuide { + if( ([self npcFlags] & 0x8000) == 0x8000) + return YES; + return NO; +} + +- (BOOL)isInnkeeper { + if( ([self npcFlags] & 0x10000) == 0x10000) + return YES; + return NO; +} + +- (BOOL)isBanker { + if( ([self npcFlags] & 0x20000) == 0x20000) + return YES; + return NO; +} + +- (BOOL)isPetitioner { + if( ([self npcFlags] & 0x40000) == 0x40000) + return YES; + return NO; +} + +- (BOOL)isTabbardDesigner { + if( ([self npcFlags] & 0x80000) == 0x80000) + return YES; + return NO; +} + +- (BOOL)isBattlemaster { + if( ([self npcFlags] & 0x100000) == 0x100000) + return YES; + return NO; +} + +- (BOOL)isAuctioneer { + if( ([self npcFlags] & 0x200000) == 0x200000) + return YES; + return NO; +} + +- (BOOL)isStableMaster { + if( ([self npcFlags] & 0x400000) == 0x400000) + return YES; + return NO; +} + +#pragma mark Unit Dynamic Flags + +- (BOOL)isTapped { + if( ([self dynamicFlags] & 0x4) == 0x4) // bit 2 + return YES; + return NO; +} + +- (BOOL)isTappedByMe { + if( ([self dynamicFlags] & 0xC) == 0xC) // bits 2 & 3 + return YES; + return NO; +} + +- (BOOL)isTappedByOther { + return ([self isTapped] && ![self isTappedByMe]); +} + +- (BOOL)isLootable { + if( ([self dynamicFlags] & 0xD) == 0xD) // bits 0, 2 & 3 + return YES; + return NO; +} + +- (BOOL)isBeingTracked { + if( ([self dynamicFlags] & 0x2) == 0x2) // bit 1 + return YES; + return NO; +} + + +@end diff --git a/MobController.h b/MobController.h new file mode 100644 index 0000000..1e368c4 --- /dev/null +++ b/MobController.h @@ -0,0 +1,71 @@ +// +// MobController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/17/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import +#import "Mob.h" +#import "ObjectController.h" + +@class CombatProfile; + +@class BotController; + +@class ObjectsController; + +@interface MobController : ObjectController { + IBOutlet BotController *botController; + IBOutlet id memoryViewController; + IBOutlet id combatController; + IBOutlet id movementController; + IBOutlet id auraController; + IBOutlet id spellController; + + IBOutlet ObjectsController *objectsController; + + IBOutlet id trackFriendlyMenuItem; + IBOutlet id trackNeutralMenuItem; + IBOutlet id trackHostileMenuItem; + + IBOutlet NSPopUpButton *additionalList; + + int cachedPlayerLevel; + Mob *memoryViewMob; +} + ++ (MobController *)sharedController; + +@property (readonly) NSImage *toolbarIcon; + +- (unsigned)mobCount; +- (NSArray*)allMobs; +- (void)doCombatScan; + +- (void)clearTargets; +- (Mob*)playerTarget; +- (Mob*)mobWithEntryID: (int)entryID; +- (NSArray*)mobsWithEntryID: (int)entryID; +- (Mob*)mobWithGUID: (GUID)guid; + +- (NSArray*)mobsWithinDistance: (float)mobDistance + MobIDs: (NSArray*)mobIDs + position:(Position*)position + aliveOnly:(BOOL)aliveOnly; + +- (NSArray*)mobsWithinDistance: (float)distance + levelRange: (NSRange)range + includeElite: (BOOL)elite + includeFriendly: (BOOL)friendly + includeNeutral: (BOOL)neutral + includeHostile: (BOOL)hostile; +- (Mob*)closestMobForInteraction:(UInt32)entryID; + +- (NSArray*)uniqueMobsAlphabetized; +- (Mob*)closestMobWithName:(NSString*)mobName; + +- (IBAction)updateTracking: (id)sender; + +@end diff --git a/MobController.m b/MobController.m new file mode 100644 index 0000000..87350e3 --- /dev/null +++ b/MobController.m @@ -0,0 +1,676 @@ +// +// MobController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/17/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// +#import + +#import "MobController.h" +#import "Controller.h" +#import "PlayerDataController.h" +#import "MemoryViewController.h" +#import "CombatController.h" +#import "MovementController.h" +#import "AuraController.h" +#import "BotController.h" +#import "SpellController.h" +#import "ObjectsController.h" + +#import "MemoryAccess.h" +#import "CombatProfile.h" + +#import "Mob.h" +#import "Waypoint.h" +#import "Position.h" +#import "Offsets.h" + +#import "ImageAndTextCell.h" + +@interface MobController (Internal) +- (BOOL)trackingMob: (Mob*)mob; +@end + +@implementation MobController + ++ (void)InitializeDataBrowserCallbacks { +} + +static MobController* sharedController = nil; + ++ (MobController *)sharedController { + if (sharedController == nil) + sharedController = [[[self class] alloc] init]; + return sharedController; +} + +- (id) init { + self = [super init]; + if(sharedController) { + [self release]; + self = sharedController; + } else if (self != nil) { + sharedController = self; + + [[NSUserDefaults standardUserDefaults] registerDefaults: [NSDictionary dictionaryWithObject: @"0.25" forKey: @"MobControllerUpdateFrequency"]]; + cachedPlayerLevel = 0; + } + return self; +} + +- (void)dealloc{ + [_objectList release]; + [_objectDataList release]; + + [super dealloc]; +} + +#pragma mark Accessors + +- (NSImage*)toolbarIcon { + NSImage *original = [NSImage imageNamed: @"INV_Misc_Head_Dragon_Bronze"]; + NSImage *newImage = [original copy]; + + NSDictionary *attributes = [[[NSDictionary alloc] initWithObjectsAndKeys: + [NSFont fontWithName:@"Helvetica-Bold" size: 18], NSFontAttributeName, + [NSColor whiteColor], NSForegroundColorAttributeName, nil] autorelease]; + + NSString *count = [NSString stringWithFormat: @"%d", [_objectList count]]; + NSSize numSize = [count sizeWithAttributes:attributes]; + NSSize iconSize = [original size]; + + if ([_objectList count]) { + + [newImage lockFocus]; + float max = ((numSize.width > numSize.height) ? numSize.width : numSize.height) + 8.0f; + + NSRect circleRect = NSMakeRect(iconSize.width - max, 0, max, max); // iconSize.width - max, iconSize.height - max + NSBezierPath *bp = [NSBezierPath bezierPathWithOvalInRect:circleRect]; + [[NSColor colorWithCalibratedRed:0.8f green:0.0f blue:0.0f alpha:1.0f] set]; + [bp fill]; + [count drawAtPoint: NSMakePoint(NSMidX(circleRect) - numSize.width / 2.0f, NSMidY(circleRect) - numSize.height / 2.0f + 2.0f) + withAttributes: attributes]; + + [newImage unlockFocus]; + } + + return [newImage autorelease]; +} + +#pragma mark - +// deselect all mobs +- (void)clearTargets{ + // deselect all + for(Mob *mob in _objectList) { + [mob deselect]; + } +} + +/* +// old-style manual totem detection +- (BOOL)mobIsOurTotem: (Mob*)mob { + UInt64 createdByGUID = [mob createdBy]; + UInt32 createdBySpell = [mob createdBySpell]; + + if( ([mob unitBytes2] == 0x2801) && (createdBySpell != 0) && (createdByGUID != 0) && ([mob petNumber] == 0) && ([mob petNameTimestamp] == 0)) { + Spell *spell = [spellController spellForID: [NSNumber numberWithUnsignedInt: createdBySpell]]; + if( [spellController isPlayerSpell: spell] && ([playerData GUID] == createdByGUID)) { + return YES; + } + } + return NO; +}*/ + +- (Mob*)playerTarget { + GUID playerTarget = [playerData targetID]; + + for(Mob *mob in _objectList) { + if( playerTarget == [mob GUID]) { + return mob; + } + } + return nil; +} + +- (Mob*)mobWithEntryID: (int)entryID { + for(Mob *mob in _objectList) { + if( entryID == [mob entryID]) { + return [[mob retain] autorelease]; + } + } + return nil; +} + +- (NSArray*)mobsWithEntryID: (int)entryID { + + NSMutableArray *mobs = [NSMutableArray array]; + for(Mob *mob in _objectList) { + + if( entryID == [mob entryID]) { + [mobs addObject: mob]; + } + } + + return mobs; +} + +- (Mob*)mobWithGUID: (GUID)guid { + for(Mob *mob in _objectList) { + if( guid == [mob GUID]) { + return [[mob retain] autorelease]; + } + } + return nil; +} + +- (unsigned)mobCount { + return [_objectList count]; +} + +- (unsigned int)objectCount { + return [_objectList count]; +} + +- (NSArray*)allObjects{ + return [[_objectList retain] autorelease]; +} + +- (NSArray*)allMobs { + return [[_objectList retain] autorelease]; +} + +- (void)addAddresses: (NSArray*)addresses { + [super addAddresses: addresses]; + + [self updateTracking: nil]; +} + +#pragma mark - + +- (NSArray*)mobsWithinDistance: (float)mobDistance MobIDs: (NSArray*)mobIDs position:(Position*)position aliveOnly:(BOOL)aliveOnly{ + + NSMutableArray *withinRangeMobs = [NSMutableArray array]; + BOOL tapCheckPassed = YES; + for(Mob *mob in _objectList) { + tapCheckPassed = YES; + // Just return nearby mobs + if ( mobIDs == nil ){ + float distance = [position distanceToPosition: [mob position]]; + if((distance != INFINITY) && (distance <= mobDistance)) { +// log(LOG_DEV, @"Mob %@ is %0.2f away", mob, distance); + + // Living check? + if ( !aliveOnly || (aliveOnly && ![mob isDead]) ){ + [withinRangeMobs addObject: mob]; + } + } + } + else{ + for ( NSNumber *entryID in mobIDs ) { + if ( [mob entryID] == [entryID intValue] ){ + float distance = [position distanceToPosition: [mob position]]; + if((distance != INFINITY) && (distance <= mobDistance)) { + if ( [mob isTappedByOther] && !botController.theCombatProfile.partyEnabled && !botController.pvpIsInBG ) tapCheckPassed = NO; + + // Living check? + if ( !aliveOnly || (aliveOnly && ![mob isDead]) ) { + if (tapCheckPassed) { + [withinRangeMobs addObject: mob]; + } else { + log(LOG_DEV, @"Mob %@ is tapped by another player, not adding it to my mob list!", mob, distance); + } + } + } + } + } + } + } + + return withinRangeMobs; +} + + +- (NSArray*)mobsWithinDistance: (float)mobDistance + levelRange: (NSRange)range + includeElite: (BOOL)includeElite + includeFriendly: (BOOL)friendly + includeNeutral: (BOOL)neutral + includeHostile: (BOOL)hostile { + + NSMutableArray *withinRangeMobs = [NSMutableArray array]; + + BOOL tapCheckPassed; + BOOL ignoreLevelOne = ([playerData level] > 10) ? YES : NO; + Position *playerPosition = [(PlayerDataController*)playerData position]; + + //log(LOG_GENERAL, @"[Mob] Total mobs: %d", [_objectList count]); + + for(Mob *mob in _objectList) { + + if ( !includeElite && [mob isElite] ){ + log(LOG_DEV, @"Ignoring elite %@", mob); + continue; // ignore elite if specified + } + + // ignore units that don't meet the combat profile + if ( [botController.theCombatProfile unitShouldBeIgnored: mob] ){ + continue; + } + + // ignore pets? + if ( ![botController.theCombatProfile attackPets] && [mob isPet] ){ + continue; + } + + tapCheckPassed = YES; + if ( [mob isTappedByOther] && !botController.theCombatProfile.partyEnabled && !botController.pvpIsInBG ) tapCheckPassed = NO; + + float distance = [playerPosition distanceToPosition: [mob position]]; + + if((distance != INFINITY) && (distance <= mobDistance)) { + int lowLevel = range.location; + if(lowLevel < 1) lowLevel = 1; + if(lowLevel == 1 && ignoreLevelOne) lowLevel = 2; + int highLevel = lowLevel + range.length; + int mobLevel = [mob level]; + + int faction = [mob factionTemplate]; + BOOL isFriendly = [playerData isFriendlyWithFaction: faction]; + BOOL isHostile = [playerData isHostileWithFaction: faction]; + BOOL isNeutral = (!isHostile && ![playerData isFriendlyWithFaction: faction]); + + //log(LOG_GENERAL, @"%d %d (%d || %d || %d) %d %d %d %d %@", [mob isValid], ![mob isDead], (friendly && isFriendly), (neutral && isNeutral), (hostile && isHostile), ((mobLevel >= lowLevel) && (mobLevel <= highLevel)), [mob isSelectable], + // [mob isAttackable], ![mob isTappedByOther], mob); + + // only include: + if( [mob isValid] // 1) valid mobs + && ![mob isDead] // 2) mobs that aren't dead + && ((friendly && isFriendly) // 3) friendly as specified + || (neutral && isNeutral) // neutral as specified + || (hostile && isHostile) ) // hostile as specified + && ((mobLevel >= lowLevel) && (mobLevel <= highLevel)) // 4) mobs within the level range + //&& ![mob isPet] // 5) mobs that are not player pets + && [mob isSelectable] // 6) mobs that are selectable + && [mob isAttackable] // 7) mobs that are attackable + && tapCheckPassed ) // 8) mobs that are not tapped by someone else + [withinRangeMobs addObject: mob]; + } + } + + //log(LOG_GENERAL, @"[MobController] Found %d mobs", [withinRangeMobs count]); + + return withinRangeMobs; +} + +- (Mob*)closestMobForInteraction:(UInt32)entryID { + + Position *playerPosition = [(PlayerDataController*)playerData position]; + + for(Mob *mob in _objectList) { + float distance = [playerPosition distanceToPosition: [mob position]]; + + if((distance != INFINITY) && (distance <= 9)) { + //int faction = [mob factionTemplate]; + // only include: valid mobs, mobs that aren't dead, friendly, selectable mobs + if( [mob isValid] && [mob entryID] == entryID && ![mob isDead] && ![mob isPet] ) + return mob; + } + } + + log(LOG_GENERAL, @"[Mob] No mob for interaction"); + return nil; +} + +#pragma mark ObjectsController helpers + +- (NSArray*)uniqueMobsAlphabetized{ + + NSMutableArray *addedMobNames = [NSMutableArray array]; + + for ( Mob *mob in _objectList ){ + if ( ![addedMobNames containsObject:[mob name]] ){ + [addedMobNames addObject:[mob name]]; + } + } + + [addedMobNames sortUsingSelector:@selector(compare:)]; + + return [[addedMobNames retain] autorelease]; +} + +- (Mob*)closestMobWithName:(NSString*)mobName{ + + NSMutableArray *mobsWithName = [NSMutableArray array]; + + // find mobs with the name! + for ( Mob *mob in _objectList ){ + if ( [mobName isEqualToString:[mob name]] ){ + [mobsWithName addObject:mob]; + } + } + + if ( [mobsWithName count] == 1 ){ + return [mobsWithName objectAtIndex:0]; + } + + Position *playerPosition = [playerData position]; + Mob *closestMob = nil; + float closestDistance = INFINITY; + for ( Mob *mob in mobsWithName ){ + + float distance = [playerPosition distanceToPosition:[mob position]]; + if ( distance < closestDistance ){ + closestDistance = distance; + closestMob = mob; + } + } + + return closestMob; +} + +#pragma mark - + +- (void)doCombatScan { + BOOL doNearbyScan = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmOnNearbyMob"] boolValue]; + int nearbyEntryID = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmOnNearbyMobID"] intValue]; + + // check to see if we're in combat + + if ( doNearbyScan ){ + for(Mob *mob in _objectList) { + if ( [mob entryID] == nearbyEntryID && ![mob isDead] ){ + [[NSSound soundNamed: @"alarm"] play]; + log(LOG_GENERAL, @"[Combat] Found %d nearby! Playing alarm!", nearbyEntryID); + } + } + } + +} + +- (BOOL)trackingMob: (Mob*)trackingMob { + for(Mob *mob in _objectList) { + if( [mob isEqualToObject: trackingMob] ) + return YES; + } + return NO; +} + +- (IBAction)updateTracking: (id)sender { + if(![playerData playerIsValid:self]) return; + + if(sender && ![sender isKindOfClass: [self class]]) { + // the stupid popup doesn't update the state of the menu items OR BINDINGS until after it fires off its selector. + // so if this call is coming from the UI, just delay for a tiny bit and try again. + [self performSelector: _cmd withObject: self afterDelay: 0.1]; + return; + } + + BOOL trackFriendly = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobTrackFriendly"]; + BOOL trackNeutral = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobTrackNeutral"]; + BOOL trackHostile = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobTrackHostile"]; + + if(!sender && !trackFriendly && !trackNeutral && !trackHostile) { + // there's nothing to update + return; + } + + for(Mob *mob in _objectList) { + BOOL isHostile = [playerData isHostileWithFaction: [mob factionTemplate]]; + BOOL isFriendly = [playerData isFriendlyWithFaction: [mob factionTemplate]]; + BOOL isNeutral = (!isHostile && !isFriendly); + BOOL shouldTrack = NO; + + if( trackHostile && isHostile) { + shouldTrack = YES; + } + if( trackNeutral && isNeutral) { + shouldTrack = YES; + } + if( trackFriendly && isFriendly) { + shouldTrack = YES; + } + + if(shouldTrack) [mob trackUnit]; + else [mob untrackUnit]; + } +} + +#pragma mark - Implementing functions from teh super class! + +- (id)objectWithAddress:(NSNumber*) address inMemory:(MemoryAccess*)memory{ + return [Mob mobWithAddress:address inMemory:memory]; +} + +- (NSString*)updateFrequencyKey{ + return @"MobControllerUpdateFrequency"; +} + +- (unsigned int)objectCountWithFilters{ + BOOL hideNonSeletable = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobHideNonSelectable"]; + BOOL hidePets = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobHidePets"]; + BOOL hideCritters = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobHideCritters"]; + + if ( [_objectDataList count] || ( hideNonSeletable || hidePets || hideCritters ) ) + return [_objectDataList count]; + + return [_objectList count]; +} + +// update our object data list! +- (void)refreshData { + + // remove old objects + [_objectDataList removeAllObjects]; + + // is player valid? + if ( ![playerData playerIsValid:self] ) return; + + // search for nearby mobs (for alarm!) + [self doCombatScan]; + + // is tab viewable? + if ( ![objectsController isTabVisible:Tab_Mobs] ) + return; + + cachedPlayerLevel = [playerData level]; + + unsigned level, health; + Position *playerPosition = [(PlayerDataController*)playerData position]; + NSString *filterString = [objectsController nameFilter]; + for ( Mob *mob in _objectList ) { + + if ( ![mob isValid] ) + continue; + + if ( filterString ) { + if( [[mob name] rangeOfString: filterString options: NSCaseInsensitiveSearch | NSDiacriticInsensitiveSearch].location == NSNotFound) { + continue; + } + } + + BOOL hideNonSeletable = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobHideNonSelectable"]; + BOOL hidePets = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobHidePets"]; + BOOL hideCritters = [[NSUserDefaults standardUserDefaults] boolForKey: @"MobHideCritters"]; + + // hide invisible mobs from the list + if ( hideNonSeletable && ![mob isSelectable] ) + continue; + + int faction = [mob factionTemplate]; + level = [mob level]; + BOOL critter = ([controller reactMaskForFaction: faction] == 0) && (level == 1); + + // skip critters if necessary + if( hideCritters && critter) + continue; + + NSString *name = nil; + + // check to see if it's a pet + if ( [mob isPet] ) { + if ( hidePets ) continue; + if ( [mob isTotem] ){ + name = [mob name]; + name = [@"[Totem] " stringByAppendingString: name]; + } + else{ + name = [mob name]; + name = [@"[Pet] " stringByAppendingString: name]; + } + } + + health = [mob currentHealth]; + + + if ( !name ) + name = [mob name]; + + BOOL isDead = [mob isDead]; + BOOL isCombat = [mob isInCombat]; + BOOL isHostile = [playerData isHostileWithFaction: faction]; + BOOL isNeutral = (!isHostile && ![playerData isFriendlyWithFaction: faction]); + BOOL allianceFriendly = ([controller reactMaskForFaction: faction] & 0x2); + BOOL hordeFriendly = ([controller reactMaskForFaction: faction] & 0x4); + BOOL bothFriendly = hordeFriendly && allianceFriendly; + allianceFriendly = allianceFriendly && !bothFriendly; + hordeFriendly = hordeFriendly && !bothFriendly; + + float distance = [playerPosition distanceToPosition: [mob position]]; + + NSImage *nameIcon = nil; + if( !nameIcon && (level == PLAYER_LEVEL_CAP+3) && [mob isElite]) + nameIcon = [NSImage imageNamed: @"Skull"]; + + if( !nameIcon && [mob isAuctioneer]) nameIcon = [NSImage imageNamed: @"BankerGossipIcon"]; + if( !nameIcon && [mob isStableMaster]) nameIcon = [NSImage imageNamed: @"Stable"]; + if( !nameIcon && [mob isBanker]) nameIcon = [NSImage imageNamed: @"BankerGossipIcon"]; + if( !nameIcon && [mob isInnkeeper]) nameIcon = [NSImage imageNamed: @"Innkeeper"]; + if( !nameIcon && [mob isFlightMaster]) nameIcon = [NSImage imageNamed: @"TaxiGossipIcon"]; + if( !nameIcon && [mob canRepair]) nameIcon = [NSImage imageNamed: @"Repair"]; + if( !nameIcon && [mob isVendor]) nameIcon = [NSImage imageNamed: @"VendorGossipIcon"]; + if( !nameIcon && [mob isTrainer]) nameIcon = [NSImage imageNamed: @"TrainerGossipIcon"]; + if( !nameIcon && [mob isQuestGiver]) nameIcon = [NSImage imageNamed: @"ActiveQuestIcon"]; + if( !nameIcon && [mob canGossip]) nameIcon = [NSImage imageNamed: @"GossipGossipIcon"]; + if( !nameIcon && allianceFriendly) nameIcon = [NSImage imageNamed: @"AllianceCrest"]; + if( !nameIcon && hordeFriendly) nameIcon = [NSImage imageNamed: @"HordeCrest"]; + if( !nameIcon && critter) nameIcon = [NSImage imageNamed: @"Chicken"]; + if( !nameIcon) nameIcon = [NSImage imageNamed: @"NeutralCrest"]; + + + [_objectDataList addObject: [NSDictionary dictionaryWithObjectsAndKeys: + mob, @"Mob", + name, @"Name", + [NSNumber numberWithInt: [mob entryID]], @"ID", + [NSNumber numberWithInt: health], @"Health", + [NSNumber numberWithUnsignedInt: level], @"Level", + [NSString stringWithFormat: @"0x%X", [mob baseAddress]], @"Address", + [NSNumber numberWithFloat: distance], @"Distance", + [mob isPet] ? @"Yes" : @"No", @"Pet", + // isHostile ? @"Yes" : @"No", @"Hostile", + // isCombat ? @"Yes" : @"No", @"Combat", + (isDead ? @"3" : (isCombat ? @"1" : (isNeutral ? @"4" : (isHostile ? @"2" : @"5")))), @"Status", + nameIcon, @"NameIcon", + nil]]; + + } + + // sort + [_objectDataList sortUsingDescriptors: [[objectsController mobTable] sortDescriptors]]; + + // reload table + [objectsController loadTabData]; +} + +- (WoWObject*)objectForRowIndex:(int)rowIndex{ + if ( rowIndex >= [_objectDataList count] ) return nil; + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Mob"]; +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource (called from objectsController, NOT from the UI) + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + + if ( rowIndex == -1 || rowIndex >= [_objectDataList count] ) return nil; + + if ( [[aTableColumn identifier] isEqualToString: @"Distance"] ) + return [NSString stringWithFormat: @"%.2f", [[[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Distance"] floatValue]]; + + if ( [[aTableColumn identifier] isEqualToString: @"Status"] ) { + NSString *status = [[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Status"]; + if([status isEqualToString: @"1"]) status = @"Combat"; + if([status isEqualToString: @"2"]) status = @"Hostile"; + if([status isEqualToString: @"3"]) status = @"Dead"; + if([status isEqualToString: @"4"]) status = @"Neutral"; + if([status isEqualToString: @"5"]) status = @"Friendly"; + return [NSImage imageNamed: status]; + } + + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex{ + + if ( aRowIndex == -1 || aRowIndex >= [_objectDataList count] ) return; + + if ( [[aTableColumn identifier] isEqualToString: @"Name"] ) { + [(ImageAndTextCell*)aCell setImage: [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"NameIcon"]]; + } + + if ( ![aCell respondsToSelector: @selector(setTextColor:)] ) + return; + + if ( cachedPlayerLevel == 0 || ![[NSUserDefaults standardUserDefaults] boolForKey: @"MobColorByLevel"] ) { + [aCell setTextColor: [NSColor blackColor]]; + return; + } + + Mob *mob = [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"Mob"]; + int mobLevel = [mob level]; + + if ( mobLevel >= cachedPlayerLevel+5 ){ + [aCell setTextColor: [NSColor redColor]]; + return; + } + + if ( mobLevel > cachedPlayerLevel+3 ){ + [aCell setTextColor: [NSColor orangeColor]]; + return; + } + + if ( mobLevel > cachedPlayerLevel-2 ){ + [aCell setTextColor: [NSColor colorWithCalibratedRed: 1.0 green: 200.0/255.0 blue: 30.0/255.0 alpha: 1.0]]; + return; + } + + if ( mobLevel > cachedPlayerLevel-8 ){ + [aCell setTextColor: [NSColor colorWithCalibratedRed: 30.0/255.0 green: 115.0/255.0 blue: 30.0/255.0 alpha: 1.0] ]; // [NSColor greenColor] + return; + } + + [aCell setTextColor: [NSColor darkGrayColor]]; +} + + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn{ + + if ( [[aTableColumn identifier] isEqualToString: @"Pet"] ){ + return NO; + } + if ( [[aTableColumn identifier] isEqualToString: @"Hostile"] ){ + return NO; + } + if ( [[aTableColumn identifier] isEqualToString: @"Combat"] ){ + return NO; + } + + return YES; +} + +- (void)tableDoubleClick: (id)sender{ + [memoryViewController showObjectMemory: [[_objectDataList objectAtIndex: [sender clickedRow]] objectForKey: @"Mob"]]; + [controller showMemoryView]; +} + +@end diff --git a/MobsKilledCondition.xib b/MobsKilledCondition.xib new file mode 100644 index 0000000..624fe0a --- /dev/null +++ b/MobsKilledCondition.xib @@ -0,0 +1,1225 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + MobsKilledConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{528, 10}, {39, 17}} + + YES + + 68288064 + 272630784 + times + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{474, 7}, {49, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + YES + YES + YES + + 5 + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{174, 6}, {97, 24}} + + YES + + -2080244224 + 0 + + + + YES + + 45 + Num + Spell ID Number + 1 + YES + 0 + + + 45 + Name + Spell Name + 3 + YES + 0 + + + 1 + + + + + 268 + {{382, 6}, {86, 24}} + + YES + + 67239424 + 0 + + + + YES + + 26 + > + 1 + YES + 0 + + + 26 + = + 2 + 0 + + + 26 + < + 3 + 0 + + + 1 + + + + + 268 + {{32, 10}, {139, 17}} + + YES + + 68288064 + 272630784 + Player has killed mob + + + + + + + + + 268 + {{277, 7}, {99, 22}} + + YES + + -1804468671 + -2009070592 + + + 7436 + + YES + 1 + + + + + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {584, 36} + + NSView + + + + + YES + + + view + + + + 62 + + + + validateState: + + + + 66 + + + + disableButton + + + + 88 + + + + disableCondition: + + + + 90 + + + + validateState: + + + + 108 + + + + typeSegment + + + + 113 + + + + killCountText + + + + 114 + + + + mobText + + + + 115 + + + + comparatorSegment + + + + 116 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + + 16 + + + YES + + + + + + 17 + + + YES + + + + + 83 + + + YES + + + + + + 86 + + + + + 92 + + + YES + + + + + + 93 + + + + + 100 + + + YES + + + + + + 101 + + + + + 103 + + + YES + + + + + + 104 + + + + + 105 + + + YES + + + + + + 106 + + + YES + + + + + + 107 + + + + + 109 + + + YES + + + + + + 110 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -2.showNotes + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 100.CustomClassName + 100.IBPluginDependency + 101.IBPluginDependency + 101.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 103.CustomClassName + 103.IBPluginDependency + 104.IBPluginDependency + 104.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 105.IBPluginDependency + 106.IBPluginDependency + 107.IBNumberFormatterBehaviorMetadataKey + 107.IBNumberFormatterLocalizesFormatMetadataKey + 107.IBPluginDependency + 109.IBPluginDependency + 110.IBPluginDependency + 16.IBPluginDependency + 17.IBPluginDependency + 83.IBAttributePlaceholdersKey + 83.IBPluginDependency + 86.IBPluginDependency + 92.IBPluginDependency + 93.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{718, 741}, {584, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{189, 314}, {582, 36}} + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 116 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + ConditionController + NSObject + + IBUserSource + + + + + MobsKilledConditionController + ConditionController + + YES + + YES + comparatorSegment + killCountText + mobText + typeSegment + + + YES + BetterSegmentedControl + NSTextField + NSTextField + BetterSegmentedControl + + + + IBProjectSource + MobsKilledConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/MobsKilledConditionController.h b/MobsKilledConditionController.h new file mode 100644 index 0000000..84a2bb0 --- /dev/null +++ b/MobsKilledConditionController.h @@ -0,0 +1,34 @@ +// +// MobsKilledConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/23/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface MobsKilledConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + + IBOutlet NSTextField *killCountText; + IBOutlet NSTextField *mobText; + + IBOutlet BetterSegmentedControl *typeSegment; + + /* + IBOutlet NSPopUpButton *unitPopUp; + IBOutlet NSPopUpButton *qualityPopUp; + IBOutlet NSPopUpButton *comparatorPopUp; + + IBOutlet NSTextField *stackText; + IBOutlet NSTextField *auraText; + + IBOutlet BetterSegmentedControl *typeSegment; + */ +} + +@end diff --git a/MobsKilledConditionController.m b/MobsKilledConditionController.m new file mode 100644 index 0000000..e99afa7 --- /dev/null +++ b/MobsKilledConditionController.m @@ -0,0 +1,72 @@ +// +// MobsKilledConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/23/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "MobsKilledConditionController.h" +#import "ConditionController.h" + +#import "BetterSegmentedControl.h" + +@implementation MobsKilledConditionController + + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"MobsKilledCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading MobsKilledCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + int mobKillCount = [killCountText intValue]; + + id value = nil; + if( [typeSegment selectedTag] == TypeValue ) + value = [NSNumber numberWithInt: [mobText intValue]]; + if( [typeSegment selectedTag] == TypeString ) + value = [mobText stringValue]; + + Condition *condition = [Condition conditionWithVariety: VarietyMobsKilled + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: mobKillCount + type: [typeSegment selectedTag] + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyMobsKilled) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [mobText setStringValue: [NSString stringWithFormat: @"%@", [condition value]]]; + [killCountText setStringValue: [NSString stringWithFormat: @"%d", [condition state]]]; + [typeSegment selectSegmentWithTag: [condition type]]; + + [self validateState: nil]; +} + + +@end diff --git a/MovementController.h b/MovementController.h new file mode 100644 index 0000000..18d37f7 --- /dev/null +++ b/MovementController.h @@ -0,0 +1,204 @@ +// +// MovementController.h +// Pocket Gnome +// +// Created by Josh on 2/16/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class BotController; +@class CombatController; +@class OffsetController; +@class PlayerDataController; +@class AuraController; +@class MacroController; +@class BlacklistController; +@class WaypointController; +@class MobController; +@class StatisticsController; +@class ProfileController; +@class BindingsController; +@class InventoryController; +@class ProfileController; + +@class Unit; +@class Route; +@class Waypoint; +@class RouteSet; +@class WoWObject; +@class Position; + +#define ReachedObjectNotification @"ReachedObjectNotification" +#define ReachedFollowUnitNotification @"ReachedFollowUnitNotification" + +// How close do we need to be to a node before we dismount? +#define DistanceUntilDismountByNode 2.0f + +// how close do we need to be to a school to fish? +#define NODE_DISTANCE_UNTIL_FISH 17.0f + +typedef enum MovementType { + MovementType_Mouse = 0, + MovementType_Keyboard = 1, + MovementType_CTM = 2, +} MovementType; + +@interface MovementController : NSObject { + + IBOutlet Controller *controller; + IBOutlet BotController *botController; + IBOutlet CombatController *combatController; + IBOutlet OffsetController *offsetController; + IBOutlet PlayerDataController *playerData; + IBOutlet AuraController *auraController; + IBOutlet MacroController *macroController; + IBOutlet BlacklistController *blacklistController; + IBOutlet WaypointController *waypointController; + IBOutlet MobController *mobController; + IBOutlet StatisticsController *statisticsController; + IBOutlet BindingsController *bindingsController; + IBOutlet InventoryController *itemController; + IBOutlet ProfileController *profileController; + + IBOutlet NSTextField *logOutStuckAttemptsTextField; + IBOutlet NSPopUpButton *movementTypePopUp; + + NSMutableDictionary *_stuckDictionary; + + NSString *_currentRouteKey; + RouteSet *_currentRouteSet; // current route set + Waypoint *_destinationWaypoint; + Route *_currentRoute; // current route we're running + Route *_currentRouteHoldForFollow; + + int _movementState; + + WoWObject *_moveToObject; // current object we're moving to + Position *_moveToPosition; + + BOOL _isMovingFromKeyboard; + + NSTimer *_movementTimer; // this just checks to see if we reached our position! + + // stuck checking + Position *_lastAttemptedPosition; + Position *_followNextPosition; + NSDate *_lastAttemptedPositionTime; + NSDate *_lastDirectionCorrection; + Position *_lastPlayerPosition; + int _positionCheck; + float _lastDistanceToDestination; + int _stuckCounter; + id _unstickifyTarget; + int _unstickifyTry; + + NSDate *_movementExpiration; + NSDate *_lastJumpTime; + + int _jumpCooldown; + int _jumpAttempt; + + BOOL _movingUp; + BOOL _afkPressForward; + BOOL _lastCorrectionForward; + BOOL _lastCorrectionLeft; + BOOL _performingActions; + BOOL _isFollowing; + BOOL _isActive; + + Waypoint *_destinationWaypointUI; +} + +@property (readwrite, retain) RouteSet *currentRouteSet; +@property (readwrite, assign) BOOL isFollowing; +@property (readwrite, assign) BOOL isActive; +@property (readonly, assign) BOOL performingActions; + +- (void)moveForwardStart; +- (void)moveForwardStop; + +- (void)moveBackwardStart; +- (void)moveBackwardStop; + +// move to an object (takes priority over a route) +- (BOOL)moveToObject: (WoWObject*)object; + +// move to a position (I'd prefer we don't do this often, but it is sometimes needed :() +- (void)moveToPosition: (Position*)position; + +// Start out follow +- (void)startFollow; + +// the object we're moving to +- (WoWObject*)moveToObject; +- (Position*)moveToPosition; + +// reset the move to object and returns true on success +- (BOOL)resetMoveToObject; + +// begin patrolling with this routeset +- (void)setPatrolRouteSet: (RouteSet*)route; + +// stop all movement +- (void)stopMovement; + +// resume movement if we stopped +- (void)resumeMovement; +- (void)resumeMovementToClosestWaypoint; + +// what type of movement are we operating in? +- (int)movementType; + +// turn toward the object +- (void)turnTowardObject:(WoWObject*)obj; + +// check unit for range adjustments +- (BOOL)checkUnitOutOfRange: (Unit*)target; + +// dismount the player +- (BOOL)dismount; + +// is the player currently moving? +- (BOOL)isMoving; + +// jump +- (void)jump; +- (void)jumpRaw; +- (BOOL)jumpTowardsPosition: (Position*)position; +- (BOOL)jumpForward; +- (BOOL)jumpBack; +- (void)raiseUpAfterAirMount; + +// are we currently patrolling? +- (BOOL)isPatrolling; + +// reset our movement state +- (void)resetMovementState; + +// remove routes +- (void)resetRoutes; + +// just presses forward or backward +- (void)antiAFK; + +// establish the player's position +- (void)establishPlayerPosition; +- (void)correctDirectionByTurning; + +// for now +- (float)averageSpeed; +- (float)averageDistance; +- (BOOL)shouldJump; + +// move to waypoint +- (void)moveToWaypoint: (Waypoint*)waypoint; + +// UI +- (void)moveToWaypointFromUI:(Waypoint*)wp; + +- (void)moveUpStart; +- (void)moveUpStop; +@end diff --git a/MovementController.m b/MovementController.m new file mode 100644 index 0000000..f7cffac --- /dev/null +++ b/MovementController.m @@ -0,0 +1,3084 @@ +// +// MovementController2.m +// Pocket Gnome +// +// Created by Josh on 2/16/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "MovementController.h" + +#import "Player.h" +#import "Node.h" +#import "Unit.h" +#import "Route.h" +#import "RouteSet.h" +#import "RouteCollection.h" +#import "Mob.h" +#import "CombatProfile.h" + +#import "Controller.h" +#import "BotController.h" +#import "CombatController.h" +#import "OffsetController.h" +#import "PlayerDataController.h" +#import "AuraController.h" +#import "MacroController.h" +#import "BlacklistController.h" +#import "WaypointController.h" +#import "MobController.h" +#import "StatisticsController.h" +#import "ProfileController.h" +#import "BindingsController.h" +#import "InventoryController.h" +#import "Profile.h" +#import "ProfileController.h" +#import "MailActionProfile.h" + +#import "Action.h" +#import "Rule.h" + +#import "Offsets.h" + +#import +#import + +@interface MovementController () +@property (readwrite, retain) WoWObject *moveToObject; +@property (readwrite, retain) Position *moveToPosition; +@property (readwrite, retain) Waypoint *destinationWaypoint; +@property (readwrite, retain) NSString *currentRouteKey; +@property (readwrite, retain) Route *currentRoute; +@property (readwrite, retain) Route *currentRouteHoldForFollow; + +@property (readwrite, retain) Position *lastAttemptedPosition; +@property (readwrite, retain) NSDate *lastAttemptedPositionTime; +@property (readwrite, retain) Position *lastPlayerPosition; + +@property (readwrite, retain) NSDate *movementExpiration; +@property (readwrite, retain) NSDate *lastJumpTime; + +@property (readwrite, retain) id unstickifyTarget; + +@property (readwrite, retain) NSDate *lastDirectionCorrection; + +@property (readwrite, assign) int jumpCooldown; + +@end + +@interface MovementController (Internal) + +- (void)setClickToMove:(Position*)position andType:(UInt32)type andGUID:(UInt64)guid; + +- (void)moveToWaypoint: (Waypoint*)waypoint; +- (void)checkCurrentPosition: (NSTimer*)timer; + +- (void)turnLeft: (BOOL)go; +- (void)turnRight: (BOOL)go; +- (void)moveForwardStart; +- (void)moveForwardStop; +- (void)moveUpStop; +- (void)moveUpStart; +- (void)backEstablishPosition; +- (void)establishPosition; + +- (void)correctDirection: (BOOL)stopStartMovement; +- (void)turnToward: (Position*)position; + +- (void)routeEnded; +- (void)performActions:(NSDictionary*)dict; + +- (void)realMoveToNextWaypoint; + +- (void)resetMovementTimer; + +- (BOOL)isCTMActive; + +- (void)turnTowardPosition: (Position*)position; + +- (void)unStickify; + +@end + +@implementation MovementController + +typedef enum MovementState{ + MovementState_MovingToObject = 0, + MovementState_Patrolling = 1, + MovementState_Stuck = 1, +}MovementState; + ++ (void)initialize { + + /*NSDictionary *defaultValues = [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithBool: YES], @"MovementShouldJump", + [NSNumber numberWithInt: 2], @"MovementMinJumpTime", + [NSNumber numberWithInt: 6], @"MovementMaxJumpTime", + nil]; + + [[NSUserDefaults standardUserDefaults] registerDefaults: defaultValues]; + [[NSUserDefaultsController sharedUserDefaultsController] setInitialValues: defaultValues];*/ +} + +- (id) init{ + self = [super init]; + if ( self != nil ) { + + _stuckDictionary = [[NSMutableDictionary dictionary] retain]; + + _currentRouteSet = nil; + _currentRouteKey = nil; + + _moveToObject = nil; + _moveToPosition = nil; + _lastAttemptedPosition = nil; + _destinationWaypoint = nil; + _lastAttemptedPositionTime = nil; + _lastPlayerPosition = nil; +// _movementTimer = nil; + + _movementState = -1; + + _jumpAttempt = 0; + + _isMovingFromKeyboard = NO; + _positionCheck = 0; + _lastDistanceToDestination = 0.0f; + _stuckCounter = 0; + _unstickifyTry = 0; + _unstickifyTarget = nil; + _jumpCooldown = 3; + + self.lastJumpTime = [NSDate distantPast]; + self.lastDirectionCorrection = [NSDate distantPast]; + + _movingUp = NO; + _afkPressForward = NO; + _lastCorrectionForward = NO; + _lastCorrectionLeft = NO; + _performingActions = NO; + _isActive = NO; + self.isFollowing = NO; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerHasDied:) name: PlayerHasDiedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(playerHasRevived:) name: PlayerHasRevivedNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(applicationWillTerminate:) name: NSApplicationWillTerminateNotification object: nil]; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(targetNotInLOS:) name: ErrorTargetNotInLOS object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(invalidTarget:) name: ErrorInvalidTarget object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(haveNoTarget:) name: ErrorHaveNoTarget object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(cantDoThatWhileStunned:) name: ErrorCantDoThatWhileStunned object: nil]; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachedFollowUnit:) name: ReachedFollowUnitNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(reachedObject:) name: ReachedObjectNotification object: nil]; + + } + return self; +} + +- (void) dealloc{ + [_stuckDictionary release]; + [_moveToObject release]; + [super dealloc]; +} + +- (void)awakeFromNib { + //self.shouldJump = [[[NSUserDefaults standardUserDefaults] objectForKey: @"MovementShouldJump"] boolValue]; +} + +@synthesize currentRouteSet = _currentRouteSet; +@synthesize currentRouteKey = _currentRouteKey; +@synthesize currentRoute = _currentRoute; +@synthesize currentRouteHoldForFollow = _currentRouteHoldForFollow; +@synthesize moveToObject = _moveToObject; +@synthesize moveToPosition = _moveToPosition; +@synthesize destinationWaypoint = _destinationWaypoint; +@synthesize lastAttemptedPosition = _lastAttemptedPosition; +@synthesize lastAttemptedPositionTime = _lastAttemptedPositionTime; +@synthesize lastPlayerPosition = _lastPlayerPosition; +@synthesize unstickifyTarget = _unstickifyTarget; +@synthesize lastDirectionCorrection = _lastDirectionCorrection; +@synthesize movementExpiration = _movementExpiration; +@synthesize jumpCooldown = _jumpCooldown; +@synthesize lastJumpTime = _lastJumpTime; +@synthesize performingActions = _performingActions; +@synthesize isFollowing = _isFollowing; +@synthesize isActive = _isActive; + +// checks to see if the player is moving - duh! +- (BOOL)isMoving{ + + UInt32 movementFlags = [playerData movementFlags]; + + // moving forward or backward + if ( movementFlags & MovementFlag_Forward || movementFlags & MovementFlag_Backward ){ + log(LOG_MOVEMENT, @"isMoving: Moving forward/backward"); + return YES; + } + + // moving up or down + else if ( movementFlags & MovementFlag_FlyUp || movementFlags & MovementFlag_FlyDown ){ + log(LOG_DEV, @"isMoving: Moving up/down"); + return YES; + } + + // CTM active + else if ( ( [self movementType] == MovementType_CTM || + ( [self movementType] == MovementType_Keyboard && ( [[playerData player] isFlyingMounted] || [[playerData player] isSwimming] ) ) ) && + [self isCTMActive] ) { + log(LOG_DEV, @"isMoving: CTM Active"); + return YES; + } + + else if ( [playerData speed] > 0 ){ + log(LOG_DEV, @"isMoving: Speed > 0"); + return YES; + } + + log(LOG_DEV, @"isMoving: Not moving!"); + + return NO; +} + +- (BOOL)moveToObject: (WoWObject*)object{ + + if ( !botController.isBotting ) { + [self resetMovementState]; + return NO; + } + + if ( !object || ![object isValid] ) { + [_moveToObject release]; + _moveToObject = nil; + return NO; + } + + // reset our timer + [self resetMovementTimer]; + + // save and move! + self.moveToObject = object; + + // If this is a Node then let's change the position to one just above it and overshooting it a tad + if ( [(Unit*)object isKindOfClass: [Node class]] && [[playerData player] isFlyingMounted] ) { + float distance = [[playerData position] distanceToPosition: [object position]]; + float horizontalDistance = [[playerData position] distanceToPosition2D: [object position]]; + if ( distance > 10.0f && horizontalDistance > 5.0f ) { + + log(LOG_MOVEMENT, @"Over shooting the node for a nice drop in!"); + + float newX = 0.0; + float newY = 0.0; + float newZ = 0.0; + + // We over shoot to adjust to give us a lil stop ahead distance + Position *playerPosition = [[playerData player] position]; + Position *nodePosition = [_moveToObject position]; + + // If we are higher than it is we aim to over shoot a tad n land right on top + if ( [playerPosition zPosition] > ( [[_moveToObject position] zPosition]+5.0f ) ) { + log(LOG_NODE, @"Above node so we're overshooting to drop in."); + // If it's north of me + if ( [nodePosition xPosition] > [playerPosition xPosition]) newX = [nodePosition xPosition]+0.5f; + else newX = [[_moveToObject position] xPosition]-0.5f; + + // If it's west of me + if ( [nodePosition yPosition] > [playerPosition yPosition]) newY = [nodePosition yPosition]+0.5f; + else newY = [nodePosition yPosition]-0.5f; + + // Just Above it for a sweet drop in + newZ = [nodePosition zPosition]+2.5f; + + } else { + log(LOG_NODE, @"Under node so we'll try for a higher waypoint first."); + + // Since we're under our node we're gonna shoot way above it and to our near side of it so we go up then back down when the momement timers catches it + // If it's north of me + if ( [nodePosition xPosition] > [playerPosition xPosition]) newX = [nodePosition xPosition]-5.0f; + else newX = [nodePosition xPosition]+5.0f; + + // If it's west of me + if ( [nodePosition yPosition] > [playerPosition yPosition]) newY = [nodePosition yPosition]-5.0f; + else newY = [[self.moveToObject position] yPosition]+5.0f; + + // Since we've comming from under let's aim higher + newZ = [nodePosition zPosition]+20.0f; + + } + + self.moveToPosition = [[Position alloc] initWithX:newX Y:newY Z:newZ]; + + } else { + self.moveToPosition =[object position]; + } + } else { + + self.moveToPosition =[object position]; + } + + [self moveToPosition: self.moveToPosition]; + + if ( [object isKindOfClass:[Mob class]] || [object isKindOfClass:[Player class]] ) + [self performSelector:@selector(stayWithObject:) withObject: _moveToObject afterDelay:0.1f]; + + return YES; +} + +// in case the object moves +- (void)stayWithObject:(WoWObject*)obj{ + + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + if ( !botController.isBotting ) { + [self resetMovementState]; + return; + } + + // to ensure we don't do this when we shouldn't! + if ( ![obj isValid] || obj != self.moveToObject ){ + return; + } + + float distance = [self.lastAttemptedPosition distanceToPosition:[obj position]]; + + if ( distance > 2.5f ){ + log(LOG_MOVEMENT, @"%@ moved away, re-positioning %0.2f", obj, distance); + [self moveToObject:obj]; + return; + } + + [self performSelector:@selector(stayWithObject:) withObject:self.moveToObject afterDelay:0.1f]; +} + +- (WoWObject*)moveToObject{ + return [[_moveToObject retain] autorelease]; +} + +- (BOOL)resetMoveToObject { + if ( _moveToObject ) return NO; + self.moveToObject = nil; + return YES; +} + +// set our patrolling routeset +- (void)setPatrolRouteSet: (RouteSet*)routeSet{ + log(LOG_MOVEMENT, @"Switching from route %@ to %@", _currentRouteSet, routeSet); + + self.currentRouteSet = routeSet; + + if ( botController.pvpIsInBG ) { + self.currentRouteKey = PrimaryRoute; + self.currentRoute = [self.currentRouteSet routeForKey:PrimaryRoute]; + } else + + if ( [playerData isGhost] || [playerData isDead] ) { + // player is dead + self.currentRouteKey = CorpseRunRoute; + self.currentRoute = [self.currentRouteSet routeForKey:CorpseRunRoute]; + } else { + // normal route + self.currentRouteKey = PrimaryRoute; + self.currentRoute = [self.currentRouteSet routeForKey:PrimaryRoute]; + } + + // reset destination waypoint to make sure we re-evaluate where to go + self.destinationWaypoint = nil; + + // set our jump time + self.lastJumpTime = [NSDate date]; +} + +- (void)stopMovement { + + log(LOG_MOVEMENT, @"Stop Movement."); + + [self resetMovementTimer]; + + // check to make sure we are even moving! + UInt32 movementFlags = [playerData movementFlags]; + + // player is moving + if ( movementFlags & MovementFlag_Forward || movementFlags & MovementFlag_Backward ) { + log(LOG_MOVEMENT, @"Player is moving, stopping movement"); + [self moveForwardStop]; + } else + + if ( movementFlags & MovementFlag_FlyUp || movementFlags & MovementFlag_FlyDown ) { + log(LOG_MOVEMENT, @"Player is flying, stopping movment"); + [self moveUpStop]; + } else { + log(LOG_MOVEMENT, @"Player is not moving! No reason to stop!? Flags: 0x%X", movementFlags); + } +} + +- (void)resumeMovement{ + + if ( !botController.isBotting ) { + [self resetMovementState]; + return; + } + + // reset our timer + [self resetMovementTimer]; + + // we're moving! + if ( [self isMoving] ) { + + log(LOG_MOVEMENT, @"We're already moving! Stopping before resume."); + + [self stopMovement]; + + usleep( 100000 ); + } + + if ( _moveToObject ) { + log(LOG_MOVEMENT, @"Moving to object in resumeMovement."); + _movementState = MovementState_MovingToObject; + [self moveToPosition:[self.moveToObject position]]; + return; + } + + // Refresh the route if we're in follow + if (self.isFollowing) self.currentRoute = botController.followRoute; + + // Previous waypoint to move to + if ( self.destinationWaypoint ) { + NSArray *waypoints = [self.currentRoute waypoints]; + int index = [waypoints indexOfObject: _destinationWaypoint]; + log(LOG_WAYPOINT, @"Moving to %@ with index %d", _destinationWaypoint, index); + [self moveToPosition:[self.destinationWaypoint position]]; + return; + } + + if ( !self.currentRouteSet ) { + log(LOG_ERROR, @"We have no route or unit to move to in resumeMovement!"); + [self resetMovementState]; + [botController evaluateSituation]; + return; + } + + _movementState = MovementState_Patrolling; + + // find the closest waypoint + + log(LOG_MOVEMENT, @"Finding the closest waypoint"); + + Position *playerPosition = [playerData position]; + Waypoint *newWP = nil; + + // if the player is dead, find the closest WP based on both routes + if ( [playerData isDead] && !self.isFollowing ){ + + // we switched to a corpse route on death + if ( [[self.currentRoute waypoints] count] == 0 ){ + log(LOG_GHOST, @"Unable to resume, we're dead and there is no corpse route!"); + return; + } + + Waypoint *closestWaypointCorpseRoute = [[self.currentRouteSet routeForKey:CorpseRunRoute] waypointClosestToPosition:playerPosition]; + Waypoint *closestWaypointPrimaryRoute = [[self.currentRouteSet routeForKey:PrimaryRoute] waypointClosestToPosition:playerPosition]; + + float corpseDistance = [playerPosition distanceToPosition:[closestWaypointCorpseRoute position]]; + float primaryDistance = [playerPosition distanceToPosition:[closestWaypointPrimaryRoute position]]; + + // use corpse route + if ( corpseDistance < primaryDistance ){ + self.currentRouteKey = CorpseRunRoute; + self.currentRoute = [self.currentRouteSet routeForKey:CorpseRunRoute]; + newWP = closestWaypointCorpseRoute; + } + // use primary route + else { + self.currentRouteKey = PrimaryRoute; + self.currentRoute = [self.currentRouteSet routeForKey:PrimaryRoute]; + newWP = closestWaypointPrimaryRoute; + } + } else { + // find the closest waypoint in our primary route! + newWP = [self.currentRoute waypointClosestToPosition:playerPosition]; + } +/* + // Check to see if we're ion BG and this is the last waypoint + if ( botController.pvpIsInBG && !self.isFollowing ) { + NSArray *waypoints = [self.currentRoute waypoints]; + int index = [waypoints indexOfObject: newWP]; + + // at the end of the route + if ( index == [waypoints count] - 1 ) { + log(LOG_WAYPOINT, @"Last waypoint on a PvP route so we're not resuming to it!"); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + return; + } + } +*/ + // we have a waypoint to move to! + if ( newWP ) { + NSArray *waypoints = [self.currentRoute waypoints]; + int index = [waypoints indexOfObject: newWP]; + log(LOG_WAYPOINT, @"Resuming to %@ with index %d", newWP, index); +// log(LOG_MOVEMENT, @"Found waypoint %@ to move to", newWP); + +// [self turnTowardPosition: [newWP position]]; +// usleep(10000); + + [self moveToWaypoint:newWP]; + } else { + log(LOG_ERROR, @"Unable to find a position to resume movement to in resumeMovement!"); + [self resetMovementState]; + [botController evaluateSituation]; + return; + } +} + +- (void)resumeMovementToClosestWaypoint { + + if ( !botController.isBotting ) { + [self resetMovementState]; + return; + } + + log(LOG_MOVEMENT, @"resumeMovementToClosestWaypoint:"); + + // reset our timer + [self resetMovementTimer]; + +/* + // we're moving! + if ( [self isMoving] ) { + + log(LOG_MOVEMENT, @"We're already moving! Stopping before resume."); + + [self stopMovement]; + +// usleep( [controller refreshDelay] ); + } +*/ + + if ( !_currentRouteSet ) { + log(LOG_ERROR, @"We have no route or unit to move to!"); + [self resetMovementState]; + [botController evaluateSituation]; + return; + } + + _movementState = MovementState_Patrolling; + + log(LOG_MOVEMENT, @"Finding the closest waypoint"); + + Position *playerPosition = [playerData position]; + Waypoint *newWaypoint; + + NSArray *waypoints = [self.currentRoute waypoints]; + + // find the closest waypoint in our primary route! + newWaypoint = [self.currentRoute waypointClosestToPosition: playerPosition]; + int newWaypointIndex = [waypoints indexOfObject: newWaypoint]; + + log(LOG_DEV, @"Initial closest waypoint is %@ (%d)", newWaypoint, newWaypointIndex); + RouteCollection *theRouteCollection; + + float distanceToWaypoint = [playerPosition distanceToPosition: [newWaypoint position]]; + + if ( botController.pvpIsInBG ) + theRouteCollection = botController.theRouteCollectionPvP; + else theRouteCollection = botController.theRouteCollection; + + if ( distanceToWaypoint > 80.0f && theRouteCollection.routes.count > 1) { + log(LOG_WAYPOINT, @"Looks like the next waypoint is very far, checking to see if we have a closer route."); + + float closestDistance = 0.0f; + Waypoint *thisWaypoint = nil; + Route *route = nil; + RouteSet *routeSetFound = [RouteSet retain]; + + for (RouteSet *routeSet in [theRouteCollection routes] ) { + + // Set the route to test against + if ( [playerData isGhost] || [playerData isDead] ) route = [routeSet routeForKey:CorpseRunRoute]; + else route = [routeSet routeForKey:PrimaryRoute]; + + if ( !route || route == nil) continue; + + if ( closestDistance == 0.0f ) { + thisWaypoint = [route waypointClosestToPosition:playerPosition]; + closestDistance = [playerPosition distanceToPosition: [thisWaypoint position]]; + routeSetFound = routeSet; + continue; + } + + // We have one to compare + thisWaypoint = [route waypointClosestToPosition:playerPosition]; + distanceToWaypoint = [playerPosition distanceToPosition: [thisWaypoint position]]; + if (distanceToWaypoint < closestDistance) { + closestDistance = distanceToWaypoint; + routeSetFound = routeSet; + } + } + + if ( routeSetFound && [routeSetFound UUID] != [self.currentRouteSet UUID]) { + log(LOG_WAYPOINT, @"Found a closer route, switching!"); + [self setPatrolRouteSet: routeSetFound]; + routeSetFound = nil; + [routeSetFound release]; + [self performSelector: _cmd withObject: nil afterDelay:0.3f]; + return; + } + } + + float tooClose = ( [playerData speedMax] / 2.0f); + if ( tooClose < 4.0f ) tooClose = 4.0f; + + log(LOG_WAYPOINT, @"Checking to see if waypoint distance (%0.2f) is too close (%0.2f)", distanceToWaypoint, tooClose); + // If the waypoint is too close, grab the next + if ( newWaypointIndex != [waypoints count] - 1 && ![newWaypoint actions] && distanceToWaypoint < tooClose ) { + newWaypointIndex++; + newWaypoint = [waypoints objectAtIndex: newWaypointIndex]; + log(LOG_WAYPOINT, @"Waypoint distance is too close. shifting to the next waypoint in the array."); + } + + // If we already have a waypoint we check it + if ( self.destinationWaypoint ) { + + int indexNext = [waypoints indexOfObject:self.destinationWaypoint]; + int indexClosest = [waypoints indexOfObject: newWaypoint]; + + // If the closest waypoint is further back than the current one then don't use it. + if ( indexClosest < indexNext) { + newWaypoint = self.destinationWaypoint; + } else + + // Don't skip more than... + if ( (indexClosest-indexNext) > 10 ) { + newWaypoint = self.destinationWaypoint; + } else { + + Waypoint *thisWaypoint; + NSArray *actions; + int i; + + for ( i=indexNext; i 100.0f && + distanceToWaypoint > ( verticalDistanceToWaypoint/2.0f ) && + verticalDistanceToWaypoint < horizontalDistanceToWaypoint && + verticalDistanceToWaypoint > 30.0f + ) { + + log(LOG_WAYPOINT, @"Waypoint is far off so we won't descend until we're closer. hDist: %0.2f, vDist: %0.2f", horizontalDistanceToWaypoint, verticalDistanceToWaypoint); + + Position *positionToDescend = [playerPosition positionAtDistance:verticalDistanceToWaypoint withDestination:positionAboveWaypoint]; + log(LOG_DEV, @"playerPosition: %@, positionAboveWaypoint: %@, positionToDescend: %@", playerPosition, positionAboveWaypoint, positionToDescend); + + [self moveToPosition: positionToDescend]; + return; + } + } + + // we have a waypoint to move to! + if ( newWaypoint ) { + + log(LOG_MOVEMENT, @"Found waypoint %@ to move to", newWaypoint); + [self moveToWaypoint:newWaypoint]; + + } else { + log(LOG_ERROR, @"Unable to find a position to resume movement to!"); + [self resetMovementState]; + [botController evaluateSituation]; + return; + } +} + +- (int)movementType { + return [movementTypePopUp selectedTag]; +} + +#pragma mark Waypoints +- (void)moveToWaypoint: (Waypoint*)waypoint { + + if ( !botController.isBotting ) { + [self resetMovementState]; + return; + } + + // reset our timer + [self resetMovementTimer]; + + int index = [[_currentRoute waypoints] indexOfObject: waypoint]; + [waypointController selectCurrentWaypoint:index]; + + log(LOG_WAYPOINT, @"Moving to a waypoint: %@", waypoint); + + self.destinationWaypoint = waypoint; + + [self moveToPosition:[waypoint position]]; +} + +- (void)moveToWaypointFromUI:(Waypoint*)wp { + _destinationWaypointUI = [wp retain]; + [self moveToPosition:[wp position]]; +} + +- (void)startFollow { + + log(LOG_WAYPOINT, @"Starting movement controller for follow"); + + // reset our timer + [self resetMovementTimer]; + +/* + if ( [playerData targetID] != [[botController followUnit] GUID]) { + log(LOG_DEV, @"Targeting follow unit."); + [playerData targetGuid:[[botController followUnit] GUID]]; + } +*/ + + // Check to see if we need to mount or dismount + if ( [botController followMountCheck] ) { + // Just kill the follow and mounts will be checked before follow begins again + [self resetMovementState]; + [botController performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.1f]; + return; + } + + self.isFollowing = YES; + self.currentRouteHoldForFollow = self.currentRoute; + self.currentRoute = botController.followRoute; + + // find the closest waypoint in our route + self.destinationWaypoint = [self.currentRoute waypointClosestToPosition: [playerData position]]; + + log(LOG_WAYPOINT, @"Starting movement controller for follow with waypoint: %@", self.destinationWaypoint); + + [self resumeMovement]; +} + +- (void)moveToNextWaypoint{ + + if ( !botController.isBotting ) { + [self resetMovementState]; + return; + } + + // reset our timer + [self resetMovementTimer]; + + if ( self.isFollowing ) { + + // Check to see if we need to mount or dismount + if ( [botController followMountCheck] ) { + // Just kill the follow and mounts will be checked before follow begins again + [botController performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + [self resetMovementState]; + return; + } + + // Refresh our follow route + self.currentRoute = botController.followRoute; + [self realMoveToNextWaypoint]; + + // Return here since we're skipping waypoint actions in follow mode + return; + } + + // do we have an action for the destination we just reached? + NSArray *actions = [self.destinationWaypoint actions]; + if ( actions && [actions count] > 0 ) { + + log(LOG_WAYPOINT, @"Actions to take? %d", [actions count]); + + // check if conditions are met + Rule *rule = [self.destinationWaypoint rule]; + + if ( rule == nil || [botController evaluateRule: rule withTarget: TargetNone asTest: NO] ) { + + log(LOG_WAYPOINT, @"Performing %d actions", [actions count] ); + + // time to perform actions! + NSDictionary *dict = [NSDictionary dictionaryWithObjectsAndKeys: + actions, @"Actions", + [NSNumber numberWithInt:0], @"CurrentAction", + nil]; + + [self performActions:dict]; + + return; + } + } + + [self realMoveToNextWaypoint]; +} + +- (void)realMoveToNextWaypoint { + + if ( !botController.isBotting && !_destinationWaypointUI ) { + [self resetMovementState]; + return; + } + + log(LOG_WAYPOINT, @"Moving to the next waypoint!"); + + // reset our timer + [self resetMovementTimer]; + + NSArray *waypoints = [self.currentRoute waypoints]; + int index = [waypoints indexOfObject:self.destinationWaypoint]; + + // we have an index! yay! + if ( index != NSNotFound ){ + + // at the end of the route + if ( index == [waypoints count] - 1 ){ + log(LOG_WAYPOINT, @"We've reached the end of the route!"); + + // TO DO: keep a dictionary w/the route collection (or set) to remember how many times we've run a route + + [self routeEnded]; + return; + } + + // increment something here to keep track of how many waypoints we've moved to? + else if ( index < [waypoints count] - 1 ) { + index++; + } + + // move to the next WP + Waypoint *newWaypoint = [waypoints objectAtIndex:index]; + + // If we're in follow mode lets make sure the waypoint isn't right on top of the follow unit + if ( self.isFollowing && botController.followUnit && [botController.followUnit isValid] ) { + + float distanceLeaderToWaypoint = [[botController.followUnit position] distanceToPosition: [newWaypoint position]]; + if (distanceLeaderToWaypoint < 4.0f) { + log(LOG_WAYPOINT, @"We've reached the end of the follow route (next waypoint is right on top of leader)!"); + [self routeEnded]; + return; + } + } + + log(LOG_WAYPOINT, @"Moving to next %@ with index %d", newWaypoint, index); + [self moveToWaypoint:newWaypoint]; + } else { + if (self.isFollowing) { + [self routeEnded]; + return; + } else { + log(LOG_ERROR, @"There are no waypoints for the current route!"); + } + } +} + +- (void)routeEnded{ + + // reset our timer + [self resetMovementTimer]; + + // Pop the notification if we're following + if ( self.isFollowing ) { + log(LOG_WAYPOINT, @"Ending follow with notification."); + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedFollowUnitNotification object: nil]; + return; + } + + // player is currently on the primary route and is dead, if they've finished, then we ran the entire route and didn't find our body :( + if ( self.currentRouteKey == PrimaryRoute && [playerData isGhost] ) { + [botController stopBot:nil]; + [controller setCurrentStatus:@"Bot: Unable to find body, stopping bot"]; + log(LOG_GHOST, @"Unable to find your body after running the full route, stopping bot"); + return; + } + + // In PvP we stay where we went unless the waypoint tells us to switch routes. + if ( botController.pvpIsInBG ) { + log(LOG_DEV, @"End of PvP Route, stoping movement."); + [self resetMovementState]; + [botController evaluateSituation]; + return; + } + + // we've reached the end of our corpse route, lets switch to our main route + if ( self.currentRouteKey == CorpseRunRoute ) { + + log(LOG_GHOST, @"Switching from corpse to primary route!"); + + self.currentRouteKey = PrimaryRoute; + self.currentRoute = [self.currentRouteSet routeForKey:PrimaryRoute]; + + // find the closest WP + self.destinationWaypoint = [self.currentRoute waypointClosestToPosition:[playerData position]]; + } + + // Use the first waypoint + else{ + self.destinationWaypoint = [[self.currentRoute waypoints] objectAtIndex:0]; + } + + [self resumeMovement]; +} + +#pragma mark Actual Movement Shit - Scary + +- (void)moveToPosition: (Position*)position { + + if ( !botController.isBotting && !_destinationWaypointUI ) { + [self resetMovementState]; + return; + } + + // reset our timer (that checks if we're at the position) + [self resetMovementTimer]; + + [botController jumpIfAirMountOnGround]; + + Position *playerPosition = [playerData position]; + float distance = [playerPosition distanceToPosition: position]; + + log(LOG_MOVEMENT, @"moveToPosition called (distance: %f).", distance) + + // sanity check + if ( !position || distance == INFINITY ) { + log(LOG_MOVEMENT, @"Invalid waypoint (distance: %f). Ending patrol.", distance); + botController.evaluationInProgress=nil; + [botController evaluateSituation]; + return; + } + + float tooClose = ( [playerData speedMax] / 2.0f); + if ( tooClose < 3.0f ) tooClose = 3.0f; + + // no object, no actions, just trying to move to the next WP! + if ( _destinationWaypoint && !self.isFollowing && ( ![_destinationWaypoint actions] || [[_destinationWaypoint actions] count] == 0 ) && distance < tooClose ) { + log(LOG_WAYPOINT, @"Waypoint is too close %0.2f < %0.2f. Moving to the next one.", distance, tooClose); + [self moveToNextWaypoint]; + return; + } + + // we're moving to a new position! + if ( ![_lastAttemptedPosition isEqual:position] ) + log(LOG_MOVEMENT, @"Moving to a new position! From %@ to %@ Timer will expire in %0.2f", _lastPlayerPosition, position, (distance/[playerData speedMax]) + 4.0); + + // only reset the stuck counter if we're going to a new position + if ( ![position isEqual:self.lastAttemptedPosition] ) { + log(LOG_DEV, @"Resetting stuck counter"); + _stuckCounter = 0; + } + + self.lastAttemptedPosition = position; + self.lastAttemptedPositionTime = [NSDate date]; + self.lastPlayerPosition = playerPosition; + _positionCheck = 0; + _lastDistanceToDestination = 0.0f; + + _isActive = YES; + + self.movementExpiration = [NSDate dateWithTimeIntervalSinceNow: (distance/[playerData speedMax]) + 4.0f]; + + // Actually move! + if ( [self movementType] == MovementType_Keyboard && [[playerData player] isFlyingMounted] ) { + log(LOG_MOVEMENT, @"Forcing CTM since we're flying!"); + // Force CTM for party follow. + [self setClickToMove:position andType:ctmWalkTo andGUID:0]; + } + + else if ( [self movementType] == MovementType_Keyboard && [[playerData player] isSwimming] ) { + log(LOG_MOVEMENT, @"Forcing CTM since we're swimming!"); + // Force CTM for party follow. + [self setClickToMove:position andType:ctmWalkTo andGUID:0]; + } + + else if ( [self movementType] == MovementType_Keyboard ) { + log(LOG_MOVEMENT, @"moveToPosition: with Keyboard"); + UInt32 movementFlags = [playerData movementFlags]; + + // If we don't have the bit for forward motion let's stop + if ( !(movementFlags & MovementFlag_Forward) ) [self moveForwardStop]; + [self correctDirection: YES]; + if ( !(movementFlags & MovementFlag_Forward) ) [self moveForwardStart]; + } + + else if ( [self movementType] == MovementType_Mouse ) { + log(LOG_MOVEMENT, @"moveToPosition: with Mouse"); + + [self moveForwardStop]; + [self correctDirection: YES]; + [self moveForwardStart]; + } + + else if ( [self movementType] == MovementType_CTM ) { + log(LOG_MOVEMENT, @"moveToPosition: with CTM"); + [self setClickToMove:position andType:ctmWalkTo andGUID:0]; + } + + _movementTimer = [NSTimer scheduledTimerWithTimeInterval: 0.25f target: self selector: @selector(checkCurrentPosition:) userInfo: nil repeats: YES]; +} + +- (void)checkCurrentPosition: (NSTimer*)timer { + + // stopped botting? end! + if ( !botController.isBotting && !_destinationWaypointUI ) { + log(LOG_MOVEMENT, @"We're not botting, stop the timer!"); + [self resetMovementState]; + return; + } + + _positionCheck++; + + if (_stuckCounter > 0) { + log(LOG_MOVEMENT, @"[%d] Check current position. Stuck counter: %d", _positionCheck, _stuckCounter); + } else { + log(LOG_MOVEMENT, @"[%d] Check current position.", _positionCheck); + } + + Player *player=[playerData player]; + + // If we're in the air, but not air mounted we don't try to correct movement unless we are CTM + if ( [self movementType] != MovementType_CTM && ![player isOnGround] && ![playerData isAirMounted] && ![player isSwimming] ) { + log(LOG_MOVEMENT, @"Skipping position check since we're in the air and not air mounted."); + return; + } + + Position *playerPosition = [player position]; + float playerSpeed = [playerData speed]; + Position *destPosition; + float distanceToDestination; + float stopingDistance; + + /* + * Being called from the UI + */ + + if ( _destinationWaypointUI ) { + destPosition = [_destinationWaypoint position]; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + // sanity check, incase something happens + if ( distanceToDestination == INFINITY ) { + log(LOG_MOVEMENT, @"Player distance == infinity. Stopping."); + [_destinationWaypointUI release]; + _destinationWaypointUI = nil; + // stop movement + [self resetMovementState]; + return; + } + + // 4 yards considering before/after + stopingDistance = 2.0f; + + // we've reached our position! + if ( distanceToDestination <= stopingDistance ) { + log(LOG_MOVEMENT, @"Reached our destination while moving from UI."); + [_destinationWaypointUI release]; + _destinationWaypointUI = nil; + // stop movement + [self resetMovementState]; + return; + } + + // If we're stuck lets just stop + if ( _positionCheck > 6 && ![self isMoving] ) { + log(LOG_MOVEMENT, @"Stuck while moving from UI."); + [_destinationWaypointUI release]; + _destinationWaypointUI = nil; + // stop movement + [self resetMovementState]; + return; + } + + // Since we're moving to a UI waypoint we don't do any stuck checking + return; + + } else + + /* + * We are in Follow mode + */ + + if ( self.isFollowing ) { + + // Check to see if we're close to the follow unit enough to stop. + if ( botController.followUnit && [botController.followUnit isValid] ) { + log(LOG_DEV, @"Checking to see if we're close enough to stop."); + + Position *positionFollowUnit = [botController.followUnit position]; + float distanceToFollowUnit = [playerPosition distanceToPosition: positionFollowUnit]; + + // If we're close enough let's check to see if we need to stop + if ( distanceToFollowUnit <= botController.theCombatProfile.yardsBehindTargetStop ) { + log(LOG_DEV, @"Setting a random stopping distance"); + + // Establish a random stopping distance + float randomStoppingDistance = SSRandomFloatBetween(botController.theCombatProfile.yardsBehindTargetStart, botController.theCombatProfile.yardsBehindTargetStop); + if ( distanceToFollowUnit < randomStoppingDistance ) { + log(LOG_MOVEMENT, @"Reached our follow unit."); + // We're close enough to stop! + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedFollowUnitNotification object: nil]; + return; + } + } + } + + // Check to see if we need to mount or dismount + if ( [botController followMountCheck] ) { + // Just kill the follow and mounts will be checked before follow begins again + log(LOG_MOVEMENT, @"Need to mount while in follow."); + [botController performSelector: @selector(evaluateSituation) withObject:nil afterDelay:0.25f]; + [self resetMovementState]; + return; + } + + destPosition = [_destinationWaypoint position]; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + if ( !botController.followUnit || ![botController.followUnit isValid] ) { + + // Since the leader is out of sight we'll make this a very short distance so we hit zone ins better + stopingDistance = 3.0f; // 6.0 yards total before/after + + // we've reached our position! + if ( distanceToDestination <= stopingDistance ) { + log(LOG_MOVEMENT, @"Reached follow waypoint."); + [self moveToNextWaypoint]; + return; + } + + } else { + + stopingDistance = ([playerData speedMax]/2.0f); + if ( stopingDistance < 3.0f) stopingDistance = 3.0f; + + // we've reached our position! + if ( distanceToDestination <= stopingDistance ) { + log(LOG_MOVEMENT, @"Reached follow waypoint."); + [self moveToNextWaypoint]; + return; + } + } + + } else + + /* + * Moving to a Node + */ + + if (_moveToObject && [_moveToObject isKindOfClass: [Node class]] ) { + destPosition = [_moveToObject position]; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + // sanity check, incase something happens + if ( distanceToDestination == INFINITY ) { + log(LOG_MOVEMENT, @"Player distance == infinity. Stopping."); + [botController cancelCurrentEvaluation]; + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + if ( ![(Node*) _moveToObject validToLoot] ) { + log(LOG_NODE, @"%@ is not valid to loot, moving on.", _moveToObject); + [botController cancelCurrentEvaluation]; + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + if ( distanceToDestination > 20.0f ) { + // If we're not supposed to loot this node due to proximity rules + BOOL nearbyScaryUnits = [botController scaryUnitsNearNode:_moveToObject doMob:botController.theCombatProfile.GatherNodesMobNear doFriendy:botController.theCombatProfile.GatherNodesFriendlyPlayerNear doHostile:botController.theCombatProfile.GatherNodesHostilePlayerNear]; + + if ( nearbyScaryUnits ) { + log(LOG_NODE, @"Skipping node due to proximity count"); + [botController cancelCurrentEvaluation]; + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + } + + stopingDistance = 2.4f; + + float horizontalDistance = [[playerData position] distanceToPosition2D: [_moveToObject position]]; + + // we've reached our position! + if ( distanceToDestination <= stopingDistance || ( horizontalDistance < 1.3f && distanceToDestination <= 4.0f) ) { + + if ( [[playerData player] isFlyingMounted] ) { + log(LOG_MOVEMENT, @"Reached our hover spot for node: %@", _moveToObject); + } else { + log(LOG_MOVEMENT, @"Reached our node: %@", _moveToObject); + } + + // Send a notification + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedObjectNotification object: [[_moveToObject retain] autorelease]]; + return; + } + + } else + + /* + * Moving to loot a mob + */ + + if ( _moveToObject && [_moveToObject isKindOfClass: [Mob class]] && botController.mobsToLoot && [botController.mobsToLoot containsObject: (Mob*)_moveToObject] ) { + destPosition = [_moveToObject position]; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + // sanity check, incase something happens + if ( distanceToDestination == INFINITY ) { + log(LOG_MOVEMENT, @"Player distance == infinity. Stopping."); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + if ( ![(Unit*)_moveToObject isValid] ) { + log(LOG_LOOT, @"%@ is not valid to loot, moving on.", _moveToObject); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } +/* + if ( ![(Unit*)_moveToObject isLootable] ) { + log(LOG_LOOT, @"%@ is no longer lootable, moving on.", _moveToObject); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } +*/ + + stopingDistance = 3.0f; // 6 yards total + + // we've reached our position! + if ( distanceToDestination <= stopingDistance ) { + + log(LOG_MOVEMENT, @"Reached our loot: %@", _moveToObject); + + // Send a notification + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedObjectNotification object: [[_moveToObject retain] autorelease]]; + return; + } + + } else + + /* + * Moving to an object + */ + + if ( _moveToObject ) { + destPosition = [_moveToObject position]; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + // sanity check, incase something happens + if ( distanceToDestination == INFINITY ) { + log(LOG_MOVEMENT, @"Player distance == infinity. Stopping."); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + stopingDistance = 4.0f; // 8 yards total + + // we've reached our position! + if ( distanceToDestination <= stopingDistance ) { + + log(LOG_MOVEMENT, @"Reached our object: %@", _moveToObject); + + // Send a notification + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedObjectNotification object: [[_moveToObject retain] autorelease]]; + return; + } + + } else + + /* + * Moving to a waypoint on a route + */ + + if ( self.destinationWaypoint ) { + + destPosition = [_destinationWaypoint position]; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + // sanity check, incase something happens + if ( distanceToDestination == INFINITY ) { + log(LOG_MOVEMENT, @"Player distance == infinity. Stopping."); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + // Ghost Handling + if ( [playerData isGhost] ) { + + // Check to see if our corpse is in sight. + if( !botController.movingToCorpse && [playerData corpsePosition] ) { + Position *playerPosition = [playerData position]; + Position *corpsePosition = [playerData corpsePosition]; + float distanceToCorpse = [playerPosition distanceToPosition: corpsePosition]; + if ( distanceToCorpse <= botController.theCombatProfile.moveToCorpseRange ) { + log(LOG_MOVEMENT, @"Corpse in sight, stopping movement."); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + } + } + + stopingDistance = ([playerData speedMax]/2.0f); + if ( stopingDistance < 4.0f) stopingDistance = 4.0f; + + // We've reached our position! + if ( distanceToDestination <= stopingDistance ) { + log(LOG_MOVEMENT, @"Reached our destination! %0.2f < %0.2f", distanceToDestination, stopingDistance); + [self moveToNextWaypoint]; + return; + } + + } else + + /* + * If it's not moveToObject and no destination waypoint then we must have called moveToPosition by it's self (perhaps to a far off waypoint) + */ + + if ( self.lastAttemptedPosition ) { + + destPosition = self.lastAttemptedPosition; + distanceToDestination = [playerPosition distanceToPosition: destPosition]; + + // sanity check, incase something happens + if ( distanceToDestination == INFINITY ) { + log(LOG_MOVEMENT, @"Player distance == infinity. Stopping."); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + stopingDistance = ([playerData speedMax]/2.0f); + if ( stopingDistance < 4.0f) stopingDistance = 4.0f; + + // We've reached our position! + if ( distanceToDestination <= stopingDistance ) { + log(LOG_MOVEMENT, @"Reached our destination! %0.2f < %0.2f", distanceToDestination, stopingDistance); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + } else { + + log(LOG_ERROR, @"Somehow we' cant tell what we're moving to!?"); + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + // ****************************************** + // if we we get here, we're not close enough + // ****************************************** + + // If it's not been 1/4 a second yet don't try anything else + if ( _positionCheck <= 1 ) { + + // Check evaluation to see if we need to do anything + if ( !botController.evaluationIsActive && !botController.procedureInProgress ) + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.1f]; + + return; + } + + // should we jump? + float tooCLose = ([playerData speedMax]/1.1f); + if ( tooCLose < 3.0f) tooCLose = 3.0f; + + if ( [self isMoving] && distanceToDestination > tooCLose && + playerSpeed >= [playerData speedMax] && + [[[NSUserDefaults standardUserDefaults] objectForKey: @"MovementShouldJump"] boolValue] && + ![[playerData player] isFlyingMounted] + ) { + + if ( ([[NSDate date] timeIntervalSinceDate: self.lastJumpTime] > self.jumpCooldown ) ) { + [self jump]; + return; + } + } + + // If it's not been 1/2 a second yet don't try anything else + if ( _positionCheck <= 2 ) { + + // Check evaluation to see if we need to do anything + if ( !botController.evaluationIsActive && !botController.procedureInProgress ) + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.1f]; + + return; + } + + // ******************************************************* + // stuck checking + // ******************************************************* + + // If we're in preparation just keep running forward, no unsticking (most likely we are running against a gate) + // make sure we're still moving + if ( !botController.waitForPvPPreparation && _stuckCounter < 2 && ![self isMoving] ) { + log(LOG_MOVEMENT, @"For some reason we're not moving! Increasing stuck counter by 1!"); + _stuckCounter++; + return; + } + + // make sure we're still moving + if ( !botController.waitForPvPPreparation && _stuckCounter < 3 && ![self isMoving] ) { + log(LOG_MOVEMENT, @"For some reason we're not moving! Let's start moving again!"); + [self resumeMovement]; + _stuckCounter++; + return; + } + + // copy the old stuck counter + int oldStuckCounter = _stuckCounter; + + // we're stuck? + if ( _stuckCounter > 3 ) { + [controller setCurrentStatus: @"Bot: Stuck, entering anti-stuck routine"]; + log(LOG_MOVEMENT, @"Player is stuck, trying anti-stuck routine."); + [self unStickify]; + return; + } + + // check to see if we are stuck + if ( _positionCheck > 6 ) { + float maxSpeed = [playerData speedMax]; + float distanceTraveled = [self.lastPlayerPosition distanceToPosition:playerPosition]; + +// log(LOG_DEV, @" Checking speed: %0.2f <= %.02f (max: %0.2f)", playerSpeed, (maxSpeed/10.0f), maxSpeed ); +// log(LOG_DEV, @" Checking distance: %0.2f <= %0.2f", distanceTraveled, (maxSpeed/10.0f)/5.0f); + + // distance + speed check + if ( distanceTraveled <= (maxSpeed/10.0f)/5.0f || playerSpeed <= maxSpeed/10.0f ) { + log(LOG_DEV, @"Incrementing the stuck counter! (playerSpeed: %0.2f)", playerSpeed); + _stuckCounter++; + } + + self.lastPlayerPosition = playerPosition; + } + + // reset if stuck didn't change! + if ( _positionCheck > 16 && oldStuckCounter == _stuckCounter ) _stuckCounter = 0; + + UInt32 movementFlags = [playerData movementFlags]; + + // are we stuck moving up? + if ( movementFlags & MovementFlag_FlyUp && !_movingUp ){ + log(LOG_MOVEMENT, @"We're stuck moving up! Fixing!"); + [self moveUpStop]; + [self resumeMovement]; + return; + } + + if( [controller currentStatus] == @"Bot: Stuck, entering anti-stuck routine" ) { + if ( self.isFollowing ) [controller setCurrentStatus: @"Bot: Following"]; + else if ( self.moveToObject ) [controller setCurrentStatus: @"Bot: Moving to object"]; + else [controller setCurrentStatus: @"Bot: Patrolling"]; + } + + // Check evaluation to see if we need to do anything + if ( !botController.evaluationIsActive && !botController.procedureInProgress ) + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.1f]; + + // TO DO: moving in the wrong direction check? (can sometimes happen when doing mouse movements based on the speed of the machine) +} + +- (void)unStickify{ + + if ( !botController.isBotting ) { + [self resetMovementState]; + return; + } + + // Stop the timer + [self resetMovementTimer]; + + // Update our follow route + if ( self.isFollowing ) + self.currentRoute = botController.followRoute; + + _movementState = MovementState_Stuck; + + // ************************************************* + // Check for alarm/log out + // ************************************************* + + // should we play an alarm? + if ( [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmOnStuck"] boolValue] ){ + int stuckThreshold = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"AlarmOnStuckAttempts"] intValue]; + if ( _unstickifyTry > stuckThreshold ){ + log(LOG_MOVEMENT, @"We're stuck, playing an alarm!"); + [[NSSound soundNamed: @"alarm"] play]; + } + } + + // check to see if we should log out! + if ( [[botController logOutAfterStuckCheckbox] state] ){ + int stuckTries = [logOutStuckAttemptsTextField intValue]; + + if ( _unstickifyTry > stuckTries ) { + log(LOG_MOVEMENT, @"We're stuck, closing wow!"); + [botController logOut]; + [controller setCurrentStatus: @"Bot: Logged out due to being stuck"]; + return; + } + } + + // set our stuck counter to 0! + _stuckCounter = 0; + + // is this a new attempt? + id lastTarget = [self.unstickifyTarget retain]; + + // what is our new "target" we are trying to reach? + if ( self.moveToObject ) self.unstickifyTarget = self.moveToObject; + else self.unstickifyTarget = self.destinationWaypoint; + + // reset our counter + if ( self.unstickifyTarget != lastTarget ) _unstickifyTry = 0; + + _unstickifyTry++; + [lastTarget release]; + + log(LOG_MOVEMENT, @"Entering anti-stuck procedure! Try %d", _unstickifyTry); + + [botController jumpIfAirMountOnGround]; + + // anti-stuck for follow! + if ( self.isFollowing && _unstickifyTry > 5) { + + log(LOG_MOVEMENT, @"Got stuck while following, cancelling follow!"); + [[NSNotificationCenter defaultCenter] postNotificationName: ReachedFollowUnitNotification object: nil]; + return; + + } + + // Can't reach a waypoint + if ( self.destinationWaypoint && _unstickifyTry > 5 ){ + + // move to the previous waypoint and try this again + NSArray *waypoints = [[self currentRoute] waypoints]; + int index = [waypoints indexOfObject: [self destinationWaypoint]]; + + if ( index != NSNotFound ) { + if ( index == 0 ) index = [waypoints count]; + log(LOG_MOVEMENT, @"Moving to prevous waypoint."); + [self moveToWaypoint: [waypoints objectAtIndex: index-1]]; + return; + } else { + log(LOG_MOVEMENT, @"Trying to move to a previous WP, previously we would finish the route"); + } + } + + if ( self.destinationWaypoint && _unstickifyTry > 10 ) { + // Move to the closest waypoint +// self.destinationWaypoint = [self.currentRoute waypointClosestToPosition:[playerData position]]; + [self moveToWaypoint: [self.currentRoute waypointClosestToPosition:[playerData position]]]; + return; + } + + // Moving to an object + if ( self.moveToObject ) { + + // If it's a Node we'll adhere to the UI blacklist setting + if ( [self.moveToObject isKindOfClass: [Node class]] ) { + + // have we exceeded the amount of attempts to move to the node? + int blacklistTriggerNodeFailedToReach = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistTriggerNodeFailedToReach"] intValue]; + if ( _unstickifyTry > blacklistTriggerNodeFailedToReach ) { + + log(LOG_NODE, @"Unable to reach %@ after %d attempts, blacklisting.", _moveToObject, blacklistTriggerNodeFailedToReach); + + [blacklistController blacklistObject:(Node*)self.moveToObject withReason:Reason_CantReachObject]; + [botController cancelCurrentEvaluation]; + + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + } else + + if ( [_moveToObject isKindOfClass: [Mob class]] && botController.mobsToLoot && [botController.mobsToLoot containsObject: (Mob*)_moveToObject] ) { + + // NOTE: For now we're just using the setting from the Mining and Herbalism in the UI + + // have we exceeded the amount of attempts to move to the node? + int blacklistTriggerNodeFailedToReach = [[[NSUserDefaults standardUserDefaults] objectForKey: @"BlacklistTriggerNodeFailedToReach"] intValue]; + + if ( _unstickifyTry > blacklistTriggerNodeFailedToReach ) { + + log(LOG_LOOT, @"Unable to reach %@ after %d attempts, blacklisting.", _moveToObject, blacklistTriggerNodeFailedToReach); + + [blacklistController blacklistObject:(Mob*)self.moveToObject withReason:Reason_CantReachObject]; + + [botController cancelCurrentEvaluation]; + + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + + } else + + // blacklist unit after 5 tries! + if ( _unstickifyTry > 5 && _unstickifyTry < 10 ) { + + log(LOG_MOVEMENT, @"Unable to reach %@, blacklisting", self.moveToObject); + + [blacklistController blacklistObject:self.moveToObject withReason:Reason_CantReachObject]; + + [botController cancelCurrentEvaluation]; + + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + [self resetMovementState]; + return; + } + } + + // player is flying and is stuck :( makes me sad, lets move up a bit + if ( [[playerData player] isFlyingMounted] ) { + + log(LOG_MOVEMENT, @"Moving up since we're flying mounted!"); +/* + if ( _unstickifyTry < 3 ) { + // Bump to the right + [bindingsController executeBindingForKey:BindingStrafeRight]; + } else { + // Bump to the left + [bindingsController executeBindingForKey:BindingStrafeLeft]; + } +*/ + // move up for 1 second! + + [self moveUpStop]; + [self moveUpStart]; +/* + if ( _unstickifyTry < 3 ) { + // Bump to the right + [bindingsController executeBindingForKey:BindingStrafeRight]; + } else { + // Bump to the left + [bindingsController executeBindingForKey:BindingStrafeLeft]; + } +*/ + [self performSelector:@selector(moveUpStop) withObject:nil afterDelay:1.4f]; + [self performSelector:@selector(resumeMovement) withObject:nil afterDelay:1.5f]; + return; + } + + if ( _unstickifyTry == 3 ) { + log(LOG_MOVEMENT, @"Stuck, backing up too try to jump over object."); + + // Stop n back up a lil + [self stopMovement]; + _isActive = YES; + // Jump Back + [self jumpBack]; + usleep( 300000 ); + + // Move forward + [self moveForwardStart]; + usleep( 200000 ); + + } + + log(LOG_MOVEMENT, @"Stuck so I'm jumping!"); + // Jump + [self jumpRaw]; +/* + if ( _unstickifyTry < 2 ) [bindingsController executeBindingForKey:BindingStrafeRight]; + else [bindingsController executeBindingForKey:BindingStrafeLeft]; + + usleep( [controller refreshDelay]*2 ); + + if ( _unstickifyTry < 2 ) [bindingsController executeBindingForKey:BindingStrafeRight]; + else [bindingsController executeBindingForKey:BindingStrafeLeft]; +*/ + [self resumeMovement]; + return; +} + +- (BOOL)checkUnitOutOfRange: (Unit*)target { + + if ( !botController.isBotting ) { + [self resetMovementState]; + return NO; + } + + // This is intended for issues like runners, a chance to correct vs blacklist + // Hopefully this will help to avoid bad blacklisting which comes AFTER the cast + // returns true if the mob is good to go + + if (!target || target == nil) return YES; + + // only do this for hostiles + if (![playerData isHostileWithFaction: [target factionTemplate]]) return YES; + + Position *playerPosition = [(PlayerDataController*)playerData position]; + // If the mob is in our attack range return true + float distanceToTarget = [playerPosition distanceToPosition: [target position]]; + + + if ( distanceToTarget <= [botController.theCombatProfile attackRange] ) return YES; + + float vertOffset = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"BlacklistVerticalOffset"] floatValue]; + + if ( [[target position] verticalDistanceToPosition: playerPosition] > vertOffset ) { + log(LOG_COMBAT, @"Target is beyond the vertical offset limits: %@, giving up.", target); + return NO; + } + + log(LOG_COMBAT, @"%@ has gone out of range: %0.2f", target, distanceToTarget); + + float attackRange = [botController.theCombatProfile engageRange]; + if ( [botController.theCombatProfile attackRange] > [botController.theCombatProfile engageRange] ) + attackRange = [botController.theCombatProfile attackRange]; + + // If they're just a lil out of range lets inch up + if ( distanceToTarget < (attackRange + 6.0f) ) { + + log(LOG_COMBAT, @"Unit is still close, jumping forward."); + + if ( [self jumpTowardsPosition: [target position]] ) { + + // Now check again to see if they're in range + float distanceToTarget = [playerPosition distanceToPosition: [target position]]; + + if ( distanceToTarget > botController.theCombatProfile.attackRange ) { + log(LOG_COMBAT, @"Still out of range: %@, giving up.", target); + return NO; + } else { + log(LOG_COMBAT, @"Back in range: %@.", target); + return YES; + } + } + } + + // They're running and they're nothing we can do about it + log(LOG_COMBAT, @"Target: %@ has gone out of range: %0.2f", target, distanceToTarget); + return NO; +} + +- (void)resetRoutes{ + + // dump the routes! + self.currentRouteSet = nil; + self.currentRouteKey = nil; + self.currentRoute = nil; + +} + +- (void)resetMovementState { + + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + log(LOG_MOVEMENT, @"Resetting movement state"); + + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(unstickifyTarget) object: nil]; + + // reset our timer + [self resetMovementTimer]; + + if ( [self isMoving] ) { + log(LOG_MOVEMENT, @"Stopping movement!"); + [self stopMovement]; + } + + if ( [self isCTMActive] ) [self setClickToMove:nil andType:ctmIdle andGUID:0x0]; + + if ( _moveToObject ) { + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithObject:) object: _moveToObject]; + } + [_moveToObject release]; _moveToObject = nil; + self.moveToObject = nil; + + self.destinationWaypoint = nil; + self.lastAttemptedPosition = nil; + self.lastAttemptedPositionTime = nil; + self.lastPlayerPosition = nil; + _isMovingFromKeyboard = NO; + [_stuckDictionary removeAllObjects]; + _positionCheck = 0; + _unstickifyTry = 0; + _stuckCounter = 0; + _performingActions = NO; + + if ( self.currentRouteHoldForFollow && self.currentRouteHoldForFollow != nil ) { + // Switch back to what ever was the old route + self.currentRoute = self.currentRouteHoldForFollow; + self.currentRouteHoldForFollow = nil; + } + + _isActive = NO; + _isFollowing = NO; +} + +#pragma mark - + +- (void)resetMovementTimer{ + if ( !_movementTimer ) return; + log(LOG_MOVEMENT, @"Resetting the movement timer."); + [_movementTimer invalidate]; + _movementTimer = nil; +} + +- (void)correctDirection: (BOOL)stopStartMovement { + + // Handlers for the various object/waypoint types + if ( _moveToObject ) { + [self turnTowardObject: _moveToObject]; + + } else if ( _destinationWaypoint ) { + [self turnToward: [_destinationWaypoint position]]; + + } else if ( _lastAttemptedPosition ) { + [self turnToward: _lastAttemptedPosition]; + } + +} + +- (void)turnToward: (Position*)position{ + + /*if ( [movementType selectedTag] == MOVE_CTM ){ + log(LOG_MOVEMENT, @"[Move] In theory we should never be here!"); + return; + }*/ + + BOOL printTurnInfo = NO; + + // don't change position if the right mouse button is down + if ( ![controller isWoWFront] || ( ( GetCurrentButtonState() & 0x2 ) != 0x2 ) ) { + Position *playerPosition = [playerData position]; + if ( [self movementType] == MovementType_Keyboard ){ + + // check player facing vs. unit position + float playerDirection, savedDirection; + playerDirection = savedDirection = [playerData directionFacing]; + float theAngle = [playerPosition angleTo: position]; + + if ( fabsf(theAngle - playerDirection) > M_PI ){ + if ( theAngle < playerDirection ) theAngle += (M_PI*2); + else playerDirection += (M_PI*2); + } + + // find the difference between the angles + float angleTo = (theAngle - playerDirection), absAngleTo = fabsf(angleTo); + + // tan(angle) = error / distance; error = distance * tan(angle); + float speedMax = [playerData speedMax]; + float startDistance = [playerPosition distanceToPosition2D: position]; + float errorLimit = (startDistance < speedMax) ? 1.0f : (1.0f + ((startDistance-speedMax)/12.5f)); // (speedMax/3.0f); + //([playerData speed] > 0) ? ([playerData speedMax]/4.0f) : ((startDistance < [playerData speedMax]) ? 1.0f : 2.0f); + float errorStart = (absAngleTo < M_PI_2) ? (startDistance * sinf(absAngleTo)) : INFINITY; + + + if( errorStart > (errorLimit) ) { // (fabsf(angleTo) > OneDegree*5) + + // compensate for time taken for WoW to process keystrokes. + // response time is directly proportional to WoW's refresh rate (FPS) + // 2.25 rad/sec is an approximate turning speed + float compensationFactor = ([controller refreshDelay]/2000000.0f) * 2.25f; + + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] ------"); + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] %.3f rad turn with %.2f error (lim %.2f) for distance %.2f.", absAngleTo, errorStart, errorLimit, startDistance); + + NSDate *date = [NSDate date]; + ( angleTo > 0) ? [self turnLeft: YES] : [self turnRight: YES]; + + int delayCount = 0; + float errorPrev = errorStart, errorNow; + float lastDiff = angleTo, currDiff; + + + while ( delayCount < 2500 ) { // && (signbit(lastDiff) == signbit(currDiff)) + + // get current values + Position *currPlayerPosition = [playerData position]; + float currAngle = [currPlayerPosition angleTo: position]; + float currPlayerDirection = [playerData directionFacing]; + + // correct for looping around the circle + if(fabsf(currAngle - currPlayerDirection) > M_PI) { + if(currAngle < currPlayerDirection) currAngle += (M_PI*2); + else currPlayerDirection += (M_PI*2); + } + currDiff = (currAngle - currPlayerDirection); + + // get current diff and apply compensation factor + float modifiedDiff = fabsf(currDiff); + if(modifiedDiff > compensationFactor) modifiedDiff -= compensationFactor; + + float currentDistance = [currPlayerPosition distanceToPosition2D: position]; + errorNow = (fabsf(currDiff) < M_PI_2) ? (currentDistance * sinf(modifiedDiff)) : INFINITY; + + if( (errorNow < errorLimit) ) { + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] [Range is Good] %.2f < %.2f", errorNow, errorLimit); + //log(LOG_MOVEMENT, @"Expected additional movement: %.2f", currentDistance * sinf(0.035*2.25)); + break; + } + + if( (delayCount > 250) ) { + if( (signbit(lastDiff) != signbit(currDiff)) ) { + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] [Sign Diff] %.3f vs. %.3f (Error: %.2f vs. %.2f)", lastDiff, currDiff, errorNow, errorPrev); + break; + } + if( (errorNow > (errorPrev + errorLimit)) ) { + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] [Error Growing] %.2f > %.2f", errorNow, errorPrev); + break; + } + } + + if(errorNow < errorPrev) + errorPrev = errorNow; + + lastDiff = currDiff; + + delayCount++; + usleep(1000); + } + + ( angleTo > 0) ? [self turnLeft: NO] : [self turnRight: NO]; + + float finalFacing = [playerData directionFacing]; + + /*int j = 0; + while(1) { + j++; + usleep(2000); + if(finalFacing != [playerData directionFacing]) { + float currentDistance = [[playerData position] distanceToPosition2D: position]; + float diff = fabsf([playerData directionFacing] - finalFacing); + log(LOG_MOVEMENT, @"[Turn] Stabalized at ~%d ms (wow delay: %d) with %.3f diff --> %.2f yards.", j*2, [controller refreshDelay], diff, currentDistance * sinf(diff) ); + break; + } + }*/ + + // [playerData setDirectionFacing: newPlayerDirection]; + + if(fabsf(finalFacing - savedDirection) > M_PI) { + if(finalFacing < savedDirection) finalFacing += (M_PI*2); + else savedDirection += (M_PI*2); + } + float interval = -1*[date timeIntervalSinceNow], turnRad = fabsf(savedDirection - finalFacing); + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] %.3f rad/sec (%.2f/%.2f) at pSpeed %.2f.", turnRad/interval, turnRad, interval, [playerData speed] ); + + } + } + else{ + if ( printTurnInfo ) log(LOG_MOVEMENT, @"DOING SHARP TURN to %.2f", [playerPosition angleTo: position]); + [self turnTowardPosition: position]; + usleep([controller refreshDelay]*2); + } + } else { + if(printTurnInfo) log(LOG_MOVEMENT, @"Skipping turn because right mouse button is down."); + } + +} + +#pragma mark Notifications + +- (void)reachedFollowUnit: (NSNotification*)notification { + + log(LOG_FUNCTION, @"Reached Follow Unit called in the movementController."); + + // Reset the movement controller. + [self resetMovementState]; + +} + +- (void)reachedObject: (NSNotification*)notification { + + log(LOG_FUNCTION, @"Reached Follow Unit called in the movementController."); + + // Reset the movement controller. + [self resetMovementState]; + +} + +- (void)playerHasDied:(NSNotification *)notification { + if ( !botController.isBotting ) return; + + // reset our movement state! + [self resetMovementState]; + + // If in a BG + if ( botController.pvpIsInBG ) { +// self.currentRouteSet = nil; +// [self resetRoutes]; + log(LOG_MOVEMENT, @"Ignoring corpse route because we're PvPing!"); + return; + } + + // We're not set to use a route so do nothing + if ( ![[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"UseRoute"] boolValue] ) return; + + // switch back to starting route? + if ( [botController.theRouteCollection startRouteOnDeath] ) { + + self.currentRouteKey = CorpseRunRoute; + self.currentRouteSet = [botController.theRouteCollection startingRoute]; + if ( !self.currentRouteSet ) self.currentRouteSet = [[botController.theRouteCollection routes] objectAtIndex:0]; + self.currentRoute = [self.currentRouteSet routeForKey:CorpseRunRoute]; + log(LOG_MOVEMENT, @"Player Died, switching to main starting route! %@", self.currentRoute); + } + // be normal! + else{ + log(LOG_MOVEMENT, @"Player Died, switching to corpse route"); + self.currentRouteKey = CorpseRunRoute; + self.currentRoute = [self.currentRouteSet routeForKey:CorpseRunRoute]; + } + + if ( self.currentRoute && [[self.currentRoute waypoints] count] == 0 ){ + log(LOG_MOVEMENT, @"No corpse route! Ending movement"); + } +} + +- (void)playerHasRevived:(NSNotification *)notification { + if ( !botController.isBotting ) return; + + // do nothing if PvPing or in a BG + if ( botController.pvpIsInBG ) return; + + // We're not set to use a route so do nothing + if ( ![[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"UseRoute"] boolValue] ) return; + + // reset movement state + [self resetMovementState]; + + if ( self.currentRouteSet ) { + // switch our route! + self.currentRouteKey = PrimaryRoute; + self.currentRoute = [self.currentRouteSet routeForKey:PrimaryRoute]; + } + + log(LOG_MOVEMENT, @"Player revived, switching to %@", self.currentRoute); + +} + +- (void)applicationWillTerminate:(NSNotification *)notification{ + /*if( [playerData playerIsValid:self] ) { + [self resetMovementState]; + }*/ +} + +// have no target +- (void)haveNoTarget: (NSNotification*)notification { + if ( !botController.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] No Target (movementController): %@", unit); + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithObject:) object: (WoWObject*)unit]; + // reset movement state + if ( [self moveToObject] ) [self resetMovementState]; +} + + +// invalid target +- (void)invalidTarget: (NSNotification*)notification { + if ( !botController.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] No Target (movementController): %@", unit); + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithObject:) object: (WoWObject*)unit]; + if ( [self moveToObject] ) [self resetMovementState]; + +} + +// not in LoS +- (void)targetNotInLOS: (NSNotification*)notification { + if ( !botController.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] Not in LoS (movementController): %@", unit); + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithObject:) object: (WoWObject*)unit]; + if ( [self moveToObject] ) [self resetMovementState]; +} + +- (void)cantDoThatWhileStunned: (NSNotification*)notification { + if ( !botController.isBotting ) return; + Unit *unit = [notification object]; + + log(LOG_DEV, @"[Notification] Cant do that while stunned (movementController): %@", unit); + [NSObject cancelPreviousPerformRequestsWithTarget: self selector: @selector(stayWithObject:) object: (WoWObject*)unit]; + [self resetMovementState]; +} + +#pragma mark Keyboard Movements + +- (void)moveForwardStart{ + _isMovingFromKeyboard = YES; + + log(LOG_MOVEMENT, @"moveForwardStart"); + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_UpArrow, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } +} + +- (void)moveForwardStop { + _isMovingFromKeyboard = NO; + + log(LOG_MOVEMENT, @"moveForwardStop"); + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + // post another key down + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_UpArrow, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } + + // then post key up, twice + CGEventRef wKeyUp = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_UpArrow, FALSE); + if(wKeyUp) { + CGEventPostToPSN(&wowPSN, wKeyUp); + CGEventPostToPSN(&wowPSN, wKeyUp); + CFRelease(wKeyUp); + } +} + +- (void)moveBackwardStart { + _isMovingFromKeyboard = YES; + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_DownArrow, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } +} + +- (void)moveBackwardStop { + _isMovingFromKeyboard = NO; + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + // post another key down + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_DownArrow, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } + + // then post key up, twice + CGEventRef wKeyUp = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_DownArrow, FALSE); + if(wKeyUp) { + CGEventPostToPSN(&wowPSN, wKeyUp); + CGEventPostToPSN(&wowPSN, wKeyUp); + CFRelease(wKeyUp); + } +} + +- (void)moveUpStart { + _isMovingFromKeyboard = YES; + _movingUp = YES; + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_Space, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } +} + +- (void)moveUpStop { + _isMovingFromKeyboard = NO; + _movingUp = NO; + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + // post another key down + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_Space, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } + + // then post key up, twice + CGEventRef wKeyUp = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_Space, FALSE); + if(wKeyUp) { + CGEventPostToPSN(&wowPSN, wKeyUp); + CGEventPostToPSN(&wowPSN, wKeyUp); + CFRelease(wKeyUp); + } +} + +- (void)turnLeft: (BOOL)go{ + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + if(go) { + CGEventRef keyStroke = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_LeftArrow, TRUE); + if(keyStroke) { + CGEventPostToPSN(&wowPSN, keyStroke); + CFRelease(keyStroke); + } + } else { + // post another key down + CGEventRef keyStroke = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_LeftArrow, TRUE); + if(keyStroke) { + CGEventPostToPSN(&wowPSN, keyStroke); + CFRelease(keyStroke); + + // then post key up, twice + keyStroke = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_LeftArrow, FALSE); + if(keyStroke) { + CGEventPostToPSN(&wowPSN, keyStroke); + CGEventPostToPSN(&wowPSN, keyStroke); + CFRelease(keyStroke); + } + } + } +} + +- (void)turnRight: (BOOL)go{ + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + if(go) { + CGEventRef keyStroke = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_RightArrow, TRUE); + if(keyStroke) { + CGEventPostToPSN(&wowPSN, keyStroke); + CFRelease(keyStroke); + } + } else { + // post another key down + CGEventRef keyStroke = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_RightArrow, TRUE); + if(keyStroke) { + CGEventPostToPSN(&wowPSN, keyStroke); + CFRelease(keyStroke); + } + + // then post key up, twice + keyStroke = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_RightArrow, FALSE); + if(keyStroke) { + CGEventPostToPSN(&wowPSN, keyStroke); + CGEventPostToPSN(&wowPSN, keyStroke); + CFRelease(keyStroke); + } + } +} + +- (void)strafeRightStart { +/* + _isMovingFromKeyboard = YES; + _movingUp = YES; + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_Space, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } +*/ +} + +- (void)strafeRightStop { +/* + _isMovingFromKeyboard = NO; + _movingUp = NO; + + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + + // post another key down + CGEventRef wKeyDown = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_Space, TRUE); + if(wKeyDown) { + CGEventPostToPSN(&wowPSN, wKeyDown); + CFRelease(wKeyDown); + } + + // then post key up, twice + CGEventRef wKeyUp = CGEventCreateKeyboardEvent(NULL, (CGKeyCode)kVK_Space, FALSE); + if(wKeyUp) { + CGEventPostToPSN(&wowPSN, wKeyUp); + CGEventPostToPSN(&wowPSN, wKeyUp); + CFRelease(wKeyUp); + } +*/ +} + +- (void)turnTowardObject:(WoWObject*)obj{ + if ( obj ){ + [self turnTowardPosition:[obj position]]; + } +} + +- (BOOL)isPatrolling { + + // we have a destination + our movement timer is going! + if ( self.destinationWaypoint && _movementTimer ) + return YES; + + return NO; +} + +- (void)antiAFK{ + + if ( _afkPressForward ){ + [self moveForwardStop]; + _afkPressForward = NO; + } + else{ + [self moveBackwardStop]; + _afkPressForward = YES; + } +} + +- (void)establishPlayerPosition{ + + if ( _lastCorrectionForward ){ + + [self backEstablishPosition]; + _lastCorrectionForward = NO; + } + else{ + [self establishPosition]; + _lastCorrectionForward = YES; + } +} + +#pragma mark Helpers + +- (void)establishPosition { + [self moveForwardStart]; + usleep(100000); + [self moveForwardStop]; + usleep(30000); +} + +- (void)backEstablishPosition { + [self moveBackwardStart]; + usleep(100000); + [self moveBackwardStop]; + usleep(30000); +} + +- (void)correctDirectionByTurning { + + if ( _lastCorrectionLeft ){ + log(LOG_MOVEMENT, @"Turning right!"); + [bindingsController executeBindingForKey:BindingTurnRight]; + usleep([controller refreshDelay]); + [bindingsController executeBindingForKey:BindingTurnLeft]; + _lastCorrectionLeft = NO; + } + else{ + log(LOG_MOVEMENT, @"Turning left!"); + [bindingsController executeBindingForKey:BindingTurnLeft]; + usleep([controller refreshDelay]); + [bindingsController executeBindingForKey:BindingTurnRight]; + _lastCorrectionLeft = YES; + } +} + +- (void)turnTowardPosition: (Position*)position { + + BOOL printTurnInfo = NO; + + // don't change position if the right mouse button is down + if ( ((GetCurrentButtonState() & 0x2) != 0x2) ){ + + Position *playerPosition = [playerData position]; + + // keyboard turning + if ( [self movementType] == MovementType_Keyboard ){ + + // check player facing vs. unit position + float playerDirection, savedDirection; + playerDirection = savedDirection = [playerData directionFacing]; + float theAngle = [playerPosition angleTo: position]; + + if ( fabsf( theAngle - playerDirection ) > M_PI ){ + if ( theAngle < playerDirection ) theAngle += (M_PI*2); + else playerDirection += (M_PI*2); + } + + // find the difference between the angles + float angleTo = (theAngle - playerDirection), absAngleTo = fabsf(angleTo); + + // tan(angle) = error / distance; error = distance * tan(angle); + float speedMax = [playerData speedMax]; + float startDistance = [playerPosition distanceToPosition2D: position]; + float errorLimit = (startDistance < speedMax) ? 1.0f : (1.0f + ((startDistance-speedMax)/12.5f)); // (speedMax/3.0f); + //([playerData speed] > 0) ? ([playerData speedMax]/4.0f) : ((startDistance < [playerData speedMax]) ? 1.0f : 2.0f); + float errorStart = (absAngleTo < M_PI_2) ? (startDistance * sinf(absAngleTo)) : INFINITY; + + if( errorStart > (errorLimit) ) { // (fabsf(angleTo) > OneDegree*5) + + // compensate for time taken for WoW to process keystrokes. + // response time is directly proportional to WoW's refresh rate (FPS) + // 2.25 rad/sec is an approximate turning speed + float compensationFactor = ([controller refreshDelay]/2000000.0f) * 2.25f; + + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] ------"); + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] %.3f rad turn with %.2f error (lim %.2f) for distance %.2f.", absAngleTo, errorStart, errorLimit, startDistance); + + NSDate *date = [NSDate date]; + ( angleTo > 0) ? [self turnLeft: YES] : [self turnRight: YES]; + + int delayCount = 0; + float errorPrev = errorStart, errorNow; + float lastDiff = angleTo, currDiff; + + + while( delayCount < 2500 ) { // && (signbit(lastDiff) == signbit(currDiff)) + + // get current values + Position *currPlayerPosition = [playerData position]; + float currAngle = [currPlayerPosition angleTo: position]; + float currPlayerDirection = [playerData directionFacing]; + + // correct for looping around the circle + if(fabsf(currAngle - currPlayerDirection) > M_PI) { + if(currAngle < currPlayerDirection) currAngle += (M_PI*2); + else currPlayerDirection += (M_PI*2); + } + currDiff = (currAngle - currPlayerDirection); + + // get current diff and apply compensation factor + float modifiedDiff = fabsf(currDiff); + if(modifiedDiff > compensationFactor) modifiedDiff -= compensationFactor; + + float currentDistance = [currPlayerPosition distanceToPosition2D: position]; + errorNow = (fabsf(currDiff) < M_PI_2) ? (currentDistance * sinf(modifiedDiff)) : INFINITY; + + if( (errorNow < errorLimit) ) { + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] [Range is Good] %.2f < %.2f", errorNow, errorLimit); + //log(LOG_MOVEMENT, @"Expected additional movement: %.2f", currentDistance * sinf(0.035*2.25)); + break; + } + + if( (delayCount > 250) ) { + if( (signbit(lastDiff) != signbit(currDiff)) ) { + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] [Sign Diff] %.3f vs. %.3f (Error: %.2f vs. %.2f)", lastDiff, currDiff, errorNow, errorPrev); + break; + } + if( (errorNow > (errorPrev + errorLimit)) ) { + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] [Error Growing] %.2f > %.2f", errorNow, errorPrev); + break; + } + } + + if(errorNow < errorPrev) + errorPrev = errorNow; + + lastDiff = currDiff; + + delayCount++; + usleep(1000); + } + + ( angleTo > 0) ? [self turnLeft: NO] : [self turnRight: NO]; + + float finalFacing = [playerData directionFacing]; + + /*int j = 0; + while(1) { + j++; + usleep(2000); + if(finalFacing != [playerData directionFacing]) { + float currentDistance = [[playerData position] distanceToPosition2D: position]; + float diff = fabsf([playerData directionFacing] - finalFacing); + log(LOG_MOVEMENT, @"[Turn] Stabalized at ~%d ms (wow delay: %d) with %.3f diff --> %.2f yards.", j*2, [controller refreshDelay], diff, currentDistance * sinf(diff) ); + break; + } + }*/ + + // [playerData setDirectionFacing: newPlayerDirection]; + + if(fabsf(finalFacing - savedDirection) > M_PI) { + if(finalFacing < savedDirection) finalFacing += (M_PI*2); + else savedDirection += (M_PI*2); + } + float interval = -1*[date timeIntervalSinceNow], turnRad = fabsf(savedDirection - finalFacing); + if(printTurnInfo) log(LOG_MOVEMENT, @"[Turn] %.3f rad/sec (%.2f/%.2f) at pSpeed %.2f.", turnRad/interval, turnRad, interval, [playerData speed] ); + } + + // mouse movement or CTM + } + else{ + + // what are we facing now? + float playerDirection = [playerData directionFacing]; + float theAngle = [playerPosition angleTo: position]; + + log(LOG_MOVEMENT, @"%0.2f %0.2f Difference: %0.2f > %0.2f", playerDirection, theAngle, fabsf( theAngle - playerDirection ), M_PI); + + // face the other location! + [playerData faceToward: position]; + + // compensate for the 2pi --> 0 crossover + if ( fabsf( theAngle - playerDirection ) > M_PI ) { + if(theAngle < playerDirection) theAngle += (M_PI*2); + else playerDirection += (M_PI*2); + } + + // find the difference between the angles + float angleTo = fabsf(theAngle - playerDirection); + + // if the difference is more than 90 degrees (pi/2) M_PI_2, reposition + if( (angleTo > 0.785f) ) { // changed to be ~45 degrees + [self correctDirectionByTurning]; +// [self establishPlayerPosition]; + } + + if ( printTurnInfo ) log(LOG_MOVEMENT, @"Doing sharp turn to %.2f", theAngle ); + + usleep( [controller refreshDelay] *2 ); + } + } + else { + if(printTurnInfo) log(LOG_MOVEMENT, @"Skipping turn because right mouse button is down."); + } +} + +#pragma mark Click To Move + +- (void)setClickToMove:(Position*)position andType:(UInt32)type andGUID:(UInt64)guid{ + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ){ + return; + } + + // Set our position! + if ( position != nil ){ + float pos[3] = {0.0f, 0.0f, 0.0f}; + pos[0] = [position xPosition]; + pos[1] = [position yPosition]; + pos[2] = [position zPosition]; + [memory saveDataForAddress: [offsetController offset:@"CTM_POS"] Buffer: (Byte *)&pos BufLength: sizeof(float)*3]; + } + + // Set the GUID of who to interact with! + if ( guid > 0 ){ + [memory saveDataForAddress: [offsetController offset:@"CTM_GUID"] Buffer: (Byte *)&guid BufLength: sizeof(guid)]; + } + + // Set our scale! + float scale = 13.962634f; + [memory saveDataForAddress: [offsetController offset:@"CTM_SCALE"] Buffer: (Byte *)&scale BufLength: sizeof(scale)]; + + // Set our distance to the target until we stop moving + float distance = 0.5f; // Default for just move to position + if ( type == ctmAttackGuid ){ + distance = 3.66f; + } + else if ( type == ctmInteractNpc ){ + distance = 2.75f; + } + else if ( type == ctmInteractObject ){ + distance = 4.5f; + } + [memory saveDataForAddress: [offsetController offset:@"CTM_DISTANCE"] Buffer: (Byte *)&distance BufLength: sizeof(distance)]; + + // take action! + [memory saveDataForAddress: [offsetController offset:@"CTM_ACTION"] Buffer: (Byte *)&type BufLength: sizeof(type)]; +} + +- (BOOL)isCTMActive{ + UInt32 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"CTM_ACTION"] Buffer: (Byte*)&value BufLength: sizeof(value)]; + return ((value == ctmWalkTo) || (value == ctmLoot) || (value == ctmInteractNpc) || (value == ctmInteractObject)); +} + +#pragma mark Miscellaneous + +- (BOOL)dismount{ + + // do they have a standard mount? + UInt32 mountID = [[playerData player] mountID]; + + // check for druids + if ( mountID == 0 ){ + + // swift flight form + if ( [auraController unit: [playerData player] hasAuraNamed: @"Swift Flight Form"] ){ + [macroController useMacroOrSendCmd:@"CancelSwiftFlightForm"]; + return YES; + } + + // flight form + else if ( [auraController unit: [playerData player] hasAuraNamed: @"Flight Form"] ){ + [macroController useMacroOrSendCmd:@"CancelFlightForm"]; + return YES; + } + } + + // normal mount + else{ + [macroController useMacroOrSendCmd:@"Dismount"]; + return YES; + } + + // just in case people have problems, we'll print something to their log file + if ( ![[playerData player] isOnGround] ) { + log(LOG_MOVEMENT, @"[Movement] Unable to dismount player! In theory we should never be here! Mount ID: %d", mountID); + } + + return NO; +} + +- (void)jump{ + + // If we're air mounted and not on the ground then let's not jump + if ([[playerData player] isFlyingMounted] && ![[playerData player] isOnGround] ) return; + + log(LOG_MOVEMENT, @"Jumping!"); + // correct direction + [self correctDirection: NO]; + + // update variables + self.lastJumpTime = [NSDate date]; + int min = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"MovementMinJumpTime"] intValue]; + int max = [[[[NSUserDefaultsController sharedUserDefaultsController] values] valueForKey: @"MovementMaxJumpTime"] intValue]; + self.jumpCooldown = SSRandomIntBetween(min, max); + + [self moveUpStart]; + usleep(5000); + [self moveUpStop]; +// usleep(30000); +} + +- (void)jumpRaw { + + // If we're air mounted and not on the ground then let's not jump + if ( [[playerData player] isFlyingMounted] && ![[playerData player] isOnGround] ) return; + + log(LOG_MOVEMENT, @"Jumping!"); + [self moveUpStart]; + [self performSelector:@selector(moveUpStop) withObject:nil afterDelay:0.05f]; +} + +- (void)raiseUpAfterAirMount { + + log(LOG_MOVEMENT, @"Raising up!"); + [self moveUpStart]; + [self performSelector:@selector(moveUpStop) withObject:nil afterDelay:0.2f]; +} + +- (BOOL)jumpTowardsPosition: (Position*)position { + log(LOG_MOVEMENT, @"Jumping towards position."); + + if ( [self isMoving] ) { + BOOL wasActive = NO; + if ( _isActive == YES ) wasActive = YES; + [self stopMovement]; + if ( wasActive == YES ) _isActive = YES; + } + + // Face the target + [self turnTowardPosition: position]; + usleep( [controller refreshDelay]*2 ); + [self establishPosition]; + + // Move forward + [self moveForwardStart]; + usleep( [controller refreshDelay]*2 ); + + // Jump + [self jumpRaw]; + sleep(1); + + // Stop + [self moveForwardStop]; + + return YES; +} + +- (BOOL)jumpForward { + log(LOG_MOVEMENT, @"Jumping forward."); + + // Move backward + [self moveForwardStart]; + usleep(100000); + + // Jump + [self jumpRaw]; + + // Stop + [self moveForwardStop]; + usleep([controller refreshDelay]*2); + + return YES; + +} + +- (BOOL)jumpBack { + log(LOG_MOVEMENT, @"Jumping back."); + + // Move backward + [self moveBackwardStart]; + usleep(100000); + + // Jump + [self jumpRaw]; + + // Stop + [self moveBackwardStop]; + usleep([controller refreshDelay]*2); + + return YES; + +} + +#pragma mark Waypoint Actions + +#define INTERACT_RANGE 8.0f + +- (void)performActions:(NSDictionary*)dict{ + + // player cast? try again shortly + if ( [playerData isCasting] ) { + _performingActions = NO; + float delayTime = [playerData castTimeRemaining]; + if ( delayTime < 0.2f) delayTime = 0.2f; + log(LOG_WAYPOINT, @"Player casting. Waiting %.2f to perform next action.", delayTime); + + [self performSelector: _cmd + withObject: dict + afterDelay: delayTime]; + + return; + } + + // If we're being called after delaying lets cancel the evaluations we started + if ( _performingActions ) { + [botController cancelCurrentEvaluation]; + _performingActions = NO; + } + + int actionToExecute = [[dict objectForKey:@"CurrentAction"] intValue]; + NSArray *actions = [dict objectForKey:@"Actions"]; + float delay = 0.0f; + + // are we done? + if ( actionToExecute >= [actions count] ){ + log(LOG_WAYPOINT, @"Action complete, resuming route"); + [self realMoveToNextWaypoint]; + return; + } + + // execute our action + else { + + log(LOG_WAYPOINT, @"Executing action %d", actionToExecute); + + Action *action = [actions objectAtIndex:actionToExecute]; + + // spell + if ( [action type] == ActionType_Spell ){ + + UInt32 spell = [[[action value] objectForKey:@"SpellID"] unsignedIntValue]; + BOOL instant = [[[action value] objectForKey:@"Instant"] boolValue]; + log(LOG_WAYPOINT, @"Casting spell %d", spell); + + // only pause movement if we have to! + if ( !instant ) [self stopMovement]; + _isActive = YES; + + [botController performAction:spell]; + } + + // item + else if ( [action type] == ActionType_Item ){ + + UInt32 itemID = [[[action value] objectForKey:@"ItemID"] unsignedIntValue]; + BOOL instant = [[[action value] objectForKey:@"Instant"] boolValue]; + UInt32 actionID = (USE_ITEM_MASK + itemID); + + log(LOG_WAYPOINT, @"Using item %d", itemID); + + // only pause movement if we have to! + if ( !instant ) [self stopMovement]; + _isActive = YES; + + [botController performAction:actionID]; + } + + // macro + else if ( [action type] == ActionType_Macro ) { + + UInt32 macroID = [[[action value] objectForKey:@"MacroID"] unsignedIntValue]; + BOOL instant = [[[action value] objectForKey:@"Instant"] boolValue]; + UInt32 actionID = (USE_MACRO_MASK + macroID); + + log(LOG_WAYPOINT, @"Using macro %d", macroID); + + // only pause movement if we have to! + if ( !instant ) + [self stopMovement]; + _isActive = YES; + + [botController performAction:actionID]; + } + + // delay + else if ( [action type] == ActionType_Delay ){ + + delay = [[action value] floatValue]; + + [self stopMovement]; + _isActive = YES; + log(LOG_WAYPOINT, @"Delaying for %0.2f seconds", delay); + } + + // jump + else if ( [action type] == ActionType_Jump ){ + + [self jumpRaw]; + + } + + // switch route + else if ( [action type] == ActionType_SwitchRoute ){ + + RouteSet *route = nil; + NSString *UUID = [action value]; + for ( RouteSet *otherRoute in [waypointController routes] ){ + if ( [UUID isEqualToString:[otherRoute UUID]] ){ + route = otherRoute; + break; + } + } + + if ( route == nil ){ + log(LOG_WAYPOINT, @"Unable to find route %@ to switch to!", UUID); + + } + else{ + log(LOG_WAYPOINT, @"Switching route to %@ with %d waypoints", route, [[route routeForKey: PrimaryRoute] waypointCount]); + + // switch the botController's route! +// [botController setTheRouteSet:route]; + + [self setPatrolRouteSet:route]; + + [self resumeMovement]; + + // after we switch routes, we don't want to continue any other actions! + return; + } + } + + else if ( [action type] == ActionType_QuestGrab || [action type] == ActionType_QuestTurnIn ){ + + // reset mob counts + if ( [action type] == ActionType_QuestTurnIn ){ + [statisticsController resetQuestMobCount]; + } + + // get all nearby mobs + NSArray *nearbyMobs = [mobController mobsWithinDistance:INTERACT_RANGE levelRange:NSMakeRange(0,255) includeElite:YES includeFriendly:YES includeNeutral:YES includeHostile:NO]; + Mob *questNPC = nil; + for ( questNPC in nearbyMobs ){ + + if ( [questNPC isQuestGiver] ){ + + [self stopMovement]; + _isActive = YES; + + // might want to make k 3 (but will take longer) + + log(LOG_WAYPOINT, @"Turning in/grabbing quests to/from %@", questNPC); + + int i = 0, k = 1; + for ( ; i < 3; i++ ){ + for ( k = 1; k < 5; k++ ){ + + // interact + if ( [botController interactWithMouseoverGUID:[questNPC GUID]] ){ + usleep(300000); + + // click the gossip button + [macroController useMacroWithKey:@"QuestClickGossip" andInt:k]; + usleep(10000); + + // click "continue" (not all quests need this) + [macroController useMacro:@"QuestContinue"]; + usleep(10000); + + // click "Accept" (this is ONLY needed if we're accepting a quest) + [macroController useMacro:@"QuestAccept"]; + usleep(10000); + + // click "complete quest" + [macroController useMacro:@"QuestComplete"]; + usleep(10000); + + // click "cancel" (sometimes we have to in case we just went into a quest we already have!) + [macroController useMacro:@"QuestCancel"]; + usleep(10000); + } + } + } + } + } + } + + // interact with NPC + else if ( [action type] == ActionType_InteractNPC ){ + + NSNumber *entryID = [action value]; + log(LOG_WAYPOINT, @"Interacting with mob %@", entryID); + + // moving bad, lets pause! + [self stopMovement]; + _isActive = YES; + + // interact + [botController interactWithMob:[entryID unsignedIntValue]]; + } + + // interact with object + else if ( [action type] == ActionType_InteractObject ) { + + NSNumber *entryID = [action value]; + log(LOG_WAYPOINT, @"Interacting with node %@", entryID); + + // moving bad, lets pause! + [self stopMovement]; + _isActive = YES; + + // interact + [botController interactWithNode:[entryID unsignedIntValue]]; + } + + // repair + else if ( [action type] == ActionType_Repair ) { + + // get all nearby mobs + NSArray *nearbyMobs = [mobController mobsWithinDistance:INTERACT_RANGE levelRange:NSMakeRange(0,255) includeElite:YES includeFriendly:YES includeNeutral:YES includeHostile:NO]; + Mob *repairNPC = nil; + for ( repairNPC in nearbyMobs ) { + if ( [repairNPC canRepair] ) { + log(LOG_WAYPOINT, @"Repairing with %@", repairNPC); + break; + } + } + + // repair + if ( repairNPC ) { + [self stopMovement]; + _isActive = YES; + + if ( [botController interactWithMouseoverGUID:[repairNPC GUID]] ){ + + // sleep some to allow the window to open! + usleep(500000); + + // now send the repair macro + [macroController useMacro:@"RepairAll"]; + + log(LOG_WAYPOINT, @"All items repaired"); + } + } + else{ + log(LOG_WAYPOINT, @"Unable to repair, no repair NPC found!"); + } + } + + // switch combat profile + else if ( [action type] == ActionType_CombatProfile ) { + log(LOG_WAYPOINT, @"Switching from combat profile %@", botController.theCombatProfile); + + CombatProfile *profile = nil; + NSString *UUID = [action value]; + for ( CombatProfile *otherProfile in [profileController combatProfiles] ){ + if ( [UUID isEqualToString:[otherProfile UUID]] ) { + profile = otherProfile; + break; + } + } + + [botController changeCombatProfile:profile]; + } + + // jump to waypoint + else if ( [action type] == ActionType_JumpToWaypoint ) { + + int waypointIndex = [[action value] intValue] - 1; + NSArray *waypoints = [self.currentRoute waypoints]; + + if ( waypointIndex >= 0 && waypointIndex < [waypoints count] ){ + self.destinationWaypoint = [waypoints objectAtIndex:waypointIndex]; + log(LOG_WAYPOINT, @"Jumping to waypoint %@", self.destinationWaypoint); + [self resumeMovement]; + } + else{ + log(LOG_WAYPOINT, @"Error, unable to move to waypoint index %d, out of range!", waypointIndex); + } + } + + // mail + else if ( [action type] == ActionType_Mail ){ + + MailActionProfile *profile = (MailActionProfile*)[profileController profileForUUID:[action value]]; + log(LOG_WAYPOINT, @"Initiating mailing profile: %@", profile); + [itemController mailItemsWithProfile:profile]; + } + + } + + log(LOG_WAYPOINT, @"Action %d complete, checking for more!", actionToExecute); + + if (delay > 0.0f) { + _performingActions = YES; + [botController performSelector: @selector(evaluateSituation) withObject: nil afterDelay: 0.25f]; + // Lets run evaluation while we're waiting, it will not move while performingActions + [self performSelector: _cmd + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + actions, @"Actions", + [NSNumber numberWithInt:++actionToExecute], @"CurrentAction", + nil] + afterDelay: delay]; + } else { + [self performSelector: _cmd + withObject: [NSDictionary dictionaryWithObjectsAndKeys: + actions, @"Actions", + [NSNumber numberWithInt:++actionToExecute], @"CurrentAction", + nil] + afterDelay: 0.25f]; + + } +} + +#pragma mark Temporary + +- (float)averageSpeed{ + return 0.0f; +} +- (float)averageDistance{ + return 0.0f; +} +- (BOOL)shouldJump{ + return NO; +} + +@end diff --git a/NSData+SockAddr.h b/NSData+SockAddr.h new file mode 100644 index 0000000..ae68c93 --- /dev/null +++ b/NSData+SockAddr.h @@ -0,0 +1,16 @@ +// +// NSData+SockAddr.h +// Pocket Gnome +// +// Created by Jon Drummond on 6/8/05. +// Copyright 2005 Jon Drummond. All rights reserved. +// + +#import +#import + +@interface NSData (SockAddr) +- (struct sockaddr_in)sockAddrStruct; +- (NSString*)ipAddress; +- (unsigned short)dataPort; +@end diff --git a/NSData+SockAddr.m b/NSData+SockAddr.m new file mode 100644 index 0000000..ecc7700 --- /dev/null +++ b/NSData+SockAddr.m @@ -0,0 +1,27 @@ +// +// NSData+SockAddr.m +// Pocket Gnome +// +// Created by Jon Drummond on 6/8/05. +// Copyright 2005 Jon Drummond. All rights reserved. +// + +#import "NSData+SockAddr.h" +#import "sys/socket.h" +#import "netinet/in.h" +#import "arpa/inet.h" + +@implementation NSData (SockAddr) +- (struct sockaddr_in)sockAddrStruct +{ + return *(struct sockaddr_in*)[self bytes]; +} +- (unsigned short)dataPort +{ + return ntohs([self sockAddrStruct].sin_port); +} +- (NSString*)ipAddress +{ + return [NSString stringWithCString:inet_ntoa([self sockAddrStruct].sin_addr) encoding:NSASCIIStringEncoding]; +} +@end diff --git a/NSNumberToHexString.h b/NSNumberToHexString.h new file mode 100644 index 0000000..ed4bfe7 --- /dev/null +++ b/NSNumberToHexString.h @@ -0,0 +1,14 @@ + + +#import + + +@interface NSNumberToHexString : NSValueTransformer { + +} + ++ (Class)transformedValueClass; ++ (BOOL)allowsReverseTransformation; +- (id)transformedValue:(id)value; + +@end diff --git a/NSNumberToHexString.m b/NSNumberToHexString.m new file mode 100644 index 0000000..1937b76 --- /dev/null +++ b/NSNumberToHexString.m @@ -0,0 +1,23 @@ + +#import "NSNumberToHexString.h" + + +@implementation NSNumberToHexString + ++ (Class)transformedValueClass; +{ + return [NSString class]; +} + ++ (BOOL)allowsReverseTransformation; +{ + return NO; +} + +- (id)transformedValue:(id)value; +{ + if(!value) return @"(nil)"; + return [NSString stringWithFormat: @"0x%X", [value unsignedIntValue]]; +} + +@end diff --git a/NSString+Extras.h b/NSString+Extras.h new file mode 100644 index 0000000..06ef2f2 --- /dev/null +++ b/NSString+Extras.h @@ -0,0 +1,16 @@ +// +// NSString+Extras.h +// Pocket Gnome +// +// Created by Jon Drummond on 7/13/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + + +@interface NSString (Trash) + +- (BOOL)moveToTrash; + +@end diff --git a/NSString+Extras.m b/NSString+Extras.m new file mode 100644 index 0000000..194fc4c --- /dev/null +++ b/NSString+Extras.m @@ -0,0 +1,26 @@ +// +// NSString+Extras.m +// Pocket Gnome +// +// Created by Jon Drummond on 7/13/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "NSString+Extras.h" + + +@implementation NSString (Trash) + +- (BOOL)moveToTrash { + log(LOG_GENERAL, @"Deleting: \"%s\"", [self fileSystemRepresentation]); + FSRef fileRef; + if(FSPathMakeRef( (const UInt8 *)[self fileSystemRepresentation], &fileRef, NULL ) == noErr) { + if(FSMoveObjectToTrashSync(&fileRef, NULL, kFSFileOperationDefaultOptions) == noErr) { + return YES; + } + } + return NO; +} + +@end + diff --git a/NSString+URLEncode.h b/NSString+URLEncode.h new file mode 100644 index 0000000..899d563 --- /dev/null +++ b/NSString+URLEncode.h @@ -0,0 +1,16 @@ +// +// NSString+URLEncode.h +// Pocket Gnome +// +// Created by Jon Drummond on 6/18/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + + +@interface NSString (NSString_URLEncode) + +- (NSString *)urlEncodeValue; + +@end diff --git a/NSString+URLEncode.m b/NSString+URLEncode.m new file mode 100644 index 0000000..5f1342a --- /dev/null +++ b/NSString+URLEncode.m @@ -0,0 +1,17 @@ +// +// NSString+URLEncode.m +// Pocket Gnome +// +// Created by Jon Drummond on 6/18/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "NSString+URLEncode.h" + + +@implementation NSString (NSString_URLEncode) +- (NSString *)urlEncodeValue { + NSString *result = (NSString *) CFURLCreateStringByAddingPercentEscapes(kCFAllocatorDefault, (CFStringRef)self, NULL, CFSTR("?=&+"), kCFStringEncodingUTF8); + return [result autorelease]; +} +@end diff --git a/Neutral.png b/Neutral.png new file mode 100644 index 0000000..bb0bd9a Binary files /dev/null and b/Neutral.png differ diff --git a/NeutralCrest.gif b/NeutralCrest.gif new file mode 100644 index 0000000..15fe05b Binary files /dev/null and b/NeutralCrest.gif differ diff --git a/NightElf-Female.png b/NightElf-Female.png new file mode 100644 index 0000000..598f5ad Binary files /dev/null and b/NightElf-Female.png differ diff --git a/NightElf-Female_Small.gif b/NightElf-Female_Small.gif new file mode 100644 index 0000000..d10e767 Binary files /dev/null and b/NightElf-Female_Small.gif differ diff --git a/NightElf-Male.png b/NightElf-Male.png new file mode 100644 index 0000000..510103c Binary files /dev/null and b/NightElf-Male.png differ diff --git a/NightElf-Male_Small.gif b/NightElf-Male_Small.gif new file mode 100644 index 0000000..88fedf5 Binary files /dev/null and b/NightElf-Male_Small.gif differ diff --git a/NoAccessApplication.h b/NoAccessApplication.h new file mode 100644 index 0000000..b4ece99 --- /dev/null +++ b/NoAccessApplication.h @@ -0,0 +1,18 @@ +// +// NoAccessApplication.h +// Pocket Gnome +// +// Created by Jon Drummond on 6/21/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import + + +@interface NoAccessApplication : NSApplication { + BOOL allowAccessibility; +} + +@property BOOL allowAccessibility; + +@end diff --git a/NoAccessApplication.m b/NoAccessApplication.m new file mode 100644 index 0000000..5a6f57a --- /dev/null +++ b/NoAccessApplication.m @@ -0,0 +1,42 @@ +// +// NoAccessApplication.m +// Pocket Gnome +// +// Created by Jon Drummond on 6/21/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "NoAccessApplication.h" + + +@implementation NoAccessApplication + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.allowAccessibility = NO; + } + return self; +} + + +@synthesize allowAccessibility; + +- (BOOL)accessibilityIsIgnored { + return !self.allowAccessibility; +} + +- (id)accessibilityHitTest:(NSPoint)point { + if(self.allowAccessibility) + return [super accessibilityHitTest: point]; + return nil; +} + +- (id)accessibilityFocusedUIElement { + if(self.allowAccessibility) + return [super accessibilityFocusedUIElement]; + return nil; +} + +@end diff --git a/Node.h b/Node.h new file mode 100644 index 0000000..ab77780 --- /dev/null +++ b/Node.h @@ -0,0 +1,89 @@ +// +// Node.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/27/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import +#import "WoWObject.h" +#import "Position.h" + +#define NodeNameLoadedNotification @"NodeNameLoadedNotification" + + +typedef enum eGameObjectFlags { + GAMEOBJECT_FLAG_IN_USE = 1, // disables interaction while animated + GAMEOBJECT_FLAG_LOCKED = 2, // require key, spell, event, etc to be opened. Makes "Locked" appear in tooltip + GAMEOBJECT_FLAG_CANT_TARGET = 4, // cannot interact (condition to interact) + GAMEOBJECT_FLAG_TRANSPORT = 8, // any kind of transport? Object can transport (elevator, boat, car) + GAMEOBJECT_FLAG_NEVER_DESPAWN = 32, // never despawn, typically for doors, they just change state + GAMEOBJECT_FLAG_TRIGGERED = 64, // typically, summoned objects. Triggered by spell or other events +} NodeFlags; + +typedef enum eGameObjectTypes { + GAMEOBJECT_TYPE_DOOR = 0, + GAMEOBJECT_TYPE_BUTTON = 1, + GAMEOBJECT_TYPE_QUESTGIVER = 2, + GAMEOBJECT_TYPE_CONTAINER = 3, + GAMEOBJECT_TYPE_BINDER = 4, + GAMEOBJECT_TYPE_GENERIC = 5, + GAMEOBJECT_TYPE_TRAP = 6, + GAMEOBJECT_TYPE_CHAIR = 7, + GAMEOBJECT_TYPE_SPELL_FOCUS = 8, + GAMEOBJECT_TYPE_TEXT = 9, + GAMEOBJECT_TYPE_GOOBER = 10, // eg, gong of zul'farrak, cove cannon + GAMEOBJECT_TYPE_TRANSPORT = 11, // eg, elevator + GAMEOBJECT_TYPE_AREADAMAGE = 12, + GAMEOBJECT_TYPE_CAMERA = 13, + GAMEOBJECT_TYPE_MAP_OBJECT = 14, + GAMEOBJECT_TYPE_MO_TRANSPORT = 15, // eg, boat + GAMEOBJECT_TYPE_DUEL_ARBITER = 16, + GAMEOBJECT_TYPE_FISHING_BOBBER = 17, + GAMEOBJECT_TYPE_RITUAL = 18, + GAMEOBJECT_TYPE_MAILBOX = 19, + GAMEOBJECT_TYPE_AUCTIONHOUSE = 20, + GAMEOBJECT_TYPE_GUARDPOST = 21, + GAMEOBJECT_TYPE_PORTAL = 22, + GAMEOBJECT_TYPE_MEETING_STONE = 23, + GAMEOBJECT_TYPE_FLAGSTAND = 24, + GAMEOBJECT_TYPE_FISHINGHOLE = 25, + GAMEOBJECT_TYPE_FLAGDROP = 26, + GAMEOBJECT_TYPE_MINI_GAME = 27, + GAMEOBJECT_TYPE_LOTTERY_KIOSK = 28, + GAMEOBJECT_TYPE_CAPTURE_POINT = 29, + GAMEOBJECT_TYPE_AURA_GENERATOR = 30, + GAMEOBJECT_TYPE_DUNGEON_DIFFICULTY = 31, + GAMEOBJECT_TYPE_BARBER_CHAIR = 32, // barbershop? + GAMEOBJECT_TYPE_DESTRUCTIBLE_BUILDING = 33, + GAMEOBJECT_TYPE_GUILDBANK = 34, + GAMEOBJECT_TYPE_TRAPDOOR = 35, // see the Well in Dalaran +} GameObjectType; + +@interface Node : WoWObject { + NSString *_name; + UInt32 _nameEntryID; + + // NSURLConnection *_connection; + // NSMutableData *_downloadData; +} ++ (id)nodeWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +- (BOOL)validToLoot; + +- (GUID)owner; +- (UInt32)nodeType; +- (NodeFlags)flags; + +- (UInt8)objectHealth; + +- (UInt16)alpha; +//- (void)monitor; + +- (NSString*)stringForNodeType: (UInt32)typeID; +- (NSImage*)imageForNodeType: (UInt32)typeID; +- (BOOL)isUseable; +// - (void)loadNodeName; + +@end diff --git a/Node.m b/Node.m new file mode 100644 index 0000000..c37502e --- /dev/null +++ b/Node.m @@ -0,0 +1,434 @@ +// +// Node.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/27/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Node.h" +#import "ObjectConstants.h" + +enum NodeDataFields +{ + GAMEOBJECT_POS_X = 0x104, + GAMEOBJECT_POS_Y = 0x108, + GAMEOBJECT_POS_Z = 0x10C, +}; + +#define NODE_NAMESTRUCT_POINTER_OFFSET 0x1BC + +enum eNodeNameStructFields { + NAMESTRUCT_NAME_PTR = 0x94, + NAMESTRUCT_ENTRY_ID = 0xA4, +}; + +@interface Node () +@property (readwrite, retain) NSString *name; +@end + +@implementation Node + ++ (id)nodeWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + return [[[Node alloc] initWithAddress: address inMemory: memory] autorelease]; +} + +- (void) dealloc +{ + [_name release]; + [super dealloc]; +} + + +- (NSString*)description { + return [NSString stringWithFormat: @"", [self name], [self entryID]]; +} + +- (NSString*)name { + // if we already have a name saved, return it + if(_name && [_name length]) { + if(_nameEntryID == [self entryID]) + return [[_name retain] autorelease]; + } + + // if we don't, load the name out of memory + if([self objectTypeID] == TYPEID_GAMEOBJECT) { + //+0x218 + //---- + //+0x74 - pointer to string + //+0x84 - node entry ID + //+0xA8 - node name as string + + // get the address from the object itself + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + NODE_NAMESTRUCT_POINTER_OFFSET) Buffer: (Byte *)&value BufLength: sizeof(value)]) + { + UInt32 entryID = 0, stringPtr = 0; + + // verify that the entry IDs match, then follow the pointer to the string value + if([_memory loadDataForObject: self atAddress: (value + NAMESTRUCT_NAME_PTR) Buffer: (Byte *)&stringPtr BufLength: sizeof(stringPtr)] && + [_memory loadDataForObject: self atAddress: (value + NAMESTRUCT_ENTRY_ID) Buffer: (Byte *)&entryID BufLength: sizeof(entryID)]) + { + if( (entryID == [self entryID]) && stringPtr ) + { + char name[65]; + name[64] = 0; + if([_memory loadDataForObject: self atAddress: stringPtr Buffer: (Byte *)&name BufLength: sizeof(name)-1]) + { + NSString *newName = [NSString stringWithUTF8String: name]; + if([newName length]) { + [self setName: newName]; + return newName; + } + } + } + } + } + } + return @""; +} + +- (void)setName: (NSString*)name { + id temp = nil; + [name retain]; + @synchronized (@"Name") { + temp = _name; + _name = name; + _nameEntryID = [self entryID]; + } + [temp release]; +} + + +// 1 read +- (Position*)position { + float pos[3] = {-1.0f, -1.0f, -1.0f }; + [_memory loadDataForObject: self atAddress: ([self baseAddress] + GAMEOBJECT_POS_X) Buffer: (Byte *)&pos BufLength: sizeof(float)*3]; + return [Position positionWithX: pos[0] Y: pos[1] Z: pos[2]]; +} + +- (NodeFlags)flags { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + GAMEOBJECT_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (GUID)owner { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + OBJECT_FIELD_CREATED_BY) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +// this could be ENTIRELY wrong, but just my guess, from 0-255 +// I use it for the gates in strand +- (UInt8)objectHealth{ + UInt8 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + GAMEOBJECT_BYTES_1 + 0x3) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return -1; +} + +- (UInt32)nodeType { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + GAMEOBJECT_BYTES_1) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return ((CFSwapInt32HostToLittle(value) >> 8) & 0xFF); + } + return -1; +} + +// 0-255, 0 being not visible +- (UInt16)alpha{ + UInt16 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + 0xC0) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +// 1 read +- (BOOL)validToLoot { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + GAMEOBJECT_BYTES_1) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return (CFSwapInt32HostToLittle(value) & 0xFF); + } + return NO; +} + +- (NSImage*)imageForNodeType: (UInt32)typeID { + switch(typeID) { + case GAMEOBJECT_TYPE_DOOR: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_BUTTON: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_QUESTGIVER: + return [NSImage imageNamed: @"AvailableQuestIcon"]; + break; + case GAMEOBJECT_TYPE_CONTAINER: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_BINDER: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_GENERIC: + return [NSImage imageNamed: @"GossipGossipIcon"]; + break; + case GAMEOBJECT_TYPE_TRAP: + return [NSImage imageNamed: @"WarnTriangle"]; + break; + case GAMEOBJECT_TYPE_CHAIR: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_SPELL_FOCUS: + return [NSImage imageNamed: @"WarnTriangle"]; + break; + case GAMEOBJECT_TYPE_TEXT: + return [NSImage imageNamed: @"TrainerGossipIcon"]; + break; + case GAMEOBJECT_TYPE_GOOBER: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_DUEL_ARBITER: + return [NSImage imageNamed: @"MinimapGuideFlag"]; + break; + case GAMEOBJECT_TYPE_TRANSPORT: + return [NSImage imageNamed: @"TaxiGossipIcon"]; + break; + case GAMEOBJECT_TYPE_MO_TRANSPORT: + return [NSImage imageNamed: @"TaxiGossipIcon"]; + break; + case GAMEOBJECT_TYPE_FISHING_BOBBER: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_RITUAL: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_MAILBOX: + return [NSImage imageNamed: @"VendorGossipIcon"]; + break; + case GAMEOBJECT_TYPE_AUCTIONHOUSE: + return [NSImage imageNamed: @"BankerGossipIcon"]; + break; + case GAMEOBJECT_TYPE_GUARDPOST: + return [NSImage imageNamed: @"Combat"]; + break; + case GAMEOBJECT_TYPE_PORTAL: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_MEETING_STONE: + return [NSImage imageNamed: @"BinderGossipIcon"]; + break; + case GAMEOBJECT_TYPE_FLAGSTAND: + return [NSImage imageNamed: @"MinimapGuideFlag"]; + break; + case GAMEOBJECT_TYPE_FISHINGHOLE: + return [NSImage imageNamed: @"ResourceBlip"]; + break; + case GAMEOBJECT_TYPE_GUILDBANK: + return [NSImage imageNamed: @"BankerGossipIcon"]; + break; + default: + return [NSImage imageNamed: @"Scroll"]; + } +} + +- (NSString*)stringForNodeType: (UInt32)typeID { + switch(typeID) { + case GAMEOBJECT_TYPE_DOOR: + return @"Door"; + break; + case GAMEOBJECT_TYPE_BUTTON: + return @"Button"; + break; + case GAMEOBJECT_TYPE_QUESTGIVER: + return @"Quest Giver"; + break; + case GAMEOBJECT_TYPE_CONTAINER: + return ((([self flags] & 4) == 4) ? @"Container (Quest)" : @"Container"); + break; + case GAMEOBJECT_TYPE_BINDER: + return @"Binder"; + break; + case GAMEOBJECT_TYPE_GENERIC: + return @"Generic/Sign"; + break; + case GAMEOBJECT_TYPE_TRAP: + return @"Trap/Fire"; + break; + case GAMEOBJECT_TYPE_CHAIR: + return @"Chair"; + break; + case GAMEOBJECT_TYPE_SPELL_FOCUS: + return @"Spell Focus"; + break; + case GAMEOBJECT_TYPE_TEXT: + return @"Text/Book"; + break; + case GAMEOBJECT_TYPE_GOOBER: + return @"Goober"; + break; + case GAMEOBJECT_TYPE_AREADAMAGE: + return @"Area Damage"; + break; + case GAMEOBJECT_TYPE_CAMERA: + return @"Camera"; + break; + case GAMEOBJECT_TYPE_MAP_OBJECT: + return @"Map Object"; + break; + case GAMEOBJECT_TYPE_DUEL_ARBITER: + return @"Duel Arbiter"; + break; + case GAMEOBJECT_TYPE_TRANSPORT: + return @"Transport"; + break; + case GAMEOBJECT_TYPE_MO_TRANSPORT: + return @"Transport"; + break; + case GAMEOBJECT_TYPE_FISHING_BOBBER: + return @"Fishing Bobber"; + break; + case GAMEOBJECT_TYPE_RITUAL: + return @"Ritual/Summon"; + break; + case GAMEOBJECT_TYPE_MAILBOX: + return @"Mailbox"; + break; + case GAMEOBJECT_TYPE_AUCTIONHOUSE: + return @"Auction House"; + break; + case GAMEOBJECT_TYPE_GUARDPOST: + return @"Guard Post"; + break; + case GAMEOBJECT_TYPE_PORTAL: + return @"Spell/Portal"; + break; + case GAMEOBJECT_TYPE_MEETING_STONE: + return @"Meeting Stone"; + break; + case GAMEOBJECT_TYPE_FLAGSTAND: + return @"Flag Stand"; + break; + case GAMEOBJECT_TYPE_FISHINGHOLE: + return @"Fishing Hole"; + break; + case GAMEOBJECT_TYPE_GUILDBANK: + return @"Guild Bank"; + break; + case GAMEOBJECT_TYPE_AURA_GENERATOR: + return @"Aura Generator"; + break; + case GAMEOBJECT_TYPE_BARBER_CHAIR: + return @"Barbershop"; + break; + case GAMEOBJECT_TYPE_DESTRUCTIBLE_BUILDING: + return @"Destructible Object"; + break; + case GAMEOBJECT_TYPE_TRAPDOOR: + return @"Teleport/Transport"; + break; + default: + return [NSString stringWithFormat: @"Unknown (%d)", typeID]; + } +} + +- (BOOL)isUseable { + switch([self nodeType]) { + case GAMEOBJECT_TYPE_DOOR: + case GAMEOBJECT_TYPE_BUTTON: + case GAMEOBJECT_TYPE_QUESTGIVER: + case GAMEOBJECT_TYPE_CONTAINER: + case GAMEOBJECT_TYPE_BINDER: + case GAMEOBJECT_TYPE_CHAIR: + case GAMEOBJECT_TYPE_TEXT: + case GAMEOBJECT_TYPE_GOOBER: + case GAMEOBJECT_TYPE_RITUAL: + case GAMEOBJECT_TYPE_MAILBOX: + case GAMEOBJECT_TYPE_AUCTIONHOUSE: + case GAMEOBJECT_TYPE_PORTAL: + case GAMEOBJECT_TYPE_MEETING_STONE: + case GAMEOBJECT_TYPE_FLAGSTAND: + case GAMEOBJECT_TYPE_GUILDBANK: + case GAMEOBJECT_TYPE_TRAPDOOR: + return YES; + break; + default: + return NO; + } +} + +#pragma mark Deprecated Thottbot Loading + +/* + +- (void)loadNodeName { + return; + [_connection cancel]; + [_connection release]; + _connection = [[NSURLConnection alloc] initWithRequest: [NSURLRequest requestWithURL: [NSURL URLWithString: [NSString stringWithFormat: @"http://thottbot.com/o%d", [self entryID]]]] delegate: self]; + if(_connection) { + [_downloadData release]; + _downloadData = [[NSMutableData data] retain]; + } +} + +- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response +{ + [_downloadData setLength: 0]; +} + +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data +{ + [_downloadData appendData: data]; +} + +- (void)connection:(NSURLConnection *)connection + didFailWithError:(NSError *)error +{ + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // inform the user + log(LOG_GENERAL, @"Connection failed! Error - %@ %@", + [error localizedDescription], + [[error userInfo] objectForKey:NSErrorFailingURLStringKey]); +} + +- (void)connectionDidFinishLoading:(NSURLConnection *)connection +{ + // get the download as a string + NSString *wowhead = [[[NSString alloc] initWithData: _downloadData encoding: NSUTF8StringEncoding] autorelease]; + + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // parse out the name + if(wowhead && [wowhead length]) { + NSScanner *scanner = [NSScanner scannerWithString: wowhead]; + + // get the spell name + int scanSave = [scanner scanLocation]; + if([scanner scanUpToString: @"
Object: " intoString: nil] && [scanner scanString: @"
Object: " intoString: nil]) { + NSString *newName = nil; + if([scanner scanUpToString: @"
" intoString: &newName]) { + if(newName && [newName length]) { + [self setName: newName]; + [[NSNotificationCenter defaultCenter] postNotificationName: NodeNameLoadedNotification object: self]; + } + } + } else { + [scanner setScanLocation: scanSave]; + } + } +} +*/ + +@end diff --git a/NodeController.h b/NodeController.h new file mode 100644 index 0000000..b9298c6 --- /dev/null +++ b/NodeController.h @@ -0,0 +1,66 @@ +// +// NodeController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/29/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import +#import "Node.h" +#import "ObjectController.h" + +@class PlayerDataController; +@class ObjectsController; + +typedef enum { + AnyNode = 0, + MiningNode = 1, + HerbalismNode = 2, + FishingSchool = 3, +} NodeType; + +@interface NodeController : ObjectController { + IBOutlet id botController; + IBOutlet id movementController; + IBOutlet id memoryViewController; + IBOutlet ObjectsController *objectsController; + + IBOutlet NSPopUpButton *moveToList; + + NSMutableArray *_finishedNodes; + + // NSMutableDictionary *_nodeNames; + + NSDictionary *_miningDict; + NSDictionary *_herbalismDict; + + int _nodeTypeFilter; +} + +- (unsigned)nodeCount; + +- (NSArray*)nodesOfType:(UInt32)nodeType shouldLock:(BOOL)lock; +- (NSArray*)allMiningNodes; +- (NSArray*)allHerbalismNodes; +- (NSArray*)nodesWithinDistance: (float)distance ofAbsoluteType: (GameObjectType)type; +- (NSArray*)nodesWithinDistance: (float)distance ofType: (NodeType)type maxLevel: (int)level; +- (NSArray*)nodesWithinDistance: (float)nodeDistance NodeIDs: (NSArray*)nodeIDs position:(Position*)position; +- (NSArray*)nodesWithinDistance: (float)nodeDistance EntryID: (int)entryID position:(Position*)position; +- (Node*)closestNode:(UInt32)entryID; +- (Node*)closestNodeForInteraction:(UInt32)entryID; +- (Node*)nodeWithEntryID:(UInt32)entryID; + +- (NSArray*)uniqueNodesAlphabetized; +- (Node*)closestNodeWithName:(NSString*)nodeName; +/* +- (IBAction)filterNodes: (id)sender; +- (IBAction)resetList: (id)sender; +- (IBAction)faceNode: (id)sender; +- (IBAction)targetNode: (id)sender; +- (IBAction)filterList: (id)sender; + +- (IBAction)moveToStart: (id)sender; +- (IBAction)moveToStop: (id)sender;*/ + +@end diff --git a/NodeController.m b/NodeController.m new file mode 100644 index 0000000..cd05873 --- /dev/null +++ b/NodeController.m @@ -0,0 +1,500 @@ +// +// NodeController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/29/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "NodeController.h" +#import "Controller.h" +#import "PlayerDataController.h" +#import "MemoryViewController.h" +#import "MovementController.h" +#import "ObjectsController.h" +#import "Waypoint.h" +#import "Offsets.h" + +#import "ImageAndTextCell.h" + +#import + +typedef enum { + Filter_All = -100, + Filter_Mine_Herb = -4, + Filter_Container_Quest = -3, + Filter_Herbs = -2, + Filter_Minerals = -1, + Filter_Transport = 11, +} FilterType; + +@interface NodeController (Internal) + +- (int)nodeLevel: (Node*)node; +- (BOOL)trackingNode: (Node*)trackingNode; +- (void)reloadNodeData: (id)sender; +- (void)fishingCheck; + +@end + +@implementation NodeController + +- (id) init +{ + self = [super init]; + if (self != nil) { + + _finishedNodes = [[NSMutableArray array] retain]; + + // load in our gathering dictionaries + NSDictionary *gatheringDict = [NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"Gathering" ofType: @"plist"]]; + if(gatheringDict) { + _miningDict = [[gatheringDict objectForKey: @"Mining"] retain]; + _herbalismDict = [[gatheringDict objectForKey: @"Herbalism"] retain]; + } else { + log(LOG_GENERAL, @"Unable to load Gathering information."); + } + + // load in node names + //id nodeNames = [[NSUserDefaults standardUserDefaults] objectForKey: @"NodeNames"]; +// if(nodeNames) { +// _nodeNames = [[NSKeyedUnarchiver unarchiveObjectWithData: nodeNames] mutableCopy]; +// } else +// _nodeNames = [[NSMutableDictionary dictionary] retain]; + + // + + NSDictionary *defaultValues = [NSDictionary dictionaryWithObjectsAndKeys: + @"1.0", @"NodeControllerUpdateFrequency", + [NSNumber numberWithInt: -100], @"NodeFilterType", nil]; + + [[NSUserDefaults standardUserDefaults] registerDefaults: defaultValues]; + [[NSUserDefaultsController sharedUserDefaultsController] setInitialValues: defaultValues]; + } + return self; +} + +- (void)dealloc{ + [_objectList release]; + [_objectDataList release]; + [_finishedNodes release]; + [_miningDict release]; + [_herbalismDict release]; + + [super dealloc]; +} + +#pragma mark Dataset Modification + +- (unsigned)nodeCount { + return [_objectList count]; +} + +#pragma mark Internal + +- (int)nodeLevel: (Node*)node { + NSString *key = [node name]; + if([_herbalismDict objectForKey: key]) + return [[[_herbalismDict objectForKey: key] objectForKey: @"Skill"] intValue]; + if([_miningDict objectForKey: key]) + return [[[_miningDict objectForKey: key] objectForKey: @"Skill"] intValue]; + return 0; +} + +//- (NSString*)nodeName: (Node*)node { +// return [node name]; +// +// NSNumber *keyNum = [NSNumber numberWithInt: [node entryID]]; +// NSString *keyStr = [keyNum stringValue]; +// if([_herbalismDict objectForKey: keyStr]) +// return [[_herbalismDict objectForKey: keyStr] objectForKey: @"Name"]; +// if([_miningDict objectForKey: keyStr]) +// return [[_miningDict objectForKey: keyStr] objectForKey: @"Name"]; +// if([_fishingDict objectForKey: keyStr]) +// return [[_fishingDict objectForKey: keyStr] objectForKey: @"Name"]; +// if([_otherDict objectForKey: keyStr]) +// return [[_otherDict objectForKey: keyStr] objectForKey: @"Name"]; +// +// if([_nodeNames objectForKey: keyNum]) +// return [_nodeNames objectForKey: keyNum]; +// +// return nil; +//} + + +- (BOOL)trackingNode: (Node*)trackingNode { + for(Node *node in _objectList) { + if( [node isEqualToObject: trackingNode] ) { + return YES; + } + } + return NO; +} + +#pragma mark External Query + + +- (NSArray*)nodesOfType:(UInt32)nodeType shouldLock:(BOOL)lock { + + // Make a copy or we will run into some "Collection was mutated while being enumerated." errors and crash + // Mainly b/c we access this from another thread + NSArray *nodeList = nil; + if (lock ){ + @synchronized(_objectList){ + nodeList = [[_objectList copy] autorelease]; + } + } + else{ + nodeList = [[_objectList copy] autorelease]; + } + + NSMutableArray *nodes = [NSMutableArray array]; + for(Node *node in nodeList) { + if ( [node nodeType] == nodeType ){ + [nodes addObject: node]; + } + } + + return nodes; +} + +- (NSArray*)allMiningNodes { + NSMutableArray *nodes = [NSMutableArray array]; + + for(Node *node in _objectList) { + if( [_miningDict objectForKey: [node name]]) + [nodes addObject: node]; + } + + return nodes; +} + +- (NSArray*)allHerbalismNodes { + NSMutableArray *nodes = [NSMutableArray array]; + + for(Node *node in _objectList) { + if( [_herbalismDict objectForKey: [node name]]) + [nodes addObject: node]; + } + + return nodes; +} +- (NSArray*)nodesWithinDistance: (float)nodeDistance NodeIDs: (NSArray*)nodeIDs position:(Position*)position{ + + NSMutableArray *nearbyNodes = [NSMutableArray array]; + for(Node *node in _objectList) { + + // Just return nearby nodes + if ( nodeIDs == nil ){ + float distance = [position distanceToPosition: [node position]]; + if((distance != INFINITY) && (distance <= nodeDistance)) { + [nearbyNodes addObject: node]; + } + } + else{ + for ( NSNumber *entryID in nodeIDs ){ + if ( [node entryID] == [entryID intValue] ){ + float distance = [position distanceToPosition: [node position]]; + log(LOG_GENERAL, @"Found %d == %d with distance of %0.2f", [node entryID], [entryID intValue], distance); + if((distance != INFINITY) && (distance <= nodeDistance)) { + [nearbyNodes addObject: node]; + } + } + } + } + } + + return nearbyNodes; +} + +- (NSArray*)nodesWithinDistance: (float)nodeDistance EntryID: (int)entryID position:(Position*)position{ + + log(LOG_GENERAL, @"Searching for %d", entryID); + NSMutableArray *nearbyNodes = [NSMutableArray array]; + for(Node *node in _objectList) { + if ( [node entryID] == entryID ){ + float distance = [position distanceToPosition: [node position]]; + log(LOG_GENERAL, @"Found %d == %d with distance of %0.2f", [node entryID], entryID, distance); + if((distance != INFINITY) && (distance <= nodeDistance)) { + [nearbyNodes addObject: node]; + } + } + } + + return nearbyNodes; +} + +- (NSArray*)nodesWithinDistance: (float)distance ofAbsoluteType: (GameObjectType)type { + NSMutableArray *finalList = [NSMutableArray array]; + Position *playerPosition = [(PlayerDataController*)playerData position]; + for(Node* node in _objectList) { + if( [node isValid] + && [node validToLoot] + && ([playerPosition distanceToPosition: [node position]] <= distance) + && ([node nodeType] == type)) { + [finalList addObject: node]; + } + } + return finalList; +} + +- (NSArray*)nodesWithinDistance: (float)distance ofType: (NodeType)type maxLevel: (int)level { + NSArray *nodeList = nil; + NSMutableArray *finalList = [NSMutableArray array]; + if(type == AnyNode) nodeList = _objectList; + if(type == MiningNode) nodeList = [self allMiningNodes]; + if(type == HerbalismNode) nodeList = [self allHerbalismNodes]; + if(type == FishingSchool) nodeList = [self nodesOfType:GAMEOBJECT_TYPE_FISHINGHOLE shouldLock:NO]; + + Position *playerPosition = [(PlayerDataController*)playerData position]; + for(Node* node in nodeList) { + if( [node isValid] + && [node validToLoot] + && ([playerPosition distanceToPosition: [node position]] <= distance) + && ([self nodeLevel: node] <= level) + && ![_finishedNodes containsObject: node]) { + [finalList addObject: node]; + } + } + return finalList; +} + +- (Node*)closestNodeForInteraction:(UInt32)entryID { + NSArray *nodeList = _objectList; + Position *playerPosition = [(PlayerDataController*)playerData position]; + for(Node* node in nodeList) { + + if ( [node entryID]==entryID ){ + log(LOG_GENERAL, @"Node id found! %d", [node entryID]); + + log(LOG_GENERAL, @"%d %d %d", [node isValid], [node isUseable], ([playerPosition distanceToPosition: [node position]] <= 10) ); + } + + if( [node isValid] && [node entryID]==entryID && [node isUseable] && ([playerPosition distanceToPosition: [node position]] <= 10) ) { + return node; + } + } + log(LOG_GENERAL, @"[Node] No node for interaction"); + return nil; +} + +- (Node*)closestNode:(UInt32)entryID { + NSArray *nodeList = _objectList; + Position *playerPosition = [(PlayerDataController*)playerData position]; + Node *closestNode = nil; + float closestDistance = INFINITY; + float distance = 0.0f; + for(Node* node in nodeList) { + distance = [playerPosition distanceToPosition: [node position]]; + if( [node isValid] && [node entryID]==entryID && (distance <= closestDistance) ) { + closestDistance = distance; + closestNode = node; + } + } + return closestNode; +} + +- (Node*)nodeWithEntryID:(UInt32)entryID{ + for(Node* node in _objectList) { + if ( [node entryID] == entryID ){ + return node; + } + } + + return nil; +} + +#pragma mark ObjectsController helpers + +- (NSArray*)uniqueNodesAlphabetized{ + + NSMutableArray *addedNodeNames = [NSMutableArray array]; + + for ( Node *node in _objectList ){ + if ( ![addedNodeNames containsObject:[node name]] ){ + [addedNodeNames addObject:[node name]]; + } + } + + [addedNodeNames sortUsingSelector:@selector(compare:)]; + + return [[addedNodeNames retain] autorelease]; +} + +- (Node*)closestNodeWithName:(NSString*)nodeName{ + + NSMutableArray *nodesWithName = [NSMutableArray array]; + + // find mobs with the name! + for ( Node *node in _objectList ){ + if ( [nodeName isEqualToString:[node name]] ){ + [nodesWithName addObject:node]; + } + } + + if ( [nodesWithName count] == 1 ){ + return [nodesWithName objectAtIndex:0]; + } + + Position *playerPosition = [playerData position]; + Node *closestNode = nil; + float closestDistance = INFINITY; + for ( Node *node in nodesWithName ){ + + float distance = [playerPosition distanceToPosition:[node position]]; + if ( distance < closestDistance ){ + closestDistance = distance; + closestNode = node; + } + } + + return closestNode; +} + +#pragma mark Sub Class implementations + +- (void)objectAddedToList:(WoWObject*)obj{ + // we could do a check to make sure the object is valid and remove if not? + // probably not though +} + +- (id)objectWithAddress:(NSNumber*) address inMemory:(MemoryAccess*)memory{ + return [Node nodeWithAddress:address inMemory:memory]; +} + +- (NSString*)updateFrequencyKey{ + return @"NodeControllerUpdateFrequency"; +} + +- (unsigned int)objectCountWithFilters{ + + int filterType = [[[NSUserDefaults standardUserDefaults] objectForKey:@"NodeFilterType"] intValue]; + + if ( [_objectDataList count] || filterType != -100 ) + return [_objectDataList count]; + + return [_objectList count]; +} + +- (void)refreshData{ + + // remove old objects + [_objectDataList removeAllObjects]; + + // is tab viewable? + if ( ![objectsController isTabVisible:Tab_Nodes] ) + return; + + if ( ![playerData playerIsValid:self] ) return; + + int filterType = [[[NSUserDefaults standardUserDefaults] objectForKey:@"NodeFilterType"] intValue]; + NSString *filterString = [objectsController nameFilter]; + Position *playerPosition = [(PlayerDataController*)playerData position]; + + for ( Node *node in _objectList ) { + NSString *name = [node name]; + name = ((name && [name length]) ? name : @"Unknown"); + + float distance = [playerPosition distanceToPosition: [node position]]; + + NSString *type = nil; + int typeVal = [node nodeType]; + if( [_miningDict objectForKey: name]) type = @"Mining"; + if( [_herbalismDict objectForKey: name]) type = @"Herbalism"; + + // first, do type filter + if ( filterType < 0 ) { + // all = -100 + // minerals = -1 + // herbs = -2 + // quest container = -3 + // mine/herb = -4 + // transport = 11 + + if ( ( filterType == Filter_Minerals) && ![type isEqualToString: @"Mining"] ) continue; + if ( ( filterType == Filter_Herbs) && ![type isEqualToString: @"Herbalism"] ) continue; + if ( ( filterType == Filter_Mine_Herb) && !type) continue; + if ( ( filterType == Filter_Container_Quest)) { + if ( ( typeVal != 3 ) || ( ( [node flags] & GAMEOBJECT_FLAG_CANT_TARGET ) != GAMEOBJECT_FLAG_CANT_TARGET ) ) { + continue; // must be a container, and flagged as quest + } + } + + } + else{ + if ( filterType == Filter_Transport ){ + if ( ( typeVal != 11 ) || ( typeVal != 15 ) ) continue; // both types of transport + } + else{ + if ( filterType != typeVal ) + continue; + } + } + + // then, do string filter + + if ( filterString ){ + if([[node name] rangeOfString: filterString options: NSCaseInsensitiveSearch | NSDiacriticInsensitiveSearch].location == NSNotFound) { + continue; + } + } + + // get the string if we don't have it already + if ( !type ) type = [node stringForNodeType: typeVal]; + + // invalid no longer working in 3.0.2 + name = ([node validToLoot] ? name : [name stringByAppendingString: @" [Invalid]"]); + + [_objectDataList addObject: [NSDictionary dictionaryWithObjectsAndKeys: + node, @"Node", + name, @"Name", + [NSNumber numberWithInt: [node entryID]], @"ID", + [NSString stringWithFormat: @"0x%X", [node baseAddress]], @"Address", + [NSNumber numberWithFloat: distance], @"Distance", + type, @"Type", + [node imageForNodeType: [node nodeType]], @"NameIcon", + [NSNumber numberWithUnsignedInt:[node objectHealth]], @"Health", // probably wrong, dunno + nil]]; + } + + // sort + [_objectDataList sortUsingDescriptors: [[objectsController nodeTable] sortDescriptors]]; + + // reload table + [objectsController loadTabData]; +} + +- (WoWObject*)objectForRowIndex:(int)rowIndex{ + if ( rowIndex >= [_objectDataList count] ) return nil; + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Node"]; +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if ( rowIndex == -1 || rowIndex >= [_objectDataList count] ) return nil; + + if ( [[aTableColumn identifier] isEqualToString: @"Distance"] ) + return [NSString stringWithFormat: @"%.2f", [[[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Distance"] floatValue]]; + + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex +{ + if ( aRowIndex == -1 || aRowIndex >= [_objectDataList count] ) return; + + if ( [[aTableColumn identifier] isEqualToString: @"Name"] ){ + [(ImageAndTextCell*)aCell setImage: [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"NameIcon"]]; + } +} + +- (void)tableDoubleClick: (id)sender { + if ( [sender clickedRow] == -1 ) return; + + [memoryViewController showObjectMemory: [[_objectDataList objectAtIndex: [sender clickedRow]] objectForKey: @"Node"]]; + [controller showMemoryView]; +} + +@end diff --git a/Nodes/.svn/all-wcprops b/Nodes/.svn/all-wcprops new file mode 100644 index 0000000..74630ec --- /dev/null +++ b/Nodes/.svn/all-wcprops @@ -0,0 +1,113 @@ +K 25 +svn:wc:ra_dav:version-url +V 29 +/svn/!svn/ver/445/trunk/Nodes +END +WarnTriangle.png +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/445/trunk/Nodes/WarnTriangle.png +END +ResourceBlip.png +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/445/trunk/Nodes/ResourceBlip.png +END +Scroll.png +K 25 +svn:wc:ra_dav:version-url +V 40 +/svn/!svn/ver/445/trunk/Nodes/Scroll.png +END +BankerGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Nodes/BankerGossipIcon.png +END +BinderGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Nodes/BinderGossipIcon.png +END +GossipGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Nodes/GossipGossipIcon.png +END +TrainerGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 51 +/svn/!svn/ver/445/trunk/Nodes/TrainerGossipIcon.png +END +MinimapGuideFlag.png +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Nodes/MinimapGuideFlag.png +END +TaxiGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/445/trunk/Nodes/TaxiGossipIcon.png +END +Chicken.png +K 25 +svn:wc:ra_dav:version-url +V 41 +/svn/!svn/ver/445/trunk/Nodes/Chicken.png +END +ActiveQuestIcon.png +K 25 +svn:wc:ra_dav:version-url +V 49 +/svn/!svn/ver/445/trunk/Nodes/ActiveQuestIcon.png +END +Stable.png +K 25 +svn:wc:ra_dav:version-url +V 40 +/svn/!svn/ver/445/trunk/Nodes/Stable.png +END +AvailableQuestIcon.png +K 25 +svn:wc:ra_dav:version-url +V 52 +/svn/!svn/ver/445/trunk/Nodes/AvailableQuestIcon.png +END +Innkeeper.png +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/445/trunk/Nodes/Innkeeper.png +END +Repair.png +K 25 +svn:wc:ra_dav:version-url +V 40 +/svn/!svn/ver/445/trunk/Nodes/Repair.png +END +PetitionGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 52 +/svn/!svn/ver/445/trunk/Nodes/PetitionGossipIcon.png +END +TabardGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Nodes/TabardGossipIcon.png +END +VendorGossipIcon.png +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/Nodes/VendorGossipIcon.png +END diff --git a/Nodes/.svn/entries b/Nodes/.svn/entries new file mode 100644 index 0000000..f17afdf --- /dev/null +++ b/Nodes/.svn/entries @@ -0,0 +1,640 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Nodes +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +WarnTriangle.png +file + + + + +2010-04-24T16:42:59.000000Z +f8e294a363f039b0138e58dede02ee27 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +1090 + +ResourceBlip.png +file + + + + +2010-04-24T16:42:59.000000Z +315c5ae2407333eac2b76a4af21402c4 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +585 + +Scroll.png +file + + + + +2010-04-24T16:42:59.000000Z +f3577a3bbdf1e65234bd0f92f857a855 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +891 + +BankerGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +ccb1b1295aebbdad51dcf0ce170e646e +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +581 + +BinderGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +a94f6780b5619d1a0b7ebc21c88f93ab +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +708 + +GossipGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +a3520147df8711d7b1e7c14094fdd8df +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +421 + +TrainerGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +3a9d729a6ec22a92c755365d73112de3 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +593 + +MinimapGuideFlag.png +file + + + + +2010-04-24T16:42:59.000000Z +265d48626b274e787d613024e06972d8 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +789 + +TaxiGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +35698d09d1958086ca3b185888f07ee2 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +540 + +Chicken.png +file + + + + +2010-04-24T16:42:59.000000Z +f06219f5f4b99de8867485e20495b558 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +937 + +ActiveQuestIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +9964450bdaad7720228224b825e5468d +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +373 + +Stable.png +file + + + + +2010-04-24T16:42:59.000000Z +050d8c8c67e4c19bcec6c97b795a22e1 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +530 + +AvailableQuestIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +d4e6115c7a0d4865b8e749c11205174b +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +342 + +Innkeeper.png +file + + + + +2010-04-24T16:42:59.000000Z +ab5c2a3e0f17cd79fd0bb995e18d470f +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +913 + +Repair.png +file + + + + +2010-04-24T16:42:59.000000Z +a030fb66e3932bf753e6ff9fc20ceb97 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +369 + +PetitionGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +0bdb4fb0cb3e2fefa500121e230fec35 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +429 + +TabardGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +38b2953468d9dcf8196e17a379451064 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +421 + +VendorGossipIcon.png +file + + + + +2010-04-24T16:42:59.000000Z +dc054fc0dcfe78f26e0b3168b7a0ff02 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +527 + diff --git a/Nodes/.svn/prop-base/ActiveQuestIcon.png.svn-base b/Nodes/.svn/prop-base/ActiveQuestIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/ActiveQuestIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/AvailableQuestIcon.png.svn-base b/Nodes/.svn/prop-base/AvailableQuestIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/AvailableQuestIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/BankerGossipIcon.png.svn-base b/Nodes/.svn/prop-base/BankerGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/BankerGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/BinderGossipIcon.png.svn-base b/Nodes/.svn/prop-base/BinderGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/BinderGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/Chicken.png.svn-base b/Nodes/.svn/prop-base/Chicken.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/Chicken.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/GossipGossipIcon.png.svn-base b/Nodes/.svn/prop-base/GossipGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/GossipGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/Innkeeper.png.svn-base b/Nodes/.svn/prop-base/Innkeeper.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/Innkeeper.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/MinimapGuideFlag.png.svn-base b/Nodes/.svn/prop-base/MinimapGuideFlag.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/MinimapGuideFlag.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/PetitionGossipIcon.png.svn-base b/Nodes/.svn/prop-base/PetitionGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/PetitionGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/Repair.png.svn-base b/Nodes/.svn/prop-base/Repair.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/Repair.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/ResourceBlip.png.svn-base b/Nodes/.svn/prop-base/ResourceBlip.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/ResourceBlip.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/Scroll.png.svn-base b/Nodes/.svn/prop-base/Scroll.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/Scroll.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/Stable.png.svn-base b/Nodes/.svn/prop-base/Stable.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/Stable.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/TabardGossipIcon.png.svn-base b/Nodes/.svn/prop-base/TabardGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/TabardGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/TaxiGossipIcon.png.svn-base b/Nodes/.svn/prop-base/TaxiGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/TaxiGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/TrainerGossipIcon.png.svn-base b/Nodes/.svn/prop-base/TrainerGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/TrainerGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/VendorGossipIcon.png.svn-base b/Nodes/.svn/prop-base/VendorGossipIcon.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/VendorGossipIcon.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/prop-base/WarnTriangle.png.svn-base b/Nodes/.svn/prop-base/WarnTriangle.png.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Nodes/.svn/prop-base/WarnTriangle.png.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Nodes/.svn/text-base/ActiveQuestIcon.png.svn-base b/Nodes/.svn/text-base/ActiveQuestIcon.png.svn-base new file mode 100644 index 0000000..83136ab Binary files /dev/null and b/Nodes/.svn/text-base/ActiveQuestIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/AvailableQuestIcon.png.svn-base b/Nodes/.svn/text-base/AvailableQuestIcon.png.svn-base new file mode 100644 index 0000000..c2eba11 Binary files /dev/null and b/Nodes/.svn/text-base/AvailableQuestIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/BankerGossipIcon.png.svn-base b/Nodes/.svn/text-base/BankerGossipIcon.png.svn-base new file mode 100644 index 0000000..d0cb246 Binary files /dev/null and b/Nodes/.svn/text-base/BankerGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/BinderGossipIcon.png.svn-base b/Nodes/.svn/text-base/BinderGossipIcon.png.svn-base new file mode 100644 index 0000000..84864ef Binary files /dev/null and b/Nodes/.svn/text-base/BinderGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/Chicken.png.svn-base b/Nodes/.svn/text-base/Chicken.png.svn-base new file mode 100644 index 0000000..aa9a05a Binary files /dev/null and b/Nodes/.svn/text-base/Chicken.png.svn-base differ diff --git a/Nodes/.svn/text-base/GossipGossipIcon.png.svn-base b/Nodes/.svn/text-base/GossipGossipIcon.png.svn-base new file mode 100644 index 0000000..ccda72b Binary files /dev/null and b/Nodes/.svn/text-base/GossipGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/Innkeeper.png.svn-base b/Nodes/.svn/text-base/Innkeeper.png.svn-base new file mode 100644 index 0000000..d32537f Binary files /dev/null and b/Nodes/.svn/text-base/Innkeeper.png.svn-base differ diff --git a/Nodes/.svn/text-base/MinimapGuideFlag.png.svn-base b/Nodes/.svn/text-base/MinimapGuideFlag.png.svn-base new file mode 100644 index 0000000..083623e Binary files /dev/null and b/Nodes/.svn/text-base/MinimapGuideFlag.png.svn-base differ diff --git a/Nodes/.svn/text-base/PetitionGossipIcon.png.svn-base b/Nodes/.svn/text-base/PetitionGossipIcon.png.svn-base new file mode 100644 index 0000000..99bdfc2 Binary files /dev/null and b/Nodes/.svn/text-base/PetitionGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/Repair.png.svn-base b/Nodes/.svn/text-base/Repair.png.svn-base new file mode 100644 index 0000000..2d9c81c Binary files /dev/null and b/Nodes/.svn/text-base/Repair.png.svn-base differ diff --git a/Nodes/.svn/text-base/ResourceBlip.png.svn-base b/Nodes/.svn/text-base/ResourceBlip.png.svn-base new file mode 100644 index 0000000..60c335b Binary files /dev/null and b/Nodes/.svn/text-base/ResourceBlip.png.svn-base differ diff --git a/Nodes/.svn/text-base/Scroll.png.svn-base b/Nodes/.svn/text-base/Scroll.png.svn-base new file mode 100644 index 0000000..f7694bb Binary files /dev/null and b/Nodes/.svn/text-base/Scroll.png.svn-base differ diff --git a/Nodes/.svn/text-base/Stable.png.svn-base b/Nodes/.svn/text-base/Stable.png.svn-base new file mode 100644 index 0000000..5585426 Binary files /dev/null and b/Nodes/.svn/text-base/Stable.png.svn-base differ diff --git a/Nodes/.svn/text-base/TabardGossipIcon.png.svn-base b/Nodes/.svn/text-base/TabardGossipIcon.png.svn-base new file mode 100644 index 0000000..33dcfeb Binary files /dev/null and b/Nodes/.svn/text-base/TabardGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/TaxiGossipIcon.png.svn-base b/Nodes/.svn/text-base/TaxiGossipIcon.png.svn-base new file mode 100644 index 0000000..ec0644a Binary files /dev/null and b/Nodes/.svn/text-base/TaxiGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/TrainerGossipIcon.png.svn-base b/Nodes/.svn/text-base/TrainerGossipIcon.png.svn-base new file mode 100644 index 0000000..9be14a0 Binary files /dev/null and b/Nodes/.svn/text-base/TrainerGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/VendorGossipIcon.png.svn-base b/Nodes/.svn/text-base/VendorGossipIcon.png.svn-base new file mode 100644 index 0000000..d94cb5c Binary files /dev/null and b/Nodes/.svn/text-base/VendorGossipIcon.png.svn-base differ diff --git a/Nodes/.svn/text-base/WarnTriangle.png.svn-base b/Nodes/.svn/text-base/WarnTriangle.png.svn-base new file mode 100644 index 0000000..8ee0013 Binary files /dev/null and b/Nodes/.svn/text-base/WarnTriangle.png.svn-base differ diff --git a/Nodes/ActiveQuestIcon.png b/Nodes/ActiveQuestIcon.png new file mode 100644 index 0000000..83136ab Binary files /dev/null and b/Nodes/ActiveQuestIcon.png differ diff --git a/Nodes/AvailableQuestIcon.png b/Nodes/AvailableQuestIcon.png new file mode 100644 index 0000000..c2eba11 Binary files /dev/null and b/Nodes/AvailableQuestIcon.png differ diff --git a/Nodes/BankerGossipIcon.png b/Nodes/BankerGossipIcon.png new file mode 100644 index 0000000..d0cb246 Binary files /dev/null and b/Nodes/BankerGossipIcon.png differ diff --git a/Nodes/BinderGossipIcon.png b/Nodes/BinderGossipIcon.png new file mode 100644 index 0000000..84864ef Binary files /dev/null and b/Nodes/BinderGossipIcon.png differ diff --git a/Nodes/Chicken.png b/Nodes/Chicken.png new file mode 100644 index 0000000..aa9a05a Binary files /dev/null and b/Nodes/Chicken.png differ diff --git a/Nodes/GossipGossipIcon.png b/Nodes/GossipGossipIcon.png new file mode 100644 index 0000000..ccda72b Binary files /dev/null and b/Nodes/GossipGossipIcon.png differ diff --git a/Nodes/Innkeeper.png b/Nodes/Innkeeper.png new file mode 100644 index 0000000..d32537f Binary files /dev/null and b/Nodes/Innkeeper.png differ diff --git a/Nodes/MinimapGuideFlag.png b/Nodes/MinimapGuideFlag.png new file mode 100644 index 0000000..083623e Binary files /dev/null and b/Nodes/MinimapGuideFlag.png differ diff --git a/Nodes/PetitionGossipIcon.png b/Nodes/PetitionGossipIcon.png new file mode 100644 index 0000000..99bdfc2 Binary files /dev/null and b/Nodes/PetitionGossipIcon.png differ diff --git a/Nodes/Repair.png b/Nodes/Repair.png new file mode 100644 index 0000000..2d9c81c Binary files /dev/null and b/Nodes/Repair.png differ diff --git a/Nodes/ResourceBlip.png b/Nodes/ResourceBlip.png new file mode 100644 index 0000000..60c335b Binary files /dev/null and b/Nodes/ResourceBlip.png differ diff --git a/Nodes/Scroll.png b/Nodes/Scroll.png new file mode 100644 index 0000000..f7694bb Binary files /dev/null and b/Nodes/Scroll.png differ diff --git a/Nodes/Stable.png b/Nodes/Stable.png new file mode 100644 index 0000000..5585426 Binary files /dev/null and b/Nodes/Stable.png differ diff --git a/Nodes/TabardGossipIcon.png b/Nodes/TabardGossipIcon.png new file mode 100644 index 0000000..33dcfeb Binary files /dev/null and b/Nodes/TabardGossipIcon.png differ diff --git a/Nodes/TaxiGossipIcon.png b/Nodes/TaxiGossipIcon.png new file mode 100644 index 0000000..ec0644a Binary files /dev/null and b/Nodes/TaxiGossipIcon.png differ diff --git a/Nodes/TrainerGossipIcon.png b/Nodes/TrainerGossipIcon.png new file mode 100644 index 0000000..9be14a0 Binary files /dev/null and b/Nodes/TrainerGossipIcon.png differ diff --git a/Nodes/VendorGossipIcon.png b/Nodes/VendorGossipIcon.png new file mode 100644 index 0000000..d94cb5c Binary files /dev/null and b/Nodes/VendorGossipIcon.png differ diff --git a/Nodes/WarnTriangle.png b/Nodes/WarnTriangle.png new file mode 100644 index 0000000..8ee0013 Binary files /dev/null and b/Nodes/WarnTriangle.png differ diff --git a/ObjectConstants.h b/ObjectConstants.h new file mode 100644 index 0000000..c4940dc --- /dev/null +++ b/ObjectConstants.h @@ -0,0 +1,62 @@ +/* + * ObjectConstants.h + * Pocket Gnome + * + * Created by Jon Drummond on 5/20/08. + * Copyright 2008 Savory Software, LLC. All rights reserved. + * + */ + +#import "Objects_Enum.h" + +enum eObjectTypeID { + TYPEID_UNKNOWN = 0, + + TYPEID_ITEM = 1, + TYPEID_CONTAINER = 2, + TYPEID_UNIT = 3, + TYPEID_PLAYER = 4, + TYPEID_GAMEOBJECT = 5, + TYPEID_DYNAMICOBJECT = 6, + TYPEID_CORPSE = 7, + + TYPEID_AIGROUP = 8, + TYPEID_AREATRIGGER = 9, + + TYPEID_MAX = 10 +}; + +enum eObjectTypeMask { + TYPE_OBJECT = 1, + TYPE_ITEM = 2, + TYPE_CONTAINER = 4, + TYPE_UNIT = 8, + TYPE_PLAYER = 16, + TYPE_GAMEOBJECT = 32, + TYPE_DYNAMICOBJECT = 64, + TYPE_CORPSE = 128, + TYPE_AIGROUP = 256, + TYPE_AREATRIGGER = 512 +}; + +enum eObjectBase { + OBJECT_BASE_ID = 0x0, // UInt32 + OBJECT_FIELDS_PTR = 0x4, // UInt32 + OBJECT_FIELDS_END_PTR = 0x8, // UInt32 + OBJECT_UNKNOWN1 = 0xC, // UInt32 + OBJECT_TYPE_ID = 0x10, // UInt32 + OBJECT_GUID_LOW32 = 0x14, // UInt32 + OBJECT_STRUCT1_POINTER = 0x18, // other struct ptr + OBJECT_STRUCT2_POINTER = 0x1C, // "parent?" + // 0x24 is a duplicate of the value at 0x34 + OBJECT_STRUCT4_POINTER_COPY = 0x24, + OBJECT_GUID_ALL64 = 0x28, // GUID + OBJECT_STRUCT3_POINTER = 0x30, // "previous?" + OBJECT_STRUCT4_POINTER = 0x34, // "next?" + + OBJECT_UNIT_FIELDS_PTR = 0xEC, + ITEM_FIELDS_PTR = 0xF0, + //PLAYER_FIELDS_PTR = 0x131C, // this correct? hmmmm + +}; + diff --git a/ObjectController.h b/ObjectController.h new file mode 100644 index 0000000..3bb5de4 --- /dev/null +++ b/ObjectController.h @@ -0,0 +1,72 @@ +// +// ObjectController.h +// Pocket Gnome +// +// Created by Josh on 2/4/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class PlayerDataController; + +@class MemoryAccess; +@class WoWObject; + +// super class +@interface ObjectController : NSObject { + + IBOutlet Controller *controller; + IBOutlet PlayerDataController *playerData; + + NSMutableArray *_objectList; + NSMutableArray *_objectDataList; + + NSTimer *_updateTimer; + + IBOutlet NSView *view; + NSSize minSectionSize, maxSectionSize; + float _updateFrequency; +} + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property (readwrite) float updateFrequency; + +- (void)addAddresses: (NSArray*)addresses; + +- (void)resetAllObjects; + +// +// to be implemented by sub classes +// + +- (NSArray*)allObjects; + +- (void)refreshData; + +- (unsigned int)objectCount; + +- (unsigned int)objectCountWithFilters; + +- (id)objectWithAddress:(NSNumber*) address inMemory:(MemoryAccess*)memory; + +- (void)objectAddedToList:(WoWObject*)obj; + +- (NSString*)updateFrequencyKey; + +- (void)tableDoubleClick: (id)sender; + +- (WoWObject*)objectForRowIndex:(int)rowIndex; + +// for tables + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex; +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex; +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn; +- (void)sortUsingDescriptors:(NSArray*)sortDescriptors; + +@end diff --git a/ObjectController.m b/ObjectController.m new file mode 100644 index 0000000..6bc2073 --- /dev/null +++ b/ObjectController.m @@ -0,0 +1,230 @@ +// +// ObjectController.m +// Pocket Gnome +// +// Created by Josh on 2/4/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "ObjectController.h" +#import "Controller.h" +#import "PlayerDataController.h" + +#import "WoWObject.h" + +#import "MemoryAccess.h" + +@implementation ObjectController + + +- (id)init{ + self = [super init]; + if ( self != nil ) { + + _updateFrequency = 1.0f; + + _objectList = [[NSMutableArray array] retain]; + _objectDataList = [[NSMutableArray array] retain]; + + _updateTimer = nil; + + // wow memory access validity + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(memoryAccessValid:) + name: MemoryAccessValidNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(memoryAccessInvalid:) + name: MemoryAccessInvalidNotification + object: nil]; + } + + return self; +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; + + self.updateFrequency = [[NSUserDefaults standardUserDefaults] floatForKey: [self updateFrequencyKey]]; +} + +- (void)dealloc{ + [_objectList release]; + [_objectDataList release]; + + [super dealloc]; +} + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize updateFrequency = _updateFrequency; + +#pragma mark Storage + +- (void)addAddresses: (NSArray*) addresses { + NSMutableDictionary *addressDict = [NSMutableDictionary dictionary]; + NSMutableArray *objectsToRemove = [NSMutableArray array]; + NSMutableArray *dataList = _objectList; + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( ![memory isValid] ) return; + + //[self willChangeValueForKey: @"objectCount"]; + + // enumerate current object addresses + // determine which objects need to be removed + for ( WoWObject *obj in dataList ) { + + NSNumber *address = [NSNumber numberWithUnsignedLong:[obj baseAddress]]; + + // if our object is in the list, update it! + if ( [addresses containsObject:address] ){ + obj.notInObjectListCounter = 0; + } + // otherwise increment, it's not in the list :( (we could just remove it?) + else{ + obj.notInObjectListCounter++; + } + + // check if we should remove the object + if ( ![obj isStale] ) { //[(Node*)obj validToLoot] + [addressDict setObject: obj forKey: [NSNumber numberWithUnsignedLongLong: [obj baseAddress]]]; + } + else{ + [objectsToRemove addObject: obj]; + } + } + + // remove any if necessary + if ( [objectsToRemove count] ) { + [dataList removeObjectsInArray: objectsToRemove]; + } + + // 1 read + UInt32 playerBaseAddress = [playerData baselineAddress]; + + // add new objects if they don't currently exist + NSDate *now = [NSDate date]; + for ( NSNumber *address in addresses ) { + + // skip current player + if ( playerBaseAddress == [address unsignedIntValue] ) + continue; + + // new object + if ( ![addressDict objectForKey: address] ) { + id obj = [self objectWithAddress:address inMemory:memory]; + + if ( obj ){ + // fire this off, sometimes we will want to do something when we get a new object (i.e. load the objects name?) + [self objectAddedToList:obj]; + + // add the new object to our master list + [dataList addObject: obj]; + } + else{ + log(LOG_GENERAL, @"[ObjectController] I can has never be here? Calling class: %@", [self class]); + } + } + // we do this here to ensure ONLY the objects in the actual WoW list are updated + else { + [[addressDict objectForKey: address] setRefreshDate: now]; + } + } + + //[self didChangeValueForKey: @"objectCount"]; +} + +- (void)resetAllObjects{ + //[self willChangeValueForKey: @"objectCount"]; + [_objectList removeAllObjects]; + //[self didChangeValueForKey: @"objectCount"]; +} + +#pragma mark Notifications + +- (void)memoryAccessValid: (NSNotification*)notification { + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) return; + + log(LOG_GENERAL, @"Reloading memory access for %d objects.", [_objectList count]); + for ( WoWObject *obj in _objectList ) { + [obj setMemoryAccess: memory]; + } +} + +- (void)memoryAccessInvalid: (NSNotification*)notification { + [self resetAllObjects]; +} + +#pragma mark Accessors + +- (void)setUpdateFrequency: (float)frequency { + if(frequency < 0.1) frequency = 0.1; + + [self willChangeValueForKey: @"updateFrequency"]; + _updateFrequency = [[NSString stringWithFormat: @"%.2f", frequency] floatValue]; + [self didChangeValueForKey: @"updateFrequency"]; + + [[NSUserDefaults standardUserDefaults] setFloat: _updateFrequency forKey: [self updateFrequencyKey]]; + + [_updateTimer invalidate]; + _updateTimer = [NSTimer scheduledTimerWithTimeInterval: frequency target: self selector: @selector(refreshData) userInfo: nil repeats: YES]; +} + +- (NSString*)sectionTitle { + return @"Unknown"; +} + +#pragma mark Should be implemented by the sub class + +- (NSArray*)allObjects{ + return nil; +} + +- (void)refreshData { +} + +- (unsigned int)objectCount{ + return [_objectList count]; +} + +- (unsigned int)objectCountWithFilters{ + return [_objectList count]; +} + +- (void)objectAddedToList:(WoWObject*)obj{ +} + +- (id)objectWithAddress:(NSNumber*) address inMemory:(MemoryAccess*)memory{ + return nil; +} + +- (NSString*)updateFrequencyKey{ + return @"ObjectControllerUpdateFrequency"; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex{ + return nil; +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex{ +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn{ + return YES; +} + +- (void)sortUsingDescriptors:(NSArray*)sortDescriptors{ + [_objectDataList sortUsingDescriptors: sortDescriptors]; +} + +- (void)tableDoubleClick: (id)sender{ +} + +- (WoWObject*)objectForRowIndex:(int)rowIndex{ + return nil; +} + +@end diff --git a/Objects.xib b/Objects.xib new file mode 100644 index 0000000..a009f9a --- /dev/null +++ b/Objects.xib @@ -0,0 +1,7817 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + ObjectsController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 18 + {{13, 10}, {716, 423}} + + + YES + + 0 + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {645, 253} + + YES + + + 256 + {645, 17} + + + + + + 256 + {{646, 0}, {16, 17}} + + + + YES + + ID + 87 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + GUID + + LucidaGrande + 11 + 3100 + + + 6 + System + headerColor + + 3 + MQA + + + + 6 + System + headerTextColor + + 3 + MAA + + + + + 337772096 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + 2 + YES + YES + + + ID + YES + compare: + + + + Name + 54 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Name + YES + compare: + + + + Status + 20 + 10 + 3.4028229999999999e+38 + + 75628096 + 134219776 + + + + + + + 67239424 + 33685504 + + 549453824 + {17, 17} + + YES + + YES + + + + TU0AKgAAAGCAO2BP8AQWDQeEQmFQuGQ2GQJ2wSHROKRWKRCJRaNRuKxiOR+QQqPSGSSCRyWURaTymWQ2 +Vy2YQiXzGaTOaTCbTeWTmdSieT2ST+gSaB0OY0KjRukUmLQEAA8BAAADAAAAAQARAAABAQADAAAAAQAR +AAABAgADAAAABAAAARoBAwADAAAAAQAFAAABBgADAAAAAQACAAABEQAEAAAAAQAAAAgBEgADAAAAAQAB +AAABFQADAAAAAQAEAAABFgADAAAAAQARAAABFwAEAAAAAQAAAFgBHAADAAAAAQABAAABPQADAAAAAQAC +AAABUgADAAAAAQABAAABUwADAAAABAAAASKHcwAHAAAcaAAAASoAAAAAAAgACAAIAAgAAQABAAEAAQAA +HGhhcHBsAgAAAG1udHJSR0IgWFlaIAfaAAIACQAVABAAKGFjc3BBUFBMAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAD21gABAAAAANMtYXBwbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAEXJYWVoAAAFQAAAAFGdYWVoAAAFkAAAAFGJYWVoAAAF4AAAAFHd0cHQAAAGMAAAAFGNo +YWQAAAGgAAAALHJUUkMAAAHMAAAIDGdUUkMAAAnYAAAIDGJUUkMAABHkAAAIDGFhcmcAABnwAAAAIGFh +Z2cAABoQAAAAIGFhYmcAABowAAAAIHZjZ3QAABpQAAAAMG5kaW4AABqAAAAAOGRlc2MAABq4AAAAZWRz +Y20AABsgAAAA/G1tb2QAABwcAAAAKGNwcnQAABxEAAAAJFhZWiAAAAAAAABwawAAOWQAAAOfWFlaIAAA +AAAAAGE8AAC3CgAAFqBYWVogAAAAAAAAJS8AAA+SAAC47VhZWiAAAAAAAADzFgABAAAAARbKc2YzMgAA +AAAAAQxyAAAF+P//8x0AAAe6AAD9cv//+53///2kAAAD2QAAwHFjdXJ2AAAAAAAABAAAAAAFAAoADwAU +ABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCLAJAAlQCaAJ8ApACp +AK4AsgC3ALwAwQDGAMsA0ADVANoA4ADlAOoA8AD1APsBAQEHAQwBEgEYAR4BJQErATEBOAE+AUUBSwFS +AVkBYAFmAW0BdQF8AYMBigGSAZkBoQGoAbABuAHAAcgB0AHYAeAB6QHxAfoCAgILAhQCHAIlAi4CNwJA +AkoCUwJcAmYCcAJ5AoMCjQKXAqECqwK1Ar8CygLUAt8C6gL0Av8DCgMVAyADKwM3A0IDTQNZA2UDcAN8 +A4gDlAOgA6wDuQPFA9ID3gPrA/gEBAQRBB4ELAQ5BEYEVARhBG8EfASKBJgEpgS0BMIE0QTfBO4E/AUL +BRoFKAU3BUcFVgVlBXQFhAWTBaMFswXDBdMF4wXzBgMGFAYkBjUGRQZWBmcGeAaJBpoGqwa9Bs4G4Aby +BwMHFQcnBzkHTAdeB3AHgweWB6gHuwfOB+EH9AgICBsILwhCCFYIagh+CJIIpgi6CM4I4wj3CQwJIQk2 +CUsJYAl1CYoJoAm1CcsJ4An2CgwKIgo5Ck8KZQp8CpIKqQrACtcK7gsFCx0LNAtLC2MLewuTC6sLwwvb +C/MMDAwkDD0MVgxuDIcMoQy6DNMM7Q0GDSANOg1UDW4NiA2iDbwN1w3xDgwOJw5CDl0OeA6TDq8Oyg7m +DwIPHg86D1YPcg+OD6sPyA/kEAEQHhA7EFgQdhCTELEQzhDsEQoRKBFGEWQRgxGhEcAR3xH+Eh0SPBJb +EnoSmhK5EtkS+RMZEzkTWRN6E5oTuxPbE/wUHRQ+FF8UgRSiFMQU5RUHFSkVSxVtFZAVshXVFfcWGhY9 +FmAWgxanFsoW7hcSFzUXWRd9F6IXxhfqGA8YNBhZGH0YoxjIGO0ZExk4GV4ZhBmqGdAZ9hodGkMaahqQ +Grca3hsGGy0bVBt8G6MbyxvzHBscQxxsHJQcvRzmHQ4dNx1gHYodsx3dHgYeMB5aHoQerh7YHwMfLR9Y +H4Mfrh/ZIAQgMCBbIIcgsyDeIQohNyFjIY8hvCHpIhUiQiJwIp0iyiL4IyUjUyOBI68j3SQMJDokaSSX +JMYk9SUkJVQlgyWzJeImEiZCJnImoybTJwMnNCdlJ5Ynxyf4KCooWyiNKL4o8CkiKVUphym5KewqHypS +KoUquCrrKx4rUiuGK7or7iwiLFYsiiy/LPQtKS1eLZMtyC39LjMuaS6eLtQvCy9BL3cvri/kMBswUjCJ +MMEw+DEwMWcxnzHXMg8ySDKAMrgy8TMqM2MznDPVNA80SDSCNLw09jUwNWo1pTXfNho2VTaQNss3BjdC +N343uTf1ODE4bTiqOOY5IzlgOZ052joXOlQ6kjrPOw07SzuJO8c8BjxEPIM8wj0BPUA9fz2/Pf4+Pj5+ +Pr4+/j8/P38/wEAAQEFAgkDEQQVBR0GIQcpCDEJOQpFC00MWQ1hDm0PeRCFEZUSoROxFMEV0RbhF/EZA +RoVGykcOR1NHmUfeSCNIaUivSPVJO0mBScdKDkpVSptK4ksqS3FLuEwATEhMkEzYTSBNaE2xTfpOQk6M +TtVPHk9nT7FP+1BFUI9Q2VEkUW5RuVIEUk9SmlLlUzFTfFPIVBRUYFStVPlVRlWSVd9WLFZ6VsdXFFdi +V7BX/lhMWJpY6Vk4WYZZ1VokWnRaw1sTW2NbslwDXFNco1z0XURdlV3mXjdeiV7aXyxffl/QYCJgdGDH +YRlhbGG/YhJiZWK5YwxjYGO0ZAhkXGSxZQVlWmWvZgRmWWavZwRnWmewaAZoXGiyaQlpX2m2ag1qZGq8 +axNra2vDbBtsc2zLbSNtfG3Vbi5uh27gbzpvk2/tcEdwoXD7cVZxsHILcmZywXMcc3hz03QvdIt053VD +daB1/HZZdrZ3E3dwd854K3iJeOd5RXmjegJ6YHq/ex57fXvcfDx8m3z7fVt9u34bfnx+3H89f55//4Bg +gMKBI4GFgeeCSYKrgw6DcIPThDaEmYT8hWCFw4YnhouG74dUh7iIHYiBiOaJTImxihaKfIrii0iLrowU +jHuM4o1Ija+OF45+juWPTY+1kB2QhZDukVaRv5IokpGS+pNkk82UN5ShlQuVdZXglkqWtZcgl4uX95hi +mM6ZOpmmmhKafprrm1ebxJwxnJ+dDJ15neeeVZ7DnzGfoKAPoH2g7KFbocuiOqKqoxqjiqP6pGqk26VM +pbymLqafpxCngqf0qGWo2KlKqbyqL6qiqxWriKv7rG+s461WrcuuP66zryivnbARsIew/LFxseeyXbLT +s0mzv7Q2tK21JLWbthK2ibcBt3m38bhpuOG5WrnSuku6xLs+u7e8MLyqvSS9nr4ZvpO/Dr+JwATAf8D6 +wXbB8cJtwunDZsPixF/E3MVZxdbGU8bRx07HzMhKyMnJR8nGykXKxMtDy8LMQszBzUHNwc5CzsLPQ8/D +0ETQxtFH0cjSStLM007T0NRT1NbVWNXb1l7W4tdl1+nYbdjx2XXZ+tp/2wPbiNwO3JPdGd2e3iTeqt8x +37fgPuDF4Uzh0+Ja4uLjauPy5HrlAuWL5hPmnOcl56/oOOjC6Uzp1upg6urrdev/7IrtFu2h7izuuO9E +79DwXPDp8XXyAvKP8xzzqvQ39MX1U/Xh9m/2/veM+Bv4qvk5+cn6Wfro+3j8CPyZ/Sn9uv5L/tz/bmN1 +cnYAAAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAARQBKAE8AVABZAF4AYwBoAG0AcgB3 +AHwAgQCGAIsAkACVAJoAnwCkAKkArgCyALcAvADBAMYAywDQANUA2gDgAOUA6gDwAPUA+wEBAQcBDAES +ARgBHgElASsBMQE4AT4BRQFLAVIBWQFgAWYBbQF1AXwBgwGKAZIBmQGhAagBsAG4AcAByAHQAdgB4AHp +AfEB+gICAgsCFAIcAiUCLgI3AkACSgJTAlwCZgJwAnkCgwKNApcCoQKrArUCvwLKAtQC3wLqAvQC/wMK +AxUDIAMrAzcDQgNNA1kDZQNwA3wDiAOUA6ADrAO5A8UD0gPeA+sD+AQEBBEEHgQsBDkERgRUBGEEbwR8 +BIoEmASmBLQEwgTRBN8E7gT8BQsFGgUoBTcFRwVWBWUFdAWEBZMFowWzBcMF0wXjBfMGAwYUBiQGNQZF +BlYGZwZ4BokGmgarBr0GzgbgBvIHAwcVBycHOQdMB14HcAeDB5YHqAe7B84H4Qf0CAgIGwgvCEIIVghq +CH4IkgimCLoIzgjjCPcJDAkhCTYJSwlgCXUJigmgCbUJywngCfYKDAoiCjkKTwplCnwKkgqpCsAK1wru +CwULHQs0C0sLYwt7C5MLqwvDC9sL8wwMDCQMPQxWDG4MhwyhDLoM0wztDQYNIA06DVQNbg2IDaINvA3X +DfEODA4nDkIOXQ54DpMOrw7KDuYPAg8eDzoPVg9yD44Pqw/ID+QQARAeEDsQWBB2EJMQsRDOEOwRChEo +EUYRZBGDEaERwBHfEf4SHRI8ElsSehKaErkS2RL5ExkTORNZE3oTmhO7E9sT/BQdFD4UXxSBFKIUxBTl +FQcVKRVLFW0VkBWyFdUV9xYaFj0WYBaDFqcWyhbuFxIXNRdZF30XohfGF+oYDxg0GFkYfRijGMgY7RkT +GTgZXhmEGaoZ0Bn2Gh0aQxpqGpAatxreGwYbLRtUG3wboxvLG/McGxxDHGwclBy9HOYdDh03HWAdih2z +Hd0eBh4wHloehB6uHtgfAx8tH1gfgx+uH9kgBCAwIFsghyCzIN4hCiE3IWMhjyG8IekiFSJCInAinSLK +IvgjJSNTI4EjryPdJAwkOiRpJJckxiT1JSQlVCWDJbMl4iYSJkImciajJtMnAyc0J2UnlifHJ/goKihb +KI0ovijwKSIpVSmHKbkp7CofKlIqhSq4KusrHitSK4YruivuLCIsViyKLL8s9C0pLV4tky3ILf0uMy5p +Lp4u1C8LL0Evdy+uL+QwGzBSMIkwwTD4MTAxZzGfMdcyDzJIMoAyuDLxMyozYzOcM9U0DzRINII0vDT2 +NTA1ajWlNd82GjZVNpA2yzcGN0I3fje5N/U4MThtOKo45jkjOWA5nTnaOhc6VDqSOs87DTtLO4k7xzwG +PEQ8gzzCPQE9QD1/Pb89/j4+Pn4+vj7+Pz8/fz/AQABAQUCCQMRBBUFHQYhBykIMQk5CkULTQxZDWEOb +Q95EIURlRKhE7EUwRXRFuEX8RkBGhUbKRw5HU0eZR95II0hpSK9I9Uk7SYFJx0oOSlVKm0riSypLcUu4 +TABMSEyQTNhNIE1oTbFN+k5CToxO1U8eT2dPsU/7UEVQj1DZUSRRblG5UgRST1KaUuVTMVN8U8hUFFRg +VK1U+VVGVZJV31YsVnpWx1cUV2JXsFf+WExYmljpWThZhlnVWiRadFrDWxNbY1uyXANcU1yjXPRdRF2V +XeZeN16JXtpfLF9+X9BgImB0YMdhGWFsYb9iEmJlYrljDGNgY7RkCGRcZLFlBWVaZa9mBGZZZq9nBGda +Z7BoBmhcaLJpCWlfabZqDWpkarxrE2tra8NsG2xzbMttI218bdVuLm6HbuBvOm+Tb+1wR3ChcPtxVnGw +cgtyZnLBcxxzeHPTdC90i3TndUN1oHX8dll2tncTd3B3zngreIl453lFeaN6Anpger97Hnt9e9x8PHyb +fPt9W327fht+fH7cfz1/nn//gGCAwoEjgYWB54JJgquDDoNwg9OENoSZhPyFYIXDhieGi4bvh1SHuIgd +iIGI5olMibGKFop8iuKLSIuujBSMe4zijUiNr44Xjn6O5Y9Nj7WQHZCFkO6RVpG/kiiSkZL6k2STzZQ3 +lKGVC5V1leCWSpa1lyCXi5f3mGKYzpk6maaaEpp+muubV5vEnDGcn50MnXmd555VnsOfMZ+goA+gfaDs +oVuhy6I6oqqjGqOKo/qkaqTbpUylvKYupp+nEKeCp/SoZajYqUqpvKovqqKrFauIq/usb6zjrVaty64/ +rrOvKK+dsBGwh7D8sXGx57JdstOzSbO/tDa0rbUktZu2EraJtwG3ebfxuGm44blaudK6S7rEuz67t7ww +vKq9JL2evhm+k78Ov4nABMB/wPrBdsHxwm3C6cNmw+LEX8TcxVnF1sZTxtHHTsfMyErIyclHycbKRcrE +y0PLwsxCzMHNQc3BzkLOws9Dz8PQRNDG0UfRyNJK0szTTtPQ1FPU1tVY1dvWXtbi12XX6dht2PHZddn6 +2n/bA9uI3A7ck90Z3Z7eJN6q3zHft+A+4MXhTOHT4lri4uNq4/LkeuUC5YvmE+ac5yXnr+g46MLpTOnW +6mDq6ut16//siu0W7aHuLO6470Tv0PBc8OnxdfIC8o/zHPOq9Df0xfVT9eH2b/b+94z4G/iq+Tn5yfpZ ++uj7ePwI/Jn9Kf26/kv+3P9uY3VydgAAAAAAAAQAAAAABQAKAA8AFAAZAB4AIwAoAC0AMgA3ADsAQABF +AEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQAJUAmgCfAKQAqQCuALIAtwC8AMEAxgDLANAA1QDa +AOAA5QDqAPAA9QD7AQEBBwEMARIBGAEeASUBKwExATgBPgFFAUsBUgFZAWABZgFtAXUBfAGDAYoBkgGZ +AaEBqAGwAbgBwAHIAdAB2AHgAekB8QH6AgICCwIUAhwCJQIuAjcCQAJKAlMCXAJmAnACeQKDAo0ClwKh +AqsCtQK/AsoC1ALfAuoC9AL/AwoDFQMgAysDNwNCA00DWQNlA3ADfAOIA5QDoAOsA7kDxQPSA94D6wP4 +BAQEEQQeBCwEOQRGBFQEYQRvBHwEigSYBKYEtATCBNEE3wTuBPwFCwUaBSgFNwVHBVYFZQV0BYQFkwWj +BbMFwwXTBeMF8wYDBhQGJAY1BkUGVgZnBngGiQaaBqsGvQbOBuAG8gcDBxUHJwc5B0wHXgdwB4MHlgeo +B7sHzgfhB/QICAgbCC8IQghWCGoIfgiSCKYIugjOCOMI9wkMCSEJNglLCWAJdQmKCaAJtQnLCeAJ9goM +CiIKOQpPCmUKfAqSCqkKwArXCu4LBQsdCzQLSwtjC3sLkwurC8ML2wvzDAwMJAw9DFYMbgyHDKEMugzT +DO0NBg0gDToNVA1uDYgNog28DdcN8Q4MDicOQg5dDngOkw6vDsoO5g8CDx4POg9WD3IPjg+rD8gP5BAB +EB4QOxBYEHYQkxCxEM4Q7BEKESgRRhFkEYMRoRHAEd8R/hIdEjwSWxJ6EpoSuRLZEvkTGRM5E1kTehOa +E7sT2xP8FB0UPhRfFIEUohTEFOUVBxUpFUsVbRWQFbIV1RX3FhoWPRZgFoMWpxbKFu4XEhc1F1kXfRei +F8YX6hgPGDQYWRh9GKMYyBjtGRMZOBleGYQZqhnQGfYaHRpDGmoakBq3Gt4bBhstG1QbfBujG8sb8xwb +HEMcbByUHL0c5h0OHTcdYB2KHbMd3R4GHjAeWh6EHq4e2B8DHy0fWB+DH64f2SAEIDAgWyCHILMg3iEK +ITchYyGPIbwh6SIVIkIicCKdIsoi+CMlI1MjgSOvI90kDCQ6JGkklyTGJPUlJCVUJYMlsyXiJhImQiZy +JqMm0ycDJzQnZSeWJ8cn+CgqKFsojSi+KPApIilVKYcpuSnsKh8qUiqFKrgq6yseK1Irhiu6K+4sIixW +LIosvyz0LSktXi2TLcgt/S4zLmkuni7ULwsvQS93L64v5DAbMFIwiTDBMPgxMDFnMZ8x1zIPMkgygDK4 +MvEzKjNjM5wz1TQPNEg0gjS8NPY1MDVqNaU13zYaNlU2kDbLNwY3Qjd+N7k39TgxOG04qjjmOSM5YDmd +Odo6FzpUOpI6zzsNO0s7iTvHPAY8RDyDPMI9AT1APX89vz3+Pj4+fj6+Pv4/Pz9/P8BAAEBBQIJAxEEF +QUdBiEHKQgxCTkKRQtNDFkNYQ5tD3kQhRGVEqETsRTBFdEW4RfxGQEaFRspHDkdTR5lH3kgjSGlIr0j1 +STtJgUnHSg5KVUqbSuJLKktxS7hMAExITJBM2E0gTWhNsU36TkJOjE7VTx5PZ0+xT/tQRVCPUNlRJFFu +UblSBFJPUppS5VMxU3xTyFQUVGBUrVT5VUZVklXfVixWelbHVxRXYlewV/5YTFiaWOlZOFmGWdVaJFp0 +WsNbE1tjW7JcA1xTXKNc9F1EXZVd5l43Xole2l8sX35f0GAiYHRgx2EZYWxhv2ISYmViuWMMY2BjtGQI +ZFxksWUFZVplr2YEZllmr2cEZ1pnsGgGaFxosmkJaV9ptmoNamRqvGsTa2trw2wbbHNsy20jbXxt1W4u +bodu4G86b5Nv7XBHcKFw+3FWcbByC3JmcsFzHHN4c9N0L3SLdOd1Q3Wgdfx2WXa2dxN3cHfOeCt4iXjn +eUV5o3oCemB6v3see3173Hw8fJt8+31bfbt+G358ftx/PX+ef/+AYIDCgSOBhYHngkmCq4MOg3CD04Q2 +hJmE/IVghcOGJ4aLhu+HVIe4iB2IgYjmiUyJsYoWinyK4otIi66MFIx7jOKNSI2vjheOfo7lj02PtZAd +kIWQ7pFWkb+SKJKRkvqTZJPNlDeUoZULlXWV4JZKlrWXIJeLl/eYYpjOmTqZppoSmn6a65tXm8ScMZyf +nQydeZ3nnlWew58xn6CgD6B9oOyhW6HLojqiqqMao4qj+qRqpNulTKW8pi6mn6cQp4Kn9KhlqNipSqm8 +qi+qoqsVq4ir+6xvrOOtVq3Lrj+us68or52wEbCHsPyxcbHnsl2y07NJs7+0NrSttSS1m7YStom3Abd5 +t/G4abjhuVq50rpLusS7Pru3vDC8qr0kvZ6+Gb6Tvw6/icAEwH/A+sF2wfHCbcLpw2bD4sRfxNzFWcXW +xlPG0cdOx8zISsjJyUfJxspFysTLQ8vCzELMwc1BzcHOQs7Cz0PPw9BE0MbRR9HI0krSzNNO09DUU9TW +1VjV29Ze1uLXZdfp2G3Y8dl12fraf9sD24jcDtyT3Rndnt4k3qrfMd+34D7gxeFM4dPiWuLi42rj8uR6 +5QLli+YT5pznJeev6DjowulM6dbqYOrq63Xr/+yK7Rbtoe4s7rjvRO/Q8Fzw6fF18gLyj/Mc86r0N/TF +9VP14fZv9v73jPgb+Kr5OfnJ+ln66Pt4/Aj8mf0p/br+S/7c/25wYXJhAAAAAAADAAAAAmZmAADypwAA +DVkAABPQAAALA3BhcmEAAAAAAAMAAAACZmYAAPKnAAANWQAAE9AAAAsDcGFyYQAAAAAAAwAAAAJmZgAA +8qcAAA1ZAAAT0AAACwN2Y2d0AAAAAAAAAAEAANieAAAAAAABAAAAANieAAAAAAABAAAAANieAAAAAAAB +AABuZGluAAAAAAAAADAAAKPAAABUgAAATMAAAJvAAAAmgAAAD0AAAFAAAABUQAACmZoAApmaAAKZmmRl +c2MAAAAAAAAAC1N5bmNNYXN0ZXIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWx1YwAAAAAAAAASAAAADG5s +TkwAAAAUAAAA6GRhREsAAAAUAAAA6HBsUEwAAAAUAAAA6GVuVVMAAAAUAAAA6G5iTk8AAAAUAAAA6GZy +RlIAAAAUAAAA6HB0QlIAAAAUAAAA6HB0UFQAAAAUAAAA6HpoQ04AAAAUAAAA6GVzRVMAAAAUAAAA6Gph +SlAAAAAUAAAA6HJ1UlUAAAAUAAAA6HN2U0UAAAAUAAAA6HpoVFcAAAAUAAAA6GRlREUAAAAUAAAA6GZp +RkkAAAAUAAAA6Gl0SVQAAAAUAAAA6GtvS1IAAAAUAAAA6ABTAHkAbgBjAE0AYQBzAHQAZQBybW1vZAAA +AAAAAEwtAAADaktJMjTDsagAAAAAAAAAAAAAAAAAAAAAAHRleHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJ +bmMuLCAyMDEwAA + + NSCalibratedRGBColorSpace + 8 + 24 + 0 + + + + + 3 + MCAwAA + + + + 0 + 0 + 0 + NO + + + + Status + YES + compare: + + + + Level + 25 + 25 + 50 + + 75628096 + 134219776 + Lvl + + + + + + 337772096 + 134219776 + Text Cell + + + + + + 2 + YES + YES + + + Level + YES + compare: + + + + Race + 130 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Race + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Race + YES + compare: + + + + Class + 184 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Class + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Class + YES + localizedCaseInsensitiveCompare: + + + + Distance + 65 + 40 + 1000 + + 75628096 + 2048 + Distance + + + 3 + MC4zMzMzMzI5OQA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Distance + YES + compare: + + + + Health + 56 + 40 + 1000 + + 75628096 + 134219776 + Health + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Health + YES + compare: + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -692027392 + + + 1 + 15 + 0 + YES + 0 + + + {{1, 17}, {645, 253}} + + + + + 4 + + + + 256 + {{646, 17}, {15, 253}} + + + _doScroller: + 37 + 0.19473679999999999 + + + + 256 + {{1, 270}, {645, 15}} + + 1 + + _doScroller: + 0.88701298701298703 + + + + 2304 + + YES + + + {{1, 0}, {645, 17}} + + + + + 4 + + + + {{17, 88}, {662, 286}} + + + 50 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 292 + {{251, 62}, {118, 18}} + + YES + + -2080244224 + 67108864 + Color by Level + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 292 + {{135, 61}, {110, 19}} + + YES + + -2080244224 + 134217728 + Face Player + + LucidaGrande + 12 + 16 + + + -2034482945 + 164 + + NSImage + NSQuickLookTemplate + + + + 400 + 75 + + + + + 292 + {{17, 61}, {111, 19}} + + YES + + 67239424 + 134217728 + Target Player + + + -2034482945 + 164 + + NSImage + NSRevealFreestandingTemplate + + + + 400 + 75 + + + + + 289 + {{565, 60}, {114, 19}} + + YES + + 67239424 + 134217728 + Reload Names + + + -2035007233 + 164 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 34 + + YES + + + 256 + + YES + + + 268 + {{83, 12}, {112, 18}} + + YES + + -2080244224 + 0 + Track Friendly + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{15, 13}, {64, 17}} + + YES + + 67239488 + 272630784 + Tracking: + + + + 6 + System + controlColor + + + + + + + + 268 + {{211, 12}, {119, 18}} + + YES + + -2080244224 + 0 + Track Hostile + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {666, 40}} + + + + {{14, 5}, {668, 42}} + + {0, 0} + + 67239424 + 0 + Box + + + 6 + System + textBackgroundColor + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {696, 377}} + + Players + + + + + 1 + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {645, 199} + + YES + + + 256 + {645, 17} + + + + + + 256 + {{646, 0}, {16, 17}} + + + + YES + + ID + 50 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + ID + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + ID + YES + compare: + + + + Status + 20 + 10 + 3.4028229999999999e+38 + + 75628096 + 134219776 + + + + + + + 67239424 + 33685504 + + 549453824 + {17, 17} + + YES + + YES + + + + TU0AKgAAAGCAO2BP8AQWDQeEQmFQuGQ2GQJ2wSHROKRWKRCJRaNRuKxiOR+QQqPSGSSCRyWURaTymWQ2 +Vy2YQiXzGaTOaTCbTeWTmdSieT2ST+gSaB0OY0KjRukUmLQEAA8BAAADAAAAAQARAAABAQADAAAAAQAR +AAABAgADAAAABAAAARoBAwADAAAAAQAFAAABBgADAAAAAQACAAABEQAEAAAAAQAAAAgBEgADAAAAAQAB +AAABFQADAAAAAQAEAAABFgADAAAAAQARAAABFwAEAAAAAQAAAFgBHAADAAAAAQABAAABPQADAAAAAQAC +AAABUgADAAAAAQABAAABUwADAAAABAAAASKHcwAHAAAcaAAAASoAAAAAAAgACAAIAAgAAQABAAEAAQAA +HGhhcHBsAgAAAG1udHJSR0IgWFlaIAfaAAIACQAVABAAKGFjc3BBUFBMAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAD21gABAAAAANMtYXBwbAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAEXJYWVoAAAFQAAAAFGdYWVoAAAFkAAAAFGJYWVoAAAF4AAAAFHd0cHQAAAGMAAAAFGNo +YWQAAAGgAAAALHJUUkMAAAHMAAAIDGdUUkMAAAnYAAAIDGJUUkMAABHkAAAIDGFhcmcAABnwAAAAIGFh +Z2cAABoQAAAAIGFhYmcAABowAAAAIHZjZ3QAABpQAAAAMG5kaW4AABqAAAAAOGRlc2MAABq4AAAAZWRz +Y20AABsgAAAA/G1tb2QAABwcAAAAKGNwcnQAABxEAAAAJFhZWiAAAAAAAABwawAAOWQAAAOfWFlaIAAA +AAAAAGE8AAC3CgAAFqBYWVogAAAAAAAAJS8AAA+SAAC47VhZWiAAAAAAAADzFgABAAAAARbKc2YzMgAA +AAAAAQxyAAAF+P//8x0AAAe6AAD9cv//+53///2kAAAD2QAAwHFjdXJ2AAAAAAAABAAAAAAFAAoADwAU +ABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCLAJAAlQCaAJ8ApACp +AK4AsgC3ALwAwQDGAMsA0ADVANoA4ADlAOoA8AD1APsBAQEHAQwBEgEYAR4BJQErATEBOAE+AUUBSwFS +AVkBYAFmAW0BdQF8AYMBigGSAZkBoQGoAbABuAHAAcgB0AHYAeAB6QHxAfoCAgILAhQCHAIlAi4CNwJA +AkoCUwJcAmYCcAJ5AoMCjQKXAqECqwK1Ar8CygLUAt8C6gL0Av8DCgMVAyADKwM3A0IDTQNZA2UDcAN8 +A4gDlAOgA6wDuQPFA9ID3gPrA/gEBAQRBB4ELAQ5BEYEVARhBG8EfASKBJgEpgS0BMIE0QTfBO4E/AUL +BRoFKAU3BUcFVgVlBXQFhAWTBaMFswXDBdMF4wXzBgMGFAYkBjUGRQZWBmcGeAaJBpoGqwa9Bs4G4Aby +BwMHFQcnBzkHTAdeB3AHgweWB6gHuwfOB+EH9AgICBsILwhCCFYIagh+CJIIpgi6CM4I4wj3CQwJIQk2 +CUsJYAl1CYoJoAm1CcsJ4An2CgwKIgo5Ck8KZQp8CpIKqQrACtcK7gsFCx0LNAtLC2MLewuTC6sLwwvb +C/MMDAwkDD0MVgxuDIcMoQy6DNMM7Q0GDSANOg1UDW4NiA2iDbwN1w3xDgwOJw5CDl0OeA6TDq8Oyg7m +DwIPHg86D1YPcg+OD6sPyA/kEAEQHhA7EFgQdhCTELEQzhDsEQoRKBFGEWQRgxGhEcAR3xH+Eh0SPBJb +EnoSmhK5EtkS+RMZEzkTWRN6E5oTuxPbE/wUHRQ+FF8UgRSiFMQU5RUHFSkVSxVtFZAVshXVFfcWGhY9 +FmAWgxanFsoW7hcSFzUXWRd9F6IXxhfqGA8YNBhZGH0YoxjIGO0ZExk4GV4ZhBmqGdAZ9hodGkMaahqQ +Grca3hsGGy0bVBt8G6MbyxvzHBscQxxsHJQcvRzmHQ4dNx1gHYodsx3dHgYeMB5aHoQerh7YHwMfLR9Y +H4Mfrh/ZIAQgMCBbIIcgsyDeIQohNyFjIY8hvCHpIhUiQiJwIp0iyiL4IyUjUyOBI68j3SQMJDokaSSX +JMYk9SUkJVQlgyWzJeImEiZCJnImoybTJwMnNCdlJ5Ynxyf4KCooWyiNKL4o8CkiKVUphym5KewqHypS +KoUquCrrKx4rUiuGK7or7iwiLFYsiiy/LPQtKS1eLZMtyC39LjMuaS6eLtQvCy9BL3cvri/kMBswUjCJ +MMEw+DEwMWcxnzHXMg8ySDKAMrgy8TMqM2MznDPVNA80SDSCNLw09jUwNWo1pTXfNho2VTaQNss3BjdC +N343uTf1ODE4bTiqOOY5IzlgOZ052joXOlQ6kjrPOw07SzuJO8c8BjxEPIM8wj0BPUA9fz2/Pf4+Pj5+ +Pr4+/j8/P38/wEAAQEFAgkDEQQVBR0GIQcpCDEJOQpFC00MWQ1hDm0PeRCFEZUSoROxFMEV0RbhF/EZA +RoVGykcOR1NHmUfeSCNIaUivSPVJO0mBScdKDkpVSptK4ksqS3FLuEwATEhMkEzYTSBNaE2xTfpOQk6M +TtVPHk9nT7FP+1BFUI9Q2VEkUW5RuVIEUk9SmlLlUzFTfFPIVBRUYFStVPlVRlWSVd9WLFZ6VsdXFFdi +V7BX/lhMWJpY6Vk4WYZZ1VokWnRaw1sTW2NbslwDXFNco1z0XURdlV3mXjdeiV7aXyxffl/QYCJgdGDH +YRlhbGG/YhJiZWK5YwxjYGO0ZAhkXGSxZQVlWmWvZgRmWWavZwRnWmewaAZoXGiyaQlpX2m2ag1qZGq8 +axNra2vDbBtsc2zLbSNtfG3Vbi5uh27gbzpvk2/tcEdwoXD7cVZxsHILcmZywXMcc3hz03QvdIt053VD +daB1/HZZdrZ3E3dwd854K3iJeOd5RXmjegJ6YHq/ex57fXvcfDx8m3z7fVt9u34bfnx+3H89f55//4Bg +gMKBI4GFgeeCSYKrgw6DcIPThDaEmYT8hWCFw4YnhouG74dUh7iIHYiBiOaJTImxihaKfIrii0iLrowU +jHuM4o1Ija+OF45+juWPTY+1kB2QhZDukVaRv5IokpGS+pNkk82UN5ShlQuVdZXglkqWtZcgl4uX95hi +mM6ZOpmmmhKafprrm1ebxJwxnJ+dDJ15neeeVZ7DnzGfoKAPoH2g7KFbocuiOqKqoxqjiqP6pGqk26VM +pbymLqafpxCngqf0qGWo2KlKqbyqL6qiqxWriKv7rG+s461WrcuuP66zryivnbARsIew/LFxseeyXbLT +s0mzv7Q2tK21JLWbthK2ibcBt3m38bhpuOG5WrnSuku6xLs+u7e8MLyqvSS9nr4ZvpO/Dr+JwATAf8D6 +wXbB8cJtwunDZsPixF/E3MVZxdbGU8bRx07HzMhKyMnJR8nGykXKxMtDy8LMQszBzUHNwc5CzsLPQ8/D +0ETQxtFH0cjSStLM007T0NRT1NbVWNXb1l7W4tdl1+nYbdjx2XXZ+tp/2wPbiNwO3JPdGd2e3iTeqt8x +37fgPuDF4Uzh0+Ja4uLjauPy5HrlAuWL5hPmnOcl56/oOOjC6Uzp1upg6urrdev/7IrtFu2h7izuuO9E +79DwXPDp8XXyAvKP8xzzqvQ39MX1U/Xh9m/2/veM+Bv4qvk5+cn6Wfro+3j8CPyZ/Sn9uv5L/tz/bmN1 +cnYAAAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAARQBKAE8AVABZAF4AYwBoAG0AcgB3 +AHwAgQCGAIsAkACVAJoAnwCkAKkArgCyALcAvADBAMYAywDQANUA2gDgAOUA6gDwAPUA+wEBAQcBDAES +ARgBHgElASsBMQE4AT4BRQFLAVIBWQFgAWYBbQF1AXwBgwGKAZIBmQGhAagBsAG4AcAByAHQAdgB4AHp +AfEB+gICAgsCFAIcAiUCLgI3AkACSgJTAlwCZgJwAnkCgwKNApcCoQKrArUCvwLKAtQC3wLqAvQC/wMK +AxUDIAMrAzcDQgNNA1kDZQNwA3wDiAOUA6ADrAO5A8UD0gPeA+sD+AQEBBEEHgQsBDkERgRUBGEEbwR8 +BIoEmASmBLQEwgTRBN8E7gT8BQsFGgUoBTcFRwVWBWUFdAWEBZMFowWzBcMF0wXjBfMGAwYUBiQGNQZF +BlYGZwZ4BokGmgarBr0GzgbgBvIHAwcVBycHOQdMB14HcAeDB5YHqAe7B84H4Qf0CAgIGwgvCEIIVghq +CH4IkgimCLoIzgjjCPcJDAkhCTYJSwlgCXUJigmgCbUJywngCfYKDAoiCjkKTwplCnwKkgqpCsAK1wru +CwULHQs0C0sLYwt7C5MLqwvDC9sL8wwMDCQMPQxWDG4MhwyhDLoM0wztDQYNIA06DVQNbg2IDaINvA3X +DfEODA4nDkIOXQ54DpMOrw7KDuYPAg8eDzoPVg9yD44Pqw/ID+QQARAeEDsQWBB2EJMQsRDOEOwRChEo +EUYRZBGDEaERwBHfEf4SHRI8ElsSehKaErkS2RL5ExkTORNZE3oTmhO7E9sT/BQdFD4UXxSBFKIUxBTl +FQcVKRVLFW0VkBWyFdUV9xYaFj0WYBaDFqcWyhbuFxIXNRdZF30XohfGF+oYDxg0GFkYfRijGMgY7RkT +GTgZXhmEGaoZ0Bn2Gh0aQxpqGpAatxreGwYbLRtUG3wboxvLG/McGxxDHGwclBy9HOYdDh03HWAdih2z +Hd0eBh4wHloehB6uHtgfAx8tH1gfgx+uH9kgBCAwIFsghyCzIN4hCiE3IWMhjyG8IekiFSJCInAinSLK +IvgjJSNTI4EjryPdJAwkOiRpJJckxiT1JSQlVCWDJbMl4iYSJkImciajJtMnAyc0J2UnlifHJ/goKihb +KI0ovijwKSIpVSmHKbkp7CofKlIqhSq4KusrHitSK4YruivuLCIsViyKLL8s9C0pLV4tky3ILf0uMy5p +Lp4u1C8LL0Evdy+uL+QwGzBSMIkwwTD4MTAxZzGfMdcyDzJIMoAyuDLxMyozYzOcM9U0DzRINII0vDT2 +NTA1ajWlNd82GjZVNpA2yzcGN0I3fje5N/U4MThtOKo45jkjOWA5nTnaOhc6VDqSOs87DTtLO4k7xzwG +PEQ8gzzCPQE9QD1/Pb89/j4+Pn4+vj7+Pz8/fz/AQABAQUCCQMRBBUFHQYhBykIMQk5CkULTQxZDWEOb +Q95EIURlRKhE7EUwRXRFuEX8RkBGhUbKRw5HU0eZR95II0hpSK9I9Uk7SYFJx0oOSlVKm0riSypLcUu4 +TABMSEyQTNhNIE1oTbFN+k5CToxO1U8eT2dPsU/7UEVQj1DZUSRRblG5UgRST1KaUuVTMVN8U8hUFFRg +VK1U+VVGVZJV31YsVnpWx1cUV2JXsFf+WExYmljpWThZhlnVWiRadFrDWxNbY1uyXANcU1yjXPRdRF2V +XeZeN16JXtpfLF9+X9BgImB0YMdhGWFsYb9iEmJlYrljDGNgY7RkCGRcZLFlBWVaZa9mBGZZZq9nBGda +Z7BoBmhcaLJpCWlfabZqDWpkarxrE2tra8NsG2xzbMttI218bdVuLm6HbuBvOm+Tb+1wR3ChcPtxVnGw +cgtyZnLBcxxzeHPTdC90i3TndUN1oHX8dll2tncTd3B3zngreIl453lFeaN6Anpger97Hnt9e9x8PHyb +fPt9W327fht+fH7cfz1/nn//gGCAwoEjgYWB54JJgquDDoNwg9OENoSZhPyFYIXDhieGi4bvh1SHuIgd +iIGI5olMibGKFop8iuKLSIuujBSMe4zijUiNr44Xjn6O5Y9Nj7WQHZCFkO6RVpG/kiiSkZL6k2STzZQ3 +lKGVC5V1leCWSpa1lyCXi5f3mGKYzpk6maaaEpp+muubV5vEnDGcn50MnXmd555VnsOfMZ+goA+gfaDs +oVuhy6I6oqqjGqOKo/qkaqTbpUylvKYupp+nEKeCp/SoZajYqUqpvKovqqKrFauIq/usb6zjrVaty64/ +rrOvKK+dsBGwh7D8sXGx57JdstOzSbO/tDa0rbUktZu2EraJtwG3ebfxuGm44blaudK6S7rEuz67t7ww +vKq9JL2evhm+k78Ov4nABMB/wPrBdsHxwm3C6cNmw+LEX8TcxVnF1sZTxtHHTsfMyErIyclHycbKRcrE +y0PLwsxCzMHNQc3BzkLOws9Dz8PQRNDG0UfRyNJK0szTTtPQ1FPU1tVY1dvWXtbi12XX6dht2PHZddn6 +2n/bA9uI3A7ck90Z3Z7eJN6q3zHft+A+4MXhTOHT4lri4uNq4/LkeuUC5YvmE+ac5yXnr+g46MLpTOnW +6mDq6ut16//siu0W7aHuLO6470Tv0PBc8OnxdfIC8o/zHPOq9Df0xfVT9eH2b/b+94z4G/iq+Tn5yfpZ ++uj7ePwI/Jn9Kf26/kv+3P9uY3VydgAAAAAAAAQAAAAABQAKAA8AFAAZAB4AIwAoAC0AMgA3ADsAQABF +AEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQAJUAmgCfAKQAqQCuALIAtwC8AMEAxgDLANAA1QDa +AOAA5QDqAPAA9QD7AQEBBwEMARIBGAEeASUBKwExATgBPgFFAUsBUgFZAWABZgFtAXUBfAGDAYoBkgGZ +AaEBqAGwAbgBwAHIAdAB2AHgAekB8QH6AgICCwIUAhwCJQIuAjcCQAJKAlMCXAJmAnACeQKDAo0ClwKh +AqsCtQK/AsoC1ALfAuoC9AL/AwoDFQMgAysDNwNCA00DWQNlA3ADfAOIA5QDoAOsA7kDxQPSA94D6wP4 +BAQEEQQeBCwEOQRGBFQEYQRvBHwEigSYBKYEtATCBNEE3wTuBPwFCwUaBSgFNwVHBVYFZQV0BYQFkwWj +BbMFwwXTBeMF8wYDBhQGJAY1BkUGVgZnBngGiQaaBqsGvQbOBuAG8gcDBxUHJwc5B0wHXgdwB4MHlgeo +B7sHzgfhB/QICAgbCC8IQghWCGoIfgiSCKYIugjOCOMI9wkMCSEJNglLCWAJdQmKCaAJtQnLCeAJ9goM +CiIKOQpPCmUKfAqSCqkKwArXCu4LBQsdCzQLSwtjC3sLkwurC8ML2wvzDAwMJAw9DFYMbgyHDKEMugzT +DO0NBg0gDToNVA1uDYgNog28DdcN8Q4MDicOQg5dDngOkw6vDsoO5g8CDx4POg9WD3IPjg+rD8gP5BAB +EB4QOxBYEHYQkxCxEM4Q7BEKESgRRhFkEYMRoRHAEd8R/hIdEjwSWxJ6EpoSuRLZEvkTGRM5E1kTehOa +E7sT2xP8FB0UPhRfFIEUohTEFOUVBxUpFUsVbRWQFbIV1RX3FhoWPRZgFoMWpxbKFu4XEhc1F1kXfRei +F8YX6hgPGDQYWRh9GKMYyBjtGRMZOBleGYQZqhnQGfYaHRpDGmoakBq3Gt4bBhstG1QbfBujG8sb8xwb +HEMcbByUHL0c5h0OHTcdYB2KHbMd3R4GHjAeWh6EHq4e2B8DHy0fWB+DH64f2SAEIDAgWyCHILMg3iEK +ITchYyGPIbwh6SIVIkIicCKdIsoi+CMlI1MjgSOvI90kDCQ6JGkklyTGJPUlJCVUJYMlsyXiJhImQiZy +JqMm0ycDJzQnZSeWJ8cn+CgqKFsojSi+KPApIilVKYcpuSnsKh8qUiqFKrgq6yseK1Irhiu6K+4sIixW +LIosvyz0LSktXi2TLcgt/S4zLmkuni7ULwsvQS93L64v5DAbMFIwiTDBMPgxMDFnMZ8x1zIPMkgygDK4 +MvEzKjNjM5wz1TQPNEg0gjS8NPY1MDVqNaU13zYaNlU2kDbLNwY3Qjd+N7k39TgxOG04qjjmOSM5YDmd +Odo6FzpUOpI6zzsNO0s7iTvHPAY8RDyDPMI9AT1APX89vz3+Pj4+fj6+Pv4/Pz9/P8BAAEBBQIJAxEEF +QUdBiEHKQgxCTkKRQtNDFkNYQ5tD3kQhRGVEqETsRTBFdEW4RfxGQEaFRspHDkdTR5lH3kgjSGlIr0j1 +STtJgUnHSg5KVUqbSuJLKktxS7hMAExITJBM2E0gTWhNsU36TkJOjE7VTx5PZ0+xT/tQRVCPUNlRJFFu +UblSBFJPUppS5VMxU3xTyFQUVGBUrVT5VUZVklXfVixWelbHVxRXYlewV/5YTFiaWOlZOFmGWdVaJFp0 +WsNbE1tjW7JcA1xTXKNc9F1EXZVd5l43Xole2l8sX35f0GAiYHRgx2EZYWxhv2ISYmViuWMMY2BjtGQI +ZFxksWUFZVplr2YEZllmr2cEZ1pnsGgGaFxosmkJaV9ptmoNamRqvGsTa2trw2wbbHNsy20jbXxt1W4u +bodu4G86b5Nv7XBHcKFw+3FWcbByC3JmcsFzHHN4c9N0L3SLdOd1Q3Wgdfx2WXa2dxN3cHfOeCt4iXjn +eUV5o3oCemB6v3see3173Hw8fJt8+31bfbt+G358ftx/PX+ef/+AYIDCgSOBhYHngkmCq4MOg3CD04Q2 +hJmE/IVghcOGJ4aLhu+HVIe4iB2IgYjmiUyJsYoWinyK4otIi66MFIx7jOKNSI2vjheOfo7lj02PtZAd +kIWQ7pFWkb+SKJKRkvqTZJPNlDeUoZULlXWV4JZKlrWXIJeLl/eYYpjOmTqZppoSmn6a65tXm8ScMZyf +nQydeZ3nnlWew58xn6CgD6B9oOyhW6HLojqiqqMao4qj+qRqpNulTKW8pi6mn6cQp4Kn9KhlqNipSqm8 +qi+qoqsVq4ir+6xvrOOtVq3Lrj+us68or52wEbCHsPyxcbHnsl2y07NJs7+0NrSttSS1m7YStom3Abd5 +t/G4abjhuVq50rpLusS7Pru3vDC8qr0kvZ6+Gb6Tvw6/icAEwH/A+sF2wfHCbcLpw2bD4sRfxNzFWcXW +xlPG0cdOx8zISsjJyUfJxspFysTLQ8vCzELMwc1BzcHOQs7Cz0PPw9BE0MbRR9HI0krSzNNO09DUU9TW +1VjV29Ze1uLXZdfp2G3Y8dl12fraf9sD24jcDtyT3Rndnt4k3qrfMd+34D7gxeFM4dPiWuLi42rj8uR6 +5QLli+YT5pznJeev6DjowulM6dbqYOrq63Xr/+yK7Rbtoe4s7rjvRO/Q8Fzw6fF18gLyj/Mc86r0N/TF +9VP14fZv9v73jPgb+Kr5OfnJ+ln66Pt4/Aj8mf0p/br+S/7c/25wYXJhAAAAAAADAAAAAmZmAADypwAA +DVkAABPQAAALA3BhcmEAAAAAAAMAAAACZmYAAPKnAAANWQAAE9AAAAsDcGFyYQAAAAAAAwAAAAJmZgAA +8qcAAA1ZAAAT0AAACwN2Y2d0AAAAAAAAAAEAANieAAAAAAABAAAAANieAAAAAAABAAAAANieAAAAAAAB +AABuZGluAAAAAAAAADAAAKPAAABUgAAATMAAAJvAAAAmgAAAD0AAAFAAAABUQAACmZoAApmaAAKZmmRl +c2MAAAAAAAAAC1N5bmNNYXN0ZXIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA +AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAbWx1YwAAAAAAAAASAAAADG5s +TkwAAAAUAAAA6GRhREsAAAAUAAAA6HBsUEwAAAAUAAAA6GVuVVMAAAAUAAAA6G5iTk8AAAAUAAAA6GZy +RlIAAAAUAAAA6HB0QlIAAAAUAAAA6HB0UFQAAAAUAAAA6HpoQ04AAAAUAAAA6GVzRVMAAAAUAAAA6Gph +SlAAAAAUAAAA6HJ1UlUAAAAUAAAA6HN2U0UAAAAUAAAA6HpoVFcAAAAUAAAA6GRlREUAAAAUAAAA6GZp +RkkAAAAUAAAA6Gl0SVQAAAAUAAAA6GtvS1IAAAAUAAAA6ABTAHkAbgBjAE0AYQBzAHQAZQBybW1vZAAA +AAAAAEwtAAADaktJMjTDsagAAAAAAAAAAAAAAAAAAAAAAHRleHQAAAAAQ29weXJpZ2h0IEFwcGxlLCBJ +bmMuLCAyMDEwAA + + NSCalibratedRGBColorSpace + 8 + 24 + 0 + + + + + + + 0 + 0 + 0 + NO + + + + Status + YES + compare: + + + + Level + 25 + 25 + 50 + + 75628096 + 134219776 + Lvl + + + + + + 337772096 + 134219776 + Text Cell + + + + + + 2 + YES + YES + + + Level + YES + compare: + + + + Name + 258 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Name + YES + localizedCaseInsensitiveCompare: + + + + Distance + 65 + 40 + 1000 + + 75628096 + 2048 + Distance + + + 3 + MC4zMzMzMzI5OQA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Distance + YES + compare: + + + + Health + 55 + 40 + 1000 + + 75628096 + 134219776 + Health + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Health + YES + compare: + + + + Pet + 38 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Pet? + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Pet + YES + compare: + + + + 3 + 2 + + + 17 + -694157312 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {645, 199}} + + + + + 4 + + + + 256 + {{646, 17}, {15, 199}} + + + _doScroller: + 37 + 0.19473679999999999 + + + + 256 + {{1, 216}, {645, 15}} + + 1 + + _doScroller: + 0.2957746 + + + + 2304 + + YES + + + {{1, 0}, {645, 17}} + + + + + 4 + + + + {{17, 142}, {662, 232}} + + + 50 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 289 + {{379, 112}, {300, 22}} + + YES + + 343014976 + 268436480 + + + Filter Mobs + + YES + 1 + + + + -2147353088 + 0 + search + + _searchFieldSearch: + + 138690815 + 0 + + 400 + 75 + + + 130560 + 0 + clear + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + cancel + + + + + + _searchFieldCancel: + + 138690815 + 0 + + 400 + 75 + + MobsSearchField + 5 + CAAAAA + + + + + 292 + {{135, 115}, {110, 19}} + + YES + + -2080244224 + 134217728 + Face Mob + + + -2034482945 + 164 + + + + 400 + 75 + + + + + 292 + {{17, 115}, {110, 19}} + + YES + + 67239424 + 134217728 + Target Mob + + + -2034482945 + 164 + + + + 400 + 75 + + + + + 34 + + YES + + + 256 + + YES + + + 268 + {{6, 13}, {98, 17}} + + YES + + 67239488 + 71304192 + More Options: + + + + + + + + + 268 + {{106, 7}, {125, 26}} + + YES + + -2076049856 + 2048 + + + -930987777 + 129 + + + 400 + 75 + + + YES + Filter + + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Hide Pets + + 2147483647 + 1 + + + _popUpItemAction: + + + + + Hide Critters + + 2147483647 + 1 + + + _popUpItemAction: + + + + + Hide Unselectable Mobs + + 2147483647 + 1 + + + _popUpItemAction: + + + + + 1 + YES + 1 + YES + YES + 2 + + + + + 268 + {{233, 7}, {125, 26}} + + YES + + -2076049856 + 2048 + + + -930987777 + 129 + + + 400 + 75 + + + YES + Tracking + + 2147483647 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Track Friendly + + 2147483647 + + + _popUpItemAction: + 1 + + + + + Track Neutral + + 2147483647 + + + _popUpItemAction: + 2 + + + + + Track Hostile + + 2147483647 + + + _popUpItemAction: + 3 + + + + + YES + 1 + YES + YES + 2 + + + + + 292 + {{361, 12}, {112, 18}} + + YES + + -2080244224 + 0 + Color by Level + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {666, 40}} + + + + {{14, 64}, {668, 42}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + + 34 + + YES + + + 256 + + YES + + + 268 + {{15, 16}, {59, 17}} + + YES + + 67239488 + 272630784 + Move to: + + + + + + + + + 266 + {{76, 10}, {327, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Currently Selected Mob + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + 1 + YES + YES + 2 + + + + + 265 + {{408, 14}, {71, 19}} + + YES + + -2080244224 + 134217728 + Go + + + -2038152961 + 164 + + + 400 + 75 + + + + + 265 + {{487, 14}, {71, 19}} + + YES + + -2080244224 + 134217728 + Stop + + + -2038152961 + 164 + + + 400 + 75 + + + + {{1, 1}, {666, 47}} + + + + {{14, 13}, {668, 49}} + + {0, 0} + + 67239424 + 0 + Additional Functionality + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {696, 377}} + + Mobs + + + + + 2 + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {645, 323} + + YES + + + 256 + {645, 17} + + + + + + 256 + {{646, 0}, {16, 17}} + + + + YES + + ItemID + 52 + 40 + 1000 + + 75628096 + 2048 + ID + + + 3 + MC4zMzMzMzI5OQA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + ItemID + YES + compare: + + + + Name + 157 + 40 + 1000 + + 75628096 + 2048 + Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Name + YES + compare: + + + + Count + 43 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + # + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Count + YES + compare: + + + + Type + 84 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Type + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Type + YES + compare: + + + + Subtype + 77 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Subtype + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Subtype + YES + compare: + + + + Durability + 73 + 10 + 3.4028229999999999e+38 + + 75628096 + 134219776 + Durability + + + + + + 337772096 + 134219776 + Text Cell + + + + + + 2 + YES + YES + + + DurabilityPercent + YES + compare: + + + + Location + 138 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Location + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Location + YES + compare: + + + + 3 + 2 + + + 17 + -759169024 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {645, 323}} + + + + + 4 + + + + 256 + {{646, 17}, {15, 323}} + + + _doScroller: + 37 + 0.19473679999999999 + + + + 256 + {{1, 340}, {645, 15}} + + 1 + + _doScroller: + 0.99662731871838106 + + + + 2304 + + YES + + + {{1, 0}, {645, 17}} + + + + + 4 + + + + {{17, 18}, {662, 356}} + + + 50 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {{10, 33}, {696, 377}} + + Items + + + + + 3 + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {645, 214} + + YES + + + 256 + {645, 17} + + + + + + 256 + {{646, 0}, {16, 17}} + + + + YES + + ID + 55 + 40 + 1000 + + 75628096 + 2048 + ID + + + 3 + MC4zMzMzMzI5OQA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + ID + YES + compare: + + + + Name + 212 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Name + YES + localizedCaseInsensitiveCompare: + + + + Distance + 93 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Distance + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Distance + YES + compare: + + + + Type + 129 + 10 + 3.4028229999999999e+38 + + 75628096 + 2048 + Type + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Type + YES + compare: + + + + Health + 89 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Health? + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Health + YES + compare: + + + + 3 + 2 + + + 17 + -694157312 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {645, 214}} + + + + + 4 + + + + 256 + {{646, 17}, {15, 214}} + + + _doScroller: + 37 + 0.19473679999999999 + + + + 256 + {{1, 231}, {645, 15}} + + 1 + + _doScroller: + 0.9969088098918083 + + + + 2304 + + YES + + + {{1, 0}, {645, 17}} + + + + + 4 + + + + {{17, 127}, {662, 247}} + + + 50 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 289 + {{379, 97}, {300, 22}} + + YES + + 343014976 + 268436480 + + + Filter Nodes + + YES + 1 + + + + -2147353088 + 0 + search + + _searchFieldSearch: + + 138690815 + 0 + + 400 + 75 + + + 130560 + 0 + clear + + YES + + YES + + YES + AXDescription + NSAccessibilityEncodedAttributesValueType + + + YES + cancel + + + + + + _searchFieldCancel: + + 138690815 + 0 + + 400 + 75 + + NodesSearchField + 5 + CAAAAA + + + + + 292 + {{17, 100}, {110, 19}} + + YES + + -2080244224 + 134217728 + Face Node + + + -2034482945 + 164 + + + + 400 + 75 + + + + + 34 + + YES + + + 256 + + YES + + + 268 + {{9, 13}, {65, 17}} + + YES + + 67239488 + 71304192 + Filter: + + + + + + + + + 266 + {{76, 7}, {290, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + + 400 + 75 + + + Container (All) + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 3 + + + YES + + OtherViews + + YES + + + Show All + + 1048576 + 2147483647 + + + _popUpItemAction: + -100 + + + + + YES + YES + + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Minerals + + 1048576 + 2147483647 + + + _popUpItemAction: + -1 + + + + + Herbs + + 1048576 + 2147483647 + + + _popUpItemAction: + -2 + + + + + Minerals & Herbs + + 1048576 + 2147483647 + + + _popUpItemAction: + -4 + + + + + Fishing Hole + + 1048576 + 2147483647 + + + _popUpItemAction: + 25 + + + + + YES + YES + + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Door + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Button + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Quest Giver + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + + Container (Quest) + + 1048576 + 2147483647 + + + _popUpItemAction: + -3 + + + + + Binder + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + Generic + + 1048576 + 2147483647 + + + _popUpItemAction: + 5 + + + + + Trap + + 1048576 + 2147483647 + + + _popUpItemAction: + 6 + + + + + Chair + + 1048576 + 2147483647 + + + _popUpItemAction: + 7 + + + + + Spell Focus + + 1048576 + 2147483647 + + + _popUpItemAction: + 8 + + + + + Text + + 1048576 + 2147483647 + + + _popUpItemAction: + 9 + + + + + Goober + + 1048576 + 2147483647 + + + _popUpItemAction: + 10 + + + + + Duel Flag + + 1048576 + 2147483647 + + + _popUpItemAction: + 16 + + + + + Transportation + + 1048576 + 2147483647 + + + _popUpItemAction: + 11 + + + + + Fishing Bobber + + 1048576 + 2147483647 + + + _popUpItemAction: + 17 + + + + + Ritual/Summon + + 1048576 + 2147483647 + + + _popUpItemAction: + 18 + + + + + Mailbox + + 1048576 + 2147483647 + + + _popUpItemAction: + 19 + + + + + Auction House + + 1048576 + 2147483647 + + + _popUpItemAction: + 20 + + + + + Spell/Portal + + 1048576 + 2147483647 + + + _popUpItemAction: + 22 + + + + + Meeting Stone + + 1048576 + 2147483647 + + + _popUpItemAction: + 23 + + + + + 10 + 1 + YES + YES + 2 + + + + {{1, 1}, {666, 40}} + + + + {{14, 49}, {668, 42}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + + 34 + + YES + + + 256 + + YES + + + 268 + {{7, 13}, {67, 17}} + + YES + + 67239488 + 71304192 + Move to: + + + + + + + + + 266 + {{76, 7}, {290, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + + 400 + 75 + + + Currently Selected Node + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + 1 + YES + YES + 2 + + + + + 265 + {{371, 11}, {71, 19}} + + YES + + -2080244224 + 134217728 + Go + + + -2038152961 + 164 + + + 400 + 75 + + + + + 265 + {{450, 11}, {71, 19}} + + YES + + -2080244224 + 134217728 + Stop + + + -2038152961 + 164 + + + 400 + 75 + + + + {{1, 1}, {666, 40}} + + + + {{14, 5}, {668, 42}} + + {0, 0} + + 67239424 + 0 + Additional Functionality + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {696, 377}} + + + Nodes + + + + + + + 0 + YES + YES + + YES + + + + + + 10 + + YES + + + 256 + + YES + + + 265 + {{422, 8}, {173, 14}} + + YES + + 67239488 + 71435264 + Update every + + + + + 1 + MC4yIDAuMiAwLjIAA + + + + + + 265 + {{600, 4}, {125, 17}} + + YES + + -2079981824 + 131072 + + + + 2.5 + 0.10000000000000001 + 0.29999999999999999 + 0.0 + 25 + 0 + YES + NO + + + + + 268 + {{40, 6}, {188, 17}} + + YES + + 67239488 + 4195328 + Tracking: 0 objects. + + + + + + + + + 268 + {{15, 4}, {20, 19}} + + YES + + -2080244224 + 134217728 + Round Rect Button + + + 138690815 + 164 + + + + 400 + 75 + + + + {{1, 1}, {740, 30}} + + + + {{0, 443}, {742, 32}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4OCAwLjQ5ODk4OTg4IDAuNDk4OTg5ODggMC41AA + + + 1 + MC42NzEyNzQ2NiAwLjgyOTA5NDUzIDAuOTk3MzkwNjkgMC41Mjk5OTk5NwA + + + + {742, 475} + + NSView + + + YES + + + + + YES + + + displayPatternValue1: objectCount + + + + + + displayPatternValue1: objectCount + displayPatternValue1 + objectCount + + NSDisplayPattern + Tracking: %{value1}@ objects. + + 2 + + + 14 + + + + displayPatternValue1: updateFrequency + + + + + + displayPatternValue1: updateFrequency + displayPatternValue1 + updateFrequency + + NSDisplayPattern + Update every %{value1}@s: + + 2 + + + 18 + + + + value: updateFrequency + + + + + + value: updateFrequency + value + updateFrequency + 2 + + + 21 + + + + view + + + + 22 + + + + playersTable + + + + 76 + + + + delegate + + + + 77 + + + + dataSource + + + + 78 + + + + dataSource + + + + 136 + + + + delegate + + + + 137 + + + + mobTable + + + + 138 + + + + dataSource + + + + 160 + + + + delegate + + + + 161 + + + + itemTable + + + + 162 + + + + dataSource + + + + 176 + + + + delegate + + + + 177 + + + + nodeTable + + + + 178 + + + + delegate + + + + 232 + + + + tabView + + + + 233 + + + + value: values.MobHidePets + + + + + + value: values.MobHidePets + value + values.MobHidePets + 2 + + + 235 + + + + value: values.MobHideCritters + + + + + + value: values.MobHideCritters + value + values.MobHideCritters + 2 + + + 237 + + + + value: values.MobHideNonSelectable + + + + + + value: values.MobHideNonSelectable + value + values.MobHideNonSelectable + 2 + + + 239 + + + + filter: + + + + 241 + + + + filter: + + + + 242 + + + + refreshData: + + + + 243 + + + + refreshData: + + + + 244 + + + + value: values.MobTrackFriendly + + + + + + value: values.MobTrackFriendly + value + values.MobTrackFriendly + 2 + + + 246 + + + + value: values.MobTrackNeutral + + + + + + value: values.MobTrackNeutral + value + values.MobTrackNeutral + 2 + + + 248 + + + + value: values.MobTrackHostile + + + + + + value: values.MobTrackHostile + value + values.MobTrackHostile + 2 + + + 250 + + + + updateTracking: + + + + 251 + + + + value: values.MobColorByLevel + + + + + + value: values.MobColorByLevel + value + values.MobColorByLevel + 2 + + + 253 + + + + refreshData: + + + + 254 + + + + resetObjects: + + + + 255 + + + + targetObject: + + + + 256 + + + + faceObject: + + + + 257 + + + + targetObject: + + + + 258 + + + + faceObject: + + + + 259 + + + + faceObject: + + + + 260 + + + + value: values.PlayerColorByLevel + + + + + + value: values.PlayerColorByLevel + value + values.PlayerColorByLevel + 2 + + + 262 + + + + refreshData: + + + + 263 + + + + reloadNames: + + + + 264 + + + + selectedTag: values.NodeFilterType + + + + + + selectedTag: values.NodeFilterType + selectedTag + values.NodeFilterType + 2 + + + 269 + + + + value: values.PlayersTrackFriendly + + + + + + value: values.PlayersTrackFriendly + value + values.PlayersTrackFriendly + 2 + + + 271 + + + + value: values.PlayersTrackHostile + + + + + + value: values.PlayersTrackHostile + value + values.PlayersTrackHostile + 2 + + + 273 + + + + updateTracking: + + + + 274 + + + + updateTracking: + + + + 275 + + + + moveToStart: + + + + 276 + + + + moveToStop: + + + + 277 + + + + moveToStart: + + + + 278 + + + + moveToStop: + + + + 279 + + + + moveToMobPopUpButton + + + + 282 + + + + moveToNodePopUpButton + + + + 283 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + 2 + + + YES + + + + + + + + + 3 + + + YES + + + + + + 4 + + + YES + + + + + + 5 + + + YES + + + + + + 6 + + + + + 7 + + + + + 8 + + + + + 9 + + + + + 23 + + + YES + + + + + + + + + 24 + + + YES + + + + + + 25 + + + YES + + + + + + 26 + + + YES + + + + + + + + + + + 27 + + + YES + + + + + + + + + + + 28 + + + YES + + + + + + 29 + + + YES + + + + + + 30 + + + YES + + + + + + 31 + + + YES + + + + + + + + + + 32 + + + YES + + + + + + + + + 36 + + + + + 35 + + + + + 34 + + + YES + + + + + + + + + + + + + 33 + + + + + 45 + + + YES + + + + + + 44 + + + YES + + + + + + 43 + + + YES + + + + + + 42 + + + YES + + + + + + 41 + + + YES + + + + + + 40 + + + YES + + + + + + 39 + + + YES + + + + + + 37 + + + YES + + + + + + 54 + + + + + 52 + + + + + 51 + + + + + 50 + + + + + 49 + + + + + 48 + + + + + 47 + + + + + 46 + + + + + 55 + + + YES + + + + + + 56 + + + YES + + + + + + 57 + + + YES + + + + + + 59 + + + YES + + + + + + 60 + + + + + 62 + + + + + 63 + + + + + 64 + + + + + 65 + + + YES + + + + + + 66 + + + + + 67 + + + YES + + + + + + + + 69 + + + YES + + + + + + 70 + + + YES + + + + + + 71 + + + YES + + + + + + 72 + + + + + 73 + + + + + 74 + + + + + 79 + + + YES + + + + + + + + + 80 + + + + + 81 + + + + + 82 + + + YES + + + + + + + + + + + + 83 + + + + + 84 + + + YES + + + + + + 85 + + + YES + + + + + + 86 + + + YES + + + + + + 87 + + + YES + + + + + + 88 + + + YES + + + + + + 89 + + + YES + + + + + + 90 + + + YES + + + + + + 91 + + + + + 92 + + + + + 93 + + + + + 94 + + + + + 95 + + + + + 96 + + + + + 97 + + + + + 98 + + + YES + + + + + + 99 + + + YES + + + + + + 100 + + + YES + + + + + + 101 + + + + + 102 + + + + + 103 + + + + + 104 + + + YES + + + + + + + + + 105 + + + YES + + + + + + + + + 106 + + + YES + + + + + + 107 + + + YES + + + + + + 108 + + + YES + + + + + + 109 + + + YES + + + + + + 110 + + + + + 111 + + + YES + + + + + + 112 + + + YES + + + + + + 114 + + + + + 116 + + + + + 117 + + + + + 118 + + + YES + + + + + + 119 + + + YES + + + + + + 120 + + + YES + + + + + + 121 + + + YES + + + + + + 122 + + + + + 123 + + + YES + + + + + + 124 + + + YES + + + + + + + + + 125 + + + + + 126 + + + + + 127 + + + + + 128 + + + + + 129 + + + YES + + + + + + 130 + + + YES + + + + + + + + + 131 + + + + + 132 + + + + + 133 + + + + + 134 + + + + + 135 + + + + + 139 + + + YES + + + + + + + + + 140 + + + + + 141 + + + YES + + + + + + + + + + + + 142 + + + + + 143 + + + + + 145 + + + YES + + + + + + 146 + + + YES + + + + + + 147 + + + YES + + + + + + 148 + + + YES + + + + + + 149 + + + YES + + + + + + 150 + + + YES + + + + + + 151 + + + YES + + + + + + 152 + + + + + 153 + + + + + 154 + + + + + 155 + + + + + 156 + + + + + 157 + + + + + 158 + + + + + 163 + + + YES + + + + + + + + + 164 + + + + + 165 + + + + + 166 + + + YES + + + + + + + + + + 167 + + + + + 168 + + + YES + + + + + + 169 + + + YES + + + + + + 170 + + + YES + + + + + + 171 + + + YES + + + + + + 172 + + + + + 173 + + + + + 174 + + + + + 175 + + + + + 179 + + + YES + + + + + + 181 + + + YES + + + + + + 182 + + + + + 184 + + + + + 185 + + + YES + + + + + + + 186 + + + YES + + + + + + + + + 187 + + + YES + + + + + + 188 + + + YES + + + + + + 189 + + + YES + + + + + + 190 + + + YES + + + + + + 191 + + + + + 192 + + + + + 193 + + + YES + + + + + + 194 + + + YES + + + + + + 197 + + + + + 199 + + + + + 200 + + + YES + + + + + + 201 + + + YES + + + + + + 202 + + + + + 203 + + + YES + + + + + + 204 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 205 + + + + + 206 + + + + + 207 + + + + + 208 + + + + + 209 + + + + + 210 + + + + + 211 + + + + + 212 + + + + + 213 + + + + + 214 + + + + + 215 + + + + + 216 + + + + + 217 + + + + + 218 + + + + + 219 + + + + + 220 + + + + + 221 + + + + + 222 + + + + + 223 + + + + + 224 + + + + + 225 + + + + + 226 + + + + + 227 + + + + + 228 + + + + + 229 + + + + + 230 + + + + + 231 + + + + + 284 + + + YES + + + + + + 285 + + + + + + + YES + + YES + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 100.IBPluginDependency + 101.IBPluginDependency + 102.IBPluginDependency + 103.IBPluginDependency + 104.IBPluginDependency + 105.IBPluginDependency + 106.IBPluginDependency + 107.IBPluginDependency + 108.IBPluginDependency + 109.IBPluginDependency + 110.IBPluginDependency + 111.IBPluginDependency + 112.IBEditorWindowLastContentRect + 112.IBPluginDependency + 112.editorWindowContentRectSynchronizationRect + 114.IBPluginDependency + 116.IBPluginDependency + 117.IBPluginDependency + 118.IBPluginDependency + 119.IBPluginDependency + 120.IBPluginDependency + 121.IBPluginDependency + 122.IBPluginDependency + 123.IBPluginDependency + 124.IBEditorWindowLastContentRect + 124.IBPluginDependency + 125.IBPluginDependency + 126.IBPluginDependency + 127.IBPluginDependency + 128.IBPluginDependency + 129.IBPluginDependency + 130.IBEditorWindowLastContentRect + 130.IBPluginDependency + 131.IBPluginDependency + 132.IBPluginDependency + 133.IBPluginDependency + 134.IBPluginDependency + 135.IBPluginDependency + 139.IBPluginDependency + 140.IBPluginDependency + 141.CustomClassName + 141.IBPluginDependency + 142.IBPluginDependency + 143.IBPluginDependency + 150.IBPluginDependency + 151.IBPluginDependency + 152.IBPluginDependency + 153.IBPluginDependency + 163.IBPluginDependency + 164.IBPluginDependency + 165.IBPluginDependency + 166.IBPluginDependency + 167.IBPluginDependency + 168.IBPluginDependency + 175.IBPluginDependency + 179.IBPluginDependency + 181.IBPluginDependency + 182.IBPluginDependency + 184.IBPluginDependency + 185.IBPluginDependency + 186.IBPluginDependency + 187.IBPluginDependency + 188.IBPluginDependency + 189.IBPluginDependency + 190.IBPluginDependency + 191.IBPluginDependency + 192.IBPluginDependency + 193.IBPluginDependency + 194.IBEditorWindowLastContentRect + 194.IBPluginDependency + 194.editorWindowContentRectSynchronizationRect + 197.IBPluginDependency + 199.IBPluginDependency + 2.IBPluginDependency + 200.IBPluginDependency + 201.IBPluginDependency + 202.IBPluginDependency + 203.IBPluginDependency + 204.IBEditorWindowLastContentRect + 204.IBPluginDependency + 204.editorWindowContentRectSynchronizationRect + 205.IBPluginDependency + 206.IBPluginDependency + 207.IBPluginDependency + 208.IBPluginDependency + 209.IBPluginDependency + 210.IBPluginDependency + 211.IBPluginDependency + 212.IBPluginDependency + 213.IBPluginDependency + 214.IBPluginDependency + 215.IBPluginDependency + 216.IBPluginDependency + 217.IBPluginDependency + 218.IBPluginDependency + 219.IBPluginDependency + 220.IBPluginDependency + 221.IBPluginDependency + 222.IBPluginDependency + 223.IBPluginDependency + 224.IBPluginDependency + 225.IBPluginDependency + 226.IBPluginDependency + 227.IBPluginDependency + 228.IBPluginDependency + 229.IBPluginDependency + 23.IBPluginDependency + 230.IBPluginDependency + 231.IBPluginDependency + 24.IBPluginDependency + 25.IBPluginDependency + 26.IBPluginDependency + 27.IBPluginDependency + 3.IBPluginDependency + 32.IBPluginDependency + 33.IBPluginDependency + 34.IBPluginDependency + 35.IBPluginDependency + 36.IBPluginDependency + 4.IBPluginDependency + 42.IBPluginDependency + 43.IBPluginDependency + 46.IBPluginDependency + 48.IBPluginDependency + 49.IBPluginDependency + 5.IBPluginDependency + 55.IBPluginDependency + 56.IBPluginDependency + 57.IBPluginDependency + 59.IBPluginDependency + 6.IBPluginDependency + 60.IBPluginDependency + 62.IBPluginDependency + 63.IBPluginDependency + 64.IBPluginDependency + 65.IBAttributePlaceholdersKey + 65.IBPluginDependency + 66.IBPluginDependency + 67.IBPluginDependency + 69.IBPluginDependency + 7.IBPluginDependency + 70.IBPluginDependency + 71.IBPluginDependency + 72.IBPluginDependency + 73.IBPluginDependency + 74.IBPluginDependency + 79.IBPluginDependency + 8.IBPluginDependency + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 83.IBPluginDependency + 87.IBPluginDependency + 88.IBPluginDependency + 93.IBPluginDependency + 94.IBPluginDependency + 96.IBPluginDependency + 98.IBPluginDependency + 99.IBPluginDependency + + + YES + {{401, 529}, {742, 475}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{217, 442}, {480, 272}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{537, 544}, {327, 23}} + com.apple.InterfaceBuilder.CocoaPlugin + {{147, 530}, {328, 53}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{450, 278}, {229, 83}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{577, 278}, {162, 83}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterTableView + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{537, 533}, {290, 23}} + com.apple.InterfaceBuilder.CocoaPlugin + {{763, 580}, {290, 73}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{579, -111}, {290, 523}} + com.apple.InterfaceBuilder.CocoaPlugin + {{763, 202}, {290, 523}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Reset the mob list. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 291 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BindingsController + NSObject + + YES + + YES + chatController + controller + offsetController + + + YES + ChatController + Controller + OffsetController + + + + IBProjectSource + BindingsController.h + + + + BlacklistController + NSObject + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + closeHotkeyHelp: + closeLootHotkeyHelp: + doTheRelicEmanation: + editCombatProfiles: + gatheringLootingOptions: + gatheringLootingSelectAction: + hotkeyHelp: + login: + lootHotkeyHelp: + maltby: + pvpBMSelectAction: + pvpStartStop: + pvpTestWarning: + startBot: + startStopBot: + stopBot: + test2: + test: + testHotkey: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + autoJoinWG + behaviorPopup + bindingsController + blacklistController + chatController + chatLogController + combatController + combatDisableRelease + combatProfileEditor + combatProfilePopup + controller + corpseController + fishController + fishingApplyLureCheckbox + fishingCheckbox + fishingGatherDistanceText + fishingLurePopUpButton + fishingOnlySchoolsCheckbox + fishingRecastCheckbox + fishingUseContainersCheckbox + gatherDistText + gatheringLootingPanel + herbalismCheckbox + herbalismSkillText + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootCheckbox + lootController + lootHotkeyHelpPanel + lootUseItemsCheckbox + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + miningCheckbox + miningSkillText + mobController + mountCheckbox + mountType + movementController + netherwingEggCheckbox + nodeController + nodeIgnoreFriendlyCheckbox + nodeIgnoreFriendlyDistanceText + nodeIgnoreHostileCheckbox + nodeIgnoreHostileDistanceText + nodeIgnoreMobCheckbox + nodeIgnoreMobDistanceText + offsetController + overlayWindow + playerController + playersController + procedureController + pvpBMSelectPanel + pvpBannerImage + pvpLeaveInactiveCheckbox + pvpPlayWarningCheckbox + pvpStartStopButton + pvpWaitForPreparationBuff + questController + routePopup + runningTimer + scanGrid + skinningCheckbox + skinningSkillText + spellController + startStopButton + startstopRecorder + statisticsController + statusText + view + waypointController + + + YES + NSButton + NSButton + id + AuraController + NSButton + id + BindingsController + BlacklistController + ChatController + ChatLogController + CombatController + NSButton + CombatProfileEditor + id + Controller + CorpseController + FishController + NSButton + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + id + NSPanel + NSButton + id + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + NSButton + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + NSButton + id + MobController + NSButton + NSPopUpButton + MovementController + NSButton + NodeController + NSButton + NSTextField + NSButton + NSTextField + NSButton + NSTextField + OffsetController + NSWindow + PlayerDataController + PlayersController + ProcedureController + NSPanel + NSImageView + NSButton + NSButton + NSButton + NSButton + QuestController + id + NSTextField + ScanGridView + NSButton + id + SpellController + NSButton + SRRecorderControl + StatisticsController + NSTextField + NSView + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + auraController + blacklistController + botController + chatController + combatPanel + combatTable + controller + macroController + mobController + movementController + playerData + playersController + + + YES + AuraController + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + CombatProfileEditor + SaveData + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + closeEditor: + closeRename: + createCombatProfile: + deleteCombatProfile: + deleteIgnoreEntry: + duplicateCombatProfile: + exportCombatProfile: + importCombatProfile: + loadCombatProfile: + renameCombatProfile: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + assistPopUpButton + botController + controller + editorPanel + followPopUpButton + ignoreTable + mobController + playersController + renamePanel + tankPopUpButton + + + YES + NSPopUpButton + BotController + Controller + NSPanel + NSPopUpButton + NSTableView + MobController + PlayersController + NSPanel + NSPopUpButton + + + + IBProjectSource + CombatProfileEditor.h + + + + Controller + NSObject + + YES + + YES + confirmAppRename: + launchWebsite: + pidSelected: + renameShowHelp: + renameUseExisting: + showAbout: + showSettings: + testFront: + toggleGUIScripting: + toggleSecurePrefs: + toolbarItemSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + combatProfileEditor + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + newIdentifierField + newNameField + newSignatureField + nodeController + objectsController + objectsToolbarItem + offsetController + playerData + playerToolbarItem + playersController + prefsToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CombatProfileEditor + CorpseController + id + NSButton + InventoryController + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSTextField + NSTextField + NSTextField + NodeController + ObjectsController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + ObjectController + + YES + + YES + memoryViewController + objectsController + + + YES + MemoryViewController + ObjectsController + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + macroController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + MacroController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + menuAction: + offsetSelectAction: + openOffsetPanel: + openPointerPanel: + openSearch: + pointerSelectAction: + saveValues: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + emulatePPCButton + maskTextField + memoryTable + memoryViewWindow + offsetController + offsetScanPanel + operatorPopUpButton + pointerScanCancelButton + pointerScanFindButton + pointerScanNumTextField + pointerScanPanel + pointerScanProgressIndicator + pointerScanVariationButton + pointerScanVariationTextField + resultsTextView + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + signatureTextField + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + NSButton + NSTextField + id + id + OffsetController + NSPanel + NSPopUpButton + NSButton + NSButton + NSTextField + NSPanel + NSProgressIndicator + NSButton + NSTextField + NSTextView + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSTextField + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + ObjectController + + updateTracking: + id + + + YES + + YES + additionalList + auraController + botController + combatController + memoryViewController + movementController + objectsController + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + + + YES + NSPopUpButton + id + BotController + id + id + id + ObjectsController + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + prefsChanged: + id + + + YES + + YES + auraController + blacklistController + botController + chatController + combatController + combatProfileEditor + controller + logOutStuckAttemptsTextField + macroController + mobController + movementType + offsetController + playerData + statisticsController + waypointController + + + YES + AuraController + BlacklistController + BotController + id + id + CombatProfileEditor + id + NSTextField + MacroController + id + NSPopUpButton + OffsetController + PlayerDataController + StatisticsController + WaypointController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + ObjectController + + YES + + YES + botController + memoryViewController + moveToList + movementController + objectsController + + + YES + id + id + NSPopUpButton + id + ObjectsController + + + + IBProjectSource + NodeController.h + + + + ObjectController + NSObject + + tableDoubleClick: + id + + + YES + + YES + controller + playerData + view + + + YES + Controller + PlayerDataController + NSView + + + + IBProjectSource + ObjectController.h + + + + ObjectsController + NSObject + + YES + + YES + faceObject: + filter: + moveToStart: + moveToStop: + refreshData: + reloadNames: + resetObjects: + targetObject: + updateTracking: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + controller + itemController + itemTable + memoryViewController + mobController + mobTable + moveToMobPopUpButton + moveToNodePopUpButton + movementController + nodeController + nodeTable + playerController + playersController + playersTable + tabView + view + + + YES + Controller + InventoryController + NSTableView + MemoryViewController + MobController + NSTableView + NSPopUpButton + NSPopUpButton + MovementController + NodeController + NSTableView + PlayerDataController + PlayersController + NSTableView + NSTabView + NSView + + + + IBProjectSource + ObjectsController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + ObjectController + + updateTracking: + id + + + YES + + YES + memoryViewController + movementController + objectsController + playerColorByLevel + + + YES + MemoryViewController + MovementController + ObjectsController + NSButton + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + SaveData + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + tableRowDoubleClicked: + updateOptions: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + SaveData + NSObject + + showInFinder: + id + + + IBProjectSource + SaveData.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + WaypointController + SaveData + + YES + + YES + addWaypoint: + closeAutomatorPanel: + closeDescription: + closeRename: + closeVisualize: + closestWaypoint: + createRoute: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + removeRoute: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + startStopAutomator: + stopMovement: + testWaypointSequence: + visualize: + waypointMenuAction: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + descriptionPanel + mobController + movementController + playerData + renamePanel + routeTypeSegment + scrollWithRoute + shortcutRecorder + testingMenu + view + visualizePanel + visualizeView + waypointSectionTitle + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + BotController + id + Controller + NSPanel + id + id + PlayerDataController + NSPanel + id + NSButton + SRRecorderControl + NSMenu + NSView + NSPanel + RouteVisualizationView + NSTextField + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSImageCell.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSearchField + NSTextField + + IBFrameworkSource + AppKit.framework/Headers/NSSearchField.h + + + + NSSearchFieldCell + NSTextFieldCell + + IBFrameworkSource + AppKit.framework/Headers/NSSearchFieldCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSSlider + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSlider.h + + + + NSSliderCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSliderCell.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTabViewItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabViewItem.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableHeaderView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTableHeaderView.h + + + + NSTableView + NSControl + + + + NSText + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSTextView + NSText + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/ObjectsController.h b/ObjectsController.h new file mode 100644 index 0000000..a6189ed --- /dev/null +++ b/ObjectsController.h @@ -0,0 +1,91 @@ +// +// ObjectsController.h +// Pocket Gnome +// +// Created by Josh on 2/4/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import + +@class Controller; +@class MemoryViewController; +@class NodeController; +@class PlayersController; +@class InventoryController; +@class MobController; +@class MovementController; +@class PlayerDataController; + +enum Tabs{ + Tab_Players = 0, + Tab_Mobs, + Tab_Items, + Tab_Nodes, +}; + +// really just a helper class for our new Objects tab +@interface ObjectsController : NSObject { + IBOutlet Controller *controller; + IBOutlet MemoryViewController *memoryViewController; + IBOutlet NodeController *nodeController; + IBOutlet PlayersController *playersController; + IBOutlet InventoryController *itemController; + IBOutlet MobController *mobController; + IBOutlet MovementController *movementController; + IBOutlet PlayerDataController *playerController; + + IBOutlet NSPopUpButton *moveToNodePopUpButton, *moveToMobPopUpButton; + + IBOutlet NSTableView *itemTable, *playersTable, *nodeTable, *mobTable; + + IBOutlet NSTabView *tabView; + + IBOutlet NSView *view; + + NSTimer *_updateTimer; + + int _currentTab; // currently selected tab + + NSSize _minSectionSize, _maxSectionSize; + float _updateFrequency; + + NSString *_mobFilterString; + NSString *_nodeFilterString; +} + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property float updateFrequency; + +// tables +@property (readonly) NSTableView *itemTable; +@property (readonly) NSTableView *playersTable; +@property (readonly) NSTableView *nodeTable; +@property (readonly) NSTableView *mobTable; + +- (BOOL)isTabVisible:(int)tab; + +- (void)loadTabData; + +- (NSString*)nameFilter; + +// TO DO: this should change based on what tab we are viewing! +- (int)objectCount; + +// TO DO: when we reload the table, STAY WITH SELECTED ROW! + + +- (IBAction)filter: (id)sender; +- (IBAction)refreshData: (id)sender; +- (IBAction)updateTracking: (id)sender; +- (IBAction)moveToStart: (id)sender; +- (IBAction)moveToStop: (id)sender; +- (IBAction)resetObjects: (id)sender; +- (IBAction)targetObject: (id)sender; +- (IBAction)faceObject: (id)sender; +- (IBAction)reloadNames: (id)sender; + +@end diff --git a/ObjectsController.m b/ObjectsController.m new file mode 100644 index 0000000..5cfc40f --- /dev/null +++ b/ObjectsController.m @@ -0,0 +1,558 @@ +// +// ObjectController.m +// Pocket Gnome +// +// Created by Josh on 2/4/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "ObjectsController.h" +#import "PlayersController.h" +#import "MovementController.h" +#import "PlayerDataController.h" + +#import "Controller.h" +#import "MobController.h" +#import "NodeController.h" +#import "ImageAndTextCell.h" + +@interface ObjectsController (Internal) +- (id)currentController; +- (WoWObject*)selectedObject; +@end + +@implementation ObjectsController + +- (id) init{ + self = [super init]; + if ( self != nil ){ + + // default to players tab + _currentTab = [[NSUserDefaults standardUserDefaults] integerForKey:@"DefaultObjectTab"]; + + _updateFrequency = 1.0f; + + _mobFilterString = nil; + _nodeFilterString = nil; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(viewLoaded:) + name: DidLoadViewInMainWindowNotification + object: nil]; + + [NSBundle loadNibNamed: @"Objects" owner: self]; + } + + return self; +} + +- (void)viewLoaded: (NSNotification*)notification { + + if ( [notification object] == self.view ) { + // select the saved tab! + [tabView selectTabViewItemWithIdentifier:[NSString stringWithFormat:@"%d",_currentTab]]; + } +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; + + NSString *key = [[self currentController] updateFrequencyKey]; + if ( key ){ + self.updateFrequency = [[NSUserDefaults standardUserDefaults] floatForKey:key]; + } + + [mobTable setDoubleAction: @selector(tableDoubleClick:)]; + [mobTable setTarget: self]; + [playersTable setDoubleAction: @selector(tableDoubleClick:)]; + [playersTable setTarget: self]; + [itemTable setDoubleAction: @selector(tableDoubleClick:)]; + [itemTable setTarget: self]; + [nodeTable setDoubleAction: @selector(tableDoubleClick:)]; + [nodeTable setTarget: self]; + + ImageAndTextCell *imageAndTextCell = [[[ImageAndTextCell alloc] init] autorelease]; + [imageAndTextCell setEditable: NO]; + [[mobTable tableColumnWithIdentifier: @"Name"] setDataCell: imageAndTextCell]; + [[playersTable tableColumnWithIdentifier: @"Class"] setDataCell: imageAndTextCell]; + [[playersTable tableColumnWithIdentifier: @"Race"] setDataCell: imageAndTextCell]; + [[playersTable tableColumnWithIdentifier: @"Gender"] setDataCell: imageAndTextCell]; + [[nodeTable tableColumnWithIdentifier: @"Name"] setDataCell: imageAndTextCell]; +} + +- (void)dealloc{ + [super dealloc]; +} + +@synthesize view; +@synthesize minSectionSize = _minSectionSize; +@synthesize maxSectionSize = _maxSectionSize; +@synthesize updateFrequency = _updateFrequency; + +@synthesize mobTable; +@synthesize itemTable; +@synthesize playersTable; +@synthesize nodeTable; + +- (NSString*)sectionTitle { + return @"Objects"; +} + +- (void)setUpdateFrequency: (float)frequency { + if(frequency < 0.1) frequency = 0.1; + + [self willChangeValueForKey: @"updateFrequency"]; + _updateFrequency = [[NSString stringWithFormat: @"%.2f", frequency] floatValue]; + [self didChangeValueForKey: @"updateFrequency"]; + + NSString *key = [[self currentController] updateFrequencyKey]; + if ( key ){ + [[NSUserDefaults standardUserDefaults] setFloat: _updateFrequency forKey: [[self currentController] updateFrequencyKey]]; + } + + // let our individual controllers know! + [(ObjectController*)[self currentController] setUpdateFrequency:_updateFrequency]; + + [_updateTimer invalidate]; + _updateTimer = [NSTimer scheduledTimerWithTimeInterval: frequency target: self selector: @selector(updateCount) userInfo: nil repeats: YES]; +} + +- (int)objectCount{ + + return [playersController objectCount] + [mobController objectCount] + [itemController objectCount] + [nodeController objectCount]; +} + +// just returns the controller that is currently being viwed +- (id)currentController{ + if ( _currentTab == Tab_Players ){ + return playersController; + } + else if ( _currentTab == Tab_Mobs ){ + return mobController; + } + else if ( _currentTab == Tab_Items ){ + return itemController; + } + else if ( _currentTab == Tab_Nodes ){ + return nodeController; + } + + return nil; +} + +- (NSTableView*)currentTable{ + if ( _currentTab == Tab_Players ){ + return playersTable; + } + else if ( _currentTab == Tab_Mobs ){ + return mobTable; + } + else if ( _currentTab == Tab_Items ){ + return itemTable; + } + else if ( _currentTab == Tab_Nodes ){ + return nodeTable; + } + + return nil; +} + +- (BOOL)isTabVisible:(int)tab{ + + if ( _currentTab == Tab_Players && [[playersTable window] isVisible] ){ + return YES; + } + else if ( _currentTab == Tab_Mobs && [[mobTable window] isVisible] ){ + return YES; + } + else if ( _currentTab == Tab_Items && [[itemTable window] isVisible] ){ + return YES; + } + else if ( _currentTab == Tab_Nodes && [[nodeTable window] isVisible] ){ + return YES; + } + + return NO; +} + +- (void)loadTabData{ + + if ( _currentTab == Tab_Players ){ + [playersTable reloadData]; + } + else if ( _currentTab == Tab_Mobs ){ + [mobTable reloadData]; + } + else if ( _currentTab == Tab_Items ){ + [itemTable reloadData]; + } + else if ( _currentTab == Tab_Nodes ){ + [nodeTable reloadData]; + } +} + +- (NSString*)nameFilter{ + if ( _currentTab == Tab_Nodes ) + return [[_nodeFilterString retain] autorelease]; + else if ( _currentTab == Tab_Mobs ) + return [[_mobFilterString retain] autorelease]; + + return nil; +} + +- (WoWObject*)selectedObject{ + int selectedRow = [[self currentTable] selectedRow]; + if ( selectedRow == -1 ) return nil; + + WoWObject *obj = [(ObjectController*)[self currentController] objectForRowIndex:selectedRow]; + return obj; +} + +#pragma mark Menus + +- (void)setMobMenu{ + + id selectedObject = [[moveToMobPopUpButton selectedItem] representedObject]; + + NSMenu *mobMenu = [[[NSMenu alloc] initWithTitle: @"Currently Selected Mob"] autorelease]; + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"Currently Selected Mob" action: nil keyEquivalent: @""] autorelease]; + [item setTag: -1]; + [item setIndentationLevel: 1]; + [mobMenu addItem: item]; + + // add a separator + item = [NSMenuItem separatorItem]; + [mobMenu addItem: item]; + + BOOL previousMobFound = NO; + + // add UNIQUE items to the menu + for ( NSString *mobName in [mobController uniqueMobsAlphabetized] ){ + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Closest %@", mobName] action: nil keyEquivalent: @""] autorelease]; + [item setTag: 0]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: mobName]; + [mobMenu addItem: item]; + + if ( selectedObject && [mobName isEqualToString:selectedObject] ){ + previousMobFound = YES; + } + } + + // should we keep the selected item in the menu if it's not found nearby? + if ( selectedObject && !previousMobFound ){ + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Closest %@", selectedObject] action: nil keyEquivalent: @""] autorelease]; + [item setTag: 0]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: selectedObject]; + [mobMenu addItem: item]; + } + + [moveToMobPopUpButton setMenu:mobMenu]; + + if ( selectedObject ){ + [moveToMobPopUpButton selectItemWithTitle: [NSString stringWithFormat: @"Closest %@", selectedObject]]; + } + else{ + [moveToMobPopUpButton selectItemWithTag:-1]; + } +} + +- (void)setNodeMenu{ + + id selectedObject = [[moveToNodePopUpButton selectedItem] representedObject]; + + NSMenu *nodeMenu = [[[NSMenu alloc] initWithTitle: @"Currently Selected Node"] autorelease]; + NSMenuItem *item = [[[NSMenuItem alloc] initWithTitle: @"Currently Selected Node" action: nil keyEquivalent: @""] autorelease]; + [item setTag: -1]; + [item setIndentationLevel: 1]; + [nodeMenu addItem: item]; + + // add a separator + item = [NSMenuItem separatorItem]; + [nodeMenu addItem: item]; + + BOOL previousNodeFound = NO; + + // add UNIQUE items to the menu + for ( NSString *nodeName in [nodeController uniqueNodesAlphabetized] ){ + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Closest %@", nodeName] action: nil keyEquivalent: @""] autorelease]; + [item setTag: 0]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: nodeName]; + [nodeMenu addItem: item]; + + if ( selectedObject && [nodeName isEqualToString:selectedObject] ){ + previousNodeFound = YES; + } + } + + // should we keep the selected item in the menu if it's not found nearby? + if ( selectedObject && !previousNodeFound ){ + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"Closest %@", selectedObject] action: nil keyEquivalent: @""] autorelease]; + [item setTag: 0]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: selectedObject]; + [nodeMenu addItem: item]; + } + + [moveToNodePopUpButton setMenu:nodeMenu]; + + if ( selectedObject ){ + [moveToNodePopUpButton selectItemWithTitle: [NSString stringWithFormat: @"Closest %@", selectedObject]]; + } + else{ + [moveToNodePopUpButton selectItemWithTag:-1]; + } +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + + if ( aTableView == playersTable ){ + return [playersController objectCountWithFilters]; + } + else if ( aTableView == mobTable ){ + return [mobController objectCountWithFilters]; + } + else if ( aTableView == itemTable ){ + return [itemController objectCountWithFilters]; + } + else if ( aTableView == nodeTable ){ + return [nodeController objectCountWithFilters]; + } + + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if(rowIndex == -1) return nil; + + if ( aTableView == playersTable ){ + return [playersController tableView:aTableView objectValueForTableColumn:aTableColumn row:rowIndex]; + } + else if ( aTableView == mobTable ){ + return [mobController tableView:aTableView objectValueForTableColumn:aTableColumn row:rowIndex]; + } + else if ( aTableView == itemTable ){ + return [itemController tableView:aTableView objectValueForTableColumn:aTableColumn row:rowIndex]; + } + else if ( aTableView == nodeTable ){ + return [nodeController tableView:aTableView objectValueForTableColumn:aTableColumn row:rowIndex]; + } + + return nil; +} + +- (void)tableView:(NSTableView *)aTableView sortDescriptorsDidChange:(NSArray *)oldDescriptors { + + if ( aTableView == playersTable ){ + [playersController sortUsingDescriptors:[aTableView sortDescriptors]]; + [aTableView reloadData]; + } + else if ( aTableView == mobTable ){ + [mobController sortUsingDescriptors:[aTableView sortDescriptors]]; + [aTableView reloadData]; + } + else if ( aTableView == itemTable ){ + [itemController sortUsingDescriptors:[aTableView sortDescriptors]]; + [aTableView reloadData]; + } + else if ( aTableView == nodeTable ){ + [nodeController sortUsingDescriptors:[aTableView sortDescriptors]]; + [aTableView reloadData]; + } +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex{ + + if ( aTableView == mobTable ){ + [mobController tableView:aTableView willDisplayCell:aCell forTableColumn:aTableColumn row:aRowIndex]; + } + else if ( aTableView == playersTable ){ + [playersController tableView:aTableView willDisplayCell:aCell forTableColumn:aTableColumn row:aRowIndex]; + } + else if ( aTableView == nodeTable ){ + [nodeController tableView:aTableView willDisplayCell:aCell forTableColumn:aTableColumn row:aRowIndex]; + } +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn{ + + if ( aTableView == mobTable ){ + return [mobController tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn]; + } + else if ( aTableView == playersTable ){ + return [playersController tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn]; + } + + return YES; +} + +- (void)itemTableDoubleClick: (id)sender { + if( [sender clickedRow] == -1 ) return; + + //[memoryViewController showObjectMemory: [[_itemDataList objectAtIndex: [sender clickedRow]] objectForKey: @"Item"]]; + //[controller showMemoryView]; +} + +// called when a tab is changed +- (void)tabView:(NSTabView *)tabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem{ + + _currentTab = [[tabViewItem identifier] intValue]; + + // refresh data + [(ObjectController*)[self currentController] refreshData]; + + // tab changed? Updates our frequency + self.updateFrequency = [[NSUserDefaults standardUserDefaults] floatForKey:[[self currentController] updateFrequencyKey]]; + + // save the tab! + [[NSUserDefaults standardUserDefaults] setInteger:_currentTab forKey:@"DefaultObjectTab"]; +} + +#pragma mark Timers + +- (void)updateCount{ + + // update menus if we need to + if ( _currentTab == Tab_Mobs ) + [self setMobMenu]; + else if ( _currentTab == Tab_Nodes ) + [self setNodeMenu]; + + // invert them (so it can detect a change during the timer tick) + [self didChangeValueForKey: @"objectCount"]; + + [self willChangeValueForKey: @"objectCount"]; +} + +#pragma mark UI Actions + +- (IBAction)filter: (id)sender { + + if ( _currentTab == Tab_Nodes ){ + if ( [[sender stringValue] length] ){ + _nodeFilterString = [[sender stringValue] retain]; + } + else{ + _nodeFilterString = nil; + } + + [nodeController refreshData]; + } + + else if ( _currentTab == Tab_Mobs ){ + if ( [[sender stringValue] length] ){ + _mobFilterString = [[sender stringValue] retain]; + } + else{ + _mobFilterString = nil; + } + + [mobController refreshData]; + } +} + +- (IBAction)refreshData: (id)sender{ + // refresh data + [(ObjectController*)[self currentController] refreshData]; +} + +- (IBAction)updateTracking: (id)sender{ + if ( _currentTab == Tab_Mobs ){ + [mobController updateTracking:sender]; + } + if ( _currentTab == Tab_Players ){ + [playersController updateTracking:sender]; + } +} + +- (IBAction)moveToStart: (id)sender{ + + if ( _currentTab == Tab_Mobs ){ + + // currently selected object + if ( [moveToMobPopUpButton selectedTag] == -1 ){ + WoWObject *obj = [self selectedObject]; + + if ( obj ){ + [movementController moveToObject:obj]; //andNotify:NO + } + } + + // listed object + else{ + WoWObject *obj = [mobController closestMobWithName:[[moveToMobPopUpButton selectedItem] representedObject]]; + if ( obj ){ + [movementController moveToObject:obj]; // andNotify:NO + } + } + } + else if ( _currentTab == Tab_Nodes ){ + + // currently selected object + if ( [moveToNodePopUpButton selectedTag] == -1 ){ + WoWObject *obj = [self selectedObject]; + + if ( obj ){ + [movementController moveToObject:obj]; // andNotify:NO + } + } + + // listed object + else{ + WoWObject *obj = [nodeController closestNodeWithName:[[moveToNodePopUpButton selectedItem] representedObject]]; + if ( obj ){ + [movementController moveToObject:obj]; // andNotify:NO + } + } + } +} + +- (IBAction)moveToStop: (id)sender{ + [movementController resetMovementState]; +} + +- (IBAction)resetObjects: (id)sender{ + [(ObjectController*)[self currentController] resetAllObjects]; +} + +- (IBAction)targetObject: (id)sender{ + + WoWObject *obj = [self selectedObject]; + + log(LOG_GENERAL, @"[Objects] Selecting %@", obj); + + if ( obj ){ + [playerController setPrimaryTarget: obj]; + } +} + +- (IBAction)faceObject: (id)sender{ + + WoWObject *obj = [self selectedObject]; + + if ( obj ){ + [movementController turnTowardObject:obj]; + } +} + +- (IBAction)reloadNames: (id)sender{ + [controller traverseNameList]; +} + +- (void)tableDoubleClick: (id)sender { + if ( [sender clickedRow] == -1 ) return; + + [(ObjectController*)[self currentController] tableDoubleClick:sender]; +} + +@end diff --git a/Objects_Enum.h b/Objects_Enum.h new file mode 100644 index 0000000..1f93edb --- /dev/null +++ b/Objects_Enum.h @@ -0,0 +1,536 @@ +// Version: 4.0.1 Build number: 13164 Build date: Oct 6 2010 + +/*---------------------------------- + WoW Offset Dumper 0.2 - IDC Script + by kynox + + Credits: + bobbysing, Patrick, Dominik, Azorbix, Tanaris4 + -----------------------------------*/ + +// Descriptors: 0x00E92AA0 +enum eObjectFields +{ + OBJECT_FIELD_GUID = 0x0, + OBJECT_FIELD_TYPE = 0x8, + OBJECT_FIELD_ENTRY = 0xC, + OBJECT_FIELD_SCALE_X = 0x10, + OBJECT_FIELD_DATA = 0x14, + OBJECT_FIELD_PADDING = 0x1C, + TOTAL_OBJECT_FIELDS = 0x6 +}; +// Descriptors: 0x00E92740 +enum eItemFields +{ + ITEM_FIELD_OWNER = 0x0, + ITEM_FIELD_CONTAINED = 0x8, + ITEM_FIELD_CREATOR = 0x10, + ITEM_FIELD_GIFTCREATOR = 0x18, + ITEM_FIELD_STACK_COUNT = 0x20, + ITEM_FIELD_DURATION = 0x24, + ITEM_FIELD_SPELL_CHARGES = 0x28, + ITEM_FIELD_FLAGS = 0x3C, + ITEM_FIELD_ENCHANTMENT_1_1 = 0x40, + ITEM_FIELD_ENCHANTMENT_1_3 = 0x48, + ITEM_FIELD_ENCHANTMENT_2_1 = 0x4C, + ITEM_FIELD_ENCHANTMENT_2_3 = 0x54, + ITEM_FIELD_ENCHANTMENT_3_1 = 0x58, + ITEM_FIELD_ENCHANTMENT_3_3 = 0x60, + ITEM_FIELD_ENCHANTMENT_4_1 = 0x64, + ITEM_FIELD_ENCHANTMENT_4_3 = 0x6C, + ITEM_FIELD_ENCHANTMENT_5_1 = 0x70, + ITEM_FIELD_ENCHANTMENT_5_3 = 0x78, + ITEM_FIELD_ENCHANTMENT_6_1 = 0x7C, + ITEM_FIELD_ENCHANTMENT_6_3 = 0x84, + ITEM_FIELD_ENCHANTMENT_7_1 = 0x88, + ITEM_FIELD_ENCHANTMENT_7_3 = 0x90, + ITEM_FIELD_ENCHANTMENT_8_1 = 0x94, + ITEM_FIELD_ENCHANTMENT_8_3 = 0x9C, + ITEM_FIELD_ENCHANTMENT_9_1 = 0xA0, + ITEM_FIELD_ENCHANTMENT_9_3 = 0xA8, + ITEM_FIELD_ENCHANTMENT_10_1 = 0xAC, + ITEM_FIELD_ENCHANTMENT_10_3 = 0xB4, + ITEM_FIELD_ENCHANTMENT_11_1 = 0xB8, + ITEM_FIELD_ENCHANTMENT_11_3 = 0xC0, + ITEM_FIELD_ENCHANTMENT_12_1 = 0xC4, + ITEM_FIELD_ENCHANTMENT_12_3 = 0xCC, + ITEM_FIELD_ENCHANTMENT_13_1 = 0xD0, + ITEM_FIELD_ENCHANTMENT_13_3 = 0xD8, + ITEM_FIELD_ENCHANTMENT_14_1 = 0xDC, + ITEM_FIELD_ENCHANTMENT_14_3 = 0xE4, + ITEM_FIELD_PROPERTY_SEED = 0xE8, + ITEM_FIELD_RANDOM_PROPERTIES_ID = 0xEC, + ITEM_FIELD_DURABILITY = 0xF0, + ITEM_FIELD_MAXDURABILITY = 0xF4, + ITEM_FIELD_CREATE_PLAYED_TIME = 0xF8, + ITEM_FIELD_PAD = 0xFC, + TOTAL_ITEM_FIELDS = 0x2A +}; +// Descriptors: 0x00E92700 +enum eContainerFields +{ + CONTAINER_FIELD_NUM_SLOTS = 0x0, + CONTAINER_ALIGN_PAD = 0x4, + CONTAINER_FIELD_SLOT_1 = 0x8, + TOTAL_CONTAINER_FIELDS = 0x3 +}; +// Descriptors: 0x00E91F60 +enum eUnitFields +{ + UNIT_FIELD_CHARM = 0x0, + UNIT_FIELD_SUMMON = 0x8, + UNIT_FIELD_CRITTER = 0x10, + UNIT_FIELD_CHARMEDBY = 0x18, + UNIT_FIELD_SUMMONEDBY = 0x20, + UNIT_FIELD_CREATEDBY = 0x28, + UNIT_FIELD_TARGET = 0x30, + UNIT_FIELD_CHANNEL_OBJECT = 0x38, + UNIT_CHANNEL_SPELL = 0x40, + UNIT_FIELD_BYTES_0 = 0x44, + UNIT_FIELD_HEALTH = 0x48, + UNIT_FIELD_POWER1 = 0x4C, + UNIT_FIELD_POWER2 = 0x50, + UNIT_FIELD_POWER3 = 0x54, + UNIT_FIELD_POWER4 = 0x58, + UNIT_FIELD_POWER5 = 0x5C, + UNIT_FIELD_POWER6 = 0x60, + UNIT_FIELD_POWER7 = 0x64, + UNIT_FIELD_POWER8 = 0x68, + UNIT_FIELD_POWER9 = 0x6C, + UNIT_FIELD_POWER10 = 0x70, + UNIT_FIELD_POWER11 = 0x74, + UNIT_FIELD_MAXHEALTH = 0x78, + UNIT_FIELD_MAXPOWER1 = 0x7C, + UNIT_FIELD_MAXPOWER2 = 0x80, + UNIT_FIELD_MAXPOWER3 = 0x84, + UNIT_FIELD_MAXPOWER4 = 0x88, + UNIT_FIELD_MAXPOWER5 = 0x8C, + UNIT_FIELD_MAXPOWER6 = 0x90, + UNIT_FIELD_MAXPOWER7 = 0x94, + UNIT_FIELD_MAXPOWER8 = 0x98, + UNIT_FIELD_MAXPOWER9 = 0x9C, + UNIT_FIELD_MAXPOWER10 = 0xA0, + UNIT_FIELD_MAXPOWER11 = 0xA4, + UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER = 0xA8, + UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER = 0xD4, + UNIT_FIELD_LEVEL = 0x100, + UNIT_FIELD_FACTIONTEMPLATE = 0x104, + UNIT_VIRTUAL_ITEM_SLOT_ID = 0x108, + UNIT_FIELD_FLAGS = 0x114, + UNIT_FIELD_FLAGS_2 = 0x118, + UNIT_FIELD_AURASTATE = 0x11C, + UNIT_FIELD_BASEATTACKTIME = 0x120, + UNIT_FIELD_RANGEDATTACKTIME = 0x128, + UNIT_FIELD_BOUNDINGRADIUS = 0x12C, + UNIT_FIELD_COMBATREACH = 0x130, + UNIT_FIELD_DISPLAYID = 0x134, + UNIT_FIELD_NATIVEDISPLAYID = 0x138, + UNIT_FIELD_MOUNTDISPLAYID = 0x13C, + UNIT_FIELD_MINDAMAGE = 0x140, + UNIT_FIELD_MAXDAMAGE = 0x144, + UNIT_FIELD_MINOFFHANDDAMAGE = 0x148, + UNIT_FIELD_MAXOFFHANDDAMAGE = 0x14C, + UNIT_FIELD_BYTES_1 = 0x150, + UNIT_FIELD_PETNUMBER = 0x154, + UNIT_FIELD_PET_NAME_TIMESTAMP = 0x158, + UNIT_FIELD_PETEXPERIENCE = 0x15C, + UNIT_FIELD_PETNEXTLEVELEXP = 0x160, + UNIT_DYNAMIC_FLAGS = 0x164, + UNIT_MOD_CAST_SPEED = 0x168, + UNIT_CREATED_BY_SPELL = 0x16C, + UNIT_NPC_FLAGS = 0x170, + UNIT_NPC_EMOTESTATE = 0x174, + UNIT_FIELD_STAT0 = 0x178, + UNIT_FIELD_STAT1 = 0x17C, + UNIT_FIELD_STAT2 = 0x180, + UNIT_FIELD_STAT3 = 0x184, + UNIT_FIELD_STAT4 = 0x188, + UNIT_FIELD_POSSTAT0 = 0x18C, + UNIT_FIELD_POSSTAT1 = 0x190, + UNIT_FIELD_POSSTAT2 = 0x194, + UNIT_FIELD_POSSTAT3 = 0x198, + UNIT_FIELD_POSSTAT4 = 0x19C, + UNIT_FIELD_NEGSTAT0 = 0x1A0, + UNIT_FIELD_NEGSTAT1 = 0x1A4, + UNIT_FIELD_NEGSTAT2 = 0x1A8, + UNIT_FIELD_NEGSTAT3 = 0x1AC, + UNIT_FIELD_NEGSTAT4 = 0x1B0, + UNIT_FIELD_RESISTANCES = 0x1B4, + UNIT_FIELD_RESISTANCEBUFFMODSPOSITIVE = 0x1D0, + UNIT_FIELD_RESISTANCEBUFFMODSNEGATIVE = 0x1EC, + UNIT_FIELD_BASE_MANA = 0x208, + UNIT_FIELD_BASE_HEALTH = 0x20C, + UNIT_FIELD_BYTES_2 = 0x210, + UNIT_FIELD_ATTACK_POWER = 0x214, + UNIT_FIELD_ATTACK_POWER_MODS = 0x218, + UNIT_FIELD_ATTACK_POWER_MULTIPLIER = 0x21C, + UNIT_FIELD_RANGED_ATTACK_POWER = 0x220, + UNIT_FIELD_RANGED_ATTACK_POWER_MODS = 0x224, + UNIT_FIELD_RANGED_ATTACK_POWER_MULTIPLIER = 0x228, + UNIT_FIELD_MINRANGEDDAMAGE = 0x22C, + UNIT_FIELD_MAXRANGEDDAMAGE = 0x230, + UNIT_FIELD_POWER_COST_MODIFIER = 0x234, + UNIT_FIELD_POWER_COST_MULTIPLIER = 0x250, + UNIT_FIELD_MAXHEALTHMODIFIER = 0x26C, + UNIT_FIELD_HOVERHEIGHT = 0x270, + UNIT_FIELD_MAXITEMLEVEL = 0x274, + TOTAL_UNIT_FIELDS = 0x61 +}; +// Descriptors: 0x00E90680 +enum ePlayerFields +{ + PLAYER_DUEL_ARBITER = 0x0, + PLAYER_FLAGS = 0x8, + PLAYER_GUILDRANK = 0xC, + PLAYER_GUILDDELETE_DATE = 0x10, + PLAYER_GUILDLEVEL = 0x14, + PLAYER_BYTES = 0x18, + PLAYER_BYTES_2 = 0x1C, + PLAYER_BYTES_3 = 0x20, + PLAYER_DUEL_TEAM = 0x24, + PLAYER_GUILD_TIMESTAMP = 0x28, + PLAYER_QUEST_LOG_1_1 = 0x2C, + PLAYER_QUEST_LOG_1_2 = 0x30, + PLAYER_QUEST_LOG_1_3 = 0x34, + PLAYER_QUEST_LOG_1_4 = 0x3C, + PLAYER_QUEST_LOG_2_1 = 0x40, + PLAYER_QUEST_LOG_2_2 = 0x44, + PLAYER_QUEST_LOG_2_3 = 0x48, + PLAYER_QUEST_LOG_2_5 = 0x50, + PLAYER_QUEST_LOG_3_1 = 0x54, + PLAYER_QUEST_LOG_3_2 = 0x58, + PLAYER_QUEST_LOG_3_3 = 0x5C, + PLAYER_QUEST_LOG_3_5 = 0x64, + PLAYER_QUEST_LOG_4_1 = 0x68, + PLAYER_QUEST_LOG_4_2 = 0x6C, + PLAYER_QUEST_LOG_4_3 = 0x70, + PLAYER_QUEST_LOG_4_5 = 0x78, + PLAYER_QUEST_LOG_5_1 = 0x7C, + PLAYER_QUEST_LOG_5_2 = 0x80, + PLAYER_QUEST_LOG_5_3 = 0x84, + PLAYER_QUEST_LOG_5_5 = 0x8C, + PLAYER_QUEST_LOG_6_1 = 0x90, + PLAYER_QUEST_LOG_6_2 = 0x94, + PLAYER_QUEST_LOG_6_3 = 0x98, + PLAYER_QUEST_LOG_6_5 = 0xA0, + PLAYER_QUEST_LOG_7_1 = 0xA4, + PLAYER_QUEST_LOG_7_2 = 0xA8, + PLAYER_QUEST_LOG_7_3 = 0xAC, + PLAYER_QUEST_LOG_7_5 = 0xB4, + PLAYER_QUEST_LOG_8_1 = 0xB8, + PLAYER_QUEST_LOG_8_2 = 0xBC, + PLAYER_QUEST_LOG_8_3 = 0xC0, + PLAYER_QUEST_LOG_8_5 = 0xC8, + PLAYER_QUEST_LOG_9_1 = 0xCC, + PLAYER_QUEST_LOG_9_2 = 0xD0, + PLAYER_QUEST_LOG_9_3 = 0xD4, + PLAYER_QUEST_LOG_9_5 = 0xDC, + PLAYER_QUEST_LOG_10_1 = 0xE0, + PLAYER_QUEST_LOG_10_2 = 0xE4, + PLAYER_QUEST_LOG_10_3 = 0xE8, + PLAYER_QUEST_LOG_10_5 = 0xF0, + PLAYER_QUEST_LOG_11_1 = 0xF4, + PLAYER_QUEST_LOG_11_2 = 0xF8, + PLAYER_QUEST_LOG_11_3 = 0xFC, + PLAYER_QUEST_LOG_11_5 = 0x104, + PLAYER_QUEST_LOG_12_1 = 0x108, + PLAYER_QUEST_LOG_12_2 = 0x10C, + PLAYER_QUEST_LOG_12_3 = 0x110, + PLAYER_QUEST_LOG_12_5 = 0x118, + PLAYER_QUEST_LOG_13_1 = 0x11C, + PLAYER_QUEST_LOG_13_2 = 0x120, + PLAYER_QUEST_LOG_13_3 = 0x124, + PLAYER_QUEST_LOG_13_5 = 0x12C, + PLAYER_QUEST_LOG_14_1 = 0x130, + PLAYER_QUEST_LOG_14_2 = 0x134, + PLAYER_QUEST_LOG_14_3 = 0x138, + PLAYER_QUEST_LOG_14_5 = 0x140, + PLAYER_QUEST_LOG_15_1 = 0x144, + PLAYER_QUEST_LOG_15_2 = 0x148, + PLAYER_QUEST_LOG_15_3 = 0x14C, + PLAYER_QUEST_LOG_15_5 = 0x154, + PLAYER_QUEST_LOG_16_1 = 0x158, + PLAYER_QUEST_LOG_16_2 = 0x15C, + PLAYER_QUEST_LOG_16_3 = 0x160, + PLAYER_QUEST_LOG_16_5 = 0x168, + PLAYER_QUEST_LOG_17_1 = 0x16C, + PLAYER_QUEST_LOG_17_2 = 0x170, + PLAYER_QUEST_LOG_17_3 = 0x174, + PLAYER_QUEST_LOG_17_5 = 0x17C, + PLAYER_QUEST_LOG_18_1 = 0x180, + PLAYER_QUEST_LOG_18_2 = 0x184, + PLAYER_QUEST_LOG_18_3 = 0x188, + PLAYER_QUEST_LOG_18_5 = 0x190, + PLAYER_QUEST_LOG_19_1 = 0x194, + PLAYER_QUEST_LOG_19_2 = 0x198, + PLAYER_QUEST_LOG_19_3 = 0x19C, + PLAYER_QUEST_LOG_19_5 = 0x1A4, + PLAYER_QUEST_LOG_20_1 = 0x1A8, + PLAYER_QUEST_LOG_20_2 = 0x1AC, + PLAYER_QUEST_LOG_20_3 = 0x1B0, + PLAYER_QUEST_LOG_20_5 = 0x1B8, + PLAYER_QUEST_LOG_21_1 = 0x1BC, + PLAYER_QUEST_LOG_21_2 = 0x1C0, + PLAYER_QUEST_LOG_21_3 = 0x1C4, + PLAYER_QUEST_LOG_21_5 = 0x1CC, + PLAYER_QUEST_LOG_22_1 = 0x1D0, + PLAYER_QUEST_LOG_22_2 = 0x1D4, + PLAYER_QUEST_LOG_22_3 = 0x1D8, + PLAYER_QUEST_LOG_22_5 = 0x1E0, + PLAYER_QUEST_LOG_23_1 = 0x1E4, + PLAYER_QUEST_LOG_23_2 = 0x1E8, + PLAYER_QUEST_LOG_23_3 = 0x1EC, + PLAYER_QUEST_LOG_23_5 = 0x1F4, + PLAYER_QUEST_LOG_24_1 = 0x1F8, + PLAYER_QUEST_LOG_24_2 = 0x1FC, + PLAYER_QUEST_LOG_24_3 = 0x200, + PLAYER_QUEST_LOG_24_5 = 0x208, + PLAYER_QUEST_LOG_25_1 = 0x20C, + PLAYER_QUEST_LOG_25_2 = 0x210, + PLAYER_QUEST_LOG_25_3 = 0x214, + PLAYER_QUEST_LOG_25_5 = 0x21C, + PLAYER_QUEST_LOG_26_1 = 0x220, + PLAYER_QUEST_LOG_26_2 = 0x224, + PLAYER_QUEST_LOG_26_3 = 0x228, + PLAYER_QUEST_LOG_26_5 = 0x230, + PLAYER_QUEST_LOG_27_1 = 0x234, + PLAYER_QUEST_LOG_27_2 = 0x238, + PLAYER_QUEST_LOG_27_3 = 0x23C, + PLAYER_QUEST_LOG_27_5 = 0x244, + PLAYER_QUEST_LOG_28_1 = 0x248, + PLAYER_QUEST_LOG_28_2 = 0x24C, + PLAYER_QUEST_LOG_28_3 = 0x250, + PLAYER_QUEST_LOG_28_5 = 0x258, + PLAYER_QUEST_LOG_29_1 = 0x25C, + PLAYER_QUEST_LOG_29_2 = 0x260, + PLAYER_QUEST_LOG_29_3 = 0x264, + PLAYER_QUEST_LOG_29_5 = 0x26C, + PLAYER_QUEST_LOG_30_1 = 0x270, + PLAYER_QUEST_LOG_30_2 = 0x274, + PLAYER_QUEST_LOG_30_3 = 0x278, + PLAYER_QUEST_LOG_30_5 = 0x280, + PLAYER_QUEST_LOG_31_1 = 0x284, + PLAYER_QUEST_LOG_31_2 = 0x288, + PLAYER_QUEST_LOG_31_3 = 0x28C, + PLAYER_QUEST_LOG_31_5 = 0x294, + PLAYER_QUEST_LOG_32_1 = 0x298, + PLAYER_QUEST_LOG_32_2 = 0x29C, + PLAYER_QUEST_LOG_32_3 = 0x2A0, + PLAYER_QUEST_LOG_32_5 = 0x2A8, + PLAYER_QUEST_LOG_33_1 = 0x2AC, + PLAYER_QUEST_LOG_33_2 = 0x2B0, + PLAYER_QUEST_LOG_33_3 = 0x2B4, + PLAYER_QUEST_LOG_33_5 = 0x2BC, + PLAYER_QUEST_LOG_34_1 = 0x2C0, + PLAYER_QUEST_LOG_34_2 = 0x2C4, + PLAYER_QUEST_LOG_34_3 = 0x2C8, + PLAYER_QUEST_LOG_34_5 = 0x2D0, + PLAYER_QUEST_LOG_35_1 = 0x2D4, + PLAYER_QUEST_LOG_35_2 = 0x2D8, + PLAYER_QUEST_LOG_35_3 = 0x2DC, + PLAYER_QUEST_LOG_35_5 = 0x2E4, + PLAYER_QUEST_LOG_36_1 = 0x2E8, + PLAYER_QUEST_LOG_36_2 = 0x2EC, + PLAYER_QUEST_LOG_36_3 = 0x2F0, + PLAYER_QUEST_LOG_36_5 = 0x2F8, + PLAYER_QUEST_LOG_37_1 = 0x2FC, + PLAYER_QUEST_LOG_37_2 = 0x300, + PLAYER_QUEST_LOG_37_3 = 0x304, + PLAYER_QUEST_LOG_37_5 = 0x30C, + PLAYER_QUEST_LOG_38_1 = 0x310, + PLAYER_QUEST_LOG_38_2 = 0x314, + PLAYER_QUEST_LOG_38_3 = 0x318, + PLAYER_QUEST_LOG_38_5 = 0x320, + PLAYER_QUEST_LOG_39_1 = 0x324, + PLAYER_QUEST_LOG_39_2 = 0x328, + PLAYER_QUEST_LOG_39_3 = 0x32C, + PLAYER_QUEST_LOG_39_5 = 0x334, + PLAYER_QUEST_LOG_40_1 = 0x338, + PLAYER_QUEST_LOG_40_2 = 0x33C, + PLAYER_QUEST_LOG_40_3 = 0x340, + PLAYER_QUEST_LOG_40_5 = 0x348, + PLAYER_QUEST_LOG_41_1 = 0x34C, + PLAYER_QUEST_LOG_41_2 = 0x350, + PLAYER_QUEST_LOG_41_3 = 0x354, + PLAYER_QUEST_LOG_41_5 = 0x35C, + PLAYER_QUEST_LOG_42_1 = 0x360, + PLAYER_QUEST_LOG_42_2 = 0x364, + PLAYER_QUEST_LOG_42_3 = 0x368, + PLAYER_QUEST_LOG_42_5 = 0x370, + PLAYER_QUEST_LOG_43_1 = 0x374, + PLAYER_QUEST_LOG_43_2 = 0x378, + PLAYER_QUEST_LOG_43_3 = 0x37C, + PLAYER_QUEST_LOG_43_5 = 0x384, + PLAYER_QUEST_LOG_44_1 = 0x388, + PLAYER_QUEST_LOG_44_2 = 0x38C, + PLAYER_QUEST_LOG_44_3 = 0x390, + PLAYER_QUEST_LOG_44_5 = 0x398, + PLAYER_QUEST_LOG_45_1 = 0x39C, + PLAYER_QUEST_LOG_45_2 = 0x3A0, + PLAYER_QUEST_LOG_45_3 = 0x3A4, + PLAYER_QUEST_LOG_45_5 = 0x3AC, + PLAYER_QUEST_LOG_46_1 = 0x3B0, + PLAYER_QUEST_LOG_46_2 = 0x3B4, + PLAYER_QUEST_LOG_46_3 = 0x3B8, + PLAYER_QUEST_LOG_46_5 = 0x3C0, + PLAYER_QUEST_LOG_47_1 = 0x3C4, + PLAYER_QUEST_LOG_47_2 = 0x3C8, + PLAYER_QUEST_LOG_47_3 = 0x3CC, + PLAYER_QUEST_LOG_47_5 = 0x3D4, + PLAYER_QUEST_LOG_48_1 = 0x3D8, + PLAYER_QUEST_LOG_48_2 = 0x3DC, + PLAYER_QUEST_LOG_48_3 = 0x3E0, + PLAYER_QUEST_LOG_48_5 = 0x3E8, + PLAYER_QUEST_LOG_49_1 = 0x3EC, + PLAYER_QUEST_LOG_49_2 = 0x3F0, + PLAYER_QUEST_LOG_49_3 = 0x3F4, + PLAYER_QUEST_LOG_49_5 = 0x3FC, + PLAYER_QUEST_LOG_50_1 = 0x400, + PLAYER_QUEST_LOG_50_2 = 0x404, + PLAYER_QUEST_LOG_50_3 = 0x408, + PLAYER_QUEST_LOG_50_5 = 0x410, + PLAYER_VISIBLE_ITEM_1_ENTRYID = 0x414, + PLAYER_VISIBLE_ITEM_1_ENCHANTMENT = 0x418, + PLAYER_VISIBLE_ITEM_2_ENTRYID = 0x41C, + PLAYER_VISIBLE_ITEM_2_ENCHANTMENT = 0x420, + PLAYER_VISIBLE_ITEM_3_ENTRYID = 0x424, + PLAYER_VISIBLE_ITEM_3_ENCHANTMENT = 0x428, + PLAYER_VISIBLE_ITEM_4_ENTRYID = 0x42C, + PLAYER_VISIBLE_ITEM_4_ENCHANTMENT = 0x430, + PLAYER_VISIBLE_ITEM_5_ENTRYID = 0x434, + PLAYER_VISIBLE_ITEM_5_ENCHANTMENT = 0x438, + PLAYER_VISIBLE_ITEM_6_ENTRYID = 0x43C, + PLAYER_VISIBLE_ITEM_6_ENCHANTMENT = 0x440, + PLAYER_VISIBLE_ITEM_7_ENTRYID = 0x444, + PLAYER_VISIBLE_ITEM_7_ENCHANTMENT = 0x448, + PLAYER_VISIBLE_ITEM_8_ENTRYID = 0x44C, + PLAYER_VISIBLE_ITEM_8_ENCHANTMENT = 0x450, + PLAYER_VISIBLE_ITEM_9_ENTRYID = 0x454, + PLAYER_VISIBLE_ITEM_9_ENCHANTMENT = 0x458, + PLAYER_VISIBLE_ITEM_10_ENTRYID = 0x45C, + PLAYER_VISIBLE_ITEM_10_ENCHANTMENT = 0x460, + PLAYER_VISIBLE_ITEM_11_ENTRYID = 0x464, + PLAYER_VISIBLE_ITEM_11_ENCHANTMENT = 0x468, + PLAYER_VISIBLE_ITEM_12_ENTRYID = 0x46C, + PLAYER_VISIBLE_ITEM_12_ENCHANTMENT = 0x470, + PLAYER_VISIBLE_ITEM_13_ENTRYID = 0x474, + PLAYER_VISIBLE_ITEM_13_ENCHANTMENT = 0x478, + PLAYER_VISIBLE_ITEM_14_ENTRYID = 0x47C, + PLAYER_VISIBLE_ITEM_14_ENCHANTMENT = 0x480, + PLAYER_VISIBLE_ITEM_15_ENTRYID = 0x484, + PLAYER_VISIBLE_ITEM_15_ENCHANTMENT = 0x488, + PLAYER_VISIBLE_ITEM_16_ENTRYID = 0x48C, + PLAYER_VISIBLE_ITEM_16_ENCHANTMENT = 0x490, + PLAYER_VISIBLE_ITEM_17_ENTRYID = 0x494, + PLAYER_VISIBLE_ITEM_17_ENCHANTMENT = 0x498, + PLAYER_VISIBLE_ITEM_18_ENTRYID = 0x49C, + PLAYER_VISIBLE_ITEM_18_ENCHANTMENT = 0x4A0, + PLAYER_VISIBLE_ITEM_19_ENTRYID = 0x4A4, + PLAYER_VISIBLE_ITEM_19_ENCHANTMENT = 0x4A8, + PLAYER_CHOSEN_TITLE = 0x4AC, + PLAYER_FAKE_INEBRIATION = 0x4B0, + PLAYER_FIELD_PAD_0 = 0x4B4, + PLAYER_FIELD_INV_SLOT_HEAD = 0x4B8, + PLAYER_FIELD_PACK_SLOT_1 = 0x570, + PLAYER_FIELD_BANK_SLOT_1 = 0x5F0, + PLAYER_FIELD_BANKBAG_SLOT_1 = 0x6D0, + PLAYER_FIELD_VENDORBUYBACK_SLOT_1 = 0x708, + PLAYER_FIELD_KEYRING_SLOT_1 = 0x768, + PLAYER_FARSIGHT = 0x868, + PLAYER__FIELD_KNOWN_TITLES = 0x870, + PLAYER__FIELD_KNOWN_TITLES1 = 0x878, + PLAYER__FIELD_KNOWN_TITLES2 = 0x880, + PLAYER_XP = 0x888, + PLAYER_NEXT_LEVEL_XP = 0x88C, + PLAYER_SKILL_INFO_1_1 = 0x890, + PLAYER_CHARACTER_POINTS = 0xE90, + PLAYER_TRACK_CREATURES = 0xE94, + PLAYER_TRACK_RESOURCES = 0xE98, + PLAYER_BLOCK_PERCENTAGE = 0xE9C, + PLAYER_DODGE_PERCENTAGE = 0xEA0, + PLAYER_PARRY_PERCENTAGE = 0xEA4, + PLAYER_EXPERTISE = 0xEA8, + PLAYER_OFFHAND_EXPERTISE = 0xEAC, + PLAYER_CRIT_PERCENTAGE = 0xEB0, + PLAYER_RANGED_CRIT_PERCENTAGE = 0xEB4, + PLAYER_OFFHAND_CRIT_PERCENTAGE = 0xEB8, + PLAYER_SPELL_CRIT_PERCENTAGE1 = 0xEBC, + PLAYER_SHIELD_BLOCK = 0xED8, + PLAYER_SHIELD_BLOCK_CRIT_PERCENTAGE = 0xEDC, + PLAYER_MASTERY = 0xEE0, + PLAYER_EXPLORED_ZONES_1 = 0xEE4, + PLAYER_REST_STATE_EXPERIENCE = 0x1124, + PLAYER_FIELD_COINAGE = 0x1128, + PLAYER_FIELD_MOD_DAMAGE_DONE_POS = 0x1130, + PLAYER_FIELD_MOD_DAMAGE_DONE_NEG = 0x114C, + PLAYER_FIELD_MOD_DAMAGE_DONE_PCT = 0x1168, + PLAYER_FIELD_MOD_HEALING_DONE_POS = 0x1184, + PLAYER_FIELD_MOD_HEALING_PCT = 0x1188, + PLAYER_FIELD_MOD_HEALING_DONE_PCT = 0x118C, + PLAYER_FIELD_MOD_SPELL_POWER_PCT = 0x1190, + PLAYER_FIELD_MOD_TARGET_RESISTANCE = 0x1194, + PLAYER_FIELD_MOD_TARGET_PHYSICAL_RESISTANCE = 0x1198, + PLAYER_FIELD_BYTES = 0x119C, + PLAYER_SELF_RES_SPELL = 0x11A0, + PLAYER_FIELD_PVP_MEDALS = 0x11A4, + PLAYER_FIELD_BUYBACK_PRICE_1 = 0x11A8, + PLAYER_FIELD_BUYBACK_TIMESTAMP_1 = 0x11D8, + PLAYER_FIELD_KILLS = 0x1208, + PLAYER_FIELD_LIFETIME_HONORBALE_KILLS = 0x120C, + PLAYER_FIELD_BYTES2 = 0x1210, + PLAYER_FIELD_WATCHED_FACTION_INDEX = 0x1214, + PLAYER_FIELD_COMBAT_RATING_1 = 0x1218, + PLAYER_FIELD_ARENA_TEAM_INFO_1_1 = 0x1280, + PLAYER_FIELD_BATTLEGROUND_RATING = 0x12D4, + PLAYER_FIELD_MAX_LEVEL = 0x12D8, + PLAYER_FIELD_DAILY_QUESTS_1 = 0x12DC, + PLAYER_RUNE_REGEN_1 = 0x1340, + PLAYER_NO_REAGENT_COST_1 = 0x1350, + PLAYER_FIELD_GLYPH_SLOTS_1 = 0x135C, + PLAYER_FIELD_GLYPHS_1 = 0x1380, + PLAYER_GLYPHS_ENABLED = 0x13A4, + PLAYER_PET_SPELL_POWER = 0x13A8, + PLAYER_FIELD_RESEARCHING_1 = 0x13AC, + PLAYER_FIELD_RESERACH_SITE_1 = 0x13CC, + PLAYER_PROFESSION_SKILL_LINE_1 = 0x13EC, + PLAYER_FIELD_UI_HIT_MODIFIER = 0x13F4, + PLAYER_FIELD_UI_SPELL_HIT_MODIFIER = 0x13F8, + PLAYER_FIELD_HOME_REALM_TIME_OFFSET = 0x13FC, + TOTAL_PLAYER_FIELDS = 0x13D +}; +// Descriptors: 0x00E905E0 +enum eGameObjectFields +{ + OBJECT_FIELD_CREATED_BY = 0x0, + GAMEOBJECT_DISPLAYID = 0x8, + GAMEOBJECT_FLAGS = 0xC, + GAMEOBJECT_PARENTROTATION = 0x10, + GAMEOBJECT_DYNAMIC = 0x20, + GAMEOBJECT_FACTION = 0x24, + GAMEOBJECT_LEVEL = 0x28, + GAMEOBJECT_BYTES_1 = 0x2C, + TOTAL_GAMEOBJECT_FIELDS = 0x8 +}; +// Descriptors: 0x00E90560 +enum eDynamicObjectFields +{ + DYNAMICOBJECT_CASTER = 0x0, + DYNAMICOBJECT_BYTES = 0x8, + DYNAMICOBJECT_SPELLID = 0xC, + DYNAMICOBJECT_RADIUS = 0x10, + DYNAMICOBJECT_CASTTIME = 0x14, + TOTAL_DYNAMICOBJECT_FIELDS = 0x5 +}; +// Descriptors: 0x00E904C0 +enum eCorpseFields +{ + CORPSE_FIELD_OWNER = 0x0, + CORPSE_FIELD_PARTY = 0x8, + CORPSE_FIELD_DISPLAY_ID = 0x10, + CORPSE_FIELD_ITEM = 0x14, + CORPSE_FIELD_BYTES_1 = 0x60, + CORPSE_FIELD_BYTES_2 = 0x64, + CORPSE_FIELD_FLAGS = 0x68, + CORPSE_FIELD_DYNAMIC_FLAGS = 0x6C, + TOTAL_CORPSE_FIELDS = 0x8 +}; diff --git a/OffsetController.h b/OffsetController.h new file mode 100644 index 0000000..6a66105 --- /dev/null +++ b/OffsetController.h @@ -0,0 +1,49 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: OffsetController.h 421 2010-04-17 00:23:12Z ootoaoo $ + * + */ + +#import + +#define OffsetsLoaded @"OffsetsLoaded" + +@class Controller; + +@interface OffsetController : NSObject { + + NSMutableDictionary *offsets; + NSDictionary *_offsetDictionary; + + IBOutlet Controller *controller; + + BOOL _offsetsLoaded; +} + ++ (OffsetController *)sharedController; + +- (unsigned long) offset: (NSString*)key; + +- (NSDictionary*) offsetWithByteSignature: (NSString*)signature + withMask:(NSString*)mask; + +@end diff --git a/OffsetController.m b/OffsetController.m new file mode 100644 index 0000000..d851b12 --- /dev/null +++ b/OffsetController.m @@ -0,0 +1,485 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: OffsetController.m 422 2010-04-17 01:40:31Z ootoaoo $ + * + */ + +#import "OffsetController.h" +#import "MemoryAccess.h" +#import "Controller.h" + + +// Rough estimate of where the text segment ends (0xB32E98 for 3.3.5a) +#define TEXT_SEGMENT_MAX_ADDRESS 0xB32E98 + +@interface OffsetController (Internal) + +- (void)loadEveryOffset; +- (void)findOffsets: (const void*)data Len:(unsigned long)len; +- (NSData*)getAllMemory; + +BOOL bDataCompare(const unsigned char* pData, const unsigned char* bMask, const char* szMask); + +// new scans +- (NSDictionary*) findPattern: (unsigned char*)bMask + withStringMask:(char*)szMask + withData:(const void*)dw_Address + withLen:(unsigned long)dw_Len; +@end + + + +@implementation OffsetController + +static OffsetController* sharedController = nil; + ++ (OffsetController *)sharedController { + if (sharedController == nil) + sharedController = [[[self class] alloc] init]; + return sharedController; +} + +- (id)init{ + self = [super init]; + if ( sharedController ){ + [self release]; + self = sharedController; + } + else if (self != nil) { + + sharedController = self; + + offsets = [[NSMutableDictionary alloc] init]; + _offsetsLoaded = NO; + + _offsetDictionary = [[NSDictionary dictionaryWithContentsOfFile: [[NSBundle mainBundle] pathForResource: @"OffsetSignatures" ofType: @"plist"]] retain]; + if ( !_offsetDictionary ){ + PGLog(@"[Offsets] Error, offset dictionary not found!"); + } + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(memoryIsValid:) name: MemoryAccessValidNotification object: nil]; + } + return self; +} + +- (void)dealloc { + [offsets release]; + [_offsetDictionary release]; + [super dealloc]; +} + +- (void)memoryIsValid: (NSNotification*)notification { + [self loadEveryOffset]; +} + +// tries to find all of our offsets! +- (void)loadEveryOffset{ + + /* We used to prevent offset reloading, but PG could re-attach to a different wow version (i.e. we close the cata beta) + if ( _offsetsLoaded ) + return; + */ + + // remove old offsets + [offsets removeAllObjects]; + + // find the offsets! + NSData *rawMemory = [self getAllMemory]; + [self findOffsets: [rawMemory bytes] Len:[rawMemory length]]; + + // print out the offsets we have! + for ( NSString *key in [_offsetDictionary allKeys] ){ + UInt32 offset = [self offset:key]; + if ( offset > 0 ){ + NSLog(@"%@: 0x%X", key, offset); + } + } + + // print out ones we didn't find + for ( NSString *key in [_offsetDictionary allKeys] ){ + + if ( [self offset:key] == 0 ){ + NSLog(@"[Offset] Error! No offset found for key %@", key); + } + } + + NSLog(@"[Offset] Loaded %d offsets!", [offsets count]); + + // can hard code some here + + _offsetsLoaded = YES; + [[NSNotificationCenter defaultCenter] postNotificationName: OffsetsLoaded object: nil]; +} + +// we now no longer have to check start address! Yay new sweet method from Pocket Goblin! +- (void)findOffsets: (const void*)data Len:(unsigned long)len{ + + if ( IS_PPC ){ + PGLog(@"[Offset] Power PC is not currently supported by Pocket Gnome!"); + return; + } + + if ( _offsetDictionary ){ + + NSArray *allKeys = [_offsetDictionary allKeys]; + + // Intel or PPC? + NSString *arch = @"Intel"; + NSRange range; + + // this will be a key, such as PLAYER_NAME_STATIC + for ( NSString *key in allKeys ){ + + // grab our offset masks for our appropriate instruction set + NSDictionary *offsetData = [[_offsetDictionary valueForKey:key] valueForKey:arch]; + + // Keys within offsetData: + // Mask + // Signature + // StartOffset + // Count (which pattern # is the correct offset? Sadly we have to use this if there isn't a unique function using an offset) + + // lets get the raw data from our objects! + NSString *dictMask = [offsetData objectForKey: @"Mask"]; + NSString *dictSignature = [offsetData objectForKey: @"Signature"]; + NSString *dictCount = [offsetData objectForKey: @"Count"]; + NSString *dictAdditionalOffset = [offsetData objectForKey: @"AdditionalOffset"]; + NSString *dictSubtractOffset = [offsetData objectForKey: @"SubtractOffset"]; + BOOL useAddress = [[offsetData objectForKey: @"UseAddress"] boolValue]; + + // no offset data found, move on to the next one! + if ( [dictMask length] == 0 || [dictSignature length] == 0 ) + continue; + + // what is the count #? + unsigned int count = 1; + if ( dictCount != nil ){ + count = [dictCount intValue]; + } + + unsigned long additionalOffset = 0x0; + if ( [dictAdditionalOffset length] > 0 ){ + range.location = 2; + range.length = [dictAdditionalOffset length]-range.location; + + const char *szAdditionalOffsetInHex = [[dictAdditionalOffset substringWithRange:range] UTF8String]; + additionalOffset = strtol(szAdditionalOffsetInHex, NULL, 16); + } + + long subtractOffset = 0x0; + if ( [dictSubtractOffset length] > 0 ){ + range.location = 2; + range.length = [dictSubtractOffset length]-range.location; + + const char *szSubtractOffsetInHex = [[dictSubtractOffset substringWithRange:range] UTF8String]; + subtractOffset = strtol(szSubtractOffsetInHex, NULL, 16); + } + + // allocate our bytes variable which will store our signature + Byte *bytes = calloc( [dictSignature length]/2, sizeof( Byte ) ); + unsigned int i = 0, k = 0; + + // incrementing by 4 (to skip the beginning \x) + for ( ;i < [dictSignature length]; i+=4 ){ + range.length = 2; + range.location = i+2; + + const char *sigMask = [[dictSignature substringWithRange:range] UTF8String]; + long one = strtol(sigMask, NULL, 16); + bytes[k++] = (Byte)one; + } + + // get our mask + const char *szMaskUTF8 = [dictMask UTF8String]; + char *szMask = strdup(szMaskUTF8); + + NSDictionary *offsetDict = nil; + + offsetDict = [self findPattern:bytes + withStringMask:szMask + withData:data + withLen:len]; + + // we have results! yay! + if ( [offsetDict count] ){ + + // the key is the ADDRESS in which we found the offset! + NSArray *allKeys = [[offsetDict allKeys] sortedArrayUsingSelector:@selector(compare:)]; + int i = 1; + + for ( NSNumber *address in allKeys ){ + + UInt32 offset = [[offsetDict objectForKey:address] unsignedIntValue]; + + if ( count == i ){ + + // we are looking for the ADDRESS at which this sig was found (good for identifying the start of a function!) + if ( useAddress ){ + [offsets setObject: [NSNumber numberWithUnsignedLong:([address unsignedLongValue] + additionalOffset - subtractOffset)] forKey:key]; + break; + } + // the offset we wanted that is in the signature + else{ + [offsets setObject: [NSNumber numberWithUnsignedLong:(offset + additionalOffset - subtractOffset)] forKey:key]; + break; + } + } + i++; + } + } + } + } + // technically should never be here + else{ + PGLog(@"[Offsets] No offset dictionary found, PG will be unable to function!"); + } +} + +- (NSData*)getAllMemory{ + + // this will store all the raw data! + NSMutableData *data = [[NSMutableData alloc] init]; + + // get the WoW PID + pid_t wowPID = 0; + ProcessSerialNumber wowPSN = [controller getWoWProcessSerialNumber]; + OSStatus err = GetProcessPID(&wowPSN, &wowPID); + + if ( (err == noErr) && (wowPID > 0) ){ + + mach_port_t MySlaveTask; + kern_return_t KernelResult = task_for_pid(current_task(), wowPID, &MySlaveTask); + + // try to get a task for this process + + if ( KernelResult == KERN_SUCCESS ){ + + // sweet lets start grabbing memory and copying it into our process! yay! + vm_address_t SourceAddress = 0; + vm_size_t SourceSize = 0; + vm_region_basic_info_data_t SourceInfo; + mach_msg_type_number_t SourceInfoSize = VM_REGION_BASIC_INFO_COUNT; + mach_port_t ObjectName = MACH_PORT_NULL; + + vm_size_t ReturnedBufferContentSize; + Byte *ReturnedBuffer = nil; + + while ( KERN_SUCCESS == ( KernelResult = vm_region(MySlaveTask,&SourceAddress,&SourceSize,VM_REGION_BASIC_INFO,(vm_region_info_t) &SourceInfo,&SourceInfoSize,&ObjectName) ) ){ + + + // don't read too much! + if ( SourceAddress + SourceSize > TEXT_SEGMENT_MAX_ADDRESS ){ + + // we're just too far + if ( SourceAddress >= TEXT_SEGMENT_MAX_ADDRESS ){ + NSLog(@"0x%X > 0x%X Breaking!", SourceAddress, TEXT_SEGMENT_MAX_ADDRESS); + break; + } + } + + NSRange dataRange = NSMakeRange(SourceAddress, SourceSize); + + NSLog(@"[Offset] Success for reading from 0x%X to 0x%X Protection: 0x%X", dataRange.location, dataRange.length + dataRange.location, SourceInfo.protection); + + // increase length + [data increaseLengthBy:dataRange.length]; + + // ensure we have access to this block + if ( ( SourceInfo.protection & VM_PROT_READ ) ) { + NS_DURING { + ReturnedBuffer = malloc(SourceSize); + ReturnedBufferContentSize = SourceSize; + if ( (KERN_SUCCESS == vm_read_overwrite(MySlaveTask,SourceAddress,SourceSize,(vm_address_t)ReturnedBuffer,&ReturnedBufferContentSize)) && + (ReturnedBufferContentSize > 0) ) + { + + [data replaceBytesInRange:dataRange withBytes:ReturnedBuffer]; + } + } NS_HANDLER { + } NS_ENDHANDLER + + if ( ReturnedBuffer != nil ) { + free( ReturnedBuffer ); + ReturnedBuffer = nil; + } + } + // unable to read data, so lets just insert and zero it out! + else{ + [data resetBytesInRange:dataRange]; + + NSLog(@"[Offset] Unable to read block, flags: 0x%X", SourceInfo.protection); + } + + // reset some values to search some more + SourceAddress += SourceSize; + } + } + } + + NSLog(@"[Offset] Total data: 0x%X", [data length]); + + return [[data retain] autorelease]; +} + +BOOL bDataCompare(const unsigned char* pData, const unsigned char* bMask, const char* szMask){ + for(;*szMask;++szMask,++pData,++bMask){ + if(*szMask=='x' && *pData!=*bMask ){ + return false; + } + } + return true; +} + +#pragma mark Public + +- (unsigned long) offset: (NSString*)key{ + NSNumber *offset = [offsets objectForKey: key]; + if ( offset ){ + return [offset unsignedLongValue]; + } + return 0; +} + +- (NSDictionary*)offsetWithByteSignature: (NSString*)signature + withMask:(NSString*)mask{ + + if ( IS_PPC) { + NSLog(@"[Offset] No support for PowerPC!"); + return nil; + } + + // grab all memory into our own memory space! + NSData *data = [self getAllMemory]; + + // convert to Byte* + NSUInteger newLength = [data length]; + Byte *byteData = (Byte*)malloc(newLength); + memcpy(byteData, [data bytes], newLength); + + // the list we'll return! + NSDictionary *offsetDict = nil; + + // we're good to go! + if ( data != nil ){ + + // allocate our bytes variable which will store our signature + Byte *bytes = calloc( [signature length]/2, sizeof( Byte ) ); + unsigned int i = 0, k = 0; + NSRange range; + + // incrementing by 4 (to skip the beginning \x) + for ( ;i < [signature length]; i+=4 ){ + range.length = 2; + range.location = i+2; + + const char *sigMask = [[signature substringWithRange:range] UTF8String]; + long one = strtol(sigMask, NULL, 16); + bytes[k++] = (Byte)one; + } + + // get our mask + const char *szMaskUTF8 = [mask UTF8String]; + char *szMask = strdup(szMaskUTF8); + + offsetDict = [self findPattern:bytes + withStringMask:szMask + withData:byteData + withLen:[data length]]; + } + else { + PGLog(@"[Offset] Unable to read memory!"); + } + + // free our buffer + if ( byteData ) + free( byteData ); + + return [[offsetDict retain] autorelease]; +} + +- (NSDictionary*) findPattern: (unsigned char*)bMask + withStringMask:(char*)szMask + withData:(const void*)dw_Address + withLen:(unsigned long)dw_Len +{ + unsigned long i = 0; + NSMutableDictionary *list = [NSMutableDictionary dictionary]; + + for ( ; i < dw_Len; i++ ){ + + if ( bDataCompare( (unsigned char*)( dw_Address+i ),bMask,szMask) ){ + + const unsigned char *pData = (unsigned char*)( dw_Address+i ); + char *mask = szMask; + unsigned long j = 0; + for ( ;*mask;++mask,++pData){ + if ( j && *mask == 'x' ){ + break; + } + if ( *mask == '?' ){ + j++; + } + } + + unsigned long offset = 0, k; + for (k=0;j>0;j--,k++){ + --pData; + offset <<= 8; + offset ^= (long)*pData & 0xFF; + } + + if ( offset > 0x0 || i > 0 ){ + //NSLog(@" [Offset] Found 0x%X, adding to dictionary at 0x%X", offset, i); + [list setObject:[NSNumber numberWithUnsignedInt:offset] forKey:[NSNumber numberWithUnsignedInt:i]]; + } + } + } + + return [[list retain] autorelease]; +} + +@end + +/* + + Official place for notes on offsets!! + + GetNumCompanions + 0x0 - Number of Pets + 0x4 - Pointers to list of pets + 0x10 - Number of mounts + 0x14 - Pointer to list of mounts + + PLAYER_NAME_LIST - Basically you have a bunch of linked lists here, wish I understand some calling functions better + 0x10 - Friends list + 0x14 - Guildies + 0x24 - People within range + + PLAYER_GUID_NAME - This has the player's 64-bit GUID + name! + 0x0 - 64-bit GUID + 0x8 - Player name + + lua_GetInboxNumItems + First offset + 0x0 = # of total items + 0x4 = # of items in the window + + */ diff --git a/OffsetSignatures.plist b/OffsetSignatures.plist new file mode 100644 index 0000000..cb788fa --- /dev/null +++ b/OffsetSignatures.plist @@ -0,0 +1,811 @@ + + + + + PlayerField_Pointer + + Intel + + Signature + \x8B\x87\x1C\x13\x00\x00\xF6\x40\x08\x02\x75 + Mask + xx??xxxxxxx + Comment + From 4.0.1: lua_UnitIsAFK + + + BaseField_Spell_Channeling + + Intel + + Signature + \xC0\x8B\x41\x0C\x8B\x97\x20\x0B + Mask + xxxxxx?? + Comment + From 4.0.1: lua_UnitChannelInfo + + + BaseField_Spell_ChannelTimeStart + + Intel + + Signature + \x8B\x45\xC0\x3B\x87\x28\x0B\x00\x00\x79 + Mask + xxxxx??xxx + Comment + From 4.0.1: lua_UnitChannelInfo + + + BaseField_Spell_ChannelTimeEnd + + Intel + + Signature + \x89\x44\x24\x04\xE8\x0B\x0B\x16\x00\x8B\x87\x24\x0B\x00\x00\x2D + Mask + xxxxx%%%%xx??xxx + Comment + From 4.0.1: lua_UnitChannelInfo + + + BaseField_Spell_ToCast + + Intel + + Signature + \x85\xC0\x74\x0E\x8B\x88\x00\x0B\x00\x00\x85\xC9 + Mask + xxxxxx??xxxx + Comment + From 4.0.1: lua_SpellStopCasting + + + BaseField_Spell_TimeStart + + Intel + + Signature + \x4C\x24\x04\xE8\x66\x0E\x16\x00\x8B\x87\x18\x0B\x00\x00\x2D\x00\x00\x00\x80\x66\x0F\x6E\xC0 + Mask + xxxx%%%%xx??xxxxxxxxxxx + Comment + From 4.0.1: lua_UnitCastingInfo + + + BaseField_Spell_TimeEnd + + Intel + + Signature + \x74\x88\x3B\x9F\x1C\x0B\x00\x00\x79\x80\x8B\x4A\x50 + Mask + x%xx??xxx%xxx + Comment + From 4.0.1: lua_UnitCastingInfo + + + BaseField_Spell_Casting + + Intel + + Signature + \x74\xB6\xE8\x0B\x7A\x21\x00\x8B\x0D\x38\xC5\x21\x01\x8B\x97\x0C\x0B\x00\x00 + Mask + x%x%%%%xx%%%%xx??xx + Comment + From 4.0.1: lua_UnitCastingInfo + + + BagListOffset + + Intel + + Signature + \x55\x89\xE5\x8B\x4D\x08\x83\xF9\x0A\x77\x25\x83\xF9\x03\x7F\x10\x8B\x04\xCD\x60\x26\xD9\x00\x8B\x14\xCD\x64\x26\xD9\x00\xC9\xC3 + Mask + xxxxxxxxxxxxxxxxxxx????xxx%%%%xx + Comment + From 3.3.3a: sub_4D0B10 + + + Lua_GetWorldStateUIInfo + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x28\x8B\x0D\xD0\x78\x12\x01\x8B\x55\x08\x85\xC9 + Mask + xxxxxxxx????xxxxx + Comment + From 4.0.3: lua_GetWorldStateUIInfo + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + Lua_GetBattlefieldWinner + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x28\x8B\x0D\xD0\x78\x12\x01\x8B\x55\x08\x85\xC9\x75\x1D\x89\x14\x24 + Mask + xxxxxxxx????xxxxxxxxxx + Comment + From 4.0.3: lua_GetBattlefieldWinner + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + Lua_GetPartyMember + + Intel + + Signature + \x8B\x04\xD5\x24\xD4\xDA\x00\x0B\x04\xD5\x20\xD4\xDA\x00\x74\x30\x89\x1C\x24\xC7\x44\x24\x04\x00\x00\x00\x00\xC7\x44\x24\x08\x00\x00\xF0\x3F\xE8\xA8\xF9\x2A\x00\x83\xC4\x24\xB8\x01\x00\x00\x00\x5B\xC9\xC3 + Mask + xxx%%%%xxx????xxxxxxxxxxxxxxxxxxxxxx????xxxxxxxxxxx + Comment + From 3.3.3a: lua_GetPartyMember + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + PLAYER_GUID_NAME + + Intel + + Signature + \xC7\x44\x24\x08\x86\x01\x00\x00\xC7\x04\x24\xC0\x1B\xFD\x00\x89\x44\x24\x04 + Mask + xxxxxxxxxxx????xxxx + Comment + From 4.0.1: sub_6F93C0 + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + Lua_GetNumCompanions + + Intel + + Signature + \xC1\xE6\x04\x8B\x86\xE4\xFA\xFC\x00\x2D\x00\x00\x00\x80 + Mask + xxxxx????xxxxx + Comment + 4.0.1: lua_GetNumCompanions + + ppc + + Signature + + Mask + + + + Lua_GetBindingKey + + Intel + + Signature + \xA1\x40\xAF\xE9\x00\x31\xDB\x89\x45\xE4\xC7\x44\x24\x08\x00\x00\x00\x00 + Mask + x????xxxxxxxxxxxxx + Comment + From 4.0.1: lua_GetBindingKey + + ppc + + Signature + + Mask + + + + Lua_IsUsableAction + + Intel + + Signature + \x8B\x14\x85\x00\xEE\xD8\x00\x8B\x04\x85\x40\xF0\xD8\x00\x85\xC0\x74\xAC + Mask + xxx%%%%xxx????xxxx + Comment + From 3.3.0a: lua_IsUsableAction + + ppc + + Signature + + Mask + + + + Lua_IsUsableActionNotEnough + + Intel + + Signature + \x8B\x14\x85\x00\xEE\xD8\x00\x8B\x04\x85\x40\xF0\xD8\x00\x85\xC0\x74\xAC + Mask + xxx????xxx%%%%xxxx + Comment + From 3.3.0a: lua_IsUsableAction + + ppc + + Signature + + Mask + + + + Lua_GetRuneCount + + Intel + + Signature + \x83\xF9\x05\x77\x30\x8B\x15\xF8\xBA\x21\x01\xB8\x01\x00\x00\x00\x66\x0F\x57\xC0 + Mask + xxxxxxx????xxxxxxxxx + Comment + From 4.0.1: lua_GetRuneCount + + ppc + + Signature + + Mask + + + + PARTY_LEADER_PTR + + Intel + + Signature + \x55\x89\xE5\x57\x83\xEC\x14\xBF\xE0\xB9\x55\x01\xFC\xB9\x08\x00\x00\x00\x31\xC0\xF3\xAB + Mask + xxxxxxxx????xxxxxxxxxx + + ppc + + Signature + + Mask + + + + MACRO_LIST_PTR + + Intel + + Signature + \x89\xC8\xF7\xD0\x21\xC2\x89\x15\x60\x69\x19\x01\x8B\x15\xAC\xD6\xFC\x00\xC1\xE9\x10\x49\x89\x8D\x90\xF3\xFF\xFF\xF6\xC2\x01\x0F\x84\xCC\x00\x00\x00 + Mask + xxxxxxxx%%%%xx????xxxxxx%xxxxxxxx%%%% + Comment + For 3.3.0: sub_6B7C00 (this one definitely took some time to find, kind of sucked to get a good signature that worked for 3.3.0 and 3.3.0a) + + ppc + + Signature + \x3F\xA0\x01\x4D\x38\x5D\x53\xEC\x83\xE2\x00\x0C\x73\xE0\x00\x01\x40\x82\x00\x0C + Mask + xx??xx??xxxxxxxxxxxx + AdditionalOffset + 0xC + + + PLAYER_NAME_LIST + + Intel + + Signature + \x8B\x45\xC4\x8B\x55\xC8\x89\x7C\x24\x04\xC7\x04\x24\x40\xD2\xD2\x00\x89\x44\x24\x08\x89\x54\x24\x0C\xE8\xFD\x15\xFD\xFF\x8B\x75\xC8\x31\xC0\x8B\x5D\xC4\x89\xF2\x81\xE2\x00\x00\x00\xF0\x89\xD1\x81\xF1\x00\x00\x00\x10\x09\xC1\x75\x51 + Mask + xxxxxxxxxxxxx????xxxxxxxxx%%%%xxxxxxxxxxxxxxxxxxxxxxxxxxxx + Comment + For 3.3.3a: sub_185EF0 + + ppc + + Signature + + Mask + + + + WorldState + + Intel + + Signature + \xC7\x05\x74\x43\xC8\x00\x05\x00\x00\x00\xC7\x05\xFC\x3D\xC8\x00\x00\x00\x00\x00\xC7\x04\x24\x2E\x00\x00\x00\xE8\x42\x38\x48\x00\xC7\x44\x24\x08\x00\x00\x00\x00\xC7\x44\x24\x04\xFF\xFF\xFF\xFF\x89\x04\x24\xE8\x9A\x08\x55\x00\xC7\x44\x24\x08\x32\x54\xA9\x00\xC7\x44\x24\x04\x24\x8C\xAE\x00\xC7\x04\x24\x03\x00\x00\x00\x89\x44\x24\x0C\xE8\xFA\x1F\x55\x00\xE8\xB5\x29\x48\x00\x89\x5C\x24\x04\x89\x04\x24\xE8\x69\x66\x48\x00 + Mask + xx????xxxxxx????xxxxxxxxxxxx????xxxxxxxxxxxxxxxxxxxx????xxxx????xxxx????xxxxxxxxxxxx????x????xxxxxxxx???? + Comment + 3.3.3a: sub_2B4C30 + + ppc + + Signature + + Mask + + + + CHATLOG_START + + Intel + + Signature + \xC6\x80\xFC\x7D\xF4\x00\x00\xC6\x80\xB4\x89\xF4\x00\x00\xC7\x80\x6C\x95\xF4\x00\x00\x00\x00\x00\xC7\x80\x70\x95\xF4\x00\x00\x00\x00\x00\xC7\x80\x74\x95\xF4\x00\x00\x00\x00\x00\xC7\x80\x78\x95\xF4\x00\x00\x00\x00\x00\x05\xBC\x17\x00\x00 + Mask + xx????xxx%%%%xxx%%%%xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxxxxxxx + Comment + For 3.3.0: sub_535030 + + ppc + + Signature + + Mask + + + + BATTLEGROUND_STATUS + + Intel + + Signature + \xC1\xE0\x06\x05\xE0\x14\x1E\x01\x74\xD2\x8B\x70\x24\x85\xF6\x74\xCB + Mask + xxxx????xxxxxxxxx + Comment + From 4.0.3: lua_GetBattlefieldTimeWaited + + ppc + + Signature + \x3C\x40\x01\x47\x55\x29\x18\x38\x7C\x09\x00\x50\x38\x42\x1E\xB8\x7C\x40\x12\x15\x41\x82\x00\x24\x80\x02\x00\x30 + Mask + xx??xxxxxxxxxx??xxxxxxxxxxxx + + + LAST_RED_ERROR_MESSAGE + + Intel + + Comment + From 4.0.3: sub_5EE2A0 + Signature + \x8D\x45\x0C\xBB\x00\xCF\x23\x01\x8D\xB5\x4C\xF3\xFF\xFF\x89\x54\x24\x08\x89\x45\xE4 + Mask + xxxx????xxxxxxxxxxxxx + + ppc + + Signature + \x3C\x60\x01\x47\x38\x63\xA1\x3C\x7F\x64\xDB\x78\x38\xA0\x0B\xB8\x4B\xDB\x95\x9D + Mask + xx??xx??xxxxxxxxxxxx + SubtractOffset + 0x10000 + + + CTM_DISTANCE + + Intel + + Signature + \xF3\x0F\x51\x05\xFC\x74\x0C\x01\xC7\x05\xE4\x74\x0C\x01\x00\x00\x00\x00\xF3\x0F\x11\x05\xE8\x74\x0C\x01\x0F\x57\xC0 + Mask + xxxx%%%%xx%%%%xxxxxxxx????xxx + Comment + For 3.3.0: sub_42EF80 + + ppc + + Signature + \x3C\x40\x01\x1F\x91\x3F\x00\x08\x90\x1F\x00\x00\xC3\xC2\x4E\xD8\x48\x00\x01\x14 + Mask + xx??xxxxxxxxxx??xxxx + + + CTM_SCALE + + Intel + + Comment + For 3.3.0: sub_42EF80 + Signature + \xC7\x05\xEC\x74\x0C\x01\xDB\x0F\x49\x40 + Mask + xx????xxxx + + ppc + + Signature + \xC0\x02\x00\xA8\x3C\x40\x01\x1F\xD0\x02\x4E\xDC\x48\x00\x00\x14 + Mask + xxxxxx??xx??xxxx + + + CTM_GUID + + Intel + + Signature + \xC7\x05\xF0\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\xF4\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\x10\x75\x0C\x01\x00\x00\x00\x00\xC7\x05\xE4\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\xD8\x74\x0C\x01\x0D\x00\x00\x00 + Mask + xx????xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxx + Comment + For 3.3.0: sub_42EC50 + + ppc + + Signature + \x3F\x40\x01\x1F\x3C\xC0\x00\x82\x38\xA0\x00\x01\x38\x5A\x4E\xE0\x38\xC6\xBE\x64\x38\xE0\x48\xD9 + Mask + xx??xxxxxxxxxx??xxxxxxxx + + + CTM_ACTION + + Intel + + Comment + For 3.3.0: sub_41ADB0 + Signature + \xC7\x05\xD8\x74\x0C\x01\x0D\x00\x00\x00\xC7\x05\xE4\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\x40\x75\x0C\x01\x00\x00\x00\x00\xC7\x05\x44\x75\x0C\x01\x00\x00\x00\x00 + Mask + xx????xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxx + + ppc + + Signature + \x3F\xA0\x01\x1F\x3B\xBD\x4E\xC8\x80\x1D\x00\x00\x2F\x80\x00\x0D\x41\x9E\x00\x60 + Mask + xx??xx??xxxxxxxxxxxx + + + CTM_POS + + Intel + + Signature + \xC7\x44\x24\x08\xBC\x76\x35\x01\x8B\x45\x08\x8D\x5D\xA8 + Mask + xxxx????xxxxxx + Comment + From 4.0.3: sub_4638F0 + + ppc + + Signature + \x3C\x80\x01\x1F\x38\x61\x00\x50\x38\x84\x4D\xEC\x48\x07\x0E\x05\x80\x01\x00\x50\x80\x41\x00\x54\x90\x01\x00\x38\x80\x01\x00\x58\x90\x41\x00\x3C\x90\x01\x00\x40\x80\x1D\x00\x00 + Mask + xx??xxxxxx??xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + + + CD_LIST_STATIC + + Intel + + Signature + \xC7\x44\x24\x08\x00\x00\x00\x00\x8B\x55\x0C\x8B\x02\xC7\x04\x24\xE0\x81\x0A\x01 + Mask + xxxxxxxxxxxxxxxx???? + Comment + From 4.0.1: CGGameUI__ShowSpellFailed + + ppc + + Signature + + Mask + + + + PLAYER_CURRENT_ZONE + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x08\xC7\x05\xA0\xD7\xFC\x00\xFF\xFF\xFF\xFF\xC7\x05\x9C\xD7\xFC\x00\x00\x00\x00\x00 + Mask + xxxxxxxx%%%%xxxxxx????xxxx + Comment + For 3.3.0: sub_6D32D0 + + ppc + + Signature + \x3E\xA0\x00\xB3\x3C\x40\x00\xB6\x3D\x20\x00\xB3\x80\x15\xD1\xE8\x80\x42\xC1\x24\x2F\x80\x00\x00\x81\x62\x00\x00\x91\x69\xD1\xE0\x40\x9E\x02\x74 + Mask + xx%%xx%%xx??xx%%xx%%xxxxxxxxxx??xxxx + SubtractOffset + 0x10000 + + + ITEM_IN_LOOT_WINDOW + + Intel + + Signature + \x83\xFA\x17\x77\x35\x8D\x04\xD2\x8B\x04\x85\xA4\x9E\x25\x01 + Mask + xxxxxxxxxxx???? + Comment + From 4.0.3: lua_LootSlotIsItem + + ppc + + Signature + \x3E\xC0\x01\x4A\x3B\xF6\x5A\xD8\x3F\xA0\x00\x51\x3B\xBD\x5B\x0C\x3B\xDF\x02\x40 + Mask + xx??xx??xxxxxxxxxxxx + AdditionalOffset + 0x4 + + + CORPSE_POSITION_STATIC + + Intel + + Signature + \x8B\x02\x85\xC9\xA3\x80\x29\xFA\x00\x8B\x42\x04\xA3\x84\x29\xFA\x00\x8B\x42\x08\xA3\x88\x29\xFA\x00 + Mask + xxxxx????xxxx%%%%xxxx%%%% + Comment + For 3.3.0: sub_5A0A50 + + ppc + + Signature + + Mask + + + + CHAT_BOX_OPEN_STATIC + + Intel + + Signature + \x55\x89\xE5\x53\x83\xEC\x14\x8B\x5D\x08\x39\x1D\x80\x5A\x22\x01\x74\x34 + Mask + xxxxxxxxxxxx????xx + Comment + From 3.3.0: sub_9E3630 + + ppc + + Signature + \x7C\x08\x02\xA6\xBF\x61\xFF\xEC\x3F\xC0\x00\xBB\x7C\x7F\x1B\x78\x90\x01\x00\x08\x94\x21\xFF\xA0\x80\x1E\x13\x58\x7F\x80\x18\x00\x41\x9E\x00\x98 + Mask + xxxxxxxxxx??xxxxxxxxxxxxxx??xxxxxxxx + + + LAST_SPELL_THAT_DIDNT_CAST_STATIC + + Intel + + Signature + \xE8\xC2\xEB\x5F\x00\x8B\x9D\x8C\xF5\xFF\xFF\x3B\x1D\x0C\x83\x0A\x01\x89\xDE\x89\xC2\x0F\x84\xDA\x06\x00\x00 + Mask + x%%%%xxxxxxxx????xxxxxx???? + Comment + From 4.0.1: CGGameUI__ShowSpellFailed + + ppc + + Signature + \x3C\x40\x01\x1E\x7E\xA3\xAB\x78\x7E\xE4\xBB\x78\x90\x02\x17\xC8\x7E\x65\x9B\x78\x38\xC0\x00\xBA + Mask + xx??xxxxxxxxxx??xxxxxxxx + + + HOTBAR_BASE_STATIC + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x18\xC7\x44\x24\x08\x40\x02\x00\x00\xC7\x44\x24\x04\x00\x00\x00\x00\xC7\x04\x24\x20\x52\xF4\x00 + Mask + xxxxx%xxxxxxxxxxxxxxxxxxx???? + Comment + From 3.3.0: sub_4E8860 + + ppc + + Signature + \x7C\x08\x02\xA6\x3C\x60\x01\x4B\x38\x80\x00\x00\x38\xA0\x02\x40\x38\x63\xFE\x70 + Mask + xxxxxx??xxxxxxxxxx?? + SubtractOffset + 0x10000 + + + lua_GetSpellBookItemInfo + + Intel + + Signature + \x78\x24\x85\xC0\x75\x30\x3B\x15\x68\xFB\xFC\x00 + Mask + xxxxxxxx???? + Comment + From 4.0.1: lua_GetSpellBookItemInfo + + ppc + + Signature + \x3D\x20\x01\x4C\x54\x00\x10\x3A\x81\x62\x60\x0C\x39\x29\xCE\xD0 + Mask + xx??xxxxxxxxxx?? + SubtractOffset + 0x10000 + + + TARGET_TABLE_STATIC + + Intel + + Signature + \x33\x05\xC0\x90\x12\x01\x31\xD1\x09\xC1\x74\x4B\xC7\x04\x24\x04\x00\x00\x00\xE8\xE3\x67\xFF\xFF + Mask + xx????xxxxxxxxxxxxxx%%%% + Comment + From 4.0.3: sub_5D1FC0 + + ppc + + SubtractOffset + 0x10000 + Signature + \x7C\x08\x02\xA6\xBF\xC1\xFF\xF8\x3F\xC0\x00\xB3\x7C\x7F\x1B\x78\x38\x5E\xDD\x28 + Mask + xxxxxxxxxx??xxxxxx?? + + + COMBO_POINTS_STATIC + + Intel + + Signature + \x74\xB7\x0F\xB6\x05\x0C\x76\xE9\x00\x83\xC4\x24\x5B\xC9\xC3 + Mask + xxxxx????xxxxxx + Comment + From 4.0.1: GetComboPoints + + ppc + + Signature + + Mask + + SubtractOffset + + + + ACCOUNT_NAME_STATIC + + Intel + + Signature + \xC7\x05\x10\xF2\x11\x01\xFF\xFF\xFF\xFF\xBE\x50\xF2\x11\x01\xC7\x05\x0C\xF2\x11\x01\xFF\xFF\xFF\xFF\xC7\x05\x08\xF2\x11\x01\xFF\xFF\xFF\xFF\xC7\x05\x04\xF2\x11\x01\xFF\xFF\xFF\xFF\xC6\x05\x00\xF2\x11\x01\x00 + Mask + xx%%%%xxxxx????xx????xxxxxx????xxxxxx????xxxxxx????x + Comment + From 4.0.1: GetRealmName + + ppc + + Signature + \x7C\x08\x02\xA6\xBF\xA1\xFF\xF4\x3F\xA0\x00\xB3\x3B\xBD\xEA\x70\x7C\x64\x1B\x78\x38\xA0\x05\x00 + Mask + xxxxxxxxxx??xx??xxxxxxxx + SubtractOffset + 0x10000 + + + OBJECT_LIST_LL_PTR + + Intel + + Signature + \x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x0D\x0C\x76\x0E\x01\x8D\x91\xAC\x00\x00\x00\x8B\x42\x08\xA8\x01 + Mask + xxxxxxxx%xx????xx%xxxxx%xx + Comment + From 3.3.0: sub_49D820 + + ppc + + Signature + \x3F\xA0\x01\x1D\x3C\xA0\x00\x0F\x80\x42\xBF\xFC\x3B\xBD\x76\xCC\x38\xA5\x39\x84\x91\x9D\x00\x00\x38\x80\x00\xA9\x38\xC0\x00\x00 + Mask + xx??xxxxxx%%xx??xxxxxxxxxxxxxxxx + + + SERVER_NAME_STATIC + + Intel + + Signature + \x55\x31\xC0\x89\xE5\xBA\xE0\x22\xFD\x00\x80\x3D\x01\xCE\xE9\x00\x00 + Mask + xxxxxx????xx????x + AdditionalOffset + 0x6 + Count + 2 + Comment + From 4.0.3: sub_82F550 + + ppc + + Signature + \x38\x00\x00\x01\x3C\x40\x00\xB3\x3C\x60\x01\x41\x90\x02\xCE\x64\x38\x63\x01\x18\x38\xA0\x01\x48\x80\x9C\x00\x08\x7C\x84\xF2\x14\x48\x61\x11\x0D\x38\x60\x00\x01\x48\x00\x00\x24 + Mask + xxxxxx%%xx??xx%%xx??xxxxxxxxxxxxxxxxxxxxxxxx + AdditionalOffset + 0x6 + + + FIRST_OBJECT_OFFSET + + Intel + + Signature + \x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x0D\x0C\x76\x0E\x01\x8D\x91\xAC\x00\x00\x00\x8B\x42\x08\xA8\x01 + Mask + xxxxxxxx%xx%%%%xx?xxxxx%xx + AdditionalOffset + 0x8 + Comment + From 3.3.0: sub_49D820 I don't believe the last % of 8 would change, but if so, that would be added to the offset retreived by the above signature + + ppc + + Signature + \x3F\xA0\x01\x1D\x3C\xA0\x00\x0F\x80\x42\xBF\xFC\x3B\xBD\x76\xCC\x38\xA5\x39\x84\x91\x9D\x00\x00\x38\x80\x00\xA9\x38\xC0\x00\x00 + Mask + xx??xxxxxx%%xx??xxxxxxxxxxxxxxxx + + + + diff --git a/Offsets.h b/Offsets.h new file mode 100644 index 0000000..f179142 --- /dev/null +++ b/Offsets.h @@ -0,0 +1,292 @@ +/* + * Offsets.h + * Pocket Gnome + * + * Created by Jon Drummond on 12/15/07. + * Copyright 2007 Savory Software, LLC. All rights reserved. + * + */ + +// heh this file should probably have a more fitting name + +#import "ObjectConstants.h" + +#define VALID_WOW_VERSION @"4.0.1" +#define PLAYER_LEVEL_CAP 80 + +#define BG_STATUS 0x18 +#define BG_MINLEVEL 0x1C +#define BG_MAXLEVEL 0x20 +#define BG_INFO_NEXT 0x3C + + +// 3.2.0 valid +//#define COMBO_POINTS_STATIC ((IS_X86) ? 0xB9D8AC : 0x0) // 3.2.0 + // 0xACB12C : 0x0) // 3.1.2 + // 0xAA508C : 0x0) // 3.1.0 & 3.1.1 + // 0xB76FD0 : 0x0) // 3.0.9 + // 0xB79FD0 : 0x0) // 3.0.8 + // 0xB720B0 : 0x0) // 3.0.3 + // 0xB6E06C : 0x0) // 3.0.2 + // 0x9AF048 : 0x9D7C6D) // 2.4.3 + // 0x9B1008 : 0x9D8C55) // 2.4.2 + // 0x9A8008 : 0x9CDC5D) // 2.4.1 +#define COMBO_POINT_VALUE 0x0 // appears 0xY000000 on PPC, Y on x86 +#define COMBO_POINT_TARGET_UID 0x4 // 64 bit +// in 3.0.x, the current time appears globally +0xC after COMBO_POINTS_STATIC + +// there's another interesting struct between combo points and targets +// but i don't know what it does yet + +// 3.2.0 valid +//#define TARGET_TABLE_STATIC ((IS_X86) ? 0xB9D990 : 0x0) // 3.2.0 + // 0xACB210 : 0x0) // 3.1.2 + // 0xAA5170 : 0x0) // 3.1.0 & 3.1.1 + // 0xB77090 : 0x0) // 3.0.9 + // 0xB7A090 : 0x0) // 3.0.8 + // 0xB72170 : 0x0) // 3.0.3 + // 0xB6E128 3.0.2 + // 0x9AF0F8 : 0x9D7D20 // 2.4.3 + // 0x9B10C0 : 0x9D8D10) // 2.4.2 + // 0x9A80C0 : 0x9CDD18) // 2.4.1 + // 0x9CED18 in 2.4.0 + // 0x9744B8 in 2.3.3 + // 0x9744A8 in 2.3.2 + // 0x96e490 in 2.3.0 +// { + #define TARGET_FOCUS 0x00 /* GUID. 0xFFFFFFFF or 0 means invalid */ + #define TARGET_UNKNOWN1 0x10 /* GUID; possibly "2nd last" target (as of 3.1.0 this is normally just 0)*/ + #define TARGET_LAST 0x18 /* GUID */ + #define TARGET_CURRENT 0x20 /* GUID */ + #define TARGET_INTERACT 0x28 /* GUID */ + #define TARGET_MOUSEOVER 0x30 /* GUID */ +// } + +#define MAXIMUM_SPELLS_IN_BARS 120 // 120 spells, 10 bars, 12 spells each + +#define BAR1_OFFSET 0x0 // main hotbar +#define BAR2_OFFSET 0x30 // 2nd hotbar +#define BAR3_OFFSET 0x60 // 3rd hotbar (right bar 1) +#define BAR4_OFFSET 0x90 // 4th hotbar (right bar 2) +#define BAR5_OFFSET 0xC0 // 5th hotbar (bottom right) +#define BAR6_OFFSET 0xF0 // 6th hotbar (bottom left) +#define BAR7_OFFSET 0x120 // 7th hotbar (form: ie, shadowform, battle stance) +#define BAR8_OFFSET 0x150 // 8th hotbar (form2: defensive stance) +#define BAR9_OFFSET 0x180 // 9th hotbar (form3? beserker stance?) +#define BAR10_OFFSET 0x1B0 // 10th hotbar (unknown) + +// 3.1.2 valid +#define REFRESH_DELAY ((IS_X86) ? 0x1517A88 : 0x0) // 3.1.2 + // 0x115B740 : 0x0) // 3.1.1 + // 0x1142F4C : 0x0) // 3.1.0 + // 0x123F8C0 : 0x0) // 3.0.9 + // 0x12428E0 : 0x0) // 3.0.8 + // 0x123B5E0 : 0x0) // 3.0.3 + // 0x1237480 : 0x0) // 3.0.2 + + +// 3.2.0 valid - ONLY valid if the player has released +//#define CORPSE_STATIC_X ((IS_X86) ? 0x1540B80 : 0x0) // 0x13EB860 (for minimap) +//#define CORPSE_STATIC_Y ((IS_X86) ? 0x1540B84 : 0x0) // 0x13EB864 (for minimap) +//#define CORPSE_STATIC_Z ((IS_X86) ? 0x1540B88 : 0x0) + +// 3.2.0 valid +// This will ONLY appear while the window is open! +// Similar version is at 0x125CDE0 - this will REMAIN set if the loot window is closed w/o looting, only difference +//#define ITEM_IN_LOOT_WINDOW ((IS_X86) ? 0x157e0e4 : 0x0 ) + +// { +#define LOOT_QUANTITY 0x8 +#define LOOT_INDEX 0x14 +#define LOOT_NEXT 0x20 +// } + +// 3.2.0 valid +//#define PLAYER_CURRENT_ZONE ((IS_X86) ? 0xB980F8 : 0x0 ) // 3.2.0 valid + // 0xACA618 : 0x0 ) // 3.1.3 valid //Also 0xACB1CC Current zone the player is in (ID) + +// 3.2.0 valid +//#define CD_OBJ_LIST_STATIC ((IS_X86) ? 0x125E940 : 0x0 ) // 3.2.0 valid + // 0x1172FE0 : 0x0 ) // 3.1.3 valid + #define CD_NEXT_ADDRESS 0x4 + #define CD_SPELLID 0x8 + #define CD_COOLDOWN 0x14 + #define CD_COOLDOWN2 0x20 + #define CD_ENABLED 0x24 + #define CD_STARTTIME 0x1C // Also 0x10 + #define CD_GCD 0x2C // Also 0x2C + +// 3.2.0 valid +//#define CTM_POS ((IS_X86) ? 0x12708FC : 0x0 ) +//#define CTM_ACTION ((IS_X86) ? 0x12709D4 : 0x0 ) +//#define CTM_GUID ((IS_X86) ? 0x12709F0 : 0x0 ) // 64 bit duh + +//#define CTM_SCALE ((IS_X86) ? 0x12709E8 : 0x0 ) // Always 13.962634 I believe +//#define CTM_DISTANCE ((IS_X86) ? 0x12709E4 : 0x0 ) + +// 3.2.0 valid - will probably never use the below? Not sure but documenting to help find in future +/* +#define CTM_CLOSENESS ((IS_X86) ? 0x12709B4 : 0x0 ) // Closeness factor - set to stop if 0.5f or less +#define CTM_PI2 ((IS_X86) ? 0x12709C8 : 0x0 ) // This is pi*2 - not sure why heh +#define CTM_DIRECTION ((IS_X86) ? 0x12709CC : 0x0 ) // This is the direction we're facing 0 - 2*pi +#define CTM_UNKNOWN ((IS_X86) ? 0x1270964 : 0x0 ) // write 9.0f +#define CTM_UNKNOWN2 ((IS_X86) ? 0x12709D8 : 0x0 ) // write 14.0f (or 7.0f?) +#define CTM_UNKNOWN3 ((IS_X86) ? 0x12709FC : 0x0 ) // write 0.25f +*/ + +enum ctmActionType{ + ctmFaceTarget = 0x1, + ctmFaceDestination = 0x2, // untested + ctmStopThrowsException = 0x3, // Also set to this when you're following a target (/follow) - not 100% sure this is correct - potential cause of chasing a target randomly? + ctmWalkTo = 0x4, + ctmInteractNpc = 0x5, + ctmLoot = 0x6, + ctmInteractObject = 0x7, + ctmFaceOther = 0x8, // untested + ctmSkin = 0x9, // untested + ctmAttackPos = 0xA, + ctmAttackGuid = 0xB, + ctmWalkAndRotate = 0xC, + ctmIdle = 0xD +}; + +// 3.2.0 valid +//#define LAST_RED_ERROR_MESSAGE ((IS_X86) ? 0x1540BE0 : 0x0) // 3.2.0 valid + // 0x013FA620 : 0x0) // Red text error in wow interfac + +// **************************** NOT USED/DATED ******************************************* // + +#define LAST_SPELL_CAST ((IS_X86) ? 0x1513890 : 0x0) // 3.1.3 + +// 3.2.0 valid +#define PLAYER_NAMES_LL_PTR ((IS_X86) ? 0x151C2C4 : 0x0) // 3.2.0 + +// 3.2.0 valid +#define OBJECT_LIST_PTR_STRUCT_ID ((IS_X86) ? 0xBFAE88 : 0x0) // 3.2.0 +// 0xAED328 : 0x0) // 3.1.2 & 3.1.3 +// 0xAC6F08 : 0x0) // 3.1.0 & 3.1.1 +// 0xB9BBE8 : 0x0) // 3.0.9 +// 0xB9EBE8 : 0x0) // 3.0.8 +// 0xB96C08 : 0x0) // 3.0.3 (0xB92BC8) + +// 3.1.2 valid +#define CAMERA_PTR ((IS_X86) ? 0x139FE44 : 0x0) +#define CAMERA_OFFSET ((IS_X86) ? 0x782C : 0x0) + + +// 3.1.2 +#define CORPSE_STATIC_X_RADAR ((IS_X86) ? 0x1301160 : 0x0) +#define CORPSE_STATIC_Y_RADAR ((IS_X86) ? 0x1301164 : 0x0) + + +// 3.1.2. valid +#define REFRESH_MAX_FPS ((IS_X86) ? 0x118768C : 0x0) // 3.1.2 /console maxfps, /console maxfpsbk + +// 2.4.2 valid +// NO LONGER VALID AS OF 3.0.2 +#define PLAYER_STRUCT_PTR_STATIC ((IS_X86) ? 0x9BA490 : 0x9E2460) // 2.4.3 (0x1DA0 : 0xD70); +// 0x9BC230 : 0x9E31D0 // 2.4.2 +// 0x9B3210 : 0x9D81B0 // 2.4.1 +// 0x9D91B0 2.4.0 // 0x5B350 diffPPC +/* 0x96D3B0 2.3.3 Intel : 0x97DE60 2.3.3 PPC */ +/* 0x97DE50 2.3.2 PPC */ +/* 0x977E10 2.3.0 PPC */ + + +// this is not used, and i'm currently not entirely sure what it means +// the name is just a guess, but it appears to apply. +#define PLAYER_LOGGED_IN ((IS_X86) ? 0xAA50B4 : 0x0) // 3.1.0 (not 100% sure - but consistent on game close) +// 0xB76FFC : 0x0) // 3.0.9 +// 0xB79FFC : 0x0) // 3.0.8 Also: 0xB723E2 +// 0xB720DC : 0x0) // 3.0.3 + + +// both of these are busted in 3.0.2 +/* is the number of the last spell we tried to cast, nomatter if it went off or didn't */ +// shows up when you click a 'white' labeled spell +// #define LAST_SPELL_ATTEMPTED_CAST_STATIC ((IS_X86) ? 0xCE8DD0 : 0xD03760) // 2.4.3 +// 0xCE8650 : 0xD02138) // 2.4.2 +// 0xCDEFF0 : 0xCF6858) // 2.4.1 +// 0xCF6DA0 2.4.0 +// 0xC94980 2.3.3 + +/* goes 0 if a spell fails (most of the time), spell id if it cast or started casting */ +// #define LAST_SPELL_ACTUALLY_CAST_STATIC ((IS_X86) ? 0xCECEF0 : 0xD07874) // 2.4.3 +// 0xCE2D10 : 0xCFA56C) // 2.4.2 +// 0xCE2D10 : 0xCFA56C) // 2.4.1 +// 0xC9869C 2.3.3 + + +/* + + 3.3.2a - Intel +PLAYER_NAME_LIST: 0xD868E4 +ITEM_IN_LOOT_WINDOW: 0xE04284 +MOUNT_LIST_NUM: 0xE13AF4 +Lua_IsUsableAction: 0xD8F040 +FIRST_OBJECT_OFFSET: 0xAC +PLAYER_NAME_STATIC: 0xE725E8 +Lua_GetBindingKey: 0xC83FE0 +MACRO_LIST_PTR: 0xE1754C +CTM_SCALE: 0xF111AC +CORPSE_POSITION_STATIC: 0xDEC9E0 +KNOWN_SPELLS_STATIC: 0xE14B60 +CTM_ACTION: 0xF11198 +PLAYER_GUID_STATIC: 0xE725E0 +LAST_SPELL_THAT_DIDNT_CAST_STATIC: 0xEFE854 +CHAT_BOX_OPEN_STATIC: 0x106E680 +ACCOUNT_NAME_STATIC: 0xC79E50 +CHATLOG_START: 0xD91E9C +CTM_DISTANCE: 0xF111A8 +CTM_GUID: 0xF111B0 +SERVER_NAME_STATIC: 0xE72CC6 +RUNE_STATUS: 0xE13984 +PLAYER_CURRENT_ZONE: 0xE17638 +Lua_IsUsableActionNotEnough: 0xD8EE00 +OBJECT_LIST_LL_PTR: 0xF3128C +CD_LIST_STATIC: 0xEFE740 +LAST_RED_ERROR_MESSAGE: 0xDECA40 +RUNE_STATE_START: 0xE13940 +BATTLEGROUND_STATUS: 0xD91160 +COMBO_POINTS_STATIC: 0xC80CE0 +CTM_POS: 0xF110BC +HOTBAR_BASE_STATIC: 0xD8F4C0 +TARGET_TABLE_STATIC: 0xC80DD0 + + 3.2.2a - Intel +ACCOUNT_NAME_STATIC: 0xC49020 +SERVER_NAME_STATIC: 0x1555426 +KEYBINDINGS_PTR: 0xBA5060 +LOGIN_TOTAL_CHARACTERS: 0x15C49A4 +LOGIN_SELECTED_CHAR: 0xBAE4B4 +PLAYER_IN_BUILDING_STATIC: 0x124AF20 +LAST_RED_ERROR_MESSAGE: 0x1555BE0 +LOGIN_STATE: 0x1557100 +CORPSE_POSITION_STATIC: 0x1555B80 +HOTBAR_BASE_STATIC: 0x159D4C0 +CTM_GUID: 0x12858F0 +CHATLOG_START: 0x14D765C +CTM_DISTANCE: 0x12858E4 +PARTY_LEADER_PTR: 0x155B9E0 +BATTLEGROUND_STATUS: 0x155FE60 +KNOWN_SPELLS_STATIC: 0x15AA560 +CD_LIST_STATIC: 0x12737E0 +CHAT_BOX_OPEN_STATIC: 0xC379A0 +LAST_SPELL_THAT_DIDNT_CAST_STATIC: 0x12738F4 +PLAYER_CURRENT_ZONE: 0xB9D0F8 +OBJECT_LIST_LL_PTR: 0x126A90C +CTM_ACTION: 0x12858D4 +MACRO_LIST_PTR: 0x15C2BCC +CTM_POS: 0x12857FC +CTM_SCALE: 0x12858E8 +COMBO_POINTS_STATIC: 0xBA28AC +MOUNT_LIST_POINTER: 0x15A94F8 +ITEM_IN_LOOT_WINDOW: 0x15930A4 +PLAYER_GUID_STATIC: 0xBA0EE0 +PLAYER_NAME_LIST: 0x1531224 +TARGET_TABLE_STATIC: 0xBA2990 +PLAYER_NAME_STATIC: 0x1554D48 + + /dump GetBattlefieldWinner(); + BA7A64 == BA7A68 == # of players in the BG + */ diff --git a/Orc-Female.png b/Orc-Female.png new file mode 100644 index 0000000..a887949 Binary files /dev/null and b/Orc-Female.png differ diff --git a/Orc-Female_Small.gif b/Orc-Female_Small.gif new file mode 100644 index 0000000..ea72a03 Binary files /dev/null and b/Orc-Female_Small.gif differ diff --git a/Orc-Male.png b/Orc-Male.png new file mode 100644 index 0000000..ab06d65 Binary files /dev/null and b/Orc-Male.png differ diff --git a/Orc-Male_Small.gif b/Orc-Male_Small.gif new file mode 100644 index 0000000..ebb4278 Binary files /dev/null and b/Orc-Male_Small.gif differ diff --git a/PTHeader.h b/PTHeader.h new file mode 100644 index 0000000..515d533 --- /dev/null +++ b/PTHeader.h @@ -0,0 +1,14 @@ +/* + * PTHeader.h + * Pocket Gnome + * + * Created by Jon Drummond on 4/26/08. + * Copyright 2008 Savory Software, LLC. All rights reserved. + * + */ + +#import "PTHotkey.h" +#import "PTKeyCombo.h" +#import "PTHotkeyCenter.h" +#import "PTKeyBroadcaster.h" +#import "PTKeyCodeTranslator.h" \ No newline at end of file diff --git a/PTHotKey.h b/PTHotKey.h new file mode 100644 index 0000000..5b86af0 --- /dev/null +++ b/PTHotKey.h @@ -0,0 +1,40 @@ +// +// PTHotKey.h +// Protein +// +// Created by Quentin Carnicelli on Sat Aug 02 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import +#import "PTKeyCombo.h" + +@interface PTHotKey : NSObject +{ + NSString* mIdentifier; + NSString* mName; + PTKeyCombo* mKeyCombo; + id mTarget; + SEL mAction; +} + +- (id)initWithIdentifier: (id)identifier keyCombo: (PTKeyCombo*)combo; +- (id)init; + +- (void)setIdentifier: (id)ident; +- (id)identifier; + +- (void)setName: (NSString*)name; +- (NSString*)name; + +- (void)setKeyCombo: (PTKeyCombo*)combo; +- (PTKeyCombo*)keyCombo; + +- (void)setTarget: (id)target; +- (id)target; +- (void)setAction: (SEL)action; +- (SEL)action; + +- (void)invoke; + +@end diff --git a/PTHotKey.m b/PTHotKey.m new file mode 100644 index 0000000..3dcd0d1 --- /dev/null +++ b/PTHotKey.m @@ -0,0 +1,115 @@ +// +// PTHotKey.m +// Protein +// +// Created by Quentin Carnicelli on Sat Aug 02 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import "PTHotKey.h" + +#import "PTHotKeyCenter.h" +#import "PTKeyCombo.h" + +@implementation PTHotKey + +- (id)init +{ + return [self initWithIdentifier: nil keyCombo: nil]; +} + + +- (id)initWithIdentifier: (id)identifier keyCombo: (PTKeyCombo*)combo +{ + self = [super init]; + + if( self ) + { + [self setIdentifier: identifier]; + [self setKeyCombo: combo]; + } + + return self; +} + +- (void)dealloc +{ + [mIdentifier release]; + [mName release]; + [mKeyCombo release]; + + [super dealloc]; +} + +- (NSString*)description +{ + return [NSString stringWithFormat: @"<%@: %@, %@>", NSStringFromClass( [self class] ), [self identifier], [self keyCombo]]; +} + +#pragma mark - + +- (void)setIdentifier: (id)ident +{ + [ident retain]; + [mIdentifier release]; + mIdentifier = ident; +} + +- (id)identifier +{ + return mIdentifier; +} + +- (void)setKeyCombo: (PTKeyCombo*)combo +{ + if( combo == nil ) + combo = [PTKeyCombo clearKeyCombo]; + + [combo retain]; + [mKeyCombo release]; + mKeyCombo = combo; +} + +- (PTKeyCombo*)keyCombo +{ + return mKeyCombo; +} + +- (void)setName: (NSString*)name +{ + [name retain]; + [mName release]; + mName = name; +} + +- (NSString*)name +{ + return mName; +} + +- (void)setTarget: (id)target +{ + mTarget = target; +} + +- (id)target +{ + return mTarget; +} + +- (void)setAction: (SEL)action +{ + mAction = action; +} + +- (SEL)action +{ + return mAction; +} + +- (void)invoke +{ + [mTarget performSelector: mAction withObject: self]; +} + +@end diff --git a/PTHotKeyCenter.h b/PTHotKeyCenter.h new file mode 100644 index 0000000..84f848b --- /dev/null +++ b/PTHotKeyCenter.h @@ -0,0 +1,33 @@ +// +// PTHotKeyCenter.h +// Protein +// +// Created by Quentin Carnicelli on Sat Aug 02 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// +// Contributers: +// Quentin D. Carnicelli +// Finlay Dobbie +// Vincent Pottier + +#import + +@class PTHotKey; + +@interface PTHotKeyCenter : NSObject +{ + NSMutableDictionary* mHotKeys; //Keys are NSValue of EventHotKeyRef + BOOL mEventHandlerInstalled; +} + ++ (PTHotKeyCenter*)sharedCenter; + +- (BOOL)registerHotKey: (PTHotKey*)hotKey; +- (void)unregisterHotKey: (PTHotKey*)hotKey; + +- (NSArray*)allHotKeys; +- (PTHotKey*)hotKeyWithIdentifier: (id)ident; + +- (void)sendEvent: (NSEvent*)event; + +@end diff --git a/PTHotKeyCenter.m b/PTHotKeyCenter.m new file mode 100644 index 0000000..007786b --- /dev/null +++ b/PTHotKeyCenter.m @@ -0,0 +1,286 @@ +// +// PTHotKeyCenter.m +// Protein +// +// Created by Quentin Carnicelli on Sat Aug 02 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import "PTHotKeyCenter.h" +#import "PTHotKey.h" +#import "PTKeyCombo.h" +#import + +#if __PROTEIN__ +#import "PTNSObjectAdditions.h" +#endif + +@interface PTHotKeyCenter (Private) +- (BOOL)_hasCarbonEventSupport; + +- (PTHotKey*)_hotKeyForCarbonHotKey: (EventHotKeyRef)carbonHotKey; +- (EventHotKeyRef)_carbonHotKeyForHotKey: (PTHotKey*)hotKey; + +- (void)_updateEventHandler; +- (void)_hotKeyDown: (PTHotKey*)hotKey; +- (void)_hotKeyUp: (PTHotKey*)hotKey; +static OSStatus hotKeyEventHandler(EventHandlerCallRef inHandlerRef, EventRef inEvent, void* refCon ); +@end + +@implementation PTHotKeyCenter + +static PTHotKeyCenter* _sharedHotKeyCenter = nil; + ++ (PTHotKeyCenter*)sharedCenter +{ + if( _sharedHotKeyCenter == nil ) + { + _sharedHotKeyCenter = [[self alloc] init]; + #if __PROTEIN__ + [_sharedHotKeyCenter releaseOnTerminate]; + #endif + } + + return _sharedHotKeyCenter; +} + +- (id)init +{ + self = [super init]; + + if( self ) + { + mHotKeys = [[NSMutableDictionary alloc] init]; + } + + return self; +} + +- (void)dealloc +{ + [mHotKeys release]; + [super dealloc]; +} + +#pragma mark - + +- (BOOL)registerHotKey: (PTHotKey*)hotKey +{ + OSStatus err; + EventHotKeyID hotKeyID; + EventHotKeyRef carbonHotKey; + NSValue* key; + + if( [[self allHotKeys] containsObject: hotKey] == YES ) + [self unregisterHotKey: hotKey]; + + if( [[hotKey keyCombo] isValidHotKeyCombo] == NO ) { + return YES; + } + + hotKeyID.signature = 'PTHk'; + hotKeyID.id = (long)hotKey; + + + err = RegisterEventHotKey( [[hotKey keyCombo] keyCode], + [[hotKey keyCombo] modifiers], + hotKeyID, + GetEventDispatcherTarget(), + nil, + &carbonHotKey ); + + if( err ) + return NO; + + key = [NSValue valueWithPointer: carbonHotKey]; + if( hotKey && key ) + [mHotKeys setObject: hotKey forKey: key]; + + [self _updateEventHandler]; + + return YES; +} + +- (void)unregisterHotKey: (PTHotKey*)hotKey +{ + OSStatus err; + EventHotKeyRef carbonHotKey; + NSValue* key; + + if( [[self allHotKeys] containsObject: hotKey] == NO ) + return; + + carbonHotKey = [self _carbonHotKeyForHotKey: hotKey]; + NSAssert( carbonHotKey != nil, @"" ); + + err = UnregisterEventHotKey( carbonHotKey ); + //Watch as we ignore 'err': + + key = [NSValue valueWithPointer: carbonHotKey]; + [mHotKeys removeObjectForKey: key]; + + [self _updateEventHandler]; + + //See that? Completely ignored +} + +- (NSArray*)allHotKeys +{ + return [mHotKeys allValues]; +} + +- (PTHotKey*)hotKeyWithIdentifier: (id)ident +{ + NSEnumerator* hotKeysEnum = [[self allHotKeys] objectEnumerator]; + PTHotKey* hotKey; + + if( !ident ) + return nil; + + while( (hotKey = [hotKeysEnum nextObject]) != nil ) + { + if( [[hotKey identifier] isEqual: ident] ) + return hotKey; + } + + return nil; +} + +#pragma mark - + +- (BOOL)_hasCarbonEventSupport +{ + return floor(NSAppKitVersionNumber) > NSAppKitVersionNumber10_1; +} + +- (PTHotKey*)_hotKeyForCarbonHotKey: (EventHotKeyRef)carbonHotKey +{ + NSValue* key = [NSValue valueWithPointer: carbonHotKey]; + return [mHotKeys objectForKey: key]; +} + +- (EventHotKeyRef)_carbonHotKeyForHotKey: (PTHotKey*)hotKey +{ + NSArray* values; + NSValue* value; + + values = [mHotKeys allKeysForObject: hotKey]; + NSAssert( [values count] == 1, @"Failed to find Carbon Hotkey for PTHotKey" ); + + value = [values lastObject]; + + return (EventHotKeyRef)[value pointerValue]; +} + +- (void)_updateEventHandler +{ + if( [self _hasCarbonEventSupport] == NO ) //Don't use event handler on these systems + return; + + if( [mHotKeys count] && mEventHandlerInstalled == NO ) + { + EventTypeSpec eventSpec[2] = { + { kEventClassKeyboard, kEventHotKeyPressed }, + { kEventClassKeyboard, kEventHotKeyReleased } + }; + + InstallEventHandler( GetEventDispatcherTarget(), + (EventHandlerProcPtr)hotKeyEventHandler, + 2, eventSpec, nil, nil); + + mEventHandlerInstalled = YES; + } +} + +- (void)_hotKeyDown: (PTHotKey*)hotKey +{ + [hotKey invoke]; +} + +- (void)_hotKeyUp: (PTHotKey*)hotKey +{ +} + +- (void)sendEvent: (NSEvent*)event +{ + long subType; + EventHotKeyRef carbonHotKey; + + //We only have to intercept sendEvent to do hot keys on old system versions + if( [self _hasCarbonEventSupport] ) + return; + + if( [event type] == NSSystemDefined ) + { + subType = [event subtype]; + + if( subType == 6 ) //6 is hot key down + { + carbonHotKey= (EventHotKeyRef)[event data1]; //data1 is our hot key ref + if( carbonHotKey != nil ) + { + PTHotKey* hotKey = [self _hotKeyForCarbonHotKey: carbonHotKey]; + [self _hotKeyDown: hotKey]; + } + } + else if( subType == 9 ) //9 is hot key up + { + carbonHotKey= (EventHotKeyRef)[event data1]; + if( carbonHotKey != nil ) + { + PTHotKey* hotKey = [self _hotKeyForCarbonHotKey: carbonHotKey]; + [self _hotKeyUp: hotKey]; + } + } + } +} + +- (OSStatus)sendCarbonEvent: (EventRef)event +{ + OSStatus err; + EventHotKeyID hotKeyID; + PTHotKey* hotKey; + + NSAssert( [self _hasCarbonEventSupport], @"" ); + NSAssert( GetEventClass( event ) == kEventClassKeyboard, @"Unknown event class" ); + + err = GetEventParameter( event, + kEventParamDirectObject, + typeEventHotKeyID, + nil, + sizeof(EventHotKeyID), + nil, + &hotKeyID ); + if( err ) + return err; + + + NSAssert( hotKeyID.signature == 'PTHk', @"Invalid hot key id" ); + NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); + + hotKey = (PTHotKey*)hotKeyID.id; + + switch( GetEventKind( event ) ) + { + case kEventHotKeyPressed: + [self _hotKeyDown: hotKey]; + break; + + case kEventHotKeyReleased: + [self _hotKeyUp: hotKey]; + break; + + default: + NSAssert( 0, @"Unknown event kind" ); + break; + } + + return noErr; +} + +static OSStatus hotKeyEventHandler(EventHandlerCallRef inHandlerRef, EventRef inEvent, void* refCon ) +{ + return [[PTHotKeyCenter sharedCenter] sendCarbonEvent: inEvent]; +} + +@end diff --git a/PTKeyBroadcaster.h b/PTKeyBroadcaster.h new file mode 100644 index 0000000..6f34864 --- /dev/null +++ b/PTKeyBroadcaster.h @@ -0,0 +1,24 @@ +// +// PTKeyBroadcaster.h +// Protein +// +// Created by Quentin Carnicelli on Sun Aug 03 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import +#if __PROTEIN__ +#import "ProteinDefines.h" +#else +#define PROTEIN_EXPORT __private_extern__ +#endif + +@interface PTKeyBroadcaster : NSButton +{ +} + ++ (long)cocoaModifiersAsCarbonModifiers: (long)cocoaModifiers; + +@end + +PROTEIN_EXPORT NSString* PTKeyBroadcasterKeyEvent; //keys: keyCombo as PTKeyCombo diff --git a/PTKeyBroadcaster.m b/PTKeyBroadcaster.m new file mode 100644 index 0000000..1dcb61c --- /dev/null +++ b/PTKeyBroadcaster.m @@ -0,0 +1,74 @@ +// +// PTKeyBroadcaster.m +// Protein +// +// Created by Quentin Carnicelli on Sun Aug 03 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import "PTKeyBroadcaster.h" +#import "PTKeyCombo.h" +#import + +NSString* PTKeyBroadcasterKeyEvent = @"PTKeyBroadcasterKeyEvent"; + +@implementation PTKeyBroadcaster + +- (void)_bcastKeyCode: (short)keyCode modifiers: (long)modifiers +{ + PTKeyCombo* keyCombo = [PTKeyCombo keyComboWithKeyCode: keyCode modifiers: modifiers]; + NSDictionary* userInfo = [NSDictionary dictionaryWithObject: keyCombo forKey:@"keyCombo"]; + + [[NSNotificationCenter defaultCenter] + postNotificationName: PTKeyBroadcasterKeyEvent + object: self + userInfo: userInfo]; +} + +- (void)_bcastEvent: (NSEvent*)event +{ + short keyCode; + long modifiers; + + keyCode = [event keyCode]; + modifiers = [event modifierFlags]; + modifiers = [[self class] cocoaModifiersAsCarbonModifiers: modifiers]; + + [self _bcastKeyCode: keyCode modifiers: modifiers]; +} + +- (void)keyDown: (NSEvent*)event +{ + [self _bcastEvent: event]; +} + +- (BOOL)performKeyEquivalent: (NSEvent*)event +{ + [self _bcastEvent: event]; + return YES; +} + ++ (long)cocoaModifiersAsCarbonModifiers: (long)cocoaModifiers +{ + static long cocoaToCarbon[6][2] = + { + { NSCommandKeyMask, cmdKey}, + { NSAlternateKeyMask, optionKey}, + { NSControlKeyMask, controlKey}, + { NSShiftKeyMask, shiftKey}, + { NSFunctionKeyMask, rightControlKey}, + //{ NSAlphaShiftKeyMask, alphaLock }, //Ignore this? + }; + + long carbonModifiers = 0; + int i; + + for( i = 0 ; i < 6; i++ ) + if( cocoaModifiers & cocoaToCarbon[i][0] ) + carbonModifiers += cocoaToCarbon[i][1]; + + return carbonModifiers; +} + + +@end diff --git a/PTKeyCodeTranslator.h b/PTKeyCodeTranslator.h new file mode 100644 index 0000000..eec76f3 --- /dev/null +++ b/PTKeyCodeTranslator.h @@ -0,0 +1,30 @@ +// +// PTKeyCodeTranslator.h +// Chercher +// +// Created by Finlay Dobbie on Sat Oct 11 2003. +// Copyright (c) 2003 Cliché Software. All rights reserved. +// + +#import +#import +#import + +@interface PTKeyCodeTranslator : NSObject +{ + KeyboardLayoutRef keyboardLayout; + UCKeyboardLayout *uchrData; + void *KCHRData; + SInt32 keyLayoutKind; + UInt32 keyTranslateState; + UInt32 deadKeyState; +} + ++ (id)currentTranslator; + +- (id)initWithKeyboardLayout:(KeyboardLayoutRef)aLayout; +- (NSString *)translateKeyCode:(short)keyCode; + +- (KeyboardLayoutRef)keyboardLayout; + +@end diff --git a/PTKeyCodeTranslator.m b/PTKeyCodeTranslator.m new file mode 100644 index 0000000..47469cd --- /dev/null +++ b/PTKeyCodeTranslator.m @@ -0,0 +1,80 @@ +// +// PTKeyCodeTranslator.m +// Chercher +// +// Created by Finlay Dobbie on Sat Oct 11 2003. +// Copyright (c) 2003 Cliché Software. All rights reserved. +// + +#import "PTKeyCodeTranslator.h" + + +@implementation PTKeyCodeTranslator + ++ (id)currentTranslator +{ + static PTKeyCodeTranslator *current = nil; + KeyboardLayoutRef currentLayout; + OSStatus err = KLGetCurrentKeyboardLayout( ¤tLayout ); + if (err != noErr) return nil; + + if (current == nil) { + current = [[PTKeyCodeTranslator alloc] initWithKeyboardLayout:currentLayout]; + } else if ([current keyboardLayout] != currentLayout) { + [current release]; + current = [[PTKeyCodeTranslator alloc] initWithKeyboardLayout:currentLayout]; + } + return current; +} + +- (id)initWithKeyboardLayout:(KeyboardLayoutRef)aLayout +{ + if ((self = [super init]) != nil) { + OSStatus err; + keyboardLayout = aLayout; + err = KLGetKeyboardLayoutProperty( aLayout, kKLKind, (const void **)&keyLayoutKind ); + if (err != noErr) return nil; + + if (keyLayoutKind == kKLKCHRKind) { + err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLKCHRData, (const void **)&KCHRData ); + if (err != noErr) return nil; + } else { + err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLuchrData, (const void **)&uchrData ); + if (err != noErr) return nil; + } + } + + return self; +} + +- (NSString *)translateKeyCode:(short)keyCode { + if (keyLayoutKind == kKLKCHRKind) { + UInt32 charCode = KeyTranslate( KCHRData, keyCode, &keyTranslateState ); + char theChar = (charCode & 0x00FF); + return [[[NSString alloc] initWithData:[NSData dataWithBytes:&theChar length:1] encoding:NSMacOSRomanStringEncoding] autorelease]; + } else { + UniCharCount maxStringLength = 4, actualStringLength; + UniChar unicodeString[4]; + OSStatus err; + err = UCKeyTranslate( uchrData, keyCode, kUCKeyActionDisplay, 0, LMGetKbdType(), kUCKeyTranslateNoDeadKeysBit, &deadKeyState, maxStringLength, &actualStringLength, unicodeString ); + return [NSString stringWithCharacters:unicodeString length:1]; + } +} + +- (KeyboardLayoutRef)keyboardLayout { + return keyboardLayout; +} + +- (NSString *)description { + NSString *kind; + if (keyLayoutKind == kKLKCHRKind) + kind = @"KCHR"; + else + kind = @"uchr"; + + NSString *layoutName; + KLGetKeyboardLayoutProperty( keyboardLayout, kKLLocalizedName, (const void **)&layoutName ); + return [NSString stringWithFormat:@"PTKeyCodeTranslator layout=%@ (%@)", layoutName, kind]; +} + +@end diff --git a/PTKeyCombo.h b/PTKeyCombo.h new file mode 100644 index 0000000..514e679 --- /dev/null +++ b/PTKeyCombo.h @@ -0,0 +1,37 @@ +// +// PTKeyCombo.h +// Protein +// +// Created by Quentin Carnicelli on Sat Aug 02 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import + +#if __PROTEIN__ +#else +#define _PTLocalizedString NSLocalizedString +#endif + +@interface PTKeyCombo : NSObject +{ + int mKeyCode; + int mModifiers; +} + ++ (id)clearKeyCombo; ++ (id)keyComboWithKeyCode: (int)keyCode modifiers: (int)modifiers; +- (id)initWithKeyCode: (int)keyCode modifiers: (int)modifiers; + +- (id)initWithPlistRepresentation: (id)plist; +- (id)plistRepresentation; + +- (BOOL)isEqual: (PTKeyCombo*)combo; + +- (int)keyCode; +- (int)modifiers; + +- (BOOL)isClearCombo; +- (BOOL)isValidHotKeyCombo; + +@end diff --git a/PTKeyCombo.m b/PTKeyCombo.m new file mode 100644 index 0000000..7ea9f95 --- /dev/null +++ b/PTKeyCombo.m @@ -0,0 +1,102 @@ +// +// PTKeyCombo.m +// Protein +// +// Created by Quentin Carnicelli on Sat Aug 02 2003. +// Copyright (c) 2003 Quentin D. Carnicelli. All rights reserved. +// + +#import "PTKeyCombo.h" + +#import "PTKeyCodeTranslator.h" + +#import + +@implementation PTKeyCombo + ++ (id)clearKeyCombo +{ + return [self keyComboWithKeyCode: -1 modifiers: -1]; +} + ++ (id)keyComboWithKeyCode: (int)keyCode modifiers: (int)modifiers +{ + return [[[self alloc] initWithKeyCode: keyCode modifiers: modifiers] autorelease]; +} + +- (id)initWithKeyCode: (int)keyCode modifiers: (int)modifiers +{ + self = [super init]; + + if( self ) + { + mKeyCode = keyCode; + mModifiers = modifiers; + } + + return self; +} + +- (id)initWithPlistRepresentation: (id)plist +{ + int keyCode, modifiers; + + if( !plist || ![plist count] ) + { + keyCode = -1; + modifiers = -1; + } + else + { + keyCode = [[plist objectForKey: @"keyCode"] intValue]; + if( keyCode <= 0 ) keyCode = -1; + + modifiers = [[plist objectForKey: @"modifiers"] intValue]; + if( modifiers <= 0 ) modifiers = -1; + } + + return [self initWithKeyCode: keyCode modifiers: modifiers]; +} + +- (id)plistRepresentation +{ + return [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithInt: [self keyCode]], @"keyCode", + [NSNumber numberWithInt: [self modifiers]], @"modifiers", + nil]; +} + +- (id)copyWithZone:(NSZone*)zone; +{ + return [self retain]; +} + +- (BOOL)isEqual: (PTKeyCombo*)combo +{ + return [self keyCode] == [combo keyCode] && + [self modifiers] == [combo modifiers]; +} + +#pragma mark - + +- (int)keyCode +{ + return mKeyCode; +} + +- (int)modifiers +{ + return mModifiers; +} + +- (BOOL)isValidHotKeyCombo +{ + return mKeyCode >= 0 && mModifiers > 0; +} + +- (BOOL)isClearCombo +{ + return mKeyCode == -1 && mModifiers == -1; +} + +@end diff --git a/PVP.png b/PVP.png new file mode 100644 index 0000000..e888fd8 Binary files /dev/null and b/PVP.png differ diff --git a/Paladin.png b/Paladin.png new file mode 100644 index 0000000..58fd2ad Binary files /dev/null and b/Paladin.png differ diff --git a/Paladin_Small.gif b/Paladin_Small.gif new file mode 100644 index 0000000..53e7cce Binary files /dev/null and b/Paladin_Small.gif differ diff --git a/Player.h b/Player.h new file mode 100644 index 0000000..5730d0a --- /dev/null +++ b/Player.h @@ -0,0 +1,80 @@ +// +// Player.h +// Pocket Gnome +// +// Created by Jon Drummond on 5/25/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "Unit.h" + +enum ePlayer_TrackResources_Fields { + TrackObject_All = -1, + TrackObject_None = 0x0, + TrackObject_Herbs = 0x2, + TrackObject_Minerals = 0x4, + TrackObject_Treasure = 0x20, + TrackObject_Treasure2 = 0x1000, + TrackObject_Fish = 0x40000, +}; + +enum ePlayer_VisibleItem_Fields { + VisibleItem_CreatorGUID = 0x0, + VisibleItem_EntryID = 0x8, + VisibleItem_Enchant = 0x10, + // other unknown properties follow + + VisibleItem_Size = 0x40, +}; + +typedef enum eCharacterSlot { + SLOT_HEAD = 0, + SLOT_NECK = 1, + SLOT_SHOULDERS = 2, + SLOT_SHIRT = 3, + SLOT_CHEST = 4, + SLOT_WAIST = 5, + SLOT_LEGS = 6, + SLOT_FEET = 7, + SLOT_WRISTS = 8, + SLOT_HANDS = 9, + SLOT_FINGER1 = 10, + SLOT_FINGER2 = 11, + SLOT_TRINKET1 = 12, + SLOT_TRINKET2 = 13, + SLOT_BACK = 14, + SLOT_MAIN_HAND = 15, + SLOT_OFF_HAND = 16, + SLOT_RANGED = 17, + SLOT_TABARD = 18, + SLOT_EMPTY = 19, + SLOT_MAX, +} CharacterSlot; + +//typedef enum { +// UnitBloc_Alliance = 3, +// UnitBloc_Horde = 5, +//} UnitBloc; + +@class PlayersController; + +@interface Player : Unit { + UInt32 _nameEntryID; + + IBOutlet PlayersController *playersController; +} + ++ (id)playerWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +// status +- (BOOL)isGM; + +- (GUID)itemGUIDinSlot: (CharacterSlot)slot; // invalid for other players + +- (NSArray*)itemGUIDsInBackpack; +- (NSArray*)itemGUIDsOfBags; +- (NSArray*)itemGUIDsPlayerIsWearing; + +- (NSString*)name; +@end diff --git a/Player.m b/Player.m new file mode 100644 index 0000000..cce6011 --- /dev/null +++ b/Player.m @@ -0,0 +1,140 @@ +// +// Player.m +// Pocket Gnome +// +// Created by Jon Drummond on 5/25/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Player.h" +#import "WoWObject.h" +#import "Mob.h" +#import "Offsets.h" + +#import "OffsetController.h" +#import "PlayersController.h" + +enum PlayerFlags +{ + PLAYER_FLAGS_GROUP_LEADER = 0x00000001, + PLAYER_FLAGS_AFK = 0x00000002, + PLAYER_FLAGS_DND = 0x00000004, + PLAYER_FLAGS_GM = 0x00000008, + PLAYER_FLAGS_GHOST = 0x00000010, + PLAYER_FLAGS_RESTING = 0x00000020, + PLAYER_FLAGS_FFA_PVP = 0x00000080, + PLAYER_FLAGS_UNK = 0x00000100, // show PvP in tooltip + PLAYER_FLAGS_IN_PVP = 0x00000200, + PLAYER_FLAGS_HIDE_HELM = 0x00000400, + PLAYER_FLAGS_HIDE_CLOAK = 0x00000800, + PLAYER_FLAGS_UNK1 = 0x00001000, // played long time + PLAYER_FLAGS_UNK2 = 0x00002000, // played too long time + PLAYER_FLAGS_UNK3 = 0x00008000, // strange visual effect (2.0.1), looks like PLAYER_FLAGS_GHOST flag + PLAYER_FLAGS_UNK4 = 0x00020000, // taxi benchmark mode (on/off) (2.0.1) + PLAYER_UNK = 0x00040000, // 2.0.8... +}; + + +@interface Player (Internal) +- (UInt32)playerFlags; +- (UInt32)playerFieldsAddress; +@end + +@implementation Player + ++ (id)playerWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + return [[[Player alloc] initWithAddress: address inMemory: memory] autorelease]; +} + +- (NSString*)description { + return [NSString stringWithFormat: @"<%@ [%d] [%d%%] (0x%X)>", [self className], [self level], [self percentHealth], [self lowGUID]]; +} + +- (void) dealloc{ + [super dealloc]; +} +#pragma mark - + +- (UInt32)playerFieldsAddress{ + UInt32 value = 0; + if ( [_memory loadDataForObject: self atAddress: ([self baseAddress] + [[OffsetController sharedController] offset:@"PlayerField_Pointer"]) Buffer: (Byte *)&value BufLength: sizeof(value)] ){ + return value; + } + return 0; +} + +- (UInt32)playerFlags { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self playerFieldsAddress] + PLAYER_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return value; + } + return 0; +} + +- (BOOL)isGM { + if( ([self playerFlags] & (PLAYER_FLAGS_GM)) == (PLAYER_FLAGS_GM)) + return YES; + return NO; +} + +- (GUID)itemGUIDinSlot: (CharacterSlot)slot { + if(slot < 0 || slot >= SLOT_MAX) return 0; + + GUID value = 0; + if([_memory loadDataForObject: self atAddress: ([self playerFieldsAddress] + PLAYER_FIELD_INV_SLOT_HEAD + sizeof(GUID)*slot) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + //if(GUID_HIPART(value) == HIGHGUID_ITEM) - As of 3.1.3 I had to comment out this - i'm not sure why + return value; + } + return 0; +} + +// items player has in their backpack +- (NSArray*)itemGUIDsInBackpack{ + NSMutableArray *itemGUIDs = [NSMutableArray array]; + + const int numberOfItems = 16; // this could change on a patch day, it's the number of items stored in a player's backpack + uint i; + GUID value = 0; + for ( i = 0; i < numberOfItems; i++ ){ + if([_memory loadDataForObject: self atAddress: ([self playerFieldsAddress] + PLAYER_FIELD_PACK_SLOT_1 + sizeof(GUID)*i) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + [itemGUIDs addObject:[NSNumber numberWithLongLong:value]]; + } + } + + return itemGUIDs; +} + +// the GUIDs of the player's bags +- (NSArray*)itemGUIDsOfBags{ + NSMutableArray *bagGUIDs = [NSMutableArray array]; + const int numberOfBags = 4; + uint i; + GUID value = 0; + for ( i = 0; i < numberOfBags; i++ ){ + if([_memory loadDataForObject: self atAddress: ([self playerFieldsAddress] + PLAYER_FIELD_BANKBAG_SLOT_1 + sizeof(GUID)*i) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + [bagGUIDs addObject:[NSNumber numberWithLongLong:value]]; + } + } + + return bagGUIDs; +} + +// items the player is wearing +- (NSArray*)itemGUIDsPlayerIsWearing{ + NSMutableArray *itemGUIDs = [NSMutableArray array]; + uint slot; + GUID value = 0; + for ( slot = 0; slot <= SLOT_TABARD; slot++ ){ + if([_memory loadDataForObject: self atAddress: ([self playerFieldsAddress] + PLAYER_FIELD_INV_SLOT_HEAD + sizeof(GUID)*slot) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + [itemGUIDs addObject:[NSNumber numberWithLongLong:value]]; + } + } + + return itemGUIDs; +} + +- (NSString*)name { + return [playersController playerNameWithGUID:[self GUID]]; +} + +@end diff --git a/Player.xib b/Player.xib new file mode 100644 index 0000000..119c4cb --- /dev/null +++ b/Player.xib @@ -0,0 +1,4534 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + PlayerDataController + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 265 + {{35, 128}, {133, 17}} + + YES + + -2080244224 + 134479872 + Show Cooldowns + + LucidaGrande + 9 + 3614 + + + -2038152961 + 164 + + + 400 + 75 + + + + + 265 + {{35, 150}, {133, 17}} + + YES + + -2080244224 + 134479872 + Show Aura Tracker + + + -2038152961 + 164 + + + 400 + 75 + + + + + 10 + + YES + + + 256 + + YES + + + 1290 + + {{88, 35}, {459, 20}} + + 16392 + 20 + 100 + + + + 268 + {{15, 39}, {70, 17}} + + YES + + 67239488 + 71304192 + Health: + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 265 + {{550, 15}, {139, 14}} + + YES + + 69336641 + 272761856 + 12000/12000 (100%) + + LucidaGrande + 11 + 3100 + + + + + + + + + 265 + {{550, 40}, {139, 14}} + + YES + + 69336641 + 272761856 + 8000/8000 (100%) + + + + + + + + + 1290 + + {{88, 10}, {459, 20}} + + 16392 + 20 + 100 + + + + 268 + {{3, 14}, {82, 17}} + + YES + + 67239488 + 71304192 + Power: + + + + + + + + {{1, 1}, {704, 66}} + + + + {{17, 391}, {706, 82}} + + {0, 0} + + 67239424 + 0 + Player Status + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 266 + {{41, 31}, {409, 18}} + + YES + + -2147353088 + 0 + + 15 + 2 + 2 + 2 + + + + + 268 + {{15, 57}, {70, 17}} + + YES + + 67239488 + 71304192 + Speed: + + + + + + + + + 268 + {{87, 57}, {128, 14}} + + YES + + 69336641 + 272761856 + 7.0 yards/sec + + + + + + + + + 265 + {{383, 57}, {70, 17}} + + YES + + 67239488 + 71304192 + Position: + + + + + + + + + 265 + {{460, 57}, {114, 14}} + + YES + + 69336641 + 4326400 + X: + + + + 1 + MCAwIDAAA + + + + + + + 265 + {{576, 43}, {65, 14}} + + YES + + 69336641 + 71435264 + 3.1415 + + + + + + + + + 265 + {{571, 57}, {70, 17}} + + YES + + 67239488 + 71304192 + Direction: + + + + + + + + + 1289 + + {{650, 41}, {32, 32}} + + 20488 + 6.2830000000000004 + + + + 265 + {{460, 43}, {114, 14}} + + YES + + 69336641 + 4326400 + X: + + + + + + + + + 265 + {{460, 29}, {114, 14}} + + YES + + 69336641 + 4326400 + X: + + + + + + + + + -2147483380 + {{631, 23}, {18, 20}} + + YES + + 67501824 + 131072 + + + Helvetica + 12 + 16 + + + 6.2999999999999998 + 0.0 + 6.2999999999999998 + 0.0 + 0 + 1 + NO + NO + 1 + + + + + 268 + {{7, 14}, {101, 11}} + + YES + + 67239488 + 71566336 + Average Speed: + + + + + + + + + 268 + {{221, 14}, {101, 11}} + + YES + + 67239488 + 71566336 + Average Distance: + + + + + + + + + 268 + {{115, 14}, {91, 11}} + + YES + + 68288064 + 272892928 + 0 + + + + + + + + + 268 + {{330, 14}, {91, 11}} + + YES + + 68288064 + 272892928 + 0 + + + + + + + + {{1, 1}, {704, 84}} + + + + {{17, 287}, {706, 100}} + + {0, 0} + + 67239424 + 0 + Speed, Direction, and Position + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{13, 46}, {72, 17}} + + YES + + 67239488 + 71304192 + Cast Time: + + + + + + + + + 1290 + + {{88, 42}, {459, 20}} + + 16392 + 20 + + + + 265 + {{550, 47}, {139, 14}} + + YES + + 67239488 + 272761856 + 1.5/5.0 (Channeled) + + + + + + + + + 268 + {{15, 21}, {70, 17}} + + YES + + 67239488 + 71304192 + Spell ID: + + + + + + + + + 264 + {{87, 21}, {139, 14}} + + YES + + 67239488 + 272761856 + 12345 + + + + + + + + {{1, 1}, {704, 73}} + + + + {{17, 194}, {706, 89}} + + {0, 0} + + 67239424 + 0 + Spells + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + -2147483356 + {{377, 20}, {74, 17}} + + YES + + 67239488 + 4195328 + + + + + + + + + + 10 + + YES + + + 256 + + YES + + + 265 + {{472, 8}, {123, 14}} + + YES + + 67239488 + 71435264 + Update every + + + + + 1 + MC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMAA + + + + + + 265 + {{600, 4}, {125, 17}} + + YES + + -2079981824 + 131072 + + + + 1 + 0.10000000000000001 + 0.30000000000000004 + 0.0 + 19 + 0 + YES + NO + + + + + 266 + {{40, 6}, {430, 17}} + + YES + + 67239488 + 4195328 + Somesuch, level 73 Gnome Warrior. + + + + + + + + + 268 + {{15, 4}, {20, 19}} + + YES + + -2080244224 + 134217728 + Round Rect Button + + LucidaGrande + 12 + 16 + + + 138690815 + 164 + + NSImage + NSQuickLookTemplate + + + + 400 + 75 + + + + {{1, 1}, {740, 30}} + + + + {{-1, 489}, {742, 32}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA + + + 1 + MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA + + + + + 265 + {{187, 150}, {133, 17}} + + YES + + -2080244224 + 134479872 + Show Combat Table + + + -2038152961 + 164 + + + 400 + 75 + + + + + 10 + {{13, 53}, {714, 143}} + + + YES + + + 0 + YES + YES + + + {740, 520} + + NSView + + + YES + + + + + YES + + + view + + + + 36 + + + + maxValue: maxHealth + + + + + + maxValue: maxHealth + maxValue + maxHealth + 2 + + + 119 + + + + value: health + + + + + + value: health + value + health + + 2 + + + 120 + + + + maxValue: maxMana + + + + + + maxValue: maxMana + maxValue + maxMana + 2 + + + 122 + + + + value: mana + + + + + + value: mana + value + mana + + 2 + + + 123 + + + + displayPatternValue1: health + + + + + + displayPatternValue1: health + displayPatternValue1 + health + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@/%{value2}@ (%{value3}@%) + + + + + + + + 2 + + + 124 + + + + displayPatternValue2: maxHealth + + + + + + displayPatternValue2: maxHealth + displayPatternValue2 + maxHealth + + NSDisplayPattern + %{value1}@ + + + 2 + + + 125 + + + + displayPatternValue3: percentHealth + + + + + + displayPatternValue3: percentHealth + displayPatternValue3 + percentHealth + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@/%{value2}@ (%{value3}@%) + + + + + + + + + 2 + + + 126 + + + + displayPatternValue1: mana + + + + + + displayPatternValue1: mana + displayPatternValue1 + mana + + NSDisplayPattern + %{value1}@ + + 2 + + + 127 + + + + displayPatternValue2: maxMana + + + + + + displayPatternValue2: maxMana + displayPatternValue2 + maxMana + + NSDisplayPattern + %{value1}@ + + + 2 + + + 128 + + + + displayPatternValue3: percentMana + + + + + + displayPatternValue3: percentMana + displayPatternValue3 + percentMana + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@/%{value2}@ (%{value3}@%) + + + + + + + + + 2 + + + 129 + + + + displayPatternValue1: speed + + + + + + displayPatternValue1: speed + displayPatternValue1 + speed + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@ yards/sec + + + + + + + + 2 + + + 130 + + + + maxValue: speedMax + + + + + + maxValue: speedMax + maxValue + speedMax + 2 + + + 131 + + + + value: speed + + + + + + value: speed + value + speed + + 2 + + + 132 + + + + value: directionFacing + + + + + + value: directionFacing + value + directionFacing + 2 + + + 133 + + + + value: directionFacing + + + + + + value: directionFacing + value + directionFacing + 2 + + + 134 + + + + maxValue: castTime + + + + + + maxValue: castTime + maxValue + castTime + 2 + + + 135 + + + + value: castTimeRemaining + + + + + + value: castTimeRemaining + value + castTimeRemaining + + 2 + + + 136 + + + + displayPatternValue1: castTimeRemaining + + + + + + displayPatternValue1: castTimeRemaining + displayPatternValue1 + castTimeRemaining + + NSDisplayPattern + %{value1}@ + + 2 + + + 138 + + + + displayPatternValue2: castTime + + + + + + displayPatternValue2: castTime + displayPatternValue2 + castTime + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@/%{value2}@ seconds + + + + + + + + + 2 + + + 139 + + + + value: spellCasting + + + + + + value: spellCasting + value + spellCasting + 2 + + + 140 + + + + displayPatternValue1: yPosition + + + + + + displayPatternValue1: yPosition + displayPatternValue1 + yPosition + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + Y: %{value1}@ + + + + + + + + 2 + + + 145 + + + + displayPatternValue1: zPosition + + + + + + displayPatternValue1: zPosition + displayPatternValue1 + zPosition + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + Z: %{value1}@ + + + + + + + + 2 + + + 147 + + + + displayPatternValue1: xPosition + + + + + + displayPatternValue1: xPosition + displayPatternValue1 + xPosition + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + X: %{value1}@ + + + + + + + + 2 + + + 148 + + + + displayPatternValue1: updateFrequency + + + + + + displayPatternValue1: updateFrequency + displayPatternValue1 + updateFrequency + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@ sec + + + + + + + + 2 + + + 165 + + + + setPlayerDirectionInMemory: + + + + 170 + + + + value: updateFrequency + + + + + + value: updateFrequency + value + updateFrequency + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 179 + + + + displayPatternValue1: updateFrequency + + + + + + displayPatternValue1: updateFrequency + displayPatternValue1 + updateFrequency + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + Update every %{value1}@s: + + + + + + + + 2 + + + 180 + + + + value: playerHeader + + + + + + value: playerHeader + value + playerHeader + 2 + + + 181 + + + + showPlayerStructure: + + + + 184 + + + + enabled: playerIsValid + + + + + + enabled: playerIsValid + enabled + playerIsValid + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 186 + + + + enabled2: controller.isRegistered + + + + + + enabled2: controller.isRegistered + enabled2 + controller.isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + + + + + + + + + 2 + + + 187 + + + + powerNameText + + + + 188 + + + + showAuraWindow: + + + + 216 + + + + showCooldownWindow: + + + + 246 + + + + value: movementController.averageSpeed + + + + + + value: movementController.averageSpeed + value + movementController.averageSpeed + 2 + + + 293 + + + + value: movementController.averageDistance + + + + + + value: movementController.averageDistance + value + movementController.averageDistance + 2 + + + 296 + + + + showCombatWindow: + + + + 302 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + + + + 72 + + + YES + + + + + + + + + + + 73 + + + + + 74 + + + YES + + + + + + 75 + + + YES + + + + + + 76 + + + YES + + + + + + 77 + + + + + 78 + + + YES + + + + + + 79 + + + + + 80 + + + + + 81 + + + + + 82 + + + + + 83 + + + YES + + + + + + + + + + + + + + + + + + + + 84 + + + YES + + + + + + 85 + + + YES + + + + + + 86 + + + YES + + + + + + 87 + + + + + 88 + + + + + 89 + + + + + 91 + + + YES + + + + + + 96 + + + + + 104 + + + YES + + + + + + 105 + + + YES + + + + + + 106 + + + + + 107 + + + + + 108 + + + + + 109 + + + YES + + + + + + + + + + 110 + + + YES + + + + + + 111 + + + + + 112 + + + YES + + + + + + 113 + + + + + 114 + + + + + 115 + + + YES + + + + + + 116 + + + + + 117 + + + YES + + + + + + 118 + + + + + 98 + + + YES + + + + + + 99 + + + + + 141 + + + YES + + + + + + 142 + + + + + 143 + + + YES + + + + + + 144 + + + + + 157 + + + YES + + + + + + 158 + + + + + 168 + + + YES + + + + + + 169 + + + + + 172 + + + YES + + + + + + + + + 173 + + + YES + + + + + + 174 + + + YES + + + + + + 175 + + + YES + + + + + + 176 + + + + + 177 + + + + + 178 + + + + + 182 + + + YES + + + + + + 183 + + + + + 251 + + + YES + + + + + 282 + + + YES + + + + + + 283 + + + + + 284 + + + YES + + + + + + 285 + + + + + 286 + + + YES + + + + + + 287 + + + + + 288 + + + YES + + + + + + 289 + + + + + 290 + + + + + 213 + + + YES + + + + + + 214 + + + + + 244 + + + YES + + + + + + 245 + + + + + 299 + + + YES + + + + + + 300 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 104.IBPluginDependency + 105.IBPluginDependency + 106.IBPluginDependency + 107.IBPluginDependency + 108.IBPluginDependency + 109.IBPluginDependency + 110.IBPluginDependency + 111.IBPluginDependency + 112.IBPluginDependency + 113.IBPluginDependency + 114.IBPluginDependency + 115.IBPluginDependency + 116.IBPluginDependency + 117.IBPluginDependency + 118.IBPluginDependency + 141.IBPluginDependency + 142.IBPluginDependency + 143.IBPluginDependency + 144.IBPluginDependency + 157.IBPluginDependency + 158.IBPluginDependency + 168.IBPluginDependency + 169.IBPluginDependency + 172.IBPluginDependency + 173.IBPluginDependency + 174.IBPluginDependency + 175.IBPluginDependency + 176.IBPluginDependency + 177.IBPluginDependency + 178.IBPluginDependency + 182.IBPluginDependency + 183.IBPluginDependency + 213.IBPluginDependency + 214.IBPluginDependency + 244.IBPluginDependency + 245.IBPluginDependency + 251.IBPluginDependency + 282.IBPluginDependency + 283.IBPluginDependency + 284.IBPluginDependency + 285.IBPluginDependency + 286.IBPluginDependency + 287.IBPluginDependency + 288.IBPluginDependency + 289.IBPluginDependency + 299.IBPluginDependency + 300.IBPluginDependency + 72.IBPluginDependency + 73.IBPluginDependency + 74.IBPluginDependency + 75.IBPluginDependency + 76.IBPluginDependency + 77.IBPluginDependency + 78.IBPluginDependency + 79.IBPluginDependency + 80.IBPluginDependency + 81.IBPluginDependency + 82.IBPluginDependency + 83.IBPluginDependency + 84.IBPluginDependency + 85.IBPluginDependency + 86.IBPluginDependency + 87.IBPluginDependency + 88.IBPluginDependency + 89.IBPluginDependency + 91.IBPluginDependency + 96.IBPluginDependency + 98.IBPluginDependency + 99.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{708, 320}, {740, 520}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{394, 263}, {575, 329}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 302 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BlacklistController + NSObject + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + autoJoinWG: + closeHotkeyHelp: + closeLootHotkeyHelp: + doTheRelicEmanation: + editCombatProfiles: + gatheringLootingOptions: + gatheringLootingSelectAction: + hotkeyHelp: + login: + lootHotkeyHelp: + pvpBMSelectAction: + pvpStartStop: + pvpTestWarning: + startBot: + startStopBot: + stopBot: + test: + testHotkey: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + autoJoinWG + behaviorPopup + blacklistController + chatController + chatLogController + combatController + combatProfileEditor + combatProfilePopup + controller + corpseController + fishController + fishingApplyLureCheckbox + fishingCheckbox + fishingGatherDistanceText + fishingLurePopUpButton + fishingOnlySchoolsCheckbox + fishingRecastCheckbox + fishingUseContainersCheckbox + gatherDistText + gatheringLootingPanel + herbalismCheckbox + herbalismSkillText + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootCheckbox + lootController + lootHotkeyHelpPanel + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + miningCheckbox + miningSkillText + mobController + mountCheckbox + mountType + mouseOverRecorder + movementController + netherwingEggCheckbox + nodeController + nodeIgnoreFriendlyCheckbox + nodeIgnoreFriendlyDistanceText + nodeIgnoreHostileCheckbox + nodeIgnoreHostileDistanceText + nodeIgnoreMobCheckbox + nodeIgnoreMobDistanceText + offsetController + overlayWindow + petAttackRecorder + playerController + playersController + procedureController + pvpBMSelectPanel + pvpBannerImage + pvpLeaveInactiveCheckbox + pvpPlayWarningCheckbox + pvpStartStopButton + pvpWaitForPreparationBuff + questController + routePopup + runningTimer + scanGrid + shortcutRecorder + skinningCheckbox + skinningSkillText + spellController + startStopButton + startstopRecorder + statusText + view + waypointController + + + YES + NSButton + NSButton + id + AuraController + NSButton + id + BlacklistController + ChatController + ChatLogController + CombatController + CombatProfileEditor + id + Controller + CorpseController + FishController + NSButton + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + id + NSPanel + NSButton + id + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + NSButton + id + MobController + NSButton + NSPopUpButton + SRRecorderControl + MovementController + NSButton + NodeController + NSButton + NSTextField + NSButton + NSTextField + NSButton + NSTextField + OffsetController + NSWindow + SRRecorderControl + PlayerDataController + PlayersController + ProcedureController + NSPanel + NSImageView + NSButton + NSButton + NSButton + NSButton + QuestController + id + NSTextField + ScanGridView + SRRecorderControl + NSButton + id + SpellController + NSButton + SRRecorderControl + NSTextField + NSView + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + blacklistController + botController + chatController + combatPanel + combatTable + controller + mobController + movementController + playerData + playersController + + + YES + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + CombatProfileEditor + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + closeEditor: + closeRename: + createCombatProfile: + deleteCombatProfile: + deleteIgnoreEntry: + duplicateCombatProfile: + exportCombatProfile: + importCombatProfile: + loadCombatProfile: + playerList: + renameCombatProfile: + tankSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + editorPanel + ignoreTable + playerList + playersController + renamePanel + + + YES + NSPanel + NSTableView + NSPopUpButton + PlayersController + NSPanel + + + + IBProjectSource + CombatProfileEditor.h + + + + Controller + NSObject + + YES + + YES + confirmAppRename: + launchWebsite: + pidSelected: + renameShowHelp: + renameUseExisting: + showAbout: + showSettings: + testFront: + toggleGUIScripting: + toggleSecurePrefs: + toolbarItemSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + itemsToolbarItem + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + mobsToolbarItem + newIdentifierField + newNameField + newSignatureField + nodeController + nodesToolbarItem + offsetController + playerData + playerToolbarItem + playersController + playersToolbarItem + prefsToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + NSToolbarItem + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSToolbarItem + NSTextField + NSTextField + NSTextField + NodeController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + NSObject + + YES + + YES + controller + itemTable + memoryViewController + playerData + view + + + YES + Controller + NSTableView + MemoryViewController + PlayerDataController + NSView + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + findPointers: + menuAction: + openSearch: + saveValues: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + memoryTable + memoryViewWindow + numAddressesToScan + offsetController + operatorPopUpButton + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + id + id + NSTextField + OffsetController + NSPopUpButton + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + NSObject + + YES + + YES + additionalStart: + additionalStop: + faceMob: + filterMobs: + resetMobList: + targetMob: + updateTracking: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + additionalList + auraController + botController + combatController + controller + memoryViewController + mobColorByLevel + mobTable + movementController + playerData + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + view + + + YES + NSPopUpButton + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + prefsChanged: + id + + + YES + + YES + auraController + blacklistController + botController + chatController + combatController + controller + logOutStuckAttemptsTextField + macroController + mobController + movementType + offsetController + playerData + + + YES + AuraController + BlacklistController + id + id + id + id + NSTextField + MacroController + id + NSPopUpButton + OffsetController + PlayerDataController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + NSObject + + YES + + YES + faceNode: + filterList: + filterNodes: + moveToStart: + moveToStop: + resetList: + targetNode: + + + YES + id + id + id + id + id + id + id + + + + YES + + YES + botController + controller + memoryViewController + moveToList + movementController + nodeTable + playerController + view + + + YES + id + id + id + NSPopUpButton + id + id + PlayerDataController + NSView + + + + IBProjectSource + NodeController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + NSObject + + YES + + YES + facePlayer: + reloadNames: + resetPlayerList: + targetPlayer: + updateTracking: + + + YES + id + id + id + id + id + + + + YES + + YES + controller + memoryViewController + movementController + playerColorByLevel + playerData + playerTable + trackFriendly + trackHostile + view + + + YES + Controller + MemoryViewController + MovementController + NSButton + PlayerDataController + NSTableView + id + id + NSView + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeExportPanel: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + exportBehaviors: + importBehavior: + loadBehavior: + openExportPanel: + removeBehavior: + renameBehavior: + setBehaviorEvent: + tableRowDoubleClicked: + updateOptions: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + exportPanel + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSPanel + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + WaypointController + NSObject + + YES + + YES + addWaypoint: + cancelWaypointAction: + changeWaypointAction: + closeAutomatorPanel: + closeExportPanel: + closeRename: + closeVisualize: + closeWaypointAction: + closestWaypoint: + createRoute: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + openExportPanel: + optionSelected: + removeRoute: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + startStopAutomator: + stopMovement: + testWaypointSequence: + visualize: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + exportPanel + isFlyingRouteButton + mobController + movementController + playerData + renamePanel + routeTypeSegment + shortcutRecorder + testingMenu + view + visualizePanel + visualizeView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + id + id + Controller + NSPanel + NSButton + id + id + PlayerDataController + NSPanel + id + SRRecorderControl + NSMenu + NSView + NSPanel + RouteVisualizationView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSLevelIndicator + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSLevelIndicator.h + + + + NSLevelIndicatorCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSLevelIndicatorCell.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSSlider + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSlider.h + + + + NSSliderCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSliderCell.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTableView + NSControl + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/PlayerDataController.h b/PlayerDataController.h new file mode 100644 index 0000000..0dfc502 --- /dev/null +++ b/PlayerDataController.h @@ -0,0 +1,203 @@ +// +// PlayerDataController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/15/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import +#import "Position.h" + +@class Unit; +@class Player; +@class Position; +@class WoWObject; +@class MemoryAccess; + +@class MobController; +@class CombatController; +@class Controller; +@class BotController; +@class SpellController; +@class MemoryViewController; +@class NodeController; +@class OffsetController; +@class MovementController; +@class MobController; +@class BindingsController; + +#define PlayerIsValidNotification @"PlayerIsValidNotification" +#define PlayerIsInvalidNotification @"PlayerIsInvalidNotification" + +#define PlayerHasDiedNotification @"PlayerHasDiedNotification" +#define PlayerHasRevivedNotification @"PlayerHasRevivedNotification" +#define PlayerChangedTargetNotification @"PlayerChangedTargetNotification" + +#define PlayerEnteringCombatNotification @"PlayerEnteringCombatNotification" +#define PlayerLeavingCombatNotification @"PlayerLeavingCombatNotification" + +#define ZoneStrandOfTheAncients 4384 + +#define StrandGateOfTheBlueSapphire 190724 +#define StrandGateOfTheGreenEmerald 190722 +#define StrandGateOfThePurpleAmethyst 190723 +#define StrandGateOfTheRedSun 190726 +#define StrandGateOfTheYellowMoon 190727 +#define StrandChamberOfAncientRelics 192549 + +#define BGNone 0 +#define BGQueued 1 +#define BGWaiting 2 +#define BGActive 3 + +enum ePlayer_RuneTypes { + RuneType_Blood = 0, + RuneType_Unholy = 1, + RuneType_Frost = 2, + RuneType_Death = 3, +}; + +@interface PlayerDataController : NSObject { + IBOutlet Controller *controller; + IBOutlet BotController *botController; + IBOutlet SpellController *spellController; + IBOutlet CombatController *combatController; + IBOutlet MemoryViewController *memoryViewController; + IBOutlet NodeController *nodeController; + IBOutlet OffsetController *offsetController; + IBOutlet MovementController *movementController; + IBOutlet MobController *mobController; + IBOutlet BindingsController *bindingsController; + + IBOutlet NSView *view; + IBOutlet NSTextField *powerNameText; + IBOutlet NSTableView *combatTable; + IBOutlet NSTableView *healingTable; + // IBOutlet NSTextField *stanceText; // 3.0.8 removed + + NSNumber *_baselineAddress; + NSNumber *_playerAddress; + BOOL _validState, _lastState; + + NSMutableArray *_combatDataList; + NSMutableArray *_healingDataList; + + Unit *_pet; + unsigned _playerHealth, _playerMaxHealth; + unsigned _playerMana, _playerMaxMana; + float _xPosition, _yPosition, _zPosition; + float _playerDirection, _playerSpeed; + float _playerSpeedMin, _playerSpeedMax; + float _updateFrequency; + int savedLevel; + Position *_deathPosition; + NSSize minSectionSize, maxSectionSize; + + BOOL _lastCombatState, _wasDead; + GUID _lastTargetID; +} + ++ (PlayerDataController *)sharedController; + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property float updateFrequency; +@property (readonly) NSString *playerHeader; + +@property (readonly) NSString *playerName; +@property (readonly) NSString *accountName; +@property (readonly) NSString *serverName; +@property (readonly) NSString *lastErrorMessage; + +- (BOOL)playerIsValid; +- (BOOL)playerIsValid: (id)sender; +- (void)setStructureAddress: (NSNumber*)address; +- (NSNumber*)structureAddress; +- (UInt32)baselineAddress; +- (UInt32)infoAddress; + +- (Player*)player; +- (UInt64)GUID; +- (UInt32)lowGUID; + +- (BOOL)isDead; +- (BOOL)isGhost; +- (UInt32)level; +- (UInt32)health; +- (UInt32)maxHealth; +- (UInt32)mana; +- (UInt32)maxMana; +- (UInt32)percentHealth; +- (UInt32)percentMana; +- (UInt32)comboPoints; +- (int)runesAvailable:(int)type; +- (UInt32)mounts; + +@property (readwrite, retain) Unit *pet; + +- (Position*)corpsePosition; +- (Position*)position; +- (Position*)deathPosition; +- (float)directionFacing; +- (void)setDirectionFacing: (float)direction; +- (void)setMovementFlags:(UInt8)movementFlags; +- (UInt32)movementFlags; +- (UInt64)movementFlags64; +- (void)faceToward: (Position*)position; +- (float)speed; +- (float)speedMax; +- (float)maxGroundSpeed; +- (float)maxAirSpeed; +- (UInt32)copper; +- (UInt32)honor; +- (void)trackResources: (int)resource; + +- (BOOL)targetGuid: (GUID)guid; +- (BOOL)setPrimaryTarget: (WoWObject*)target; +- (BOOL)setMouseoverTarget: (UInt64)targetID; +- (UInt64)targetID; +- (UInt64)mouseoverID; +- (UInt64)interactGUID; +- (UInt64)focusGUID; +- (UInt64)comboPointUID; + +- (BOOL)isInParty; +- (UInt64)PartyMember: (int)whichMember; +- (BOOL)UnitInParty: (UInt64)targetID; + +- (BOOL)isInCombat; +- (BOOL)isLooting; +- (BOOL)isCasting; +- (BOOL)isSitting; +- (BOOL)isHostileWithFaction: (UInt32)faction; +- (BOOL)isFriendlyWithFaction: (UInt32)faction; + +- (BOOL)isOnGround; +- (BOOL)isAirMounted; + +- (UInt32)spellCasting; +- (float)castTime; +- (float)castTimeRemaining; +- (UInt32)currentTime; + +- (UInt32)factionTemplate; + +- (IBAction)setPlayerDirectionInMemory: (id)sender; +- (IBAction)showPlayerStructure: (id)sender; +- (IBAction)showAuraWindow: (id)sender; +- (IBAction)showCooldownWindow: (id)sender; +- (IBAction)showCombatWindow: (id)sender; + +- (void)refreshPlayerData; + +- (int)battlegroundStatus; +- (UInt32)zone; +- (BOOL)isInBG:(int)zone; +- (BOOL)isOnBoatInStrand; +- (BOOL)isOnLeftBoatInStrand; +- (BOOL)isOnRightBoatInStrand; + +@end diff --git a/PlayerDataController.m b/PlayerDataController.m new file mode 100644 index 0000000..ec45e18 --- /dev/null +++ b/PlayerDataController.m @@ -0,0 +1,1398 @@ +// +// PlayerDataController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/15/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "PlayerDataController.h" +#import "Offsets.h" +#import "MemoryAccess.h" + +#import "AuraController.h" +#import "Controller.h" +#import "MobController.h" +#import "SpellController.h" +#import "CombatController.h" +#import "MemoryViewController.h" +#import "BotController.h" +#import "NodeController.h" +#import "OffsetController.h" +#import "MobController.h" +#import "BindingsController.h" + +#import "Spell.h" +#import "Player.h" +#import "Position.h" + +#import "ImageAndTextCell.h" + +#import + +@interface PlayerDataController () +@property (readwrite, retain) Position *deathPosition; +@property float xPosition; +@property float yPosition; +@property float zPosition; +@property BOOL wasDead; +@end + +@interface PlayerDataController (Internal) +- (void)resetState; +- (void)loadState; + +- (void)setHorizontalDirectionFacing: (float)direction; // [0, 2pi] +- (void)setVerticalDirectionFacing: (float)direction; // [-pi/2, pi/2] +@end + +@implementation PlayerDataController + ++ (void)initialize { + /*[self exposeBinding: @"mana"]; + [self exposeBinding: @"maxMana"]; + [self exposeBinding: @"health"]; + [self exposeBinding: @"maxHealth"]; + [self exposeBinding: @"percentHealth"]; + [self exposeBinding: @"percentMana"];*/ + [self exposeBinding: @"playerIsValid"]; +} + +static PlayerDataController* sharedController = nil; + ++ (PlayerDataController *)sharedController { + if (sharedController == nil) + sharedController = [[[self class] alloc] init]; + return sharedController; +} + +- (id) init { + self = [super init]; + if(sharedController) { + [self release]; + self = sharedController; + } else if(self != nil) { + sharedController = self; + + _baselineAddress = nil; + _playerAddress = nil; + _lastState = NO; + _lastCombatState = NO; + self.deathPosition = nil; + _lastTargetID = 0; + savedLevel = 0; + self.wasDead = NO; + + _combatDataList = [[NSMutableArray array] retain]; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(applicationWillTerminate:) + name: NSApplicationWillTerminateNotification + object: nil]; + + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(viewLoaded:) + name: DidLoadViewInMainWindowNotification + object: nil]; + + [NSBundle loadNibNamed: @"Player" owner: self]; + } + return self; +} + +- (void)dealloc{ + [_combatDataList release]; + [_baselineAddress release]; + [_playerAddress release]; + + [super dealloc]; +} + +- (void)viewLoaded: (NSNotification*)notification { + //if( [notification object] == self.view ) { + // log(LOG_DEV, @"loaded"); + // [[AuraController sharedController] aurasForUnit: [self player]]; + //} +} + +- (void)awakeFromNib { + + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = [self.view frame].size; + + [combatTable setDoubleAction: @selector(combatTableDoubleClick:)]; + + float freq = [[NSUserDefaults standardUserDefaults] floatForKey: @"PlayerUpdateFrequency"]; + if(freq <= 0.0f) freq = 0.35; + self.updateFrequency = freq; + + ImageAndTextCell *imageAndTextCell = [[[ImageAndTextCell alloc] init] autorelease]; + [imageAndTextCell setEditable: NO]; + [[combatTable tableColumnWithIdentifier: @"Class"] setDataCell: imageAndTextCell]; + [[combatTable tableColumnWithIdentifier: @"Race"] setDataCell: imageAndTextCell]; +} + +- (void)applicationWillTerminate: (NSNotification*)notification { + [[NSUserDefaults standardUserDefaults] setFloat: self.updateFrequency forKey: @"PlayerUpdateFrequency"]; +} + +@synthesize view; +@synthesize deathPosition = _deathPosition; +@synthesize xPosition = _xPosition; +@synthesize yPosition = _yPosition; +@synthesize zPosition = _zPosition; +@synthesize updateFrequency = _updateFrequency; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize wasDead = _wasDead; +@synthesize pet = _pet; + +- (NSString*)playerHeader { + if( [self playerIsValid:self] ) { + unsigned long offset = [offsetController offset:@"PLAYER_GUID_NAME"] + 0x8; + // get the player name if we can + NSString *playerName = nil; + if( offset ) { + char name[13]; + name[12] = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&name BufLength: sizeof(name)-1]) { + NSString *newName = [NSString stringWithUTF8String: name]; + if([newName length]) { + playerName = newName; + } + } + } + + Player *thisPlayer = [self player]; + + if(playerName) { + return [NSString stringWithFormat: @"%@, level %d %@ %@", playerName, [thisPlayer level], [Unit stringForRace: [thisPlayer race]], [Unit stringForClass: [thisPlayer unitClass]]]; + } + return [NSString stringWithFormat: @"Level %d %@ %@", [thisPlayer level], [Unit stringForRace: [thisPlayer race]], [Unit stringForClass: [thisPlayer unitClass]]]; + + } else { + return @"No valid player detected."; + } +} + + +- (NSString*)lastErrorMessage { + unsigned long offset = [offsetController offset:@"LAST_RED_ERROR_MESSAGE"]; + if( offset ) { + char str[100]; + str[99] = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&str BufLength: sizeof(str)-1]) { + NSString *string = [NSString stringWithUTF8String: str]; + if([string length]) { + return string; + } + } + } + return @""; +} + +- (NSString*)playerName { + unsigned long offset = [offsetController offset:@"PLAYER_NAME_STATIC"] + 0x8; + if( offset ) { + char str[13]; + str[12] = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&str BufLength: sizeof(str)-1]) { + NSString *string = [NSString stringWithUTF8String: str]; + if([string length]) { + return string; + } + } + } + return @""; +} + +- (NSString*)accountName { + unsigned long offset = [offsetController offset:@"ACCOUNT_NAME_STATIC"]; + if( offset ) { + char str[33]; + str[32] = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&str BufLength: sizeof(str)-1]) { + NSString *string = [NSString stringWithUTF8String: str]; + if([string length]) { + return string; + } + } + } + return @""; +} + +- (NSString*)serverName { + unsigned long offset = [offsetController offset:@"SERVER_NAME_STATIC"]; + if( offset ) { + char str[33]; + str[32] = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: offset Buffer: (Byte *)&str BufLength: sizeof(str)-1]) { + NSString *string = [NSString stringWithUTF8String: str]; + if([string length]) { + return string; + } + } + } + return @""; +} + +- (NSString*)sectionTitle { + return @"Player"; +} + +#pragma mark - + +- (BOOL)playerIsValid{ + //log(LOG_DEV, @"UI UI UI"); + return [self playerIsValid:nil]; +} +// 4 reads +// could take this down to 3 if we store the global GUID somewhere + ONLY reset when player is invalid +- (BOOL)playerIsValid: (id)sender { + + // check that our so-called player struct has the correct signature + MemoryAccess *memory = [controller wowMemoryAccess]; + + // load the following: + // global GUID + // our GUID + // previous pointer + // then compare GUIDs and validate previous pointer is valid + + UInt32 selfGUID = 0, previousPtr = 0, objectType = 0; + UInt64 globalGUID = 0; + [memory loadDataForObject: self atAddress: [offsetController offset:@"PLAYER_GUID_NAME"] Buffer: (Byte*)&globalGUID BufLength: sizeof(globalGUID)]; + [memory loadDataForObject: self atAddress: ([self baselineAddress] + OBJECT_GUID_LOW32) Buffer: (Byte*)&selfGUID BufLength: sizeof(selfGUID)]; + [memory loadDataForObject: self atAddress: ([self baselineAddress] + OBJECT_STRUCT3_POINTER) Buffer: (Byte*)&previousPtr BufLength: sizeof(previousPtr)]; + [memory loadDataForObject: self atAddress: ([self baselineAddress] + OBJECT_TYPE_ID) Buffer: (Byte*)&objectType BufLength: sizeof(objectType)]; + + // is the player still valid? + if ( GUID_LOW32(globalGUID) == selfGUID && objectType == TYPEID_PLAYER && previousPtr > 0x0 ) { + if ( !_lastState ) { + log(LOG_DEV, @"[Player] Player is valid. %@", [sender class]); + + [self loadState]; + + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerIsValidNotification object: nil]; + } + return YES; + } + + if ( _lastState ) { + log(LOG_DEV, @"[Player] Player is invalid. %@", [sender class]); + [self resetState]; + } + return NO; +} + +- (void)resetState { + [self willChangeValueForKey: @"playerHeader"]; + [self willChangeValueForKey: @"playerIsValid"]; + [NSObject cancelPreviousPerformRequestsWithTarget: self]; + + _lastState = NO; + [_playerAddress release]; _playerAddress = nil; + self.pet = nil; + savedLevel = 0; + + [self didChangeValueForKey: @"playerIsValid"]; + [self didChangeValueForKey: @"playerHeader"]; + + //[[NSNotificationCenter defaultCenter] postNotificationName: PlayerIsInvalidNotification object: nil]; // moved this to in controller.m when we CANNOT find a player - doesn't belong here! +} + +// before we get here we've made the following comparisons: +// playerIsValid: +// GUID > 0 +// guid == playerGUID +// PreviousPtr > 0 +// object type == TYPEID_PLAYER +// setStructureAddress (from [controller sortObjects]) +// GUID > 0 +// guid == playerGUID +// so lets ONLY compare the type! (since it wasn't done in playerIsValid, but WAS done in sortObjects) +// 2 reads +- (void)loadState { + // load player info: info sub-struct, signature, and playerID + MemoryAccess *memory = [controller wowMemoryAccess]; + UInt32 objectType = 0, playerAddress = 0; + if(memory && _baselineAddress && [self baselineAddress]) { + [memory loadDataForObject: self atAddress: ([self baselineAddress] + OBJECT_TYPE_ID) Buffer: (Byte*)&objectType BufLength: sizeof(objectType)]; + [memory loadDataForObject: self atAddress: ([self baselineAddress] + OBJECT_FIELDS_PTR) Buffer: (Byte*)&playerAddress BufLength: sizeof(playerAddress)]; + log(LOG_DEV, @"[PlayerData] Type: %d Address: 0x%X BaselineAddress: 0x%X", objectType, playerAddress, [self baselineAddress]); + } + + // if we got a ~~~~ + // 1) valid player address + // 2) the player signature is correct + // 3) we have a real baseline address + // 4) and a real player ID + // ... then we're good to go. + if(playerAddress && (objectType == TYPEID_PLAYER)) { + [_playerAddress release]; + _playerAddress = [[NSNumber numberWithUnsignedInt: playerAddress] retain]; + [self willChangeValueForKey: @"playerHeader"]; + [self willChangeValueForKey: @"playerIsValid"]; + _lastState = YES; + [self didChangeValueForKey: @"playerIsValid"]; + [self didChangeValueForKey: @"playerHeader"]; + + // reset internal state info variables + self.wasDead = [self isDead]; + savedLevel = 0; + + // and start the update process + [self performSelector: @selector(refreshPlayerData) withObject: nil afterDelay: _updateFrequency]; + + return; + } + + log(LOG_DEV, @"Error: Attemping to load invalid player; bailing. Address: 0x%X Type: %d", playerAddress, objectType); + [self resetState]; +} + + +//- (void)wowMemoryAccessIsValid: (NSNotification*)notification { +// if(_baselineAddress) +// [self loadState]; +//} +// +//- (void)wowMemoryAccessIsNotValid: (NSNotification*)notification { +// [self resetState]; +//} + +- (void)setStructureAddress: (NSNumber*)address { + + // save new address + [_baselineAddress release]; + _baselineAddress = [address retain]; + + // reset any previous state + [self resetState]; + + // try and load player state + [self loadState]; +} + +- (UInt32)baselineAddress { + return [_baselineAddress unsignedIntValue]; +} + +- (NSNumber*)structureAddress { + return [[_baselineAddress retain] autorelease]; +} + +- (UInt32)infoAddress { + return [_playerAddress unsignedIntValue]; +} + +- (Player*)player { + return [Player playerWithAddress: [self structureAddress] inMemory: [controller wowMemoryAccess]]; +} + +#pragma mark Generic Player Info + +- (UInt64)GUID { + UInt64 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: [self infoAddress] Buffer: (Byte*)&value BufLength: sizeof(value)] && value) + return value; + return 0; +} + +- (UInt32)lowGUID { + UInt32 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: [self infoAddress] Buffer: (Byte*)&value BufLength: sizeof(value)] && value) + return value; + return 0; +} + +#pragma mark Player Health & Mana + +- (BOOL)isDead { + // if we have no health, we're dead + if( [self health] == 0) return YES; + + // or, if we're a ghost + return [self isGhost]; +} + +- (BOOL)isGhost { + NSArray *auras = [[AuraController sharedController] aurasForUnit: [self player] idsOnly: YES]; + // 8326 - regular dead + // 20584 - night elf wisp form + return ([auras containsObject: [NSNumber numberWithUnsignedInt: 8326]] || [auras containsObject: [NSNumber numberWithUnsignedInt: 20584]]); +} + +- (UInt32)percentHealth { + if([self maxHealth] == 0) return 0; + return (UInt32)(((1.0)*[self health])/[self maxHealth] * 100); +} + +- (UInt32)percentMana { + if([self maxMana] == 0) return 0; + return (UInt32)(((1.0)*[self mana])/[self maxMana] * 100); +} + +- (void)setHealth: (UInt32)value { + if(_playerHealth != value) { + [self willChangeValueForKey: @"health"]; + [self willChangeValueForKey: @"percentHealth"]; + _playerHealth = value; + [self didChangeValueForKey: @"health"]; + [self didChangeValueForKey: @"percentHealth"]; + } +} + +- (UInt32)health { + return _playerHealth; +} + +- (void)setMaxHealth: (UInt32)value { + if(_playerMaxHealth != value) { + [self willChangeValueForKey: @"maxHealth"]; + [self willChangeValueForKey: @"percentHealth"]; + _playerMaxHealth = value; + [self didChangeValueForKey: @"maxHealth"]; + [self didChangeValueForKey: @"percentHealth"]; + } +} +- (UInt32)maxHealth { + return _playerMaxHealth; +} + +- (void)setMana: (UInt32)playerMana { + if(_playerMana != playerMana) { + [self willChangeValueForKey: @"mana"]; + [self willChangeValueForKey: @"percentMana"]; + _playerMana = playerMana; + [self didChangeValueForKey: @"mana"]; + [self didChangeValueForKey: @"percentMana"]; + } +} + +- (UInt32)mana { + return _playerMana; +} + +- (void)setMaxMana: (UInt32)value { + if(_playerMaxMana != value) { + [self willChangeValueForKey: @"maxMana"]; + [self willChangeValueForKey: @"percentMana"]; + _playerMaxMana = value; + [self didChangeValueForKey: @"maxMana"]; + [self didChangeValueForKey: @"percentMana"]; + } +} +- (UInt32)maxMana { + return _playerMaxMana; +} + +- (UInt32)mounts { + UInt32 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"MOUNT_LIST_NUM"] Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (UInt32)comboPoints { + UInt32 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([offsetController offset:@"COMBO_POINTS_STATIC"]) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (int)runesAvailable:(int)type{ + + // offsets are from the Lua_GetRuneCount offset + // the below indicates the start time that the rune was used, the end time is 0x18 from the below (so 0x4 + 0x18 = end time of the first blood rune) + // blood: 0x4 and 0x8 + // unholy: 0xC and 0x10 + // forst : 0x14 and 0x18 + + MemoryAccess *memory = [controller wowMemoryAccess]; + UInt32 runeStatePtr = 0x0, runeState = 0, runeType = 0; + [memory loadDataForObject: self atAddress: [offsetController offset:@"Lua_GetRuneCount"] Buffer: (Byte*)&runeStatePtr BufLength: sizeof(runeStatePtr)]; + [memory loadDataForObject: self atAddress: runeStatePtr Buffer: (Byte*)&runeState BufLength: sizeof(runeState)]; + + if ( runeState ){ + int runesAvailable = 0; + if ( type == RuneType_Blood ){ + runesAvailable += (runeState & ( 1 << 0 )) ? 1 : 0; + runesAvailable += (runeState & ( 1 << 1 )) ? 1 : 0; + } + else if ( type == RuneType_Unholy ){ + runesAvailable += (runeState & ( 1 << 2 )) ? 1 : 0; + runesAvailable += (runeState & ( 1 << 3 )) ? 1 : 0; + } + else if ( type == RuneType_Frost ){ + runesAvailable += (runeState & ( 1 << 4 )) ? 1 : 0; + runesAvailable += (runeState & ( 1 << 5 )) ? 1 : 0; + } + + return runesAvailable; + } + + log(LOG_DEV, @"[Rune] No rune state found"); + + return 0; +} + +#pragma mark Player Bearings + +- (Position*)position { + float pos[3] = {-1.0f, -1.0f, -1.0f }; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_XLocation) Buffer: (Byte *)&pos BufLength: sizeof(float)*3]) + return [Position positionWithX: pos[0] Y: pos[1] Z: pos[2]]; + return nil; +} + +- (BOOL)isOnGround { + + UInt32 movementFlags = [self movementFlags]; + + // Player is in the air! + if ( ( movementFlags & 0x3000000) == 0x3000000 || ( movementFlags & 0x1000) == 0x1000 ){ + return NO; + } + + return YES; +} + +- (BOOL)isAirMounted{ + + UInt32 movementFlags = [self movementFlags]; + + if ( ( movementFlags & MovementFlags_AirMounted) == MovementFlags_AirMounted || ( movementFlags & MovementFlags_AirMountedInAir) == MovementFlags_AirMountedInAir ){ + return YES; + } + + return NO; +} + +// 1 write +- (void)setHorizontalDirectionFacing: (float)direction { + // player must be valid + if(direction >= 0.0f) { + [[controller wowMemoryAccess] saveDataForAddress: ([self baselineAddress] + BaseField_Facing_Horizontal) Buffer: (Byte *)&direction BufLength: sizeof(direction)]; + //[[controller wowMemoryAccess] saveDataForAddress: ([self baselineAddress] + 0xC24) Buffer: (Byte *)&direction BufLength: sizeof(direction)]; + //[[controller wowMemoryAccess] saveDataForAddress: ([self baselineAddress] + 0xF18) Buffer: (Byte *)&direction BufLength: sizeof(direction)]; + //[[controller wowMemoryAccess] saveDataForAddress: (0x24362bbc) Buffer: (Byte *)&direction BufLength: sizeof(direction)]; + } +} + +// 1 write +- (void)setVerticalDirectionFacing: (float)direction { + [[controller wowMemoryAccess] saveDataForAddress: ([self baselineAddress] + BaseField_Facing_Vertical) Buffer: (Byte *)&direction BufLength: sizeof(direction)]; +} + +// 1 read +- (float)directionFacing { + float floatValue = -1.0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_Facing_Horizontal) Buffer: (Byte*)&floatValue BufLength: sizeof(floatValue)]; + return floatValue; +} + +- (void)setDirectionFacing: (float)direction { + if(direction < 0) return; + [[controller wowMemoryAccess] saveDataForAddress: ([self baselineAddress] + BaseField_Facing_Horizontal) Buffer: (Byte*)&direction BufLength: sizeof(direction)]; +} + +- (void)setMovementFlags:(UInt8)movementFlags { + [[controller wowMemoryAccess] saveDataForAddress: ([self baselineAddress] + BaseField_MovementFlags) Buffer: (Byte*)&movementFlags BufLength: sizeof(movementFlags)]; +} + +// 1 read +- (UInt32)movementFlags { + UInt32 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_MovementFlags) Buffer: (Byte*)&value BufLength: sizeof(value)]; + return value; +} + +// 1 read +- (UInt64)movementFlags64 { + UInt64 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_MovementFlags) Buffer: (Byte*)&value BufLength: sizeof(value)]; + return value; +} + +// 1 read +- (float)speed { + float floatValue = 0.0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_RunSpeed_Current) Buffer: (Byte*)&floatValue BufLength: sizeof(floatValue)]; + return [[NSString stringWithFormat: @"%.2f", floatValue] floatValue]; +} + +// 2 reads +- (float)speedMax { + float groundSpeed = [self maxGroundSpeed], airSpeed = [self maxAirSpeed]; + return (airSpeed > groundSpeed) ? airSpeed : groundSpeed; +} + +// 1 read +- (float)maxGroundSpeed { + float floatValue = 0.0f; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_RunSpeed_Max) Buffer: (Byte*)&floatValue BufLength: sizeof(floatValue)]; + return floatValue; +} + +// 1 read +- (float)maxAirSpeed { + float floatValue = 0.0f; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self baselineAddress] + BaseField_AirSpeed_Max) Buffer: (Byte*)&floatValue BufLength: sizeof(floatValue)]; + return floatValue; +} + +- (UInt32)playerFieldsAddress{ + UInt32 value = 0; + if ( [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([[self player] baseAddress] + [offsetController offset:@"PlayerField_Pointer"]) Buffer: (Byte *)&value BufLength: sizeof(value)] ){ + return value; + } + return 0; +} + +// 1 read +- (UInt32)copper { + UInt32 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self playerFieldsAddress] + PLAYER_FIELD_COINAGE) Buffer: (Byte*)&value BufLength: sizeof(value)]; + return value; +} + +// 1 read +- (UInt32)honor { + + return 1500000; + /*UInt32 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([self playerFieldsAddress] + ) Buffer: (Byte*)&value BufLength: sizeof(value)]; + return value;*/ +} + +// 1 read, 2 writes +- (void)faceToward: (Position*)position { + if([self playerIsValid:self]) { + Position *ourPosition = [self position]; + [self setHorizontalDirectionFacing: [ourPosition angleTo: position]]; + [self setVerticalDirectionFacing: [ourPosition verticalAngleTo: position]]; + } +} + +// 1 write +- (void)trackResources: (int)resource{ + MemoryAccess *memory = [controller wowMemoryAccess]; + [memory saveDataForAddress: ([self playerFieldsAddress] + PLAYER_TRACK_RESOURCES) Buffer: (Byte *)&resource BufLength: sizeof(resource)]; +} + +#pragma mark Player Targeting + +- (BOOL)setTarget: (UInt64)targetID{ + + + MemoryAccess *memory = [controller wowMemoryAccess]; + if(memory && [self playerIsValid]) { + BOOL ret1, ret3; + // save this value to the target table + ret1 = [memory saveDataForAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_CURRENT) Buffer: (Byte *)&targetID BufLength: sizeof(targetID)]; + //ret2 = [[self wowMemory] saveDataForAddress: self atAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_MOUSEOVER) Buffer: (Byte *)&targetID BufLength: sizeof(targetID)]; + + // and to the player table + ret3 = [memory saveDataForAddress: ([[self player] unitFieldAddress] + UNIT_FIELD_TARGET) Buffer: (Byte *)&targetID BufLength: sizeof(targetID)]; + + if(ret1 && ret3) + return YES; + else + return NO; + } + return NO; + +} + +- (BOOL)targetGuid: (GUID)guid{ + + log(LOG_DEV, @"[PlayerData] Attempted to target 0x%qX", guid); + + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( memory && [memory isValid] && [memory saveDataForAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_LAST) Buffer: (Byte *)&guid BufLength: sizeof(guid)] ) { + + usleep([controller refreshDelay]*2); + + [bindingsController executeBindingForKey:BindingTargetLast]; + + usleep([controller refreshDelay]*2); + + log(LOG_DEV, @"[PlayerData] Targetting last target: 0x%qX", guid); + + return YES; + } + + return NO; +} + +- (BOOL)setPrimaryTarget: (WoWObject*)target { + + // is target valid + if ( !target || ![target isValid] ){ + log(LOG_DEV, @"[Player] Unable to target %@", target); + [mobController clearTargets]; + return [self setTarget:0]; + } + + // need to make sure we hit the mob selection variable as well! + if ( [target isNPC] ){ + Mob *mob = (Mob*)target; + [mob select]; + } + + return [self setTarget:[target GUID]]; +} + + +- (BOOL)setMouseoverTarget: (UInt64)targetID { + if([self playerIsValid:self]) { + // save this value to the target table + if([[controller wowMemoryAccess] saveDataForAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_MOUSEOVER) Buffer: (Byte *)&targetID BufLength: sizeof(targetID)]) + return YES; + else + return NO; + } + return NO; +} + +- (UInt64)targetID { + UInt64 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([[self player] unitFieldAddress] + UNIT_FIELD_TARGET) Buffer: (Byte*)&value BufLength: sizeof(value)] && value) { + return value; + } + return 0; +} + +- (UInt64)interactGUID { + UInt64 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_INTERACT) Buffer: (Byte*)&value BufLength: sizeof(value)] && value) { + return value; + } + return 0; +} + +- (UInt64)focusGUID { + UInt64 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_FOCUS) Buffer: (Byte*)&value BufLength: sizeof(value)] && value) { + return value; + } + return 0; +} + +- (UInt64)mouseoverID { + UInt64 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: ([offsetController offset:@"TARGET_TABLE_STATIC"] + TARGET_MOUSEOVER) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +- (UInt64)comboPointUID { + UInt64 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([offsetController offset:@"COMBO_POINTS_STATIC"] + COMBO_POINT_TARGET_UID) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +#pragma mark PLayer Status + +- (UInt32)stateFlags { + UInt32 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [[self player] unitFieldAddress] + UNIT_FIELD_FLAGS_2 Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; + + // polymorph sets bits 22 and 29 + + // bit 1 - not attackable + // bit 4 - evading + // bit 10 - looting + // bit 11 - combat (for mob) + // but 18 - stunned + // bit 19 - combat (for player) + // bit 23 - running away + // bit 25 - invisible/not selectable + // bit 26 - skinnable + // bit 29 - feign death +} + +- (BOOL)isInParty{ + GUID partyGUID = 0x0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"Lua_GetPartyMember"] Buffer: (Byte *)&partyGUID BufLength: sizeof(partyGUID)]; + + if ( partyGUID > 0x0 ) + return YES; + return NO; +} + +- (UInt64)PartyMember: (int)whichMember{ + GUID partyGUID = 0x0; + + whichMember--; // We'll make it so you can use 1-6 + + UInt64 memberOffset = 0x8 * whichMember; + + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"Lua_GetPartyMember"] + memberOffset Buffer: (Byte *)&partyGUID BufLength: sizeof(partyGUID)]; + return partyGUID; +} + +// We should make this one work, I'm pretty new to this offset stuff so I failed +- (BOOL)UnitInParty: (UInt64)targetID { + GUID partyGUID = targetID; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"Lua_UnitInParty"] Buffer: (Byte *)&partyGUID BufLength: sizeof(partyGUID)]; + + if ( partyGUID > 0x0 ) return YES; + return NO; +} + +- (BOOL)isInCombat { + if( ([self stateFlags] & (1 << 19)) == (1 << 19)) + return YES; + return NO; +} + +- (BOOL)isLooting { + if( ([self stateFlags] & (1 << 10)) == (1 << 10)) + return YES; + return NO; +} + +- (BOOL)isSitting { + return [[self player] isSitting]; +} + +- (BOOL)isHostileWithFaction: (UInt32)otherFaction { + UInt32 playerFaction = [self factionTemplate]; + if( !playerFaction || !otherFaction) return YES; + + NSDictionary *playerFactionTemplate = [[controller factionDict] objectForKey: [NSString stringWithFormat: @"%d", playerFaction]]; + NSDictionary *otherFactionTemplate = [[controller factionDict] objectForKey: [NSString stringWithFormat: @"%d", otherFaction]]; + + if(!playerFactionTemplate || !otherFactionTemplate) return YES; + + // check enemy list + if([[playerFactionTemplate objectForKey: @"EnemyFactions"] containsObject: [NSNumber numberWithUnsignedInt: otherFaction]]) + return YES; + + return ( [[playerFactionTemplate objectForKey: @"EnemyMask"] unsignedIntValue] & [[otherFactionTemplate objectForKey: @"ReactMask"] unsignedIntValue] ); +} + +- (BOOL)isFriendlyWithFaction: (UInt32)otherFaction { + UInt32 playerFaction = [self factionTemplate]; + if( !playerFaction || !otherFaction) return NO; + + NSDictionary *playerFactionTemplate = [[controller factionDict] objectForKey: [NSString stringWithFormat: @"%d", playerFaction]]; + NSDictionary *otherFactionTemplate = [[controller factionDict] objectForKey: [NSString stringWithFormat: @"%d", otherFaction]]; + + if(!playerFactionTemplate || !otherFactionTemplate) return NO; + + // check friend list + if([[playerFactionTemplate objectForKey: @"FriendFactions"] containsObject: [NSNumber numberWithUnsignedInt: otherFaction]]) + return YES; + + return ( [[playerFactionTemplate objectForKey: @"FriendMask"] unsignedIntValue] & [[otherFactionTemplate objectForKey: @"ReactMask"] unsignedIntValue] ); +} + +#pragma mark Player Casting + +- (BOOL)isCasting { + MemoryAccess *memory = [controller wowMemoryAccess]; + if(memory) { + UInt32 toCastID = 0, castID = 0, channelID = 0; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_Casting"] Buffer: (Byte *)&castID BufLength: sizeof(castID)]; + if(castID > 0) return YES; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_ToCast"] Buffer: (Byte *)&toCastID BufLength: sizeof(toCastID)]; + if(toCastID > 0) return YES; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_Channeling"] Buffer: (Byte *)&channelID BufLength: sizeof(channelID)]; + if(channelID > 0) return YES; + + /* + if( (toCastID > 0) || (castID > 0) || (channelID > 0) ) { // (value == 0x500) || (value == 0x80500) + // 500 means we might be casting or within the GCD + // 500 is also returned under other circumstances, but let's not go there (/lie) + // sometimes it's simply 0x500, moreoften 0x80500 + // 0x90500 seems to be the default state, but often isn't (wtf) + // 0x--100 on a gryphon + log(LOG_DEV, @"toCast = %d, castID = %d, channelID = %d", toCastID, castID, channelID); + return YES; + }*/ + } + return NO; + + // below is the old way I did it using the static casting table + /* 0xC8E5A0 (BASE ADDRESS) + 0x00 - playerID (64bits) + 0x08 - playerID if casting/targeting, 0 otherwise (64bit) + 0x0C - ^^ also while waiting server response + 0x10 - last/current spell cast + 0x14 - spell type + 0x00 instant, none + 0x20000 single target, + 0x40000 targeted AOE + 0x8000000 gathering? (spellID 2366 is gathering) + evocation does nothing + 0x18 - targetID (64bit) + 0x1C - (same) + ... + 0x3C - xLoc of targeted AOE + 0x40 - yLoc + 0x44 - zLoc */ + +} + +- (BOOL)isChanneling { + MemoryAccess *memory = [controller wowMemoryAccess]; + if(memory) { + UInt32 value = 0; + if([memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_Channeling"] Buffer: (Byte *)&value BufLength: sizeof(value)] && value) + return YES; + } + return NO; +} + +- (UInt32)spellCasting { + MemoryAccess *memory = [controller wowMemoryAccess]; + if([self isCasting] && memory) { + UInt32 value = 0; + // we have started to cast a spell, but are awaiting server response + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_ToCast"] Buffer: (Byte *)&value BufLength: sizeof(value)]; + if(value) return value; + + // we are actually casting a spell + value = 0; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_Casting"] Buffer: (Byte *)&value BufLength: sizeof(value)]; + if(value) return value; + + // we are chanelling a spell + value = 0; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_Channeling"] Buffer: (Byte *)&value BufLength: sizeof(value)]; + if(value) return value; + } + return 0; +} + +- (float)castTime { + + MemoryAccess *memory = [controller wowMemoryAccess]; + if(memory && [self isCasting]) { + UInt32 timeEnd = 0, timeStart = 0; + if( [self isChanneling] ) { + [memory loadDataForObject: self atAddress: [self baselineAddress] + BaseField_Spell_ChannelTimeEnd Buffer: (Byte *)&timeEnd BufLength: sizeof(timeEnd)]; + [memory loadDataForObject: self atAddress: [self baselineAddress] + BaseField_Spell_ChannelTimeStart Buffer: (Byte *)&timeStart BufLength: sizeof(timeStart)]; + } else { + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_TimeEnd"] Buffer: (Byte *)&timeEnd BufLength: sizeof(timeEnd)]; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_TimeStart"] Buffer: (Byte *)&timeStart BufLength: sizeof(timeStart)]; + } + float time = (timeEnd - timeStart) / 1000.0f; + return time; + } + return 0.0f; +} + +- (float)castTimeRemaining { + MemoryAccess *memory = [controller wowMemoryAccess]; + if(memory && [self isCasting]) { + // get the current time, according to the game + UInt32 currentTime = [self currentTime]; + + // check to see if we're casting + UInt32 endTime = 0; + [memory loadDataForObject: self atAddress: [self baselineAddress] + [offsetController offset:@"BaseField_Spell_TimeEnd"] Buffer: (Byte *)&endTime BufLength: sizeof(endTime)]; + if(endTime) { // we are casting and it has a designated end time + //log(LOG_DEV, @"[cast] %d vs. %d", endTime, currentTime); + if(endTime >= currentTime) { + //log(LOG_DEV, @"[cast] %f", ((endTime - currentTime) / 1000.0f)); + return ((endTime - currentTime) / 1000.0f); + } + } + + // check to see if we're chaneling + endTime = 0; + [memory loadDataForObject: self atAddress: [self baselineAddress] + BaseField_Spell_ChannelTimeEnd Buffer: (Byte *)&endTime BufLength: sizeof(endTime)]; + if(endTime) { // we are chanelling and it has a designated end time + if(endTime >= currentTime) + return ((endTime - currentTime) / 1000.0f); + } + } + // log(LOG_DEV, @"nothing from castTimeRemaining"); + return 0; +} + +#define kTwoPower32 (4294967296.0) /* 2^32 */ +- (UInt32)currentTime { + UnsignedWide theTime; + Microseconds(&theTime); + double result; + result = (((double) theTime.hi) * kTwoPower32) + theTime.lo; + return (UInt32) (result / 0x3E8); +} + +- (UInt32)level { + UInt32 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([[self player] unitFieldAddress] + UNIT_FIELD_LEVEL) Buffer: (Byte *)&value BufLength: sizeof(value)] && value) { + return value; + } + return 0; +} + +- (UInt32)factionTemplate { + UInt32 value = 0; + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: ([[self player] unitFieldAddress] + UNIT_FIELD_FACTIONTEMPLATE) Buffer: (Byte *)&value BufLength: sizeof(value)] && value) { + return value; + } + return 0; +} + +#pragma mark - + +- (IBAction)setPlayerDirectionInMemory: (id)sender { + if([self playerIsValid:self]) { + [self setHorizontalDirectionFacing: 6.28319f - [sender floatValue]]; + } +} + +- (IBAction)showPlayerStructure: (id)sender { + + //log(LOG_DEV, @"%@", NSStringFromPoint(NSPointFromCGPoint([controller screenPointForGamePosition: [self position]]))); + + [memoryViewController showObjectMemory: [self player]]; + [controller showMemoryView]; + /* + NSNumber *structAddr = [self structureAddress]; + UInt32 structStart = [structAddr unsignedIntValue], structEnd = 0; + + if([[controller wowMemoryAccess] loadDataForObject: self atAddress: (structStart + OBJECT_FIELDS_END_PTR) Buffer: (Byte*)&structEnd BufLength: sizeof(structEnd)] && structEnd && (structEnd > structStart) ) { + [memoryViewController setBaseAddress: structAddr withCount: (structEnd - structStart)/4]; + [memoryViewController setCallback: self]; + [controller showMemoryView]; + } else { + NSBeep(); + }*/ +} + +- (IBAction)showAuraWindow: (id)sender { + [[AuraController sharedController] showAurasPanel]; +} + +- (IBAction)showCooldownWindow: (id)sender { + [spellController showCooldownPanel]; +} + +- (IBAction)showCombatWindow: (id)sender { + [combatController showCombatPanel]; +} + +#pragma mark - + + +- (void)refreshPlayerData { + + MemoryAccess *memory = [controller wowMemoryAccess]; + if( memory && [self playerIsValid:self] ) { // ([botController isBotting] || [[self view] superview]) && + + Player *player = [self player]; + + // load health + [self setHealth: [player currentHealth]]; + [self setMaxHealth: [player maxHealth]]; + + // load mana + [self setMana: [player currentPower]]; + [self setMaxMana: [player maxPower]]; + + switch([player powerType]) { + case UnitPower_Mana: [powerNameText setStringValue: @"Mana:"]; break; + case UnitPower_Rage: [powerNameText setStringValue: @"Rage:"]; break; + case UnitPower_Focus: [powerNameText setStringValue: @"Focus:"]; break; + case UnitPower_Energy: [powerNameText setStringValue: @"Energy:"]; break; + case UnitPower_Happiness: [powerNameText setStringValue: @"Happiness:"]; break; + case UnitPower_RunicPower: [powerNameText setStringValue: @"Runic Power:"]; break; + default: [powerNameText setStringValue: @"Power:"]; break; + } + + // check pet + if( self.pet && (![self.pet isValid] || ([player petGUID] == 0))) { + self.pet = nil; + log(LOG_DEV, @"[Player] Pet is no longer valid."); + } + + // player has a pet, but we don't know which mob it is + if( !self.pet && [player hasPet]) { + GUID playerGUID = [player GUID]; + Mob *pet = [[MobController sharedController] mobWithGUID: [player petGUID]]; + + // this mob is really our pet, right? + if( [pet isValid] && ((playerGUID == [pet summonedBy]) || (playerGUID == [pet createdBy]) || (playerGUID == [pet charmedBy]))) { + self.pet = pet; + log(LOG_DEV, @"[Player] Found pet: %@", pet); + } else { + // [[MobController sharedController] enumerateAllMobs]; + } + } + + int level = [self level]; + if(savedLevel == 0) { + savedLevel = level; + } else { + if(level == (savedLevel+1)) { + log(LOG_DEV, @"[Player] Level up! You have reached level %d", level); + savedLevel = level; + + if( [controller sendGrowlNotifications] && [GrowlApplicationBridge isGrowlInstalled] && [GrowlApplicationBridge isGrowlRunning]) { + // [GrowlApplicationBridge setGrowlDelegate: @""]; + [GrowlApplicationBridge notifyWithTitle: @"Level up!" + description: [NSString stringWithFormat: @"You have reached level %d.", level] + notificationName: @"PlayerLevelUp" + iconData: [[NSImage imageNamed: @"Ability_Warrior_Revenge"] TIFFRepresentation] + priority: 0 + isSticky: NO + clickContext: nil]; + } + + [self willChangeValueForKey: @"playerHeader"]; + [self didChangeValueForKey: @"playerHeader"]; + } + } + + + // check to see if we recently died + if( !self.wasDead && [self isDead]) { + [self willChangeValueForKey: @"isDead"]; + if([self health] == 0) { + self.deathPosition = [self position]; + } else { + self.deathPosition = nil; + } + self.wasDead = YES; + [self didChangeValueForKey: @"isDead"]; + // NSLog(@"Player has died."); + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerHasDiedNotification object: nil]; + } + + if( self.wasDead && ![self isDead]) { + [self willChangeValueForKey: @"isDead"]; + self.deathPosition = nil; + [self didChangeValueForKey: @"isDead"]; + self.wasDead = NO; + + // NSLog(@"Player has revived."); + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerHasRevivedNotification object: nil]; + } + + // position X + Position *position = [self position]; + if(position) { + self.xPosition = [position xPosition]; + self.yPosition = [position yPosition]; + self.zPosition = [position zPosition]; + } + + // player speed + [self willChangeValueForKey: @"speed"]; + [self didChangeValueForKey: @"speed"]; + + // player speed max + [self willChangeValueForKey: @"speedMax"]; + [self didChangeValueForKey: @"speedMax"]; + + // player direction + [self willChangeValueForKey: @"directionFacing"]; + [self didChangeValueForKey: @"directionFacing"]; + + // get target ID + UInt64 targetID = [self targetID]; + if(_lastTargetID != targetID) { + [self willChangeValueForKey: @"targetID"]; + [self didChangeValueForKey: @"targetID"]; + + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerChangedTargetNotification object: nil]; + _lastTargetID = targetID; + } + + // update casting binds + [self willChangeValueForKey: @"castTime"]; + [self didChangeValueForKey: @"castTime"]; + + [self willChangeValueForKey: @"castTimeRemaining"]; + [self didChangeValueForKey: @"castTimeRemaining"]; + + [self willChangeValueForKey: @"spellCasting"]; + [self didChangeValueForKey: @"spellCasting"]; + + // check combat flags + BOOL combatState = [self isInCombat]; + if( !_lastCombatState && combatState) { + // we were not in combat, now we are + log(LOG_DEV, @"[PlayerData] ------ Player Entering Combat ------"); + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerEnteringCombatNotification object: nil]; + } + if( _lastCombatState && !combatState) { + // we were in combat, now we are not + log(LOG_DEV, @"[PlayerData] ------ Player Leaving Combat ------"); + [[NSNotificationCenter defaultCenter] postNotificationName: PlayerLeavingCombatNotification object: nil]; + } + _lastCombatState = combatState; + + // Lets see which mobs are attacking us! + if ( combatState || [[combatController combatList] count] > 0 ) { + [combatController doCombatSearch]; + } + + [combatController updateCombatTable]; + + [_combatDataList removeAllObjects]; + + // only resort and display the table if the window is visible + if( [[combatTable window] isVisible]) { + + NSArray *allUnits = [combatController validUnitsWithFriendly:YES onlyHostilesInCombat:NO]; + + for(Unit *unit in allUnits) { + if( ![unit isValid] ) + continue; + + float distance = [[self position] distanceToPosition: [unit position]]; + unsigned level = [unit level]; + if(level > 100) level = 0; + int weight = [combatController weight: unit]; + + [_combatDataList addObject: [NSDictionary dictionaryWithObjectsAndKeys: + unit, @"Player", + [NSString stringWithFormat: @"0x%X", [unit lowGUID]], @"ID", + [NSString stringWithFormat: @"%@%@", [unit isPet] ? @"[Pet] " : @"", [Unit stringForClass: [unit unitClass]]], @"Class", + [Unit stringForRace: [unit race]], @"Race", + [NSString stringWithFormat: @"%d%%", [unit percentHealth]], @"Health", + [NSNumber numberWithUnsignedInt: level], @"Level", + [NSNumber numberWithFloat: distance], @"Distance", + [NSNumber numberWithInt:weight], @"Weight", + nil]]; + } + + // Update our combat table! + [_combatDataList sortUsingDescriptors: [combatTable sortDescriptors]]; + [combatTable reloadData]; + + } + + // Update our CD info! + [spellController reloadCooldownInfo]; + + // Update our bot timer! + [botController updateRunningTimer]; + } + [self performSelector: @selector(refreshPlayerData) withObject: nil afterDelay: _updateFrequency]; +} + +-(Position*)corpsePosition{ + MemoryAccess *memory = [controller wowMemoryAccess]; + + float pos[3] = {-1.0f, -1.0f, -1.0f }; + if([memory loadDataForObject: self atAddress: [offsetController offset:@"CORPSE_POSITION_STATIC"] Buffer: (Byte *)&pos BufLength: sizeof(float)*3]) + return [Position positionWithX: pos[0] Y: pos[1] Z: pos[2]]; + return nil; +} + +- (UInt32)zone{ + UInt32 zone = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"PLAYER_CURRENT_ZONE"] Buffer: (Byte *)&zone BufLength: sizeof(zone)]; + return zone; +} + +- (int)battlegroundStatus{ + UInt32 status = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"BATTLEGROUND_STATUS"] + BG_STATUS Buffer: (Byte *)&status BufLength: sizeof(status)]; + + if ( status < BGNone || status > BGActive ) + return -1; + + return status; +} + +- (BOOL)isInBG:(int)zone{ + switch(zone){ + case 4384: // Strand of the Ancients + case 3358: // Arathi Basin + case 3277: // Warsong Gulch + case 2597: // Alterac Valley + case 3820: // Eye of the Storm + case 4710: // Isle of Conquest + return YES; + default: + return NO; + } + return NO; +} + +// the graceful maiden - right boat +// the frostbreaker - left boat +#define StrandPrivateerZierhut 32658 // right boat +#define StrandPrivateerStonemantle 32657 // left boat +// Horde +#define StrandDreadCaptainNadeux 32660 // right boat +#define StrandDreadCaptainWinge 32659 // left boat + +- (BOOL)isOnRightBoatInStrand{ + + // not on a boat + if ( ![self isOnBoatInStrand] ) + return NO; + + if ( [[mobController mobsWithinDistance:50.0f // actual value is around 35.0f + MobIDs:[NSArray arrayWithObject:[NSNumber numberWithInt:StrandPrivateerZierhut]] + position: [[self player] position] + aliveOnly:NO] count] ){ + return YES; + } + + if ( [[mobController mobsWithinDistance:50.0f // actual value is around 35.0f + MobIDs:[NSArray arrayWithObject:[NSNumber numberWithInt: StrandDreadCaptainNadeux]] + position: [[self player] position] + aliveOnly:NO] count] ){ + return YES; + } + + return NO; + +} + +- (BOOL)isOnLeftBoatInStrand{ + + // not on a boat + if ( ![self isOnBoatInStrand] ) + return NO; + + if ( [[mobController mobsWithinDistance:50.0f + MobIDs:[NSArray arrayWithObject:[NSNumber numberWithInt:StrandPrivateerStonemantle]] + position: [[self player] position] + aliveOnly:NO] count]){ + return YES; + } + + if ( [[mobController mobsWithinDistance:50.0f + MobIDs:[NSArray arrayWithObject:[NSNumber numberWithInt:StrandDreadCaptainWinge]] + position: [[self player] position] + aliveOnly:NO] count]){ + return YES; + } + + return NO; +} + +- (BOOL)isOnBoatInStrand{ + Position *playerPos = [self position]; + + // Verify x + if ( playerPos.xPosition > -20.0f && playerPos.xPosition < 20.0f ){ // Really -16 < x < 16 when on the ramp: 6 + if ( playerPos.yPosition > -15.0f && playerPos.yPosition < 15.0f ){ // Really -9 < y < 9 14 + if ( playerPos.zPosition > -15.0f && playerPos.zPosition < 15.0f ){ // Really -10 < z < 10 5 + return YES; + } + } + } + + return NO; +} + +@end diff --git a/PlayerLevelCondition.xib b/PlayerLevelCondition.xib new file mode 100644 index 0000000..11cec61 --- /dev/null +++ b/PlayerLevelCondition.xib @@ -0,0 +1,1062 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + PlayerLevelConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{181, 6}, {86, 24}} + + YES + + 67239424 + 0 + + LucidaGrande + 13 + 1044 + + + + YES + + 26 + > + 1 + YES + 0 + + + 26 + = + 2 + 0 + + + 26 + < + 3 + 0 + + + 1 + + + + + 268 + {{32, 10}, {146, 17}} + + YES + + 68288064 + 272630784 + Players current level is + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{273, 7}, {75, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + YES + + + YES + + + + + + + 3 + YES + YES + YES + + . + , + YES + YES + YES + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {368, 36} + + NSView + + + + + YES + + + quantityText + + + + 60 + + + + view + + + + 62 + + + + validateState: + + + + 66 + + + + disableButton + + + + 88 + + + + disableCondition: + + + + 90 + + + + comparatorSegment + + + + 102 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + 16 + + + YES + + + + + + 17 + + + YES + + + + + + 68 + + + + + 83 + + + YES + + + + + + 86 + + + + + 92 + + + YES + + + + + + 93 + + + + + 100 + + + YES + + + + + + 101 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -2.showNotes + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 100.CustomClassName + 100.IBPluginDependency + 101.IBPluginDependency + 16.IBPluginDependency + 17.IBPluginDependency + 68.IBNumberFormatterBehaviorMetadataKey + 68.IBNumberFormatterLocalizesFormatMetadataKey + 68.IBPluginDependency + 83.IBAttributePlaceholdersKey + 83.IBPluginDependency + 86.IBPluginDependency + 92.IBPluginDependency + 93.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + com.apple.InterfaceBuilder.CocoaPlugin + {{655, 557}, {368, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{189, 314}, {582, 36}} + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 102 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + ConditionController + NSObject + + IBUserSource + + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + PlayerLevelConditionController + ConditionController + + YES + + YES + comparatorSegment + quantityText + + + YES + BetterSegmentedControl + NSTextField + + + + IBProjectSource + PlayerLevelConditionController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/PlayerLevelConditionController.h b/PlayerLevelConditionController.h new file mode 100644 index 0000000..82e06e7 --- /dev/null +++ b/PlayerLevelConditionController.h @@ -0,0 +1,19 @@ +// +// PlayerLevelConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface PlayerLevelConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *quantityText; +} + +@end diff --git a/PlayerLevelConditionController.m b/PlayerLevelConditionController.m new file mode 100644 index 0000000..03f6c56 --- /dev/null +++ b/PlayerLevelConditionController.m @@ -0,0 +1,56 @@ +// +// PlayerLevelConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "PlayerLevelConditionController.h" + + +@implementation PlayerLevelConditionController +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"PlayerLevelCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading PlayerLevelCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyPlayerLevel + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeValue + value: [NSNumber numberWithInt:[quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyPlayerLevel) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + + +@end diff --git a/PlayerZoneCondition.xib b/PlayerZoneCondition.xib new file mode 100644 index 0000000..defdc52 --- /dev/null +++ b/PlayerZoneCondition.xib @@ -0,0 +1,1053 @@ + + + + 1050 + 10C540 + 740 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 740 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + PlayerZoneConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{134, 5}, {59, 24}} + + YES + + -2080244224 + 0 + + LucidaGrande + 13 + 1044 + + + + YES + + 26 + = + 4 + YES + 0 + + + 26 + ≠ + 5 + 0 + + + 1 + + + + + 268 + {{197, 5}, {97, 24}} + + YES + + 67239424 + 0 + + + + YES + + 45 + Num + Zone ID Number + 1 + YES + 0 + + + 45 + Name + Zone Name + 3 + YES + 0 + + + 1 + + + + + 268 + {{300, 7}, {124, 22}} + + YES + + -1804468671 + 138413056 + + 0 + 1 + NO + YES + 1 + AQAAAAAAAAAAAAAAAAAAAA + + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{32, 10}, {99, 17}} + + YES + + 67239488 + 272630784 + Player's zone is + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + + + + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 12 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + {444, 36} + + NSView + + + + + YES + + + validateState: + + + + 62 + + + + view + + + + 64 + + + + disableButton + + + + 87 + + + + disableCondition: + + + + 90 + + + + comparatorSegment + + + + 95 + + + + typeSegment + + + + 96 + + + + quantityText + + + + 97 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 2 + + + YES + + + + + + + + + + 47 + + + YES + + + + + + 48 + + + YES + + + + + 52 + + + YES + + + + + + 53 + + + + + 79 + + + YES + + + + + + 80 + + + + + 91 + + + YES + + + + + + 92 + + + + + 93 + + + YES + + + + + + 94 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 2.IBEditorWindowLastContentRect + 2.IBPluginDependency + 2.WindowOrigin + 2.editorWindowContentRectSynchronizationRect + 47.IBPluginDependency + 48.IBPluginDependency + 52.IBPluginDependency + 53.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 80.IBPluginDependency + 91.CustomClassName + 91.IBPluginDependency + 92.IBPluginDependency + 92.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 93.CustomClassName + 93.IBPluginDependency + 93.IBSegmentedControlTracker.RoundRobinState + 93.IBSegmentedControlTracker.WasGrowing + 94.IBPluginDependency + 94.IBSegmentedControlInspectorSelectedSegmentMetadataKey + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{620, 479}, {444, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{478, 384}, {635, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + + + + + YES + + + YES + + + + + YES + + + YES + + + + 97 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + PlayerZoneConditionController + ConditionController + + YES + + YES + comparatorSegment + quantityText + typeSegment + + + YES + BetterSegmentedControl + NSTextField + BetterSegmentedControl + + + + IBProjectSource + PlayerZoneConditionController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSSegmentedCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedCell.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/PlayerZoneConditionController.h b/PlayerZoneConditionController.h new file mode 100644 index 0000000..eca0dac --- /dev/null +++ b/PlayerZoneConditionController.h @@ -0,0 +1,20 @@ +// +// ZoneConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface PlayerZoneConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet BetterSegmentedControl *typeSegment; + IBOutlet NSTextField *quantityText; +} + +@end diff --git a/PlayerZoneConditionController.m b/PlayerZoneConditionController.m new file mode 100644 index 0000000..7f6b79d --- /dev/null +++ b/PlayerZoneConditionController.m @@ -0,0 +1,57 @@ +// +// ZoneConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "PlayerZoneConditionController.h" + + +@implementation PlayerZoneConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"PlayerZoneCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading PlayerZoneCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyPlayerZone + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: [typeSegment selectedTag] + value: [NSNumber numberWithInt:[quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyPlayerZone) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [typeSegment selectSegmentWithTag: [condition type]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + +@end diff --git a/PlayersController.h b/PlayersController.h new file mode 100644 index 0000000..3e071fd --- /dev/null +++ b/PlayersController.h @@ -0,0 +1,55 @@ +// +// PlayersController.h +// Pocket Gnome +// +// Created by Jon Drummond on 5/25/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "ObjectController.h" + +@class Player; +@class Unit; + +@class PlayerDataController; +@class MemoryViewController; +@class MovementController; +@class ObjectsController; + +@interface PlayersController : ObjectController { + IBOutlet MemoryViewController *memoryViewController; + IBOutlet MovementController *movementController; + IBOutlet ObjectsController *objectsController; + + IBOutlet NSButton *playerColorByLevel; + + NSMutableDictionary *_playerNameList; + + int cachedPlayerLevel; +} + +@property (readonly) unsigned playerCount; + ++ (PlayersController *)sharedPlayers; +- (NSArray*)allPlayers; +- (Player*)playerTarget; +- (Player*)playerWithGUID: (GUID)guid; + +- (NSArray*)playersWithinDistance: (float)distance + levelRange: (NSRange)range + includeFriendly: (BOOL)friendly + includeNeutral: (BOOL)neutral + includeHostile: (BOOL)hostile; +- (BOOL)playerWithinRangeOfUnit: (float)distance Unit:(Unit*)unit includeFriendly:(BOOL)friendly includeHostile:(BOOL)hostile; +- (NSArray*)friendlyPlayers; + +- (void)updateTracking: (id)sender; + +- (NSString*)playerNameWithGUID:(UInt64)guid; + +// player name +- (BOOL)addPlayerName: (NSString*)name withGUID:(UInt64)guid; +- (int)totalNames; + +@end diff --git a/PlayersController.m b/PlayersController.m new file mode 100644 index 0000000..414a2c7 --- /dev/null +++ b/PlayersController.m @@ -0,0 +1,415 @@ +// +// PlayersController.m +// Pocket Gnome +// +// Created by Jon Drummond on 5/25/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "PlayersController.h" +#import "Controller.h" +#import "PlayerDataController.h" +#import "MemoryViewController.h" +#import "MovementController.h" +#import "ObjectsController.h" + +#import "ImageAndTextCell.h" + +#import "Player.h" +#import "Unit.h" +#import "Offsets.h" + +@interface PlayersController (Internal) +- (BOOL)trackingPlayer: (Player*)trackingPlayer; +- (NSString*)unitClassToString: (UnitClass)unitClass; +@end + +@implementation PlayersController + +static PlayersController *sharedPlayers = nil; + ++ (PlayersController *)sharedPlayers { + if (sharedPlayers == nil) + sharedPlayers = [[[self class] alloc] init]; + return sharedPlayers; +} + +- (id) init +{ + self = [super init]; + if(sharedPlayers) { + [self release]; + self = sharedPlayers; + } else { + sharedPlayers = self; + [[NSUserDefaults standardUserDefaults] registerDefaults: [NSDictionary dictionaryWithObject: @"0.5" forKey: @"PlayersControllerUpdateFrequency"]]; + _playerNameList = [[NSMutableDictionary dictionary] retain]; + } + + return self; +} + +#pragma mark - +#pragma mark Data Set Management + +- (NSArray*)allPlayers { + return [[_objectList retain] autorelease]; +} + +- (Player*)playerTarget { + GUID playerTarget = [playerData targetID]; + + for(Player *player in _objectList) { + if( playerTarget == [player GUID]) { + return [[player retain] autorelease]; + } + } + return nil; +} + +- (Player*)playerWithGUID: (GUID)guid { + for(Player *player in _objectList) { + if( guid == [player GUID]) { + return [[player retain] autorelease]; + } + } + return nil; +} + +- (void)addAddresses: (NSArray*)addresses { + [super addAddresses:addresses]; + + [self updateTracking:nil]; +} + +#pragma mark Player Name Storage + +- (NSString*)playerNameWithGUID:(UInt64)guid{ + NSNumber *fullGUID = [NSNumber numberWithUnsignedLongLong:guid]; + NSString *name = [_playerNameList objectForKey: fullGUID]; + + if ( name ){ + return [[name copy] autorelease]; + } + + return @""; +} + +// returns yes on adding +- (BOOL)addPlayerName: (NSString*)name withGUID:(UInt64)guid{ + + if ( name == nil ){ + //log(LOG_GENERAL, @"[Players] Name not added for 0x%qX, not found", guid); + return NO; + } + + NSNumber *fullGUID = [NSNumber numberWithUnsignedLongLong:guid]; + + if ( ![_playerNameList objectForKey: fullGUID] ){ + + [_playerNameList setObject: name forKey: fullGUID]; + + return YES; + } + + return NO; +} + +- (int)totalNames{ + return [_playerNameList count]; +} + +- (unsigned int)objectCount { + return [_objectList count]; +} + +- (unsigned)playerCount { + return [_objectList count]; +} + + +- (BOOL)trackingPlayer: (Player*)trackingPlayer { + for(Player *player in _objectList) { + if( [player isEqualToObject: trackingPlayer] ) { + return YES; + } + } + return NO; +} + +#pragma mark - + +- (NSArray*)friendlyPlayers{ + + NSMutableArray *friendlyUnits = [NSMutableArray array]; + + for(Unit *unit in _objectList) { + int faction = [unit factionTemplate]; + BOOL isFriendly = [playerData isFriendlyWithFaction: faction]; + + if ( isFriendly){ + [friendlyUnits addObject: unit]; + } + } + + return friendlyUnits; +} + +- (NSArray*)playersWithinDistance: (float)unitDistance + levelRange: (NSRange)range + includeFriendly: (BOOL)friendly + includeNeutral: (BOOL)neutral + includeHostile: (BOOL)hostile { + + + NSMutableArray *unitsWithinRange = [NSMutableArray array]; + + BOOL ignoreLevelOne = [playerData level] > 10 ? YES : NO; + + for(Unit *unit in _objectList) { + + float distance = [[(PlayerDataController*)playerData position] distanceToPosition: [unit position]]; + + if(distance != INFINITY && distance <= unitDistance) { + int lowLevel = range.location; + if(lowLevel < 1) lowLevel = 1; + if(lowLevel == 1 && ignoreLevelOne) lowLevel = 2; + int highLevel = lowLevel + range.length; + int unitLevel = [unit level]; + + int faction = [unit factionTemplate]; + BOOL isFriendly = [playerData isFriendlyWithFaction: faction]; + BOOL isHostile = [playerData isHostileWithFaction: faction]; + BOOL isNeutral = (!isHostile && ![playerData isFriendlyWithFaction: faction]); + + //log(LOG_GENERAL, @"%d %d (%d || %d || %d) %d %d %d %d %@", [unit isValid], ![unit isDead], (friendly && isFriendly), (neutral && isNeutral), (hostile && isHostile), ((unitLevel >= lowLevel) && (unitLevel <= highLevel)), [unit isSelectable], + // [unit isAttackable], [unit isPVP], unit); + + // only include: + if( [unit isValid] // 1) valid units + && ![unit isDead] // 2) units that aren't dead + && ((friendly && isFriendly) // 3) friendly as specified + || (neutral && isNeutral) // neutral as specified + || (hostile && isHostile)) // hostile as specified + && (unitLevel >= lowLevel) && unitLevel <= highLevel // 4) units within the level range + && [unit isSelectable] // 5) units that are selectable + && [unit isAttackable]/* // 6) units that are attackable + && [unit isPVP]*/ ){ // 7) units that are PVP + //log(LOG_GENERAL, @"[PlayersController] Adding player %@", unit); + + [unitsWithinRange addObject: unit]; + + } + } + } + + //log(LOG_GENERAL, @"[PlayersController] Found %d players", [unitsWithinRange count]); + + return unitsWithinRange; +} + +- (BOOL)playerWithinRangeOfUnit: (float)distance Unit:(Unit*)unit includeFriendly:(BOOL)friendly includeHostile:(BOOL)hostile { + + log(LOG_DEV, @"checking distance %0.2f %@ %d %d", distance, unit, friendly, hostile); + Position *position = [unit position]; + + // loop through all players + for(Unit *player in [self allPlayers]) { + + BOOL isHostile = [playerData isHostileWithFaction: [player factionTemplate]]; + // range check + float range = [position distanceToPosition: [player position]]; + + if ( + range <= distance && // 1 - in range + (!friendly || (friendly && !isHostile)) && // 2 - friendly + (!hostile || (hostile && isHostile)) // 3 - hostile + ){ + log(LOG_GENERAL, @"[Loot] Player %@ found %0.2f yards away! I scared! Friendly?(%d) Hostile?(%d)", player, range, friendly, hostile); + return YES; + } + } + + return NO; +} + +- (void)updateTracking: (id)sender{ + + if ( ![playerData playerIsValid:self] ) return; + + BOOL trackHostile = [[NSUserDefaults standardUserDefaults] boolForKey: @"PlayersTrackHostile"]; + BOOL trackFriendly = [[NSUserDefaults standardUserDefaults] boolForKey: @"PlayersTrackFriendly"]; + + // not sent from UI, so don't bother! + if ( sender == nil && !trackHostile && !trackFriendly ) + return; + + for ( Unit *unit in _objectList ){ + + BOOL shouldTrack = NO; + + if ( trackHostile && [playerData isHostileWithFaction: [unit factionTemplate]]) { + shouldTrack = YES; + } + if ( trackFriendly && [playerData isFriendlyWithFaction: [unit factionTemplate]]) { + shouldTrack = YES; + } + + if ( shouldTrack ) [unit trackUnit]; + else [unit untrackUnit]; + } +} + +#pragma mark - + +- (id)objectWithAddress:(NSNumber*) address inMemory:(MemoryAccess*)memory{ + return [Player playerWithAddress:address inMemory:memory]; +} + +- (NSString*)updateFrequencyKey{ + return @"PlayersControllerUpdateFrequency"; +} + +- (void)refreshData { + + // remove old objects + [_objectDataList removeAllObjects]; + + if ( ![playerData playerIsValid:self] ) return; + + // is tab viewable? + if ( ![objectsController isTabVisible:Tab_Players] ) + return; + + cachedPlayerLevel = [playerData level]; + + for ( Player *player in _objectList ) { + + if( ![player isValid] ) + continue; + + float distance = [[playerData position] distanceToPosition: [player position]]; + + BOOL isHostile = [playerData isHostileWithFaction: [player factionTemplate]]; + BOOL isNeutral = (!isHostile && ![playerData isFriendlyWithFaction: [player factionTemplate]]); + + unsigned level = [player level]; + if ( level > 100 ) level = 0; + + [_objectDataList addObject: [NSDictionary dictionaryWithObjectsAndKeys: + player, @"Player", + [NSString stringWithFormat: @"0x%X", [player lowGUID]], @"ID", + [self playerNameWithGUID:[player GUID]], @"Name", + ([player isGM] ? @"GM" : [Unit stringForClass: [player unitClass]]), @"Class", + [Unit stringForRace: [player race]], @"Race", + [Unit stringForGender: [player gender]], @"Gender", + [NSString stringWithFormat: @"%d%%", [player percentHealth]], @"Health", + [NSNumber numberWithUnsignedInt: level], @"Level", + [NSNumber numberWithFloat: distance], @"Distance", + (isNeutral ? @"4" : (isHostile ? @"2" : @"5")), @"Status", + [player iconForRace: [player race] gender: [player gender]], @"RaceIcon", + [NSImage imageNamed: [Unit stringForGender: [player gender]]], @"GenderIcon", + [player iconForClass: [player unitClass]], @"ClassIcon", + nil]]; + } + + // sort + [_objectDataList sortUsingDescriptors: [[objectsController playersTable] sortDescriptors]]; + + // reload table + [objectsController loadTabData]; +} + +- (WoWObject*)objectForRowIndex:(int)rowIndex{ + if ( rowIndex >= [_objectDataList count] ) return nil; + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Player"]; +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if ( rowIndex == -1 || rowIndex >= [_objectDataList count] ) return nil; + + if ( [[aTableColumn identifier] isEqualToString: @"Distance"] ) + return [NSString stringWithFormat: @"%.2f", [[[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Distance"] floatValue]]; + + if ( [[aTableColumn identifier] isEqualToString: @"Status"] ) { + NSString *status = [[_objectDataList objectAtIndex: rowIndex] objectForKey: @"Status"]; + if([status isEqualToString: @"1"]) status = @"Combat"; + if([status isEqualToString: @"2"]) status = @"Hostile"; + if([status isEqualToString: @"3"]) status = @"Dead"; + if([status isEqualToString: @"4"]) status = @"Neutral"; + if([status isEqualToString: @"5"]) status = @"Friendly"; + return [NSImage imageNamed: status]; + } + + return [[_objectDataList objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; +} + +- (void)tableView: (NSTableView *)aTableView willDisplayCell: (id)aCell forTableColumn: (NSTableColumn *)aTableColumn row: (int)aRowIndex +{ + if ( aRowIndex == -1 || aRowIndex >= [_objectDataList count] ) return; + + if ( [[aTableColumn identifier] isEqualToString: @"Race"] ){ + [(ImageAndTextCell*)aCell setImage: [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"RaceIcon"]]; + } + if ( [[aTableColumn identifier] isEqualToString: @"Class"] ){ + [(ImageAndTextCell*)aCell setImage: [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"ClassIcon"]]; + } + if ( [[aTableColumn identifier] isEqualToString: @"Gender"] ){ + [(ImageAndTextCell*)aCell setImage: [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"GenderIcon"]]; + } + + // do text color + if ( ![aCell respondsToSelector: @selector(setTextColor:)] ) + return; + + if ( cachedPlayerLevel == 0 || ![[NSUserDefaults standardUserDefaults] boolForKey: @"PlayerColorByLevel"] ){ + [aCell setTextColor: [NSColor blackColor]]; + return; + } + + Player *player = [[_objectDataList objectAtIndex: aRowIndex] objectForKey: @"Player"]; + int level = [player level]; + + if ( level >= cachedPlayerLevel+5 ){ + [aCell setTextColor: [NSColor redColor]]; + return; + } + + if ( level > cachedPlayerLevel+3 ){ + [aCell setTextColor: [NSColor orangeColor]]; + return; + } + + if ( level > cachedPlayerLevel-2 ){ + [aCell setTextColor: [NSColor colorWithCalibratedRed: 1.0 green: 200.0/255.0 blue: 30.0/255.0 alpha: 1.0]]; + return; + } + + if ( level > cachedPlayerLevel-8 ){ + [aCell setTextColor: [NSColor colorWithCalibratedRed: 30.0/255.0 green: 115.0/255.0 blue: 30.0/255.0 alpha: 1.0] ]; // [NSColor greenColor] + return; + } + + [aCell setTextColor: [NSColor darkGrayColor]]; + return; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn { + + if ( [[aTableColumn identifier] isEqualToString: @"RaceIcon"] ) + return NO; + if ( [[aTableColumn identifier] isEqualToString: @"ClassIcon"] ) + return NO; + + return YES; +} + +- (void)tableDoubleClick: (id)sender{ + [memoryViewController showObjectMemory: [[_objectDataList objectAtIndex: [sender clickedRow]] objectForKey: @"Player"]]; + [controller showMemoryView]; +} + +@end diff --git a/Pocket Gnome.xcodeproj/.svn/all-wcprops b/Pocket Gnome.xcodeproj/.svn/all-wcprops new file mode 100644 index 0000000..864da0a --- /dev/null +++ b/Pocket Gnome.xcodeproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/520/trunk/Pocket%20Gnome.xcodeproj +END +project.pbxproj +K 25 +svn:wc:ra_dav:version-url +V 64 +/svn/!svn/ver/567/trunk/Pocket%20Gnome.xcodeproj/project.pbxproj +END diff --git a/Pocket Gnome.xcodeproj/.svn/dir-prop-base b/Pocket Gnome.xcodeproj/.svn/dir-prop-base new file mode 100644 index 0000000..650df6b --- /dev/null +++ b/Pocket Gnome.xcodeproj/.svn/dir-prop-base @@ -0,0 +1,7 @@ +K 10 +svn:ignore +V 20 +*.pbxuser +*.mode1v3 + +END diff --git a/Pocket Gnome.xcodeproj/.svn/entries b/Pocket Gnome.xcodeproj/.svn/entries new file mode 100644 index 0000000..a15bf73 --- /dev/null +++ b/Pocket Gnome.xcodeproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/Pocket%20Gnome.xcodeproj +https://pocketgnome.googlecode.com/svn + + + +2010-07-06T23:31:05.116760Z +520 +wjlafrance +has-props + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +project.pbxproj +file +567 + + + +2010-10-18T15:58:27.000000Z +887d688789e1768cefbcf9d5de9b7bee +2010-10-18T16:11:20.092084Z +567 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +234294 + diff --git a/Pocket Gnome.xcodeproj/.svn/text-base/project.pbxproj.svn-base b/Pocket Gnome.xcodeproj/.svn/text-base/project.pbxproj.svn-base new file mode 100644 index 0000000..507e316 --- /dev/null +++ b/Pocket Gnome.xcodeproj/.svn/text-base/project.pbxproj.svn-base @@ -0,0 +1,2527 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 44; + objects = { + +/* Begin PBXBuildFile section */ + 030604B71088140000C57D77 /* ShortcutRecorder.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 030604B61088140000C57D77 /* ShortcutRecorder.framework */; }; + 030604F31088162100C57D77 /* OffsetController.m in Sources */ = {isa = PBXBuildFile; fileRef = 030604F21088162100C57D77 /* OffsetController.m */; }; + 0306057C10881CAE00C57D77 /* MacroController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0306057B10881CAE00C57D77 /* MacroController.m */; }; + 030C2E4D0FDC09B300E80F7E /* LootController.m in Sources */ = {isa = PBXBuildFile; fileRef = 030C2E4C0FDC09B300E80F7E /* LootController.m */; }; + 0313B4D810BAEA0B009E74E4 /* EventController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0313B4D710BAEA0B009E74E4 /* EventController.m */; }; + 03168C7110FE6CCD00EF241B /* WaypointActionEditor.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */; }; + 03168C8C10FE6D2000EF241B /* WaypointActionEditor.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */; }; + 03168DC810FE8BA900EF241B /* DurabilityConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */; }; + 03168DDD10FE90B600EF241B /* DurabilityCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD610FE90B600EF241B /* DurabilityCondition.xib */; }; + 03168DDE10FE90B600EF241B /* InventoryFreeCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */; }; + 03168DDF10FE90B600EF241B /* PlayerLevelCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */; }; + 03168DE010FE90B600EF241B /* PlayerZoneCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */; }; + 03168DE110FE90B600EF241B /* QuestCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDA10FE90B600EF241B /* QuestCondition.xib */; }; + 03168DE210FE90B600EF241B /* RouteRunCountCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */; }; + 03168DE310FE90B600EF241B /* RouteRunTimeCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */; }; + 03168E1B10FE972300EF241B /* PlayerLevelConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */; }; + 03168E1E10FE972B00EF241B /* PlayerZoneConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */; }; + 03168E2110FE973900EF241B /* QuestConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2010FE973900EF241B /* QuestConditionController.m */; }; + 03168E2410FE974800EF241B /* RouteRunCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */; }; + 03168E2710FE975300EF241B /* RouteRunTimeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */; }; + 03168E2A10FE975E00EF241B /* InventoryFreeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */; }; + 03168EDE10FF70C600EF241B /* RepairAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168EDC10FF70C600EF241B /* RepairAction.xib */; }; + 03168EE410FF713000EF241B /* ActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168EE310FF713000EF241B /* ActionController.m */; }; + 03168EFE10FF72DF00EF241B /* RepairActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168EFD10FF72DF00EF241B /* RepairActionController.m */; }; + 0316901010FF84AB00EF241B /* SwitchRouteAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */; }; + 0316904710FF89FC00EF241B /* SwitchRouteActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */; }; + 031694CD110103C000EF241B /* SpellActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694CC110103C000EF241B /* SpellActionController.m */; }; + 031694D0110103CC00EF241B /* ItemActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694CF110103CC00EF241B /* ItemActionController.m */; }; + 031694D3110103DA00EF241B /* MacroActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D2110103DA00EF241B /* MacroActionController.m */; }; + 031694D6110103E000EF241B /* DelayActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D5110103E000EF241B /* DelayActionController.m */; }; + 031694D9110103E900EF241B /* JumpActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D8110103E900EF241B /* JumpActionController.m */; }; + 031695191101314B00EF241B /* ItemAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695161101314B00EF241B /* ItemAction.xib */; }; + 0316951A1101314B00EF241B /* MacroAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695171101314B00EF241B /* MacroAction.xib */; }; + 0316951B1101314B00EF241B /* SpellAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695181101314B00EF241B /* SpellAction.xib */; }; + 0322D6DA11065D0800EF3EEF /* CombatProfileActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */; }; + 0322D6E211065D8900EF3EEF /* CombatProfileAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */; }; + 0322D72F110744D500EF3EEF /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0322D72E110744D500EF3EEF /* CoreData.framework */; }; + 0331619611AAF1B900467490 /* appcast.xml in Resources */ = {isa = PBXBuildFile; fileRef = 0331619511AAF1B900467490 /* appcast.xml */; }; + 033C3F3E126CA54C0050DBDC /* buildnumber.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */; }; + 034126C11135706E00BE6819 /* PvPController.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126C01135706E00BE6819 /* PvPController.m */; }; + 034126C4113570E100BE6819 /* PvP.xib in Resources */ = {isa = PBXBuildFile; fileRef = 034126C3113570E100BE6819 /* PvP.xib */; }; + 034126E61135774100BE6819 /* Battleground.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126E51135774100BE6819 /* Battleground.m */; }; + 034126E91135774A00BE6819 /* PvPBehavior.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126E81135774A00BE6819 /* PvPBehavior.m */; }; + 0341DD60111B0F6B00074CED /* Objects.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0341DD5F111B0F6B00074CED /* Objects.xib */; }; + 0341DD66111B0FBE00074CED /* ObjectsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0341DD65111B0FBE00074CED /* ObjectsController.m */; }; + 0341DDDA111B21D700074CED /* ObjectController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0341DDD9111B21D700074CED /* ObjectController.m */; }; + 034429B80FAA3E1800E9DE03 /* Quest.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429B70FAA3E1800E9DE03 /* Quest.m */; }; + 034429BD0FAA3E3800E9DE03 /* QuestItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429BC0FAA3E3800E9DE03 /* QuestItem.m */; }; + 034429C00FAA3E5600E9DE03 /* QuestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429BF0FAA3E5600E9DE03 /* QuestController.m */; }; + 0344CB231267D0E700B4A9C7 /* LuaController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0344CB221267D0E700B4A9C7 /* LuaController.m */; }; + 0350738410CDBA460004636E /* SpellCooldown.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0350738310CDBA460004636E /* SpellCooldown.xib */; }; + 0350738910CDBA640004636E /* SpellCooldownConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0350738810CDBA640004636E /* SpellCooldownConditionController.m */; }; + 0352F46611376DA5005B28D6 /* PVP.png in Resources */ = {isa = PBXBuildFile; fileRef = 0352F46511376DA5005B28D6 /* PVP.png */; }; + 03567AAD10DDAB52001ACE43 /* CombatController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03567AAC10DDAB52001ACE43 /* CombatController.m */; }; + 0362CDDE11A99CED00EA65B2 /* CombatProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */; }; + 03685DC6110266FC001CE552 /* DelayAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685DC5110266FC001CE552 /* DelayAction.xib */; }; + 03685DDA11026831001CE552 /* JumpAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685DD911026831001CE552 /* JumpAction.xib */; }; + 03685FA81103D73B001CE552 /* QuestGrabAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685FA61103D73B001CE552 /* QuestGrabAction.xib */; }; + 03685FA91103D73B001CE552 /* QuestTurnInAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */; }; + 03685FAD1103D768001CE552 /* QuestGrabActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03685FAC1103D768001CE552 /* QuestGrabActionController.m */; }; + 03685FB01103D77A001CE552 /* QuestTurnInActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */; }; + 038709BA10D576E100DF5B90 /* BlacklistController.m in Sources */ = {isa = PBXBuildFile; fileRef = 038709B910D576E100DF5B90 /* BlacklistController.m */; }; + 038769151124532000B2C571 /* RouteCollection.m in Sources */ = {isa = PBXBuildFile; fileRef = 038769141124532000B2C571 /* RouteCollection.m */; }; + 038A4B4610E9656D00577D8F /* LastSpellCast.xib in Resources */ = {isa = PBXBuildFile; fileRef = 038A4B4510E9656D00577D8F /* LastSpellCast.xib */; }; + 038A4B4910E9657900577D8F /* LastSpellCastConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */; }; + 0393F413110A205800296CF8 /* libcrypto.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 0393F412110A205800296CF8 /* libcrypto.dylib */; }; + 0393F52D110A558200296CF8 /* ReverseRouteAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */; }; + 0393F52E110A558300296CF8 /* VendorAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52C110A558200296CF8 /* VendorAction.xib */; }; + 0393F530110A558F00296CF8 /* MailAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52F110A558F00296CF8 /* MailAction.xib */; }; + 0393F533110A55DB00296CF8 /* MailActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F532110A55DB00296CF8 /* MailActionController.m */; }; + 0393F536110A55E300296CF8 /* VendorActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F535110A55E300296CF8 /* VendorActionController.m */; }; + 0393F539110A55EF00296CF8 /* ReverseRouteActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */; }; + 03981D8E112AEC870081835F /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 03981D8D112AEC860081835F /* Sparkle.framework */; }; + 03981DA6112AECA80081835F /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 03981D8D112AEC860081835F /* Sparkle.framework */; }; + 03981DE9112B22E90081835F /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 03981DE8112B22E90081835F /* dsa_pub.pem */; }; + 03981E78112B898E0081835F /* MovementController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03981E77112B898E0081835F /* MovementController.m */; }; + 03981F38112C819E0081835F /* LogController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03981F37112C819E0081835F /* LogController.m */; }; + 03A01B0D109A2A9600E6098E /* StatisticsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03A01B0C109A2A9600E6098E /* StatisticsController.m */; }; + 03A01B3A109A2CFF00E6098E /* Statistics.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03A01B39109A2CFF00E6098E /* Statistics.xib */; }; + 03A320D5114E88A9000D23EE /* JumpToWaypointActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */; }; + 03A3211B114E9AC2000D23EE /* JumpToWaypointAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */; }; + 03A4047C0FE148C60087BC0D /* mbobbleicon.png in Resources */ = {isa = PBXBuildFile; fileRef = 03A4047B0FE148C60087BC0D /* mbobbleicon.png */; }; + 03B6D25E10F626C500EC6EFF /* RuneCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */; }; + 03B6D26210F626EA00EC6EFF /* RuneConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */; }; + 03BB221A112258A00048DE7B /* GateConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BB2219112258A00048DE7B /* GateConditionController.m */; }; + 03BB222A11225E410048DE7B /* GateCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03BB222911225E410048DE7B /* GateCondition.xib */; }; + 03BB227B1122F1160048DE7B /* StrandStatus.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03BB227A1122F1160048DE7B /* StrandStatus.xib */; }; + 03BB227E1122F1240048DE7B /* StrandStatusConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */; }; + 03BD330E11120A7A00941971 /* BindingsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BD330D11120A7A00941971 /* BindingsController.m */; }; + 03BE961A11828343004DBFBF /* FileController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BE961911828343004DBFBF /* FileController.m */; }; + 03C280CD1089178600A76249 /* ShortcutRecorder.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 030604B61088140000C57D77 /* ShortcutRecorder.framework */; }; + 03C42CCA1096839E0085E888 /* Macros.plist in Resources */ = {isa = PBXBuildFile; fileRef = 03C42CC91096839E0085E888 /* Macros.plist */; }; + 03CD6AC41183D5AC00CCABFE /* Profiles.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03CD6AC31183D5AC00CCABFE /* Profiles.xib */; }; + 03CEF7880FCCD93100B47336 /* Corpse.m in Sources */ = {isa = PBXBuildFile; fileRef = 03CEF7850FCCD93100B47336 /* Corpse.m */; }; + 03CEF7890FCCD93100B47336 /* CorpseController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03CEF7870FCCD93100B47336 /* CorpseController.m */; }; + 03D65A591090EC0D00537E9C /* OffsetSignatures.plist in Resources */ = {isa = PBXBuildFile; fileRef = 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */; }; + 03E1D7B8110F62CD003180E4 /* FileObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 03E1D7B7110F62CD003180E4 /* FileObject.m */; }; + 03FE91E2125FB5DB00A40445 /* lapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91AD125FB5DB00A40445 /* lapi.c */; }; + 03FE91E3125FB5DB00A40445 /* lauxlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91AF125FB5DB00A40445 /* lauxlib.c */; }; + 03FE91E4125FB5DB00A40445 /* lbaselib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B1125FB5DB00A40445 /* lbaselib.c */; }; + 03FE91E5125FB5DB00A40445 /* lcode.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B2125FB5DB00A40445 /* lcode.c */; }; + 03FE91E6125FB5DB00A40445 /* ldblib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B4125FB5DB00A40445 /* ldblib.c */; }; + 03FE91E7125FB5DB00A40445 /* ldebug.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B5125FB5DB00A40445 /* ldebug.c */; }; + 03FE91E8125FB5DB00A40445 /* ldo.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B7125FB5DB00A40445 /* ldo.c */; }; + 03FE91E9125FB5DB00A40445 /* ldump.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B9125FB5DB00A40445 /* ldump.c */; }; + 03FE91EA125FB5DB00A40445 /* lfunc.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BA125FB5DB00A40445 /* lfunc.c */; }; + 03FE91EB125FB5DB00A40445 /* lgc.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BC125FB5DB00A40445 /* lgc.c */; }; + 03FE91EC125FB5DB00A40445 /* linit.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BE125FB5DB00A40445 /* linit.c */; }; + 03FE91ED125FB5DB00A40445 /* liolib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BF125FB5DB00A40445 /* liolib.c */; }; + 03FE91EE125FB5DB00A40445 /* llex.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C0125FB5DB00A40445 /* llex.c */; }; + 03FE91EF125FB5DB00A40445 /* lmathlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C3125FB5DB00A40445 /* lmathlib.c */; }; + 03FE91F0125FB5DB00A40445 /* lmem.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C4125FB5DB00A40445 /* lmem.c */; }; + 03FE91F1125FB5DB00A40445 /* loadlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C6125FB5DB00A40445 /* loadlib.c */; }; + 03FE91F2125FB5DB00A40445 /* lobject.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C7125FB5DB00A40445 /* lobject.c */; }; + 03FE91F3125FB5DB00A40445 /* lopcodes.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C9125FB5DB00A40445 /* lopcodes.c */; }; + 03FE91F4125FB5DB00A40445 /* loslib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91CB125FB5DB00A40445 /* loslib.c */; }; + 03FE91F5125FB5DB00A40445 /* lparser.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91CC125FB5DB00A40445 /* lparser.c */; }; + 03FE91F6125FB5DB00A40445 /* lstate.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91CE125FB5DB00A40445 /* lstate.c */; }; + 03FE91F7125FB5DB00A40445 /* lstring.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D0125FB5DB00A40445 /* lstring.c */; }; + 03FE91F8125FB5DB00A40445 /* lstrlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D2125FB5DB00A40445 /* lstrlib.c */; }; + 03FE91F9125FB5DB00A40445 /* ltable.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D3125FB5DB00A40445 /* ltable.c */; }; + 03FE91FA125FB5DB00A40445 /* ltablib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D5125FB5DB00A40445 /* ltablib.c */; }; + 03FE91FB125FB5DB00A40445 /* ltm.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D6125FB5DB00A40445 /* ltm.c */; }; + 03FE91FC125FB5DB00A40445 /* lundump.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91DB125FB5DB00A40445 /* lundump.c */; }; + 03FE91FD125FB5DB00A40445 /* lvm.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91DD125FB5DB00A40445 /* lvm.c */; }; + 03FE91FE125FB5DB00A40445 /* lzio.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91DF125FB5DB00A40445 /* lzio.c */; }; + 03FE91FF125FB5DB00A40445 /* print.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91E1125FB5DB00A40445 /* print.c */; }; + 03FFD45B110B922D0046AEDF /* MobsKilledCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */; }; + 03FFD46E110B930F0046AEDF /* MobsKilledConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */; }; + 03FFD596110CB5440046AEDF /* InteractNPCActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */; }; + 03FFD597110CB5440046AEDF /* InteractObjectActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */; }; + 03FFD59A110CB55A0046AEDF /* InteractNPCAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */; }; + 03FFD59B110CB55A0046AEDF /* InteractObjectAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */; }; + 614CD78A1106182100BA1B2F /* Bot.xib in Resources */ = {isa = PBXBuildFile; fileRef = 614CD7891106182100BA1B2F /* Bot.xib */; }; + 7D06F0420D23058B00DA4E99 /* AuraController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D06F0410D23058B00DA4E99 /* AuraController.m */; }; + 7D0C43D10DF2089E005F3940 /* ScanGridView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D0C43D00DF2089E005F3940 /* ScanGridView.m */; }; + 7D0C43F80DF20B0D005F3940 /* TransparentWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */; }; + 7D16598B0D455F6500BDF5CA /* RouteSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D16598A0D455F6500BDF5CA /* RouteSet.m */; }; + 7D1B39420F896A96005CA0CD /* ChatAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B39410F896A96005CA0CD /* ChatAction.m */; }; + 7D1B39C50F897721005CA0CD /* Message.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D1B39C40F897721005CA0CD /* Message.framework */; }; + 7D1B3A220F89860D005CA0CD /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */; }; + 7D1B3A5C0F898887005CA0CD /* Mail.app in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B3A560F89885D005CA0CD /* Mail.app */; }; + 7D1B3A960F898D90005CA0CD /* iChat.app in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B3A940F898D89005CA0CD /* iChat.app */; }; + 7D1B3B8D0F89ACE9005CA0CD /* Mail.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */; }; + 7D1B3B8F0F89AD22005CA0CD /* iChat.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D1B3B8E0F89AD22005CA0CD /* iChat.png */; }; + 7D1BEDF00F8717CF00DF5FBF /* ChatLogController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */; }; + 7D1BEE530F8733A400DF5FBF /* ChatLogEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */; }; + 7D21677E0DC456A400D5A815 /* PTKeyBroadcaster.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */; }; + 7D21677F0DC456A400D5A815 /* PTHotKeyCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */; }; + 7D2167800DC456A400D5A815 /* PTKeyCodeTranslator.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */; }; + 7D2167810DC456A400D5A815 /* PTHotKey.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D21677A0DC456A400D5A815 /* PTHotKey.m */; }; + 7D2167820DC456A400D5A815 /* PTKeyCombo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */; }; + 7D2167F40DC4581700D5A815 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D2167F30DC4581700D5A815 /* Carbon.framework */; }; + 7D220F150D1691E90026DF75 /* MobController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D220F140D1691E90026DF75 /* MobController.m */; }; + 7D3108E30EFDBCCB00ECFABE /* Bobber.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D3108E20EFDBCCB00ECFABE /* Bobber.png */; }; + 7D3109440EFDCBA700ECFABE /* splash.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 7D3109430EFDCBA700ECFABE /* splash.mp3 */; }; + 7D370B0D0E7350DD002FE3A4 /* Action.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D370B0C0E7350DD002FE3A4 /* Action.m */; }; + 7D370C070E7366DC002FE3A4 /* ActionMenusController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */; }; + 7D3C91EB0E47C8C700EDF3B3 /* Gathering.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */; }; + 7D41E5950DE9FE8800118EA0 /* PlayersController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E5940DE9FE8800118EA0 /* PlayersController.m */; }; + 7D41E5980DEA00A500118EA0 /* Player.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E5970DEA00A500118EA0 /* Player.m */; }; + 7D41E8130DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */; }; + 7D41E8670DEA2DE800118EA0 /* BloodElf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */; }; + 7D41E8680DEA2DE800118EA0 /* BloodElf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */; }; + 7D41E8690DEA2DE800118EA0 /* Draenei-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */; }; + 7D41E86A0DEA2DE800118EA0 /* Draenei-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */; }; + 7D41E86B0DEA2DE800118EA0 /* Dwarf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */; }; + 7D41E86C0DEA2DE800118EA0 /* Dwarf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */; }; + 7D41E86D0DEA2DE800118EA0 /* Gnome-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */; }; + 7D41E86E0DEA2DE800118EA0 /* Gnome-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */; }; + 7D41E86F0DEA2DE800118EA0 /* Human-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */; }; + 7D41E8700DEA2DE800118EA0 /* Human-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */; }; + 7D41E8710DEA2DE800118EA0 /* NightElf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */; }; + 7D41E8720DEA2DE800118EA0 /* NightElf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */; }; + 7D41E8730DEA2DE800118EA0 /* Orc-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */; }; + 7D41E8740DEA2DE800118EA0 /* Orc-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */; }; + 7D41E8750DEA2DE800118EA0 /* Tauren-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */; }; + 7D41E8760DEA2DE800118EA0 /* Tauren-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */; }; + 7D41E8770DEA2DE800118EA0 /* Troll-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */; }; + 7D41E8780DEA2DE800118EA0 /* Troll-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */; }; + 7D41E8790DEA2DE800118EA0 /* Undead-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */; }; + 7D41E87A0DEA2DE800118EA0 /* Undead-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */; }; + 7D41E8870DEA2DFA00118EA0 /* Druid.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E87E0DEA2DFA00118EA0 /* Druid.png */; }; + 7D41E8880DEA2DFA00118EA0 /* Hunter.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */; }; + 7D41E8890DEA2DFA00118EA0 /* Mage.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8800DEA2DFA00118EA0 /* Mage.png */; }; + 7D41E88A0DEA2DFA00118EA0 /* Paladin.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8810DEA2DFA00118EA0 /* Paladin.png */; }; + 7D41E88B0DEA2DFA00118EA0 /* Priest.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8820DEA2DFA00118EA0 /* Priest.png */; }; + 7D41E88C0DEA2DFA00118EA0 /* Rogue.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8830DEA2DFA00118EA0 /* Rogue.png */; }; + 7D41E88D0DEA2DFA00118EA0 /* Shaman.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8840DEA2DFA00118EA0 /* Shaman.png */; }; + 7D41E88E0DEA2DFA00118EA0 /* Warlock.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8850DEA2DFA00118EA0 /* Warlock.png */; }; + 7D41E88F0DEA2DFA00118EA0 /* Warrior.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8860DEA2DFA00118EA0 /* Warrior.png */; }; + 7D41E8B80DEA31DD00118EA0 /* ImageAndTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */; }; + 7D41E9010DEA379300118EA0 /* Priest_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */; }; + 7D41E9020DEA379300118EA0 /* Shaman_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */; }; + 7D41E9030DEA379300118EA0 /* Paladin_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */; }; + 7D41E9040DEA379300118EA0 /* Warlock_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */; }; + 7D41E9050DEA379300118EA0 /* Mage_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */; }; + 7D41E9060DEA379300118EA0 /* Warrior_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */; }; + 7D41E9070DEA379300118EA0 /* Hunter_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */; }; + 7D41E9080DEA379300118EA0 /* Druid_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */; }; + 7D41E9090DEA379300118EA0 /* Rogue_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */; }; + 7D41E9260DEA38A500118EA0 /* Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9240DEA38A500118EA0 /* Male.png */; }; + 7D41E9270DEA38A500118EA0 /* Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9250DEA38A500118EA0 /* Female.png */; }; + 7D41E9AA0DEA734200118EA0 /* Keybindings.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A70DEA734200118EA0 /* Keybindings.png */; }; + 7D41E9AB0DEA734200118EA0 /* InterfaceBars.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */; }; + 7D41E9AC0DEA734200118EA0 /* Result.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A90DEA734200118EA0 /* Result.png */; }; + 7D41E9AF0DEB467500118EA0 /* HotkeyFinished.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */; }; + 7D41E9B00DEB467500118EA0 /* TypeShortcut.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */; }; + 7D41EA110DEB554100118EA0 /* Unit.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41EA100DEB554100118EA0 /* Unit.m */; }; + 7D41EE7C0DECD45100118EA0 /* UnknownSmall.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */; }; + 7D41EEE00DECD7C600118EA0 /* Orc-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */; }; + 7D41EEE10DECD7C600118EA0 /* Gnome-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */; }; + 7D41EEE20DECD7C600118EA0 /* BloodElf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */; }; + 7D41EEE30DECD7C600118EA0 /* Orc-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */; }; + 7D41EEE40DECD7C600118EA0 /* Troll-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */; }; + 7D41EEE50DECD7C600118EA0 /* Undead-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */; }; + 7D41EEE60DECD7C600118EA0 /* Human-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */; }; + 7D41EEE70DECD7C600118EA0 /* BloodElf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */; }; + 7D41EEE80DECD7C600118EA0 /* Draenei-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */; }; + 7D41EEE90DECD7C600118EA0 /* Tauren-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */; }; + 7D41EEEA0DECD7C600118EA0 /* Draenei-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */; }; + 7D41EEEB0DECD7C600118EA0 /* Dwarf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */; }; + 7D41EEEC0DECD7C600118EA0 /* Undead-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */; }; + 7D41EEED0DECD7C600118EA0 /* Gnome-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */; }; + 7D41EEEE0DECD7C600118EA0 /* Human-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */; }; + 7D41EEEF0DECD7C600118EA0 /* Dwarf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */; }; + 7D41EEF00DECD7C600118EA0 /* Tauren-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */; }; + 7D41EEF10DECD7C600118EA0 /* Troll-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */; }; + 7D41EEFD0DECD85000118EA0 /* NightElf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */; }; + 7D41EEFE0DECD85000118EA0 /* NightElf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */; }; + 7D45A6CC0E4461DE008A3601 /* NSData+SockAddr.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */; }; + 7D4AFB340D9EDBF100A33CE1 /* bad.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7D4AFB320D9EDBF100A33CE1 /* bad.tif */; }; + 7D4AFB350D9EDBF100A33CE1 /* good.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7D4AFB330D9EDBF100A33CE1 /* good.tif */; }; + 7D53C0E90E5E2199007B3AA6 /* UKMainThreadProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */; }; + 7D53C0EA0E5E2199007B3AA6 /* UKFileWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */; }; + 7D53C0EB0E5E2199007B3AA6 /* UKKQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */; }; + 7D53C0EC0E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */; }; + 7D5496430E1AA073004AA3E9 /* AuraStackConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */; }; + 7D5496460E1AA0F5004AA3E9 /* AuraStackCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */; }; + 7D5498910F0222DC00DD46F8 /* INV_Fishingpole_03.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */; }; + 7D5498960F02232500DD46F8 /* FishController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5498950F02232500DD46F8 /* FishController.m */; }; + 7D5A384A0D14B52900E491CD /* NSNumberToHexString.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */; }; + 7D60430C0D5FC2DF001501AF /* mixed.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D60430B0D5FC2DF001501AF /* mixed.png */; }; + 7D65C8F90D2EE14500C50DF7 /* Rule.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C8F80D2EE14500C50DF7 /* Rule.m */; }; + 7D65C8FC0D2EE16B00C50DF7 /* Condition.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */; }; + 7D65C9DB0D2EF93100C50DF7 /* ProcedureController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */; }; + 7D65CA480D2F04D200C50DF7 /* Procedure.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65CA470D2F04D200C50DF7 /* Procedure.m */; }; + 7D65CC1D0D2F69BB00C50DF7 /* Behavior.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */; }; + 7D6BE9700F87ED8B00ED364A /* ChatLog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */; }; + 7D6BE9990F87F6FB00ED364A /* Trade_Engraving.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */; }; + 7D6BEC8D0F8844F600ED364A /* Growl Registration Ticket.growlRegDict in Resources */ = {isa = PBXBuildFile; fileRef = 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */; }; + 7D70E7E20DC65372006B8826 /* ChatController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D70E7E10DC65372006B8826 /* ChatController.m */; }; + 7D7245420D1511F40094665C /* Mob.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7245410D1511F40094665C /* Mob.m */; }; + 7D7A695D0D26F04F0008C3FF /* NodeController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7A695C0D26F04F0008C3FF /* NodeController.m */; }; + 7D7A6A490D270F130008C3FF /* WoWObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7A6A480D270F130008C3FF /* WoWObject.m */; }; + 7D7C66A30E58E74D002A6C96 /* TargetType.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C66A20E58E74D002A6C96 /* TargetType.xib */; }; + 7D7C66AE0E58E8B0002A6C96 /* CombatCount.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */; }; + 7D7C66BC0E58E92F002A6C96 /* TargetTypeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */; }; + 7D7C66DD0E58E97D002A6C96 /* CombatCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */; }; + 7D7C670A0E58EB37002A6C96 /* ProximityCount.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */; }; + 7D7C670E0E58EC50002A6C96 /* TargetClass.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */; }; + 7D7C67160E58EC79002A6C96 /* ProximityCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */; }; + 7D7C67190E58EC85002A6C96 /* TargetClassConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */; }; + 7D80B4750DE75795004D00F6 /* Friendly.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4720DE75795004D00F6 /* Friendly.png */; }; + 7D80B4760DE75795004D00F6 /* Hostile.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4730DE75795004D00F6 /* Hostile.png */; }; + 7D80B4770DE75795004D00F6 /* Combat.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4740DE75795004D00F6 /* Combat.png */; }; + 7D80B48D0DE75905004D00F6 /* Dead.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B48C0DE75905004D00F6 /* Dead.png */; }; + 7D80B4B10DE76098004D00F6 /* Neutral.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4B00DE76098004D00F6 /* Neutral.png */; }; + 7D8343FB0D17231300853E32 /* Position.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D8343FA0D17231300853E32 /* Position.m */; }; + 7D9712960D248DA0005E3BD1 /* Item.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9712950D248DA0005E3BD1 /* Item.m */; }; + 7D9712990D248ED4005E3BD1 /* InventoryController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9712980D248ED4005E3BD1 /* InventoryController.m */; }; + 7D9713C90D24D339005E3BD1 /* Node.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9713C80D24D339005E3BD1 /* Node.m */; }; + 7D9770C10D2D84D700E6D8F9 /* HealthConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */; }; + 7D9771150D2D8C0E00E6D8F9 /* ConditionCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */; }; + 7D9771180D2D8F6000E6D8F9 /* ConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */; }; + 7D9771780D2D951900E6D8F9 /* BetterSegmentedControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */; }; + 7D9772050D2DA23D00E6D8F9 /* StatusConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */; }; + 7D9772750D2DA97A00E6D8F9 /* AuraConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */; }; + 7D9772A90D2DB2B300E6D8F9 /* BetterTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */; }; + 7D97730F0D2DBF5400E6D8F9 /* RuleEditor.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */; }; + 7DA7B8C30D1DF92B00F81519 /* Spell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DA7B8C20D1DF92B00F81519 /* Spell.m */; }; + 7DA95E340E2302C400AC85E2 /* BannerNeutral.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */; }; + 7DA95E350E2302C400AC85E2 /* BannerHorde.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E320E2302C400AC85E2 /* BannerHorde.png */; }; + 7DA95E360E2302C400AC85E2 /* BannerAlliance.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */; }; + 7DA95ECE0E23537A00AC85E2 /* alarm.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */; }; + 7DAAE71A0D148972003F1E3C /* Controller.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7190D148972003F1E3C /* Controller.m */; }; + 7DAAE7220D14897D003F1E3C /* MemoryAccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */; }; + 7DAAE7630D148995003F1E3C /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DAAE7620D148995003F1E3C /* Security.framework */; }; + 7DAAE7690D14917E003F1E3C /* PlayerDataController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */; }; + 7DAB645E0E22A85900B84C0E /* Ability_DualWieldSpecialization.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */; }; + 7DAB64610E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */; }; + 7DAB64630E22AAB300B84C0E /* Ability_Warrior_Challange.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */; }; + 7DAD11660E117BF000B0F7BD /* Macro.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAD11650E117BF000B0F7BD /* Macro.m */; }; + 7DB0ABC90EABED7F00B81BC1 /* FactionTemplate.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */; }; + 7DB0ADE50EB02F0C00B81BC1 /* Aura.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */; }; + 7DB260D50DB30922007DB867 /* libz.1.2.3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */; }; + 7DB2C44A0D3BFE4100100B4D /* BotController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; }; + 7DB8222A0E33382900661394 /* TempEnchantCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DB822290E33382900661394 /* TempEnchantCondition.xib */; }; + 7DB8222F0E33384300661394 /* TempEnchantConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */; }; + 7DBA60600D51D28600FD6A5F /* Spell_Holy_MindVision.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */; }; + 7DBA60620D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */; }; + 7DBA60630D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */; }; + 7DBA60640D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */; }; + 7DBA60660D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */; }; + 7DBA60690D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */; }; + 7DBA606B0D51D38B00FD6A5F /* inv_misc_bag_14.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */; }; + 7DBA606D0D51D52600FD6A5F /* INV_Misc_Orb_05.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */; }; + 7DBA607B0D51D68000FD6A5F /* INV_Misc_Gear_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */; }; + 7DBA60810D51D75C00FD6A5F /* Ability_Warrior_Revenge.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */; }; + 7DBA60A20D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */; }; + 7DBC34540DB57665000C9BCF /* SRRemoveShortcut.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */; }; + 7DBC34550DB57665000C9BCF /* SRRemoveShortcutPressed.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */; }; + 7DBC34560DB57665000C9BCF /* SRRemoveShortcutRollover.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */; }; + 7DBC34570DB57665000C9BCF /* SRSnapback.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */; }; + 7DBDA6770E0DAE5D0021E180 /* NoAccessApplication.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */; }; + 7DBEC7DB0E4512D800994A7A /* GrabWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */; }; + 7DBF31C60E94679500A592BD /* Growl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DBF31C50E94679500A592BD /* Growl.framework */; }; + 7DBF31CE0E94679900A592BD /* Growl.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 7DBF31C50E94679500A592BD /* Growl.framework */; }; + 7DC3FF190D57C76D00BEB58B /* BetterAuthorizationSampleLib.c in Sources */ = {isa = PBXBuildFile; fileRef = 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */; }; + 7DC3FF2A0D57C7CE00BEB58B /* ToolCommon.c in Sources */ = {isa = PBXBuildFile; fileRef = 7DC3FF280D57C79400BEB58B /* ToolCommon.c */; }; + 7DC419EF0DEDFD0300F3B083 /* ActiveQuestIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */; }; + 7DC419F00DEDFD0300F3B083 /* AvailableQuestIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */; }; + 7DC419F10DEDFD0300F3B083 /* BankerGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */; }; + 7DC419F20DEDFD0300F3B083 /* BinderGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */; }; + 7DC419F30DEDFD0300F3B083 /* GossipGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */; }; + 7DC419F40DEDFD0300F3B083 /* PetitionGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */; }; + 7DC419F50DEDFD0300F3B083 /* Scroll.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EA0DEDFD0300F3B083 /* Scroll.png */; }; + 7DC419F60DEDFD0300F3B083 /* TabardGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */; }; + 7DC419F70DEDFD0300F3B083 /* TaxiGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */; }; + 7DC419F80DEDFD0300F3B083 /* TrainerGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */; }; + 7DC419F90DEDFD0300F3B083 /* VendorGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */; }; + 7DC419FC0DEDFDD000F3B083 /* MinimapGuideFlag.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */; }; + 7DC419FD0DEDFDD000F3B083 /* WarnTriangle.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */; }; + 7DC41A220DEDFED400F3B083 /* ResourceBlip.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */; }; + 7DC41A570DEE020B00F3B083 /* Repair.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A560DEE020B00F3B083 /* Repair.png */; }; + 7DC41A700DEE041400F3B083 /* Skull.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A6F0DEE041400F3B083 /* Skull.png */; }; + 7DC41AD60DEE0CA100F3B083 /* Stable.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AD50DEE0CA100F3B083 /* Stable.png */; }; + 7DC41ADC0DEE0D9100F3B083 /* Innkeeper.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */; }; + 7DC41AE50DEE111600F3B083 /* Chicken.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AE40DEE111600F3B083 /* Chicken.png */; }; + 7DC41AFE0DEE156800F3B083 /* NeutralCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */; }; + 7DC41AFF0DEE156800F3B083 /* HordeCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */; }; + 7DC41B000DEE156800F3B083 /* AllianceCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */; }; + 7DC7A9580DFB70CA00F6FA63 /* pgRoute.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */; }; + 7DC7A9860DFC85C700F6FA63 /* pgBehavior.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */; }; + 7DC7A9A60DFC869400F6FA63 /* gnome2.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */; }; + 7DC8B44D0D4147CB00B25B45 /* DistanceConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */; }; + 7DC8B4610D4152EC00B25B45 /* InventoryConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */; }; + 7DCB5A400D540647001678BC /* Memory.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCB5A3F0D540647001678BC /* Memory.xib */; }; + 7DCE50660E12EF9100C5DF01 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */; }; + 7DCE50750E12F05E00C5DF01 /* AuraCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */; }; + 7DCE50760E12F05E00C5DF01 /* StatusCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */; }; + 7DCE50770E12F05E00C5DF01 /* DistanceCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */; }; + 7DCE50780E12F05E00C5DF01 /* HealthCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */; }; + 7DCE50790E12F05E00C5DF01 /* InventoryCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */; }; + 7DD03DE20D160075000CC1A6 /* MemoryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */; }; + 7DD03F0C0D163F44000CC1A6 /* WaypointController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */; }; + 7DD03F350D163F9A000CC1A6 /* Route.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F340D163F9A000CC1A6 /* Route.m */; }; + 7DD03F380D163FF8000CC1A6 /* Waypoint.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F370D163FF8000CC1A6 /* Waypoint.m */; }; + 7DD1D14F0DD241F60069CB07 /* ComboPointConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */; }; + 7DD1D1560DD242A70069CB07 /* ComboPointCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */; }; + 7DD3D40B0D1B2FEB0023D097 /* SpellController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */; }; + 7DD64AF60D5D10FA00773CAB /* RouteVisualizationView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */; }; + 7DD64B210D5D192500773CAB /* off.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD64B1F0D5D192500773CAB /* off.png */; }; + 7DD64B220D5D192500773CAB /* on.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD64B200D5D192500773CAB /* on.png */; }; + 7DD8037D0D514E62005C2F01 /* Player.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD8037C0D514E62005C2F01 /* Player.xib */; }; + 7DD803980D515142005C2F01 /* Spells.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803970D515142005C2F01 /* Spells.xib */; }; + 7DD803A20D5151CA005C2F01 /* Routes.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803A10D5151CA005C2F01 /* Routes.xib */; }; + 7DD803A40D5153E5005C2F01 /* Behaviors.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803A30D5153E5005C2F01 /* Behaviors.xib */; }; + 7DD8910B0F2BE875007E9FE4 /* DeathKnight.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */; }; + 7DD891240F2BE92A007E9FE4 /* DeathKnight_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */; }; + 7DDCC4860F9EE3BE0085A88E /* InteractWithTarget.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */; }; + 7DE53DDB0E32B84C00C59033 /* IgnoreEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */; }; + 7DE59CE00E09CABB003C6559 /* NSString+URLEncode.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */; }; + 7DE983820E2B2BA800F41293 /* NSString+Extras.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE983810E2B2BA800F41293 /* NSString+Extras.m */; }; + 7DF445530E241ABA0075B96B /* TotemConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DF445520E241ABA0075B96B /* TotemConditionController.m */; }; + 7DF445550E241AE30075B96B /* TotemCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DF445540E241AE30075B96B /* TotemCondition.xib */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; + D02F3C561182C37E000F4037 /* DatabaseManager.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C551182C37E000F4037 /* DatabaseManager.m */; }; + D02F3C5D1182C497000F4037 /* MailActionProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C5C1182C497000F4037 /* MailActionProfile.m */; }; + D02F3C601182C5AC000F4037 /* ProfileController.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C5F1182C5AC000F4037 /* ProfileController.m */; }; + D02F3C871182C975000F4037 /* Profile.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C861182C975000F4037 /* Profile.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXBuildRule section */ + 7D1B3A500F8987B1005CA0CD /* PBXBuildRule */ = { + isa = PBXBuildRule; + compilerSpec = com.apple.compilers.proxy.script; + filePatterns = "*.app"; + fileType = pattern.proxy; + isEditable = 1; + outputFiles = ( + "$(DERIVED_FILES_DIR)/$(INPUT_FILE_BASE).h", + ); + script = "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`"; + }; +/* End PBXBuildRule section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 7DC8B60C0D419BF500B25B45 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 03981DA6112AECA80081835F /* Sparkle.framework in CopyFiles */, + 03C280CD1089178600A76249 /* ShortcutRecorder.framework in CopyFiles */, + 7DBF31CE0E94679900A592BD /* Growl.framework in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 030604B61088140000C57D77 /* ShortcutRecorder.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = ShortcutRecorder.framework; sourceTree = ""; }; + 030604F11088162100C57D77 /* OffsetController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OffsetController.h; sourceTree = ""; }; + 030604F21088162100C57D77 /* OffsetController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OffsetController.m; sourceTree = ""; }; + 0306057A10881CAE00C57D77 /* MacroController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroController.h; sourceTree = ""; }; + 0306057B10881CAE00C57D77 /* MacroController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MacroController.m; sourceTree = ""; }; + 030C2E4B0FDC09B300E80F7E /* LootController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LootController.h; sourceTree = ""; }; + 030C2E4C0FDC09B300E80F7E /* LootController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LootController.m; sourceTree = ""; }; + 0313B4D610BAEA0B009E74E4 /* EventController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventController.h; sourceTree = ""; }; + 0313B4D710BAEA0B009E74E4 /* EventController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EventController.m; sourceTree = ""; }; + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaypointActionEditor.h; sourceTree = ""; }; + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WaypointActionEditor.m; sourceTree = ""; }; + 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WaypointActionEditor.xib; sourceTree = ""; }; + 03168DC610FE8BA900EF241B /* DurabilityConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DurabilityConditionController.h; sourceTree = ""; }; + 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DurabilityConditionController.m; sourceTree = ""; }; + 03168DD610FE90B600EF241B /* DurabilityCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DurabilityCondition.xib; sourceTree = ""; }; + 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InventoryFreeCondition.xib; sourceTree = ""; }; + 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlayerLevelCondition.xib; sourceTree = ""; }; + 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlayerZoneCondition.xib; sourceTree = ""; }; + 03168DDA10FE90B600EF241B /* QuestCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestCondition.xib; sourceTree = ""; }; + 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RouteRunCountCondition.xib; sourceTree = ""; }; + 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RouteRunTimeCondition.xib; sourceTree = ""; }; + 03168E1910FE972300EF241B /* PlayerLevelConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerLevelConditionController.h; sourceTree = ""; }; + 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerLevelConditionController.m; sourceTree = ""; }; + 03168E1C10FE972B00EF241B /* PlayerZoneConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerZoneConditionController.h; sourceTree = ""; }; + 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerZoneConditionController.m; sourceTree = ""; }; + 03168E1F10FE973900EF241B /* QuestConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestConditionController.h; sourceTree = ""; }; + 03168E2010FE973900EF241B /* QuestConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestConditionController.m; sourceTree = ""; }; + 03168E2210FE974800EF241B /* RouteRunCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteRunCountConditionController.h; sourceTree = ""; }; + 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteRunCountConditionController.m; sourceTree = ""; }; + 03168E2510FE975300EF241B /* RouteRunTimeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteRunTimeConditionController.h; sourceTree = ""; }; + 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteRunTimeConditionController.m; sourceTree = ""; }; + 03168E2810FE975E00EF241B /* InventoryFreeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryFreeConditionController.h; sourceTree = ""; }; + 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryFreeConditionController.m; sourceTree = ""; }; + 03168EDC10FF70C600EF241B /* RepairAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RepairAction.xib; sourceTree = ""; }; + 03168EE210FF713000EF241B /* ActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionController.h; sourceTree = ""; }; + 03168EE310FF713000EF241B /* ActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ActionController.m; sourceTree = ""; }; + 03168EFC10FF72DF00EF241B /* RepairActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RepairActionController.h; sourceTree = ""; }; + 03168EFD10FF72DF00EF241B /* RepairActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RepairActionController.m; sourceTree = ""; }; + 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SwitchRouteAction.xib; sourceTree = ""; }; + 0316904510FF89FC00EF241B /* SwitchRouteActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SwitchRouteActionController.h; sourceTree = ""; }; + 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SwitchRouteActionController.m; sourceTree = ""; }; + 031694CB110103C000EF241B /* SpellActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellActionController.h; sourceTree = ""; }; + 031694CC110103C000EF241B /* SpellActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellActionController.m; sourceTree = ""; }; + 031694CE110103CC00EF241B /* ItemActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ItemActionController.h; sourceTree = ""; }; + 031694CF110103CC00EF241B /* ItemActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ItemActionController.m; sourceTree = ""; }; + 031694D1110103DA00EF241B /* MacroActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroActionController.h; sourceTree = ""; }; + 031694D2110103DA00EF241B /* MacroActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MacroActionController.m; sourceTree = ""; }; + 031694D4110103E000EF241B /* DelayActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DelayActionController.h; sourceTree = ""; }; + 031694D5110103E000EF241B /* DelayActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DelayActionController.m; sourceTree = ""; }; + 031694D7110103E900EF241B /* JumpActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JumpActionController.h; sourceTree = ""; }; + 031694D8110103E900EF241B /* JumpActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JumpActionController.m; sourceTree = ""; }; + 031695161101314B00EF241B /* ItemAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ItemAction.xib; sourceTree = ""; }; + 031695171101314B00EF241B /* MacroAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MacroAction.xib; sourceTree = ""; }; + 031695181101314B00EF241B /* SpellAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SpellAction.xib; sourceTree = ""; }; + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatProfileActionController.h; sourceTree = ""; }; + 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatProfileActionController.m; sourceTree = ""; }; + 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatProfileAction.xib; sourceTree = ""; }; + 0322D72E110744D500EF3EEF /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + 032B8C030FDEE37900807DD0 /* Errors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Errors.h; sourceTree = ""; }; + 0331619511AAF1B900467490 /* appcast.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = appcast.xml; sourceTree = ""; }; + 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = buildnumber.xcconfig; sourceTree = ""; }; + 034126BF1135706E00BE6819 /* PvPController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PvPController.h; sourceTree = ""; }; + 034126C01135706E00BE6819 /* PvPController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PvPController.m; sourceTree = ""; }; + 034126C3113570E100BE6819 /* PvP.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PvP.xib; sourceTree = ""; }; + 034126E41135774100BE6819 /* Battleground.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Battleground.h; sourceTree = ""; }; + 034126E51135774100BE6819 /* Battleground.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Battleground.m; sourceTree = ""; }; + 034126E71135774A00BE6819 /* PvPBehavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PvPBehavior.h; sourceTree = ""; }; + 034126E81135774A00BE6819 /* PvPBehavior.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PvPBehavior.m; sourceTree = ""; }; + 0341DD5F111B0F6B00074CED /* Objects.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Objects.xib; sourceTree = ""; }; + 0341DD64111B0FBE00074CED /* ObjectsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectsController.h; sourceTree = ""; }; + 0341DD65111B0FBE00074CED /* ObjectsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjectsController.m; sourceTree = ""; }; + 0341DDD8111B21D700074CED /* ObjectController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectController.h; sourceTree = ""; }; + 0341DDD9111B21D700074CED /* ObjectController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjectController.m; sourceTree = ""; }; + 034429B60FAA3E1800E9DE03 /* Quest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Quest.h; sourceTree = ""; }; + 034429B70FAA3E1800E9DE03 /* Quest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Quest.m; sourceTree = ""; }; + 034429BB0FAA3E3800E9DE03 /* QuestItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestItem.h; sourceTree = ""; }; + 034429BC0FAA3E3800E9DE03 /* QuestItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestItem.m; sourceTree = ""; }; + 034429BE0FAA3E5600E9DE03 /* QuestController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestController.h; sourceTree = ""; }; + 034429BF0FAA3E5600E9DE03 /* QuestController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestController.m; sourceTree = ""; }; + 0344CB211267D0E700B4A9C7 /* LuaController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LuaController.h; sourceTree = ""; }; + 0344CB221267D0E700B4A9C7 /* LuaController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LuaController.m; sourceTree = ""; }; + 03503FF0125A9A0300E511C8 /* Objects_Enum.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Objects_Enum.h; sourceTree = ""; }; + 0350738310CDBA460004636E /* SpellCooldown.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SpellCooldown.xib; sourceTree = ""; }; + 0350738710CDBA640004636E /* SpellCooldownConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellCooldownConditionController.h; sourceTree = ""; }; + 0350738810CDBA640004636E /* SpellCooldownConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellCooldownConditionController.m; sourceTree = ""; }; + 0352F46511376DA5005B28D6 /* PVP.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = PVP.png; sourceTree = ""; }; + 03567AAB10DDAB52001ACE43 /* CombatController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatController.h; sourceTree = ""; }; + 03567AAC10DDAB52001ACE43 /* CombatController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatController.m; sourceTree = ""; }; + 0362CDDC11A99CED00EA65B2 /* CombatProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatProfile.h; sourceTree = ""; }; + 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatProfile.m; sourceTree = ""; }; + 03685DC5110266FC001CE552 /* DelayAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DelayAction.xib; sourceTree = ""; }; + 03685DD911026831001CE552 /* JumpAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JumpAction.xib; sourceTree = ""; }; + 03685FA61103D73B001CE552 /* QuestGrabAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestGrabAction.xib; sourceTree = ""; }; + 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestTurnInAction.xib; sourceTree = ""; }; + 03685FAB1103D768001CE552 /* QuestGrabActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestGrabActionController.h; sourceTree = ""; }; + 03685FAC1103D768001CE552 /* QuestGrabActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestGrabActionController.m; sourceTree = ""; }; + 03685FAE1103D77A001CE552 /* QuestTurnInActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestTurnInActionController.h; sourceTree = ""; }; + 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestTurnInActionController.m; sourceTree = ""; }; + 038709B810D576E100DF5B90 /* BlacklistController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BlacklistController.h; sourceTree = ""; }; + 038709B910D576E100DF5B90 /* BlacklistController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BlacklistController.m; sourceTree = ""; }; + 038769131124532000B2C571 /* RouteCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteCollection.h; sourceTree = ""; }; + 038769141124532000B2C571 /* RouteCollection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteCollection.m; sourceTree = ""; }; + 038A4B4510E9656D00577D8F /* LastSpellCast.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LastSpellCast.xib; sourceTree = ""; }; + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LastSpellCastConditionController.h; sourceTree = ""; }; + 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LastSpellCastConditionController.m; sourceTree = ""; }; + 0393F412110A205800296CF8 /* libcrypto.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcrypto.dylib; path = usr/lib/libcrypto.dylib; sourceTree = SDKROOT; }; + 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ReverseRouteAction.xib; sourceTree = ""; }; + 0393F52C110A558200296CF8 /* VendorAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = VendorAction.xib; sourceTree = ""; }; + 0393F52F110A558F00296CF8 /* MailAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MailAction.xib; sourceTree = ""; }; + 0393F531110A55DB00296CF8 /* MailActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailActionController.h; sourceTree = ""; }; + 0393F532110A55DB00296CF8 /* MailActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MailActionController.m; sourceTree = ""; }; + 0393F534110A55E300296CF8 /* VendorActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VendorActionController.h; sourceTree = ""; }; + 0393F535110A55E300296CF8 /* VendorActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VendorActionController.m; sourceTree = ""; }; + 0393F537110A55EF00296CF8 /* ReverseRouteActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ReverseRouteActionController.h; sourceTree = ""; }; + 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ReverseRouteActionController.m; sourceTree = ""; }; + 03981D8D112AEC860081835F /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = ""; }; + 03981DE8112B22E90081835F /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = ""; }; + 03981E76112B898E0081835F /* MovementController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MovementController.h; sourceTree = ""; }; + 03981E77112B898E0081835F /* MovementController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MovementController.m; sourceTree = ""; }; + 03981F36112C819E0081835F /* LogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LogController.h; sourceTree = ""; }; + 03981F37112C819E0081835F /* LogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LogController.m; sourceTree = ""; }; + 03A01B0B109A2A9600E6098E /* StatisticsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatisticsController.h; sourceTree = ""; }; + 03A01B0C109A2A9600E6098E /* StatisticsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatisticsController.m; sourceTree = ""; }; + 03A01B39109A2CFF00E6098E /* Statistics.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Statistics.xib; sourceTree = ""; }; + 03A320D3114E88A9000D23EE /* JumpToWaypointActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JumpToWaypointActionController.h; sourceTree = ""; }; + 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JumpToWaypointActionController.m; sourceTree = ""; }; + 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JumpToWaypointAction.xib; sourceTree = ""; }; + 03A4047B0FE148C60087BC0D /* mbobbleicon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mbobbleicon.png; sourceTree = ""; }; + 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RuneCondition.xib; sourceTree = ""; }; + 03B6D26010F626EA00EC6EFF /* RuneConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuneConditionController.h; sourceTree = ""; }; + 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RuneConditionController.m; sourceTree = ""; }; + 03BB2218112258A00048DE7B /* GateConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GateConditionController.h; sourceTree = ""; }; + 03BB2219112258A00048DE7B /* GateConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GateConditionController.m; sourceTree = ""; }; + 03BB222911225E410048DE7B /* GateCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GateCondition.xib; sourceTree = ""; }; + 03BB227A1122F1160048DE7B /* StrandStatus.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StrandStatus.xib; sourceTree = ""; }; + 03BB227C1122F1240048DE7B /* StrandStatusConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StrandStatusConditionController.h; sourceTree = ""; }; + 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StrandStatusConditionController.m; sourceTree = ""; }; + 03BD330C11120A7A00941971 /* BindingsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BindingsController.h; sourceTree = ""; }; + 03BD330D11120A7A00941971 /* BindingsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BindingsController.m; sourceTree = ""; }; + 03BE961811828343004DBFBF /* FileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileController.h; sourceTree = ""; }; + 03BE961911828343004DBFBF /* FileController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileController.m; sourceTree = ""; }; + 03C42CC91096839E0085E888 /* Macros.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Macros.plist; sourceTree = ""; }; + 03CD6A67118359B100CCABFE /* Defines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Defines.h; sourceTree = ""; }; + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClientDbDefines.h; sourceTree = ""; }; + 03CD6AC31183D5AC00CCABFE /* Profiles.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Profiles.xib; sourceTree = ""; }; + 03CEF7840FCCD93100B47336 /* Corpse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Corpse.h; sourceTree = ""; }; + 03CEF7850FCCD93100B47336 /* Corpse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Corpse.m; sourceTree = ""; }; + 03CEF7860FCCD93100B47336 /* CorpseController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CorpseController.h; sourceTree = ""; }; + 03CEF7870FCCD93100B47336 /* CorpseController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CorpseController.m; sourceTree = ""; }; + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = OffsetSignatures.plist; sourceTree = ""; }; + 03E1D7B6110F62CD003180E4 /* FileObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileObject.h; sourceTree = ""; }; + 03E1D7B7110F62CD003180E4 /* FileObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileObject.m; sourceTree = ""; }; + 03FE91AD125FB5DB00A40445 /* lapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lapi.c; path = "lua-5.1.4/src/lapi.c"; sourceTree = ""; }; + 03FE91AE125FB5DB00A40445 /* lapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lapi.h; path = "lua-5.1.4/src/lapi.h"; sourceTree = ""; }; + 03FE91AF125FB5DB00A40445 /* lauxlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lauxlib.c; path = "lua-5.1.4/src/lauxlib.c"; sourceTree = ""; }; + 03FE91B0125FB5DB00A40445 /* lauxlib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lauxlib.h; path = "lua-5.1.4/src/lauxlib.h"; sourceTree = ""; }; + 03FE91B1125FB5DB00A40445 /* lbaselib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lbaselib.c; path = "lua-5.1.4/src/lbaselib.c"; sourceTree = ""; }; + 03FE91B2125FB5DB00A40445 /* lcode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lcode.c; path = "lua-5.1.4/src/lcode.c"; sourceTree = ""; }; + 03FE91B3125FB5DB00A40445 /* lcode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lcode.h; path = "lua-5.1.4/src/lcode.h"; sourceTree = ""; }; + 03FE91B4125FB5DB00A40445 /* ldblib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldblib.c; path = "lua-5.1.4/src/ldblib.c"; sourceTree = ""; }; + 03FE91B5125FB5DB00A40445 /* ldebug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldebug.c; path = "lua-5.1.4/src/ldebug.c"; sourceTree = ""; }; + 03FE91B6125FB5DB00A40445 /* ldebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ldebug.h; path = "lua-5.1.4/src/ldebug.h"; sourceTree = ""; }; + 03FE91B7125FB5DB00A40445 /* ldo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldo.c; path = "lua-5.1.4/src/ldo.c"; sourceTree = ""; }; + 03FE91B8125FB5DB00A40445 /* ldo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ldo.h; path = "lua-5.1.4/src/ldo.h"; sourceTree = ""; }; + 03FE91B9125FB5DB00A40445 /* ldump.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldump.c; path = "lua-5.1.4/src/ldump.c"; sourceTree = ""; }; + 03FE91BA125FB5DB00A40445 /* lfunc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lfunc.c; path = "lua-5.1.4/src/lfunc.c"; sourceTree = ""; }; + 03FE91BB125FB5DB00A40445 /* lfunc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lfunc.h; path = "lua-5.1.4/src/lfunc.h"; sourceTree = ""; }; + 03FE91BC125FB5DB00A40445 /* lgc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lgc.c; path = "lua-5.1.4/src/lgc.c"; sourceTree = ""; }; + 03FE91BD125FB5DB00A40445 /* lgc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lgc.h; path = "lua-5.1.4/src/lgc.h"; sourceTree = ""; }; + 03FE91BE125FB5DB00A40445 /* linit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = linit.c; path = "lua-5.1.4/src/linit.c"; sourceTree = ""; }; + 03FE91BF125FB5DB00A40445 /* liolib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = liolib.c; path = "lua-5.1.4/src/liolib.c"; sourceTree = ""; }; + 03FE91C0125FB5DB00A40445 /* llex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = llex.c; path = "lua-5.1.4/src/llex.c"; sourceTree = ""; }; + 03FE91C1125FB5DB00A40445 /* llex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = llex.h; path = "lua-5.1.4/src/llex.h"; sourceTree = ""; }; + 03FE91C2125FB5DB00A40445 /* llimits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = llimits.h; path = "lua-5.1.4/src/llimits.h"; sourceTree = ""; }; + 03FE91C3125FB5DB00A40445 /* lmathlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lmathlib.c; path = "lua-5.1.4/src/lmathlib.c"; sourceTree = ""; }; + 03FE91C4125FB5DB00A40445 /* lmem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lmem.c; path = "lua-5.1.4/src/lmem.c"; sourceTree = ""; }; + 03FE91C5125FB5DB00A40445 /* lmem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lmem.h; path = "lua-5.1.4/src/lmem.h"; sourceTree = ""; }; + 03FE91C6125FB5DB00A40445 /* loadlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = loadlib.c; path = "lua-5.1.4/src/loadlib.c"; sourceTree = ""; }; + 03FE91C7125FB5DB00A40445 /* lobject.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lobject.c; path = "lua-5.1.4/src/lobject.c"; sourceTree = ""; }; + 03FE91C8125FB5DB00A40445 /* lobject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lobject.h; path = "lua-5.1.4/src/lobject.h"; sourceTree = ""; }; + 03FE91C9125FB5DB00A40445 /* lopcodes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lopcodes.c; path = "lua-5.1.4/src/lopcodes.c"; sourceTree = ""; }; + 03FE91CA125FB5DB00A40445 /* lopcodes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lopcodes.h; path = "lua-5.1.4/src/lopcodes.h"; sourceTree = ""; }; + 03FE91CB125FB5DB00A40445 /* loslib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = loslib.c; path = "lua-5.1.4/src/loslib.c"; sourceTree = ""; }; + 03FE91CC125FB5DB00A40445 /* lparser.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lparser.c; path = "lua-5.1.4/src/lparser.c"; sourceTree = ""; }; + 03FE91CD125FB5DB00A40445 /* lparser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lparser.h; path = "lua-5.1.4/src/lparser.h"; sourceTree = ""; }; + 03FE91CE125FB5DB00A40445 /* lstate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lstate.c; path = "lua-5.1.4/src/lstate.c"; sourceTree = ""; }; + 03FE91CF125FB5DB00A40445 /* lstate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lstate.h; path = "lua-5.1.4/src/lstate.h"; sourceTree = ""; }; + 03FE91D0125FB5DB00A40445 /* lstring.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lstring.c; path = "lua-5.1.4/src/lstring.c"; sourceTree = ""; }; + 03FE91D1125FB5DB00A40445 /* lstring.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lstring.h; path = "lua-5.1.4/src/lstring.h"; sourceTree = ""; }; + 03FE91D2125FB5DB00A40445 /* lstrlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lstrlib.c; path = "lua-5.1.4/src/lstrlib.c"; sourceTree = ""; }; + 03FE91D3125FB5DB00A40445 /* ltable.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ltable.c; path = "lua-5.1.4/src/ltable.c"; sourceTree = ""; }; + 03FE91D4125FB5DB00A40445 /* ltable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ltable.h; path = "lua-5.1.4/src/ltable.h"; sourceTree = ""; }; + 03FE91D5125FB5DB00A40445 /* ltablib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ltablib.c; path = "lua-5.1.4/src/ltablib.c"; sourceTree = ""; }; + 03FE91D6125FB5DB00A40445 /* ltm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ltm.c; path = "lua-5.1.4/src/ltm.c"; sourceTree = ""; }; + 03FE91D7125FB5DB00A40445 /* ltm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ltm.h; path = "lua-5.1.4/src/ltm.h"; sourceTree = ""; }; + 03FE91D8125FB5DB00A40445 /* lua.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lua.h; path = "lua-5.1.4/src/lua.h"; sourceTree = ""; }; + 03FE91D9125FB5DB00A40445 /* luaconf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = luaconf.h; path = "lua-5.1.4/src/luaconf.h"; sourceTree = ""; }; + 03FE91DA125FB5DB00A40445 /* lualib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lualib.h; path = "lua-5.1.4/src/lualib.h"; sourceTree = ""; }; + 03FE91DB125FB5DB00A40445 /* lundump.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lundump.c; path = "lua-5.1.4/src/lundump.c"; sourceTree = ""; }; + 03FE91DC125FB5DB00A40445 /* lundump.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lundump.h; path = "lua-5.1.4/src/lundump.h"; sourceTree = ""; }; + 03FE91DD125FB5DB00A40445 /* lvm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lvm.c; path = "lua-5.1.4/src/lvm.c"; sourceTree = ""; }; + 03FE91DE125FB5DB00A40445 /* lvm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lvm.h; path = "lua-5.1.4/src/lvm.h"; sourceTree = ""; }; + 03FE91DF125FB5DB00A40445 /* lzio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lzio.c; path = "lua-5.1.4/src/lzio.c"; sourceTree = ""; }; + 03FE91E0125FB5DB00A40445 /* lzio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lzio.h; path = "lua-5.1.4/src/lzio.h"; sourceTree = ""; }; + 03FE91E1125FB5DB00A40445 /* print.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = print.c; path = "lua-5.1.4/src/print.c"; sourceTree = ""; }; + 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MobsKilledCondition.xib; sourceTree = ""; }; + 03FFD46C110B930F0046AEDF /* MobsKilledConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MobsKilledConditionController.h; sourceTree = ""; }; + 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MobsKilledConditionController.m; sourceTree = ""; }; + 03FFD592110CB5440046AEDF /* InteractNPCActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InteractNPCActionController.h; sourceTree = ""; }; + 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InteractNPCActionController.m; sourceTree = ""; }; + 03FFD594110CB5440046AEDF /* InteractObjectActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InteractObjectActionController.h; sourceTree = ""; }; + 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InteractObjectActionController.m; sourceTree = ""; }; + 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InteractNPCAction.xib; sourceTree = ""; }; + 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InteractObjectAction.xib; sourceTree = ""; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; + 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PocketGnome_Prefix.pch; sourceTree = ""; }; + 614CD7891106182100BA1B2F /* Bot.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Bot.xib; sourceTree = ""; }; + 7D06F0400D23058B00DA4E99 /* AuraController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraController.h; sourceTree = ""; }; + 7D06F0410D23058B00DA4E99 /* AuraController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraController.m; sourceTree = ""; }; + 7D0C43CF0DF2089E005F3940 /* ScanGridView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScanGridView.h; sourceTree = ""; }; + 7D0C43D00DF2089E005F3940 /* ScanGridView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ScanGridView.m; sourceTree = ""; }; + 7D0C43F60DF20B0D005F3940 /* TransparentWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransparentWindow.h; sourceTree = ""; }; + 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TransparentWindow.m; sourceTree = ""; }; + 7D1659890D455F6500BDF5CA /* RouteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteSet.h; sourceTree = ""; }; + 7D16598A0D455F6500BDF5CA /* RouteSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteSet.m; sourceTree = ""; }; + 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = CGKeyCodeMap.plist; sourceTree = ""; }; + 7D1B39400F896A96005CA0CD /* ChatAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatAction.h; sourceTree = ""; }; + 7D1B39410F896A96005CA0CD /* ChatAction.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatAction.m; sourceTree = ""; }; + 7D1B39C40F897721005CA0CD /* Message.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Message.framework; path = /System/Library/Frameworks/Message.framework; sourceTree = ""; }; + 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ScriptingBridge.framework; path = /System/Library/Frameworks/ScriptingBridge.framework; sourceTree = ""; }; + 7D1B3A560F89885D005CA0CD /* Mail.app */ = {isa = PBXFileReference; lastKnownFileType = wrapper.application; name = Mail.app; path = /Applications/Mail.app; sourceTree = ""; }; + 7D1B3A940F898D89005CA0CD /* iChat.app */ = {isa = PBXFileReference; lastKnownFileType = wrapper.application; name = iChat.app; path = /Applications/iChat.app; sourceTree = ""; }; + 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Mail.png; sourceTree = ""; }; + 7D1B3B8E0F89AD22005CA0CD /* iChat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = iChat.png; sourceTree = ""; }; + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatLogController.h; sourceTree = ""; }; + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatLogController.m; sourceTree = ""; }; + 7D1BEE510F8733A400DF5FBF /* ChatLogEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatLogEntry.h; sourceTree = ""; }; + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatLogEntry.m; sourceTree = ""; }; + 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyBroadcaster.m; sourceTree = ""; }; + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTHotKeyCenter.m; sourceTree = ""; }; + 7D2167760DC456A400D5A815 /* PTKeyBroadcaster.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyBroadcaster.h; sourceTree = ""; }; + 7D2167770DC456A400D5A815 /* PTHotKey.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHotKey.h; sourceTree = ""; }; + 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyCodeTranslator.m; sourceTree = ""; }; + 7D2167790DC456A400D5A815 /* PTHotKeyCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHotKeyCenter.h; sourceTree = ""; }; + 7D21677A0DC456A400D5A815 /* PTHotKey.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTHotKey.m; sourceTree = ""; }; + 7D21677B0DC456A400D5A815 /* PTKeyCodeTranslator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyCodeTranslator.h; sourceTree = ""; }; + 7D21677C0DC456A400D5A815 /* PTKeyCombo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyCombo.h; sourceTree = ""; }; + 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyCombo.m; sourceTree = ""; }; + 7D2167840DC456D100D5A815 /* PTHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHeader.h; sourceTree = ""; }; + 7D2167F30DC4581700D5A815 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; + 7D220F130D1691E90026DF75 /* MobController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MobController.h; sourceTree = ""; }; + 7D220F140D1691E90026DF75 /* MobController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MobController.m; sourceTree = ""; }; + 7D3108E20EFDBCCB00ECFABE /* Bobber.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Bobber.png; sourceTree = ""; }; + 7D3109430EFDCBA700ECFABE /* splash.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = splash.mp3; sourceTree = ""; }; + 7D370B0B0E7350DD002FE3A4 /* Action.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Action.h; sourceTree = ""; }; + 7D370B0C0E7350DD002FE3A4 /* Action.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Action.m; sourceTree = ""; }; + 7D370C050E7366DC002FE3A4 /* ActionMenusController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionMenusController.h; sourceTree = ""; }; + 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ActionMenusController.m; sourceTree = ""; }; + 7D3C91EC0E47C8EA00EDF3B3 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = French; path = French.lproj/Gathering.plist; sourceTree = ""; }; + 7D41E5930DE9FE8800118EA0 /* PlayersController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayersController.h; sourceTree = ""; }; + 7D41E5940DE9FE8800118EA0 /* PlayersController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayersController.m; sourceTree = ""; }; + 7D41E5960DEA00A500118EA0 /* Player.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Player.h; sourceTree = ""; }; + 7D41E5970DEA00A500118EA0 /* Player.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Player.m; sourceTree = ""; }; + 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Holy_PrayerofSpirit.png; sourceTree = ""; }; + 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "BloodElf-Female.png"; sourceTree = ""; }; + 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "BloodElf-Male.png"; sourceTree = ""; }; + 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Draenei-Female.png"; sourceTree = ""; }; + 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Draenei-Male.png"; sourceTree = ""; }; + 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Dwarf-Female.png"; sourceTree = ""; }; + 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Dwarf-Male.png"; sourceTree = ""; }; + 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Gnome-Female.png"; sourceTree = ""; }; + 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Gnome-Male.png"; sourceTree = ""; }; + 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Human-Female.png"; sourceTree = ""; }; + 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Human-Male.png"; sourceTree = ""; }; + 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "NightElf-Female.png"; sourceTree = ""; }; + 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "NightElf-Male.png"; sourceTree = ""; }; + 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Orc-Female.png"; sourceTree = ""; }; + 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Orc-Male.png"; sourceTree = ""; }; + 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Tauren-Female.png"; sourceTree = ""; }; + 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Tauren-Male.png"; sourceTree = ""; }; + 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Troll-Female.png"; sourceTree = ""; }; + 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Troll-Male.png"; sourceTree = ""; }; + 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Undead-Female.png"; sourceTree = ""; }; + 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Undead-Male.png"; sourceTree = ""; }; + 7D41E87E0DEA2DFA00118EA0 /* Druid.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Druid.png; sourceTree = ""; }; + 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Hunter.png; sourceTree = ""; }; + 7D41E8800DEA2DFA00118EA0 /* Mage.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Mage.png; sourceTree = ""; }; + 7D41E8810DEA2DFA00118EA0 /* Paladin.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Paladin.png; sourceTree = ""; }; + 7D41E8820DEA2DFA00118EA0 /* Priest.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Priest.png; sourceTree = ""; }; + 7D41E8830DEA2DFA00118EA0 /* Rogue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Rogue.png; sourceTree = ""; }; + 7D41E8840DEA2DFA00118EA0 /* Shaman.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Shaman.png; sourceTree = ""; }; + 7D41E8850DEA2DFA00118EA0 /* Warlock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Warlock.png; sourceTree = ""; }; + 7D41E8860DEA2DFA00118EA0 /* Warrior.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Warrior.png; sourceTree = ""; }; + 7D41E8B60DEA31DD00118EA0 /* ImageAndTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageAndTextCell.h; sourceTree = ""; }; + 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ImageAndTextCell.m; sourceTree = ""; }; + 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Priest_Small.gif; sourceTree = ""; }; + 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Shaman_Small.gif; sourceTree = ""; }; + 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Paladin_Small.gif; sourceTree = ""; }; + 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Warlock_Small.gif; sourceTree = ""; }; + 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Mage_Small.gif; sourceTree = ""; }; + 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Warrior_Small.gif; sourceTree = ""; }; + 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Hunter_Small.gif; sourceTree = ""; }; + 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Druid_Small.gif; sourceTree = ""; }; + 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Rogue_Small.gif; sourceTree = ""; }; + 7D41E9240DEA38A500118EA0 /* Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Male.png; sourceTree = ""; }; + 7D41E9250DEA38A500118EA0 /* Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Female.png; sourceTree = ""; }; + 7D41E9A70DEA734200118EA0 /* Keybindings.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Keybindings.png; sourceTree = ""; }; + 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InterfaceBars.png; sourceTree = ""; }; + 7D41E9A90DEA734200118EA0 /* Result.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Result.png; sourceTree = ""; }; + 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = HotkeyFinished.png; sourceTree = ""; }; + 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TypeShortcut.png; sourceTree = ""; }; + 7D41EA0F0DEB554100118EA0 /* Unit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Unit.h; sourceTree = ""; }; + 7D41EA100DEB554100118EA0 /* Unit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Unit.m; sourceTree = ""; }; + 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = UnknownSmall.png; sourceTree = ""; }; + 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Orc-Female_Small.gif"; sourceTree = ""; }; + 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Gnome-Female_Small.gif"; sourceTree = ""; }; + 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "BloodElf-Female_Small.gif"; sourceTree = ""; }; + 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Orc-Male_Small.gif"; sourceTree = ""; }; + 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Troll-Female_Small.gif"; sourceTree = ""; }; + 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Undead-Male_Small.gif"; sourceTree = ""; }; + 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Human-Male_Small.gif"; sourceTree = ""; }; + 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "BloodElf-Male_Small.gif"; sourceTree = ""; }; + 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Draenei-Female_Small.gif"; sourceTree = ""; }; + 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Tauren-Male_Small.gif"; sourceTree = ""; }; + 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Draenei-Male_Small.gif"; sourceTree = ""; }; + 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Dwarf-Male_Small.gif"; sourceTree = ""; }; + 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Undead-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Gnome-Male_Small.gif"; sourceTree = ""; }; + 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Human-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Dwarf-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Tauren-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Troll-Male_Small.gif"; sourceTree = ""; }; + 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "NightElf-Male_Small.gif"; sourceTree = ""; }; + 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "NightElf-Female_Small.gif"; sourceTree = ""; }; + 7D45A6CA0E4461DE008A3601 /* NSData+SockAddr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+SockAddr.h"; sourceTree = ""; }; + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+SockAddr.m"; sourceTree = ""; }; + 7D4AFB320D9EDBF100A33CE1 /* bad.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = bad.tif; sourceTree = ""; }; + 7D4AFB330D9EDBF100A33CE1 /* good.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = good.tif; sourceTree = ""; }; + 7D53C0E10E5E2199007B3AA6 /* UKFileWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKFileWatcher.h; sourceTree = ""; }; + 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKMainThreadProxy.m; sourceTree = ""; }; + 7D53C0E30E5E2199007B3AA6 /* UKMainThreadProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKMainThreadProxy.h; sourceTree = ""; }; + 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKFileWatcher.m; sourceTree = ""; }; + 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKKQueue.m; sourceTree = ""; }; + 7D53C0E60E5E2199007B3AA6 /* UKKQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKKQueue.h; sourceTree = ""; }; + 7D53C0E70E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKFNSubscribeFileWatcher.h; sourceTree = ""; }; + 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKFNSubscribeFileWatcher.m; sourceTree = ""; }; + 7D5496410E1AA073004AA3E9 /* AuraStackConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraStackConditionController.h; sourceTree = ""; }; + 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraStackConditionController.m; sourceTree = ""; }; + 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AuraStackCondition.xib; sourceTree = ""; }; + 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Fishingpole_03.png; sourceTree = ""; }; + 7D5498940F02232500DD46F8 /* FishController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FishController.h; sourceTree = ""; }; + 7D5498950F02232500DD46F8 /* FishController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FishController.m; sourceTree = ""; }; + 7D5A38480D14B52900E491CD /* NSNumberToHexString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSNumberToHexString.h; sourceTree = ""; }; + 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSNumberToHexString.m; sourceTree = ""; }; + 7D5B92960D9F179D00423FC6 /* gnome.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = gnome.icns; sourceTree = ""; }; + 7D60430B0D5FC2DF001501AF /* mixed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mixed.png; sourceTree = ""; }; + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectConstants.h; sourceTree = ""; }; + 7D65C8F70D2EE14500C50DF7 /* Rule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Rule.h; sourceTree = ""; }; + 7D65C8F80D2EE14500C50DF7 /* Rule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Rule.m; sourceTree = ""; }; + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Condition.h; sourceTree = ""; }; + 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Condition.m; sourceTree = ""; }; + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProcedureController.h; sourceTree = ""; }; + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProcedureController.m; sourceTree = ""; }; + 7D65CA460D2F04D200C50DF7 /* Procedure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Procedure.h; sourceTree = ""; }; + 7D65CA470D2F04D200C50DF7 /* Procedure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Procedure.m; sourceTree = ""; }; + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Behavior.h; sourceTree = ""; }; + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Behavior.m; sourceTree = ""; }; + 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ChatLog.xib; sourceTree = ""; }; + 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Trade_Engraving.png; sourceTree = ""; }; + 7D70E7E00DC65372006B8826 /* ChatController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatController.h; sourceTree = ""; }; + 7D70E7E10DC65372006B8826 /* ChatController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatController.m; sourceTree = ""; }; + 7D7245400D1511F40094665C /* Mob.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Mob.h; sourceTree = ""; }; + 7D7245410D1511F40094665C /* Mob.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Mob.m; sourceTree = ""; }; + 7D7A695B0D26F04F0008C3FF /* NodeController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NodeController.h; sourceTree = ""; }; + 7D7A695C0D26F04F0008C3FF /* NodeController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NodeController.m; sourceTree = ""; }; + 7D7A6A470D270F130008C3FF /* WoWObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WoWObject.h; sourceTree = ""; }; + 7D7A6A480D270F130008C3FF /* WoWObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WoWObject.m; sourceTree = ""; }; + 7D7C66A20E58E74D002A6C96 /* TargetType.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TargetType.xib; sourceTree = ""; }; + 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatCount.xib; sourceTree = ""; }; + 7D7C66BA0E58E92F002A6C96 /* TargetTypeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetTypeConditionController.h; sourceTree = ""; }; + 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TargetTypeConditionController.m; sourceTree = ""; }; + 7D7C66DB0E58E97D002A6C96 /* CombatCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatCountConditionController.h; sourceTree = ""; }; + 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatCountConditionController.m; sourceTree = ""; }; + 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ProximityCount.xib; sourceTree = ""; }; + 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TargetClass.xib; sourceTree = ""; }; + 7D7C67140E58EC79002A6C96 /* ProximityCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProximityCountConditionController.h; sourceTree = ""; }; + 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProximityCountConditionController.m; sourceTree = ""; }; + 7D7C67170E58EC85002A6C96 /* TargetClassConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetClassConditionController.h; sourceTree = ""; }; + 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TargetClassConditionController.m; sourceTree = ""; }; + 7D80B4720DE75795004D00F6 /* Friendly.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Friendly.png; sourceTree = ""; }; + 7D80B4730DE75795004D00F6 /* Hostile.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Hostile.png; sourceTree = ""; }; + 7D80B4740DE75795004D00F6 /* Combat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Combat.png; sourceTree = ""; }; + 7D80B48C0DE75905004D00F6 /* Dead.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Dead.png; sourceTree = ""; }; + 7D80B4B00DE76098004D00F6 /* Neutral.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Neutral.png; sourceTree = ""; }; + 7D8343F90D17231300853E32 /* Position.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Position.h; sourceTree = ""; }; + 7D8343FA0D17231300853E32 /* Position.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Position.m; sourceTree = ""; }; + 7D9712940D248DA0005E3BD1 /* Item.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Item.h; sourceTree = ""; }; + 7D9712950D248DA0005E3BD1 /* Item.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Item.m; sourceTree = ""; }; + 7D9712970D248ED4005E3BD1 /* InventoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryController.h; sourceTree = ""; }; + 7D9712980D248ED4005E3BD1 /* InventoryController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryController.m; sourceTree = ""; }; + 7D9713C70D24D339005E3BD1 /* Node.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Node.h; sourceTree = ""; }; + 7D9713C80D24D339005E3BD1 /* Node.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Node.m; sourceTree = ""; }; + 7D9714760D24F16C005E3BD1 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = English; path = English.lproj/Gathering.plist; sourceTree = ""; }; + 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HealthConditionController.m; sourceTree = ""; }; + 7D9770C00D2D84D700E6D8F9 /* HealthConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HealthConditionController.h; sourceTree = ""; }; + 7D9771130D2D8C0E00E6D8F9 /* ConditionCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConditionCell.h; sourceTree = ""; }; + 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConditionCell.m; sourceTree = ""; }; + 7D9771160D2D8F6000E6D8F9 /* ConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConditionController.h; sourceTree = ""; }; + 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConditionController.m; sourceTree = ""; }; + 7D9771760D2D951900E6D8F9 /* BetterSegmentedControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterSegmentedControl.h; sourceTree = ""; }; + 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BetterSegmentedControl.m; sourceTree = ""; }; + 7D9772030D2DA23D00E6D8F9 /* StatusConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatusConditionController.h; sourceTree = ""; }; + 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatusConditionController.m; sourceTree = ""; }; + 7D9772730D2DA97A00E6D8F9 /* AuraConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraConditionController.h; sourceTree = ""; }; + 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraConditionController.m; sourceTree = ""; }; + 7D9772A70D2DB2B300E6D8F9 /* BetterTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterTableView.h; sourceTree = ""; }; + 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BetterTableView.m; sourceTree = ""; }; + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuleEditor.h; sourceTree = ""; }; + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RuleEditor.m; sourceTree = ""; }; + 7DA7B8C10D1DF92B00F81519 /* Spell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Spell.h; sourceTree = ""; }; + 7DA7B8C20D1DF92B00F81519 /* Spell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Spell.m; sourceTree = ""; }; + 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerNeutral.png; sourceTree = ""; }; + 7DA95E320E2302C400AC85E2 /* BannerHorde.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerHorde.png; sourceTree = ""; }; + 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerAlliance.png; sourceTree = ""; }; + 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = alarm.mp3; sourceTree = ""; }; + 7DAA07F60D5579ED00A6D06A /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; + 7DAA08010D557A7600A6D06A /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = ""; }; + 7DAA09A90D55988F00A6D06A /* Globals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Globals.h; sourceTree = ""; }; + 7DAAE7180D148972003F1E3C /* Controller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Controller.h; sourceTree = ""; }; + 7DAAE7190D148972003F1E3C /* Controller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Controller.m; sourceTree = ""; }; + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryAccess.h; sourceTree = ""; }; + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MemoryAccess.m; sourceTree = ""; }; + 7DAAE7620D148995003F1E3C /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerDataController.h; sourceTree = ""; }; + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerDataController.m; sourceTree = ""; }; + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Offsets.h; sourceTree = ""; }; + 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_DualWieldSpecialization.png; sourceTree = ""; }; + 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_ImprovedDisciplines.png; sourceTree = ""; }; + 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_Challange.png; sourceTree = ""; }; + 7DAD11640E117BF000B0F7BD /* Macro.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Macro.h; sourceTree = ""; }; + 7DAD11650E117BF000B0F7BD /* Macro.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Macro.m; sourceTree = ""; }; + 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = FactionTemplate.plist; sourceTree = ""; }; + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Aura.h; sourceTree = ""; }; + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Aura.m; sourceTree = ""; }; + 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.1.2.3.dylib; path = /usr/lib/libz.1.2.3.dylib; sourceTree = ""; }; + 7DB2C4480D3BFE4100100B4D /* BotController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BotController.h; sourceTree = ""; }; + 7DB2C4490D3BFE4100100B4D /* BotController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BotController.m; sourceTree = ""; }; + 7DB822290E33382900661394 /* TempEnchantCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TempEnchantCondition.xib; sourceTree = ""; }; + 7DB8222D0E33384300661394 /* TempEnchantConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TempEnchantConditionController.h; sourceTree = ""; }; + 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TempEnchantConditionController.m; sourceTree = ""; }; + 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Holy_MindVision.png; sourceTree = ""; }; + 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_FireResistanceTotem_01.png; sourceTree = ""; }; + 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Head_Dragon_Bronze.png; sourceTree = ""; }; + 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Gem_Bloodstone_01.png; sourceTree = ""; }; + 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Nature_PoisonCleansingTotem.png; sourceTree = ""; }; + 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Head_Dragon_Blue.png; sourceTree = ""; }; + 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = inv_misc_bag_14.png; sourceTree = ""; }; + 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Orb_05.png; sourceTree = ""; }; + 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Gear_01.png; sourceTree = ""; }; + 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_Revenge.png; sourceTree = ""; }; + 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Rogue_Sprint.png; sourceTree = ""; }; + 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcut.tif; sourceTree = ""; }; + 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcutPressed.tif; sourceTree = ""; }; + 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcutRollover.tif; sourceTree = ""; }; + 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRSnapback.tiff; sourceTree = ""; }; + 7DBDA6750E0DAE5D0021E180 /* NoAccessApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoAccessApplication.h; sourceTree = ""; }; + 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NoAccessApplication.m; sourceTree = ""; }; + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GrabWindow.h; sourceTree = ""; }; + 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GrabWindow.m; sourceTree = ""; }; + 7DBF31C50E94679500A592BD /* Growl.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Growl.framework; sourceTree = ""; }; + 7DC3FF150D57C75100BEB58B /* BetterAuthorizationSampleLibInstallTool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BetterAuthorizationSampleLibInstallTool.c; sourceTree = ""; }; + 7DC3FF160D57C75100BEB58B /* BetterAuthorizationSampleLib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterAuthorizationSampleLib.h; sourceTree = ""; }; + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BetterAuthorizationSampleLib.c; sourceTree = ""; }; + 7DC3FF260D57C79400BEB58B /* MemoryAccessTool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MemoryAccessTool.c; sourceTree = ""; }; + 7DC3FF270D57C79400BEB58B /* ToolCommon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ToolCommon.h; sourceTree = ""; }; + 7DC3FF280D57C79400BEB58B /* ToolCommon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ToolCommon.c; sourceTree = ""; }; + 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ActiveQuestIcon.png; sourceTree = ""; }; + 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = AvailableQuestIcon.png; sourceTree = ""; }; + 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BankerGossipIcon.png; sourceTree = ""; }; + 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BinderGossipIcon.png; sourceTree = ""; }; + 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = GossipGossipIcon.png; sourceTree = ""; }; + 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = PetitionGossipIcon.png; sourceTree = ""; }; + 7DC419EA0DEDFD0300F3B083 /* Scroll.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Scroll.png; sourceTree = ""; }; + 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TabardGossipIcon.png; sourceTree = ""; }; + 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TaxiGossipIcon.png; sourceTree = ""; }; + 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TrainerGossipIcon.png; sourceTree = ""; }; + 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = VendorGossipIcon.png; sourceTree = ""; }; + 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MinimapGuideFlag.png; sourceTree = ""; }; + 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = WarnTriangle.png; sourceTree = ""; }; + 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ResourceBlip.png; sourceTree = ""; }; + 7DC41A560DEE020B00F3B083 /* Repair.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Repair.png; sourceTree = ""; }; + 7DC41A6F0DEE041400F3B083 /* Skull.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Skull.png; sourceTree = ""; }; + 7DC41AD50DEE0CA100F3B083 /* Stable.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Stable.png; sourceTree = ""; }; + 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Innkeeper.png; sourceTree = ""; }; + 7DC41AE40DEE111600F3B083 /* Chicken.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Chicken.png; sourceTree = ""; }; + 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = NeutralCrest.gif; sourceTree = ""; }; + 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = HordeCrest.gif; sourceTree = ""; }; + 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = AllianceCrest.gif; sourceTree = ""; }; + 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = pgRoute.icns; sourceTree = ""; }; + 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = pgBehavior.icns; sourceTree = ""; }; + 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = gnome2.icns; sourceTree = ""; }; + 7DC8B44B0D4147CB00B25B45 /* DistanceConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DistanceConditionController.h; sourceTree = ""; }; + 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DistanceConditionController.m; sourceTree = ""; }; + 7DC8B45F0D4152EC00B25B45 /* InventoryConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryConditionController.h; sourceTree = ""; }; + 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryConditionController.m; sourceTree = ""; }; + 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "Growl Registration Ticket.growlRegDict"; sourceTree = ""; }; + 7DCB5A3F0D540647001678BC /* Memory.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Memory.xib; sourceTree = ""; }; + 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainMenu.xib; sourceTree = ""; }; + 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AuraCondition.xib; sourceTree = ""; }; + 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StatusCondition.xib; sourceTree = ""; }; + 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DistanceCondition.xib; sourceTree = ""; }; + 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HealthCondition.xib; sourceTree = ""; }; + 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InventoryCondition.xib; sourceTree = ""; }; + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryViewController.h; sourceTree = ""; }; + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MemoryViewController.m; sourceTree = ""; }; + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaypointController.h; sourceTree = ""; }; + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WaypointController.m; sourceTree = ""; }; + 7DD03F330D163F9A000CC1A6 /* Route.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Route.h; sourceTree = ""; }; + 7DD03F340D163F9A000CC1A6 /* Route.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Route.m; sourceTree = ""; }; + 7DD03F360D163FF8000CC1A6 /* Waypoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Waypoint.h; sourceTree = ""; }; + 7DD03F370D163FF8000CC1A6 /* Waypoint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Waypoint.m; sourceTree = ""; }; + 7DD1D14D0DD241F60069CB07 /* ComboPointConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComboPointConditionController.h; sourceTree = ""; }; + 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ComboPointConditionController.m; sourceTree = ""; }; + 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ComboPointCondition.xib; sourceTree = ""; }; + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellController.h; sourceTree = ""; }; + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellController.m; sourceTree = ""; }; + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CGSPrivate.h; sourceTree = ""; }; + 7DD64AF40D5D10FA00773CAB /* RouteVisualizationView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteVisualizationView.h; sourceTree = ""; }; + 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteVisualizationView.m; sourceTree = ""; }; + 7DD64B1F0D5D192500773CAB /* off.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = off.png; sourceTree = ""; }; + 7DD64B200D5D192500773CAB /* on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = on.png; sourceTree = ""; }; + 7DD8037C0D514E62005C2F01 /* Player.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Player.xib; sourceTree = ""; }; + 7DD803970D515142005C2F01 /* Spells.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Spells.xib; sourceTree = ""; }; + 7DD803A10D5151CA005C2F01 /* Routes.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Routes.xib; sourceTree = ""; }; + 7DD803A30D5153E5005C2F01 /* Behaviors.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Behaviors.xib; sourceTree = ""; }; + 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = DeathKnight.png; sourceTree = ""; }; + 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = DeathKnight_Small.gif; sourceTree = ""; }; + 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InteractWithTarget.png; sourceTree = ""; }; + 7DE53DD90E32B84C00C59033 /* IgnoreEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IgnoreEntry.h; sourceTree = ""; }; + 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IgnoreEntry.m; sourceTree = ""; }; + 7DE59CDE0E09CABB003C6559 /* NSString+URLEncode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+URLEncode.h"; sourceTree = ""; }; + 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+URLEncode.m"; sourceTree = ""; }; + 7DE983800E2B2BA800F41293 /* NSString+Extras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Extras.h"; sourceTree = ""; }; + 7DE983810E2B2BA800F41293 /* NSString+Extras.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Extras.m"; sourceTree = ""; }; + 7DF445510E241ABA0075B96B /* TotemConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TotemConditionController.h; sourceTree = ""; }; + 7DF445520E241ABA0075B96B /* TotemConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TotemConditionController.m; sourceTree = ""; }; + 7DF445540E241AE30075B96B /* TotemCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TotemCondition.xib; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* Pocket Gnome.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Pocket Gnome.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + D02F3C541182C37E000F4037 /* DatabaseManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseManager.h; sourceTree = ""; }; + D02F3C551182C37E000F4037 /* DatabaseManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DatabaseManager.m; sourceTree = ""; }; + D02F3C5B1182C497000F4037 /* MailActionProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailActionProfile.h; sourceTree = ""; }; + D02F3C5C1182C497000F4037 /* MailActionProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MailActionProfile.m; sourceTree = ""; }; + D02F3C5E1182C5AC000F4037 /* ProfileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProfileController.h; sourceTree = ""; }; + D02F3C5F1182C5AC000F4037 /* ProfileController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProfileController.m; sourceTree = ""; }; + D02F3C851182C975000F4037 /* Profile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Profile.h; sourceTree = ""; }; + D02F3C861182C975000F4037 /* Profile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Profile.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 7DAAE7630D148995003F1E3C /* Security.framework in Frameworks */, + 7DB260D50DB30922007DB867 /* libz.1.2.3.dylib in Frameworks */, + 7D2167F40DC4581700D5A815 /* Carbon.framework in Frameworks */, + 7DBF31C60E94679500A592BD /* Growl.framework in Frameworks */, + 7D1B39C50F897721005CA0CD /* Message.framework in Frameworks */, + 7D1B3A220F89860D005CA0CD /* ScriptingBridge.framework in Frameworks */, + 030604B71088140000C57D77 /* ShortcutRecorder.framework in Frameworks */, + 0322D72F110744D500EF3EEF /* CoreData.framework in Frameworks */, + 0393F413110A205800296CF8 /* libcrypto.dylib in Frameworks */, + 03981D8E112AEC870081835F /* Sparkle.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 03168DCA10FE8D0B00EF241B /* Waypoint Actions */ = { + isa = PBXGroup; + children = ( + 03BB227A1122F1160048DE7B /* StrandStatus.xib */, + 03BB222911225E410048DE7B /* GateCondition.xib */, + 0393F52F110A558F00296CF8 /* MailAction.xib */, + 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */, + 0393F52C110A558200296CF8 /* VendorAction.xib */, + 03168DD610FE90B600EF241B /* DurabilityCondition.xib */, + 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */, + 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */, + 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */, + 03168DDA10FE90B600EF241B /* QuestCondition.xib */, + 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */, + 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */, + 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */, + ); + name = "Waypoint Actions"; + sourceTree = ""; + }; + 03168ED410FF705A00EF241B /* Waypoint Action NIBs */ = { + isa = PBXGroup; + children = ( + 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */, + 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */, + 03685FA61103D73B001CE552 /* QuestGrabAction.xib */, + 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */, + 03685DD911026831001CE552 /* JumpAction.xib */, + 03685DC5110266FC001CE552 /* DelayAction.xib */, + 031695161101314B00EF241B /* ItemAction.xib */, + 031695171101314B00EF241B /* MacroAction.xib */, + 031695181101314B00EF241B /* SpellAction.xib */, + 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */, + 03168EDC10FF70C600EF241B /* RepairAction.xib */, + 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */, + 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */, + ); + name = "Waypoint Action NIBs"; + sourceTree = ""; + }; + 03168EE110FF70E900EF241B /* WaypointActions */ = { + isa = PBXGroup; + children = ( + 7D370B0B0E7350DD002FE3A4 /* Action.h */, + 7D370B0C0E7350DD002FE3A4 /* Action.m */, + 03168EE210FF713000EF241B /* ActionController.h */, + 03168EE310FF713000EF241B /* ActionController.m */, + 03168EFC10FF72DF00EF241B /* RepairActionController.h */, + 03168EFD10FF72DF00EF241B /* RepairActionController.m */, + 0316904510FF89FC00EF241B /* SwitchRouteActionController.h */, + 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */, + 031694CB110103C000EF241B /* SpellActionController.h */, + 031694CC110103C000EF241B /* SpellActionController.m */, + 031694CE110103CC00EF241B /* ItemActionController.h */, + 031694CF110103CC00EF241B /* ItemActionController.m */, + 031694D1110103DA00EF241B /* MacroActionController.h */, + 031694D2110103DA00EF241B /* MacroActionController.m */, + 031694D4110103E000EF241B /* DelayActionController.h */, + 031694D5110103E000EF241B /* DelayActionController.m */, + 031694D7110103E900EF241B /* JumpActionController.h */, + 031694D8110103E900EF241B /* JumpActionController.m */, + 03685FAB1103D768001CE552 /* QuestGrabActionController.h */, + 03685FAC1103D768001CE552 /* QuestGrabActionController.m */, + 03685FAE1103D77A001CE552 /* QuestTurnInActionController.h */, + 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */, + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */, + 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */, + 0393F531110A55DB00296CF8 /* MailActionController.h */, + 0393F532110A55DB00296CF8 /* MailActionController.m */, + 0393F534110A55E300296CF8 /* VendorActionController.h */, + 0393F535110A55E300296CF8 /* VendorActionController.m */, + 0393F537110A55EF00296CF8 /* ReverseRouteActionController.h */, + 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */, + 03FFD592110CB5440046AEDF /* InteractNPCActionController.h */, + 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */, + 03FFD594110CB5440046AEDF /* InteractObjectActionController.h */, + 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */, + 03A320D3114E88A9000D23EE /* JumpToWaypointActionController.h */, + 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */, + ); + name = WaypointActions; + sourceTree = ""; + }; + 034126E21135773900BE6819 /* PvP */ = { + isa = PBXGroup; + children = ( + 034126E41135774100BE6819 /* Battleground.h */, + 034126E51135774100BE6819 /* Battleground.m */, + 034126E71135774A00BE6819 /* PvPBehavior.h */, + 034126E81135774A00BE6819 /* PvPBehavior.m */, + ); + name = PvP; + sourceTree = ""; + }; + 0341DD68111B104100074CED /* Object Controllers */ = { + isa = PBXGroup; + children = ( + 0341DDD8111B21D700074CED /* ObjectController.h */, + 0341DDD9111B21D700074CED /* ObjectController.m */, + 7D220F130D1691E90026DF75 /* MobController.h */, + 7D220F140D1691E90026DF75 /* MobController.m */, + 7D41E5930DE9FE8800118EA0 /* PlayersController.h */, + 7D41E5940DE9FE8800118EA0 /* PlayersController.m */, + 7D7A695B0D26F04F0008C3FF /* NodeController.h */, + 7D7A695C0D26F04F0008C3FF /* NodeController.m */, + 7D9712970D248ED4005E3BD1 /* InventoryController.h */, + 7D9712980D248ED4005E3BD1 /* InventoryController.m */, + ); + name = "Object Controllers"; + sourceTree = ""; + }; + 03BE9607118282E4004DBFBF /* File Management */ = { + isa = PBXGroup; + children = ( + 03E1D7B6110F62CD003180E4 /* FileObject.h */, + 03E1D7B7110F62CD003180E4 /* FileObject.m */, + 03BE961811828343004DBFBF /* FileController.h */, + 03BE961911828343004DBFBF /* FileController.m */, + ); + name = "File Management"; + sourceTree = ""; + }; + 03CD6A651183596A00CCABFE /* Reversed */ = { + isa = PBXGroup; + children = ( + 03CD6A67118359B100CCABFE /* Defines.h */, + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */, + 03CD6A661183597C00CCABFE /* WoWDb */, + ); + name = Reversed; + sourceTree = ""; + }; + 03CD6A661183597C00CCABFE /* WoWDb */ = { + isa = PBXGroup; + children = ( + D02F3C541182C37E000F4037 /* DatabaseManager.h */, + D02F3C551182C37E000F4037 /* DatabaseManager.m */, + ); + name = WoWDb; + sourceTree = ""; + }; + 03FE91AB125FB5C700A40445 /* Lua */ = { + isa = PBXGroup; + children = ( + 03FE91AD125FB5DB00A40445 /* lapi.c */, + 03FE91AE125FB5DB00A40445 /* lapi.h */, + 03FE91AF125FB5DB00A40445 /* lauxlib.c */, + 03FE91B0125FB5DB00A40445 /* lauxlib.h */, + 03FE91B1125FB5DB00A40445 /* lbaselib.c */, + 03FE91B2125FB5DB00A40445 /* lcode.c */, + 03FE91B3125FB5DB00A40445 /* lcode.h */, + 03FE91B4125FB5DB00A40445 /* ldblib.c */, + 03FE91B5125FB5DB00A40445 /* ldebug.c */, + 03FE91B6125FB5DB00A40445 /* ldebug.h */, + 03FE91B7125FB5DB00A40445 /* ldo.c */, + 03FE91B8125FB5DB00A40445 /* ldo.h */, + 03FE91B9125FB5DB00A40445 /* ldump.c */, + 03FE91BA125FB5DB00A40445 /* lfunc.c */, + 03FE91BB125FB5DB00A40445 /* lfunc.h */, + 03FE91BC125FB5DB00A40445 /* lgc.c */, + 03FE91BD125FB5DB00A40445 /* lgc.h */, + 03FE91BE125FB5DB00A40445 /* linit.c */, + 03FE91BF125FB5DB00A40445 /* liolib.c */, + 03FE91C0125FB5DB00A40445 /* llex.c */, + 03FE91C1125FB5DB00A40445 /* llex.h */, + 03FE91C2125FB5DB00A40445 /* llimits.h */, + 03FE91C3125FB5DB00A40445 /* lmathlib.c */, + 03FE91C4125FB5DB00A40445 /* lmem.c */, + 03FE91C5125FB5DB00A40445 /* lmem.h */, + 03FE91C6125FB5DB00A40445 /* loadlib.c */, + 03FE91C7125FB5DB00A40445 /* lobject.c */, + 03FE91C8125FB5DB00A40445 /* lobject.h */, + 03FE91C9125FB5DB00A40445 /* lopcodes.c */, + 03FE91CA125FB5DB00A40445 /* lopcodes.h */, + 03FE91CB125FB5DB00A40445 /* loslib.c */, + 03FE91CC125FB5DB00A40445 /* lparser.c */, + 03FE91CD125FB5DB00A40445 /* lparser.h */, + 03FE91CE125FB5DB00A40445 /* lstate.c */, + 03FE91CF125FB5DB00A40445 /* lstate.h */, + 03FE91D0125FB5DB00A40445 /* lstring.c */, + 03FE91D1125FB5DB00A40445 /* lstring.h */, + 03FE91D2125FB5DB00A40445 /* lstrlib.c */, + 03FE91D3125FB5DB00A40445 /* ltable.c */, + 03FE91D4125FB5DB00A40445 /* ltable.h */, + 03FE91D5125FB5DB00A40445 /* ltablib.c */, + 03FE91D6125FB5DB00A40445 /* ltm.c */, + 03FE91D7125FB5DB00A40445 /* ltm.h */, + 03FE91D8125FB5DB00A40445 /* lua.h */, + 03FE91D9125FB5DB00A40445 /* luaconf.h */, + 03FE91DA125FB5DB00A40445 /* lualib.h */, + 03FE91DB125FB5DB00A40445 /* lundump.c */, + 03FE91DC125FB5DB00A40445 /* lundump.h */, + 03FE91DD125FB5DB00A40445 /* lvm.c */, + 03FE91DE125FB5DB00A40445 /* lvm.h */, + 03FE91DF125FB5DB00A40445 /* lzio.c */, + 03FE91E0125FB5DB00A40445 /* lzio.h */, + 03FE91E1125FB5DB00A40445 /* print.c */, + ); + name = Lua; + sourceTree = ""; + }; + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 0341DD68111B104100074CED /* Object Controllers */, + 7DAAE7180D148972003F1E3C /* Controller.h */, + 7DAAE7190D148972003F1E3C /* Controller.m */, + 7DB2C4480D3BFE4100100B4D /* BotController.h */, + 7DB2C4490D3BFE4100100B4D /* BotController.m */, + 7D5498940F02232500DD46F8 /* FishController.h */, + 7D5498950F02232500DD46F8 /* FishController.m */, + 7D70E7E00DC65372006B8826 /* ChatController.h */, + 7D70E7E10DC65372006B8826 /* ChatController.m */, + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */, + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */, + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */, + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */, + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */, + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */, + 03567AAB10DDAB52001ACE43 /* CombatController.h */, + 03567AAC10DDAB52001ACE43 /* CombatController.m */, + 03981E76112B898E0081835F /* MovementController.h */, + 03981E77112B898E0081835F /* MovementController.m */, + 7D06F0400D23058B00DA4E99 /* AuraController.h */, + 7D06F0410D23058B00DA4E99 /* AuraController.m */, + 7D370C050E7366DC002FE3A4 /* ActionMenusController.h */, + 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */, + 034429BE0FAA3E5600E9DE03 /* QuestController.h */, + 034429BF0FAA3E5600E9DE03 /* QuestController.m */, + 03CEF7860FCCD93100B47336 /* CorpseController.h */, + 03CEF7870FCCD93100B47336 /* CorpseController.m */, + 030C2E4B0FDC09B300E80F7E /* LootController.h */, + 030C2E4C0FDC09B300E80F7E /* LootController.m */, + 030604F11088162100C57D77 /* OffsetController.h */, + 030604F21088162100C57D77 /* OffsetController.m */, + 0306057A10881CAE00C57D77 /* MacroController.h */, + 0306057B10881CAE00C57D77 /* MacroController.m */, + 03A01B0B109A2A9600E6098E /* StatisticsController.h */, + 03A01B0C109A2A9600E6098E /* StatisticsController.m */, + 0313B4D610BAEA0B009E74E4 /* EventController.h */, + 0313B4D710BAEA0B009E74E4 /* EventController.m */, + 038709B810D576E100DF5B90 /* BlacklistController.h */, + 038709B910D576E100DF5B90 /* BlacklistController.m */, + 03BD330C11120A7A00941971 /* BindingsController.h */, + 03BD330D11120A7A00941971 /* BindingsController.m */, + 03981F36112C819E0081835F /* LogController.h */, + 03981F37112C819E0081835F /* LogController.m */, + 0344CB211267D0E700B4A9C7 /* LuaController.h */, + 0344CB221267D0E700B4A9C7 /* LuaController.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 03981D8D112AEC860081835F /* Sparkle.framework */, + 0393F412110A205800296CF8 /* libcrypto.dylib */, + 0322D72E110744D500EF3EEF /* CoreData.framework */, + 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */, + 7D1B39C40F897721005CA0CD /* Message.framework */, + 7D2167F30DC4581700D5A815 /* Carbon.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + 7DAA08010D557A7600A6D06A /* CoreServices.framework */, + 7DAA07F60D5579ED00A6D06A /* CoreFoundation.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */, + 7DAAE7620D148995003F1E3C /* Security.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 030604B61088140000C57D77 /* ShortcutRecorder.framework */, + 7DBF31C50E94679500A592BD /* Growl.framework */, + 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* Pocket Gnome.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* WoWWaypoint */ = { + isa = PBXGroup; + children = ( + 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */, + 080E96DDFE201D6D7F000001 /* Classes */, + 7D97730C0D2DBF2800E6D8F9 /* GUI Controllers */, + 7D65C8F60D2EE0B100C50DF7 /* GUI Subclasses */, + 7D9770BA0D2D84C400E6D8F9 /* Rules & Procedures */, + 7D65CA9F0D2F095F00C50DF7 /* Waypoints & Routes */, + 034126E21135773900BE6819 /* PvP */, + 7D72453E0D1511E20094665C /* Units */, + 03CD6A651183596A00CCABFE /* Reversed */, + 03BE9607118282E4004DBFBF /* File Management */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 7D1B3A560F89885D005CA0CD /* Mail.app */, + 7D1B3A940F898D89005CA0CD /* iChat.app */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = WoWWaypoint; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 03FE91AB125FB5C700A40445 /* Lua */, + 7D41E8B60DEA31DD00118EA0 /* ImageAndTextCell.h */, + 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */, + 7D2167440DC4566600D5A815 /* PTKeyCode */, + 7D53C0DF0E5E2182007B3AA6 /* UKKQueue */, + 7DC3FF240D57C78700BEB58B /* Helper Tools */, + 7DBDA6750E0DAE5D0021E180 /* NoAccessApplication.h */, + 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */, + 7DAA09A90D55988F00A6D06A /* Globals.h */, + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */, + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */, + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */, + 29B97316FDCFA39411CA2CEA /* main.m */, + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */, + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */, + 7D5A38480D14B52900E491CD /* NSNumberToHexString.h */, + 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */, + 7DE59CDE0E09CABB003C6559 /* NSString+URLEncode.h */, + 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */, + 7DE983800E2B2BA800F41293 /* NSString+Extras.h */, + 7DE983810E2B2BA800F41293 /* NSString+Extras.m */, + 7D45A6CA0E4461DE008A3601 /* NSData+SockAddr.h */, + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */, + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */, + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */, + 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */, + 032B8C030FDEE37900807DD0 /* Errors.h */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 0331619511AAF1B900467490 /* appcast.xml */, + 03981DE8112B22E90081835F /* dsa_pub.pem */, + 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */, + 7D3109430EFDCBA700ECFABE /* splash.mp3 */, + 7D3108E20EFDBCCB00ECFABE /* Bobber.png */, + 7D41E99A0DEA731E00118EA0 /* Hotkey Help */, + 7D5B92960D9F179D00423FC6 /* gnome.icns */, + 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */, + 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */, + 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */, + 7DBC344F0DB57665000C9BCF /* SRImages */, + 7DD64B090D5D191B00773CAB /* Images */, + 7DBA60570D51D27100FD6A5F /* WoW Icons */, + 614CD7891106182100BA1B2F /* Bot.xib */, + 034126C3113570E100BE6819 /* PvP.xib */, + 03A01B39109A2CFF00E6098E /* Statistics.xib */, + 7DD8037C0D514E62005C2F01 /* Player.xib */, + 7DD803970D515142005C2F01 /* Spells.xib */, + 03CD6AC31183D5AC00CCABFE /* Profiles.xib */, + 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */, + 0341DD5F111B0F6B00074CED /* Objects.xib */, + 7DD803A10D5151CA005C2F01 /* Routes.xib */, + 7DD803A30D5153E5005C2F01 /* Behaviors.xib */, + 7DCB5A3F0D540647001678BC /* Memory.xib */, + 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */, + 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */, + 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */, + 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */, + 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */, + 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */, + 8D1107310486CEB800E47090 /* Info.plist */, + 03C42CC91096839E0085E888 /* Macros.plist */, + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + 03168ED410FF705A00EF241B /* Waypoint Action NIBs */, + 7D54DCB80E08449F00E1B463 /* Condition NIBs */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; + 7D2167440DC4566600D5A815 /* PTKeyCode */ = { + isa = PBXGroup; + children = ( + 7D2167840DC456D100D5A815 /* PTHeader.h */, + 7D2167770DC456A400D5A815 /* PTHotKey.h */, + 7D21677A0DC456A400D5A815 /* PTHotKey.m */, + 7D21677C0DC456A400D5A815 /* PTKeyCombo.h */, + 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */, + 7D2167790DC456A400D5A815 /* PTHotKeyCenter.h */, + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */, + 7D2167760DC456A400D5A815 /* PTKeyBroadcaster.h */, + 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */, + 7D21677B0DC456A400D5A815 /* PTKeyCodeTranslator.h */, + 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */, + ); + name = PTKeyCode; + sourceTree = ""; + }; + 7D41E8330DEA2DC900118EA0 /* Toolbar */ = { + isa = PBXGroup; + children = ( + 03A4047B0FE148C60087BC0D /* mbobbleicon.png */, + 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */, + 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */, + 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */, + 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */, + 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */, + 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */, + 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */, + 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */, + 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */, + 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */, + 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */, + 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */, + 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */, + 7DBA606F0D51D54E00FD6A5F /* Unused */, + ); + name = Toolbar; + sourceTree = ""; + }; + 7D41E8520DEA2DDE00118EA0 /* Race */ = { + isa = PBXGroup; + children = ( + 7D41EEC20DECD7BA00118EA0 /* Small */, + 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */, + 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */, + 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */, + 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */, + 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */, + 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */, + 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */, + 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */, + 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */, + 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */, + 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */, + 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */, + 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */, + 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */, + 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */, + 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */, + 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */, + 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */, + 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */, + 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */, + ); + name = Race; + sourceTree = ""; + }; + 7D41E87B0DEA2DEC00118EA0 /* Class */ = { + isa = PBXGroup; + children = ( + 7D41E8F50DEA378B00118EA0 /* Small */, + 7D41E87E0DEA2DFA00118EA0 /* Druid.png */, + 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */, + 7D41E8800DEA2DFA00118EA0 /* Mage.png */, + 7D41E8810DEA2DFA00118EA0 /* Paladin.png */, + 7D41E8820DEA2DFA00118EA0 /* Priest.png */, + 7D41E8830DEA2DFA00118EA0 /* Rogue.png */, + 7D41E8840DEA2DFA00118EA0 /* Shaman.png */, + 7D41E8850DEA2DFA00118EA0 /* Warlock.png */, + 7D41E8860DEA2DFA00118EA0 /* Warrior.png */, + 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */, + ); + name = Class; + sourceTree = ""; + }; + 7D41E8F50DEA378B00118EA0 /* Small */ = { + isa = PBXGroup; + children = ( + 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */, + 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */, + 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */, + 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */, + 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */, + 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */, + 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */, + 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */, + 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */, + 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */, + ); + name = Small; + sourceTree = ""; + }; + 7D41E9210DEA389800118EA0 /* Gender */ = { + isa = PBXGroup; + children = ( + 7D41E9240DEA38A500118EA0 /* Male.png */, + 7D41E9250DEA38A500118EA0 /* Female.png */, + ); + name = Gender; + sourceTree = ""; + }; + 7D41E99A0DEA731E00118EA0 /* Hotkey Help */ = { + isa = PBXGroup; + children = ( + 7D41E9A70DEA734200118EA0 /* Keybindings.png */, + 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */, + 7D41E9A90DEA734200118EA0 /* Result.png */, + 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */, + 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */, + 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */, + ); + name = "Hotkey Help"; + sourceTree = ""; + }; + 7D41EEC20DECD7BA00118EA0 /* Small */ = { + isa = PBXGroup; + children = ( + 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */, + 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */, + 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */, + 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */, + 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */, + 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */, + 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */, + 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */, + 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */, + 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */, + 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */, + 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */, + 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */, + 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */, + 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */, + 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */, + 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */, + 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */, + 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */, + 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */, + ); + name = Small; + sourceTree = ""; + }; + 7D53C0DF0E5E2182007B3AA6 /* UKKQueue */ = { + isa = PBXGroup; + children = ( + 7D53C0E10E5E2199007B3AA6 /* UKFileWatcher.h */, + 7D53C0E30E5E2199007B3AA6 /* UKMainThreadProxy.h */, + 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */, + 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */, + 7D53C0E60E5E2199007B3AA6 /* UKKQueue.h */, + 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */, + 7D53C0E70E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.h */, + 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */, + ); + name = UKKQueue; + sourceTree = ""; + }; + 7D54DCB80E08449F00E1B463 /* Condition NIBs */ = { + isa = PBXGroup; + children = ( + 03168DCA10FE8D0B00EF241B /* Waypoint Actions */, + 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */, + 038A4B4510E9656D00577D8F /* LastSpellCast.xib */, + 0350738310CDBA460004636E /* SpellCooldown.xib */, + 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */, + 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */, + 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */, + 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */, + 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */, + 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */, + 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */, + 7DF445540E241AE30075B96B /* TotemCondition.xib */, + 7DB822290E33382900661394 /* TempEnchantCondition.xib */, + 7D7C66A20E58E74D002A6C96 /* TargetType.xib */, + 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */, + 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */, + 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */, + ); + name = "Condition NIBs"; + sourceTree = ""; + }; + 7D65C8F50D2EE06200C50DF7 /* Conditions */ = { + isa = PBXGroup; + children = ( + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */, + 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */, + 7D9771130D2D8C0E00E6D8F9 /* ConditionCell.h */, + 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */, + 7D9771160D2D8F6000E6D8F9 /* ConditionController.h */, + 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */, + 7D9770C00D2D84D700E6D8F9 /* HealthConditionController.h */, + 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */, + 7D9772030D2DA23D00E6D8F9 /* StatusConditionController.h */, + 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */, + 7D9772730D2DA97A00E6D8F9 /* AuraConditionController.h */, + 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */, + 7D5496410E1AA073004AA3E9 /* AuraStackConditionController.h */, + 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */, + 7DC8B44B0D4147CB00B25B45 /* DistanceConditionController.h */, + 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */, + 7DC8B45F0D4152EC00B25B45 /* InventoryConditionController.h */, + 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */, + 7DD1D14D0DD241F60069CB07 /* ComboPointConditionController.h */, + 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */, + 7DF445510E241ABA0075B96B /* TotemConditionController.h */, + 7DF445520E241ABA0075B96B /* TotemConditionController.m */, + 7DB8222D0E33384300661394 /* TempEnchantConditionController.h */, + 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */, + 7D7C66BA0E58E92F002A6C96 /* TargetTypeConditionController.h */, + 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */, + 7D7C67170E58EC85002A6C96 /* TargetClassConditionController.h */, + 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */, + 7D7C66DB0E58E97D002A6C96 /* CombatCountConditionController.h */, + 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */, + 7D7C67140E58EC79002A6C96 /* ProximityCountConditionController.h */, + 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */, + 0350738710CDBA640004636E /* SpellCooldownConditionController.h */, + 0350738810CDBA640004636E /* SpellCooldownConditionController.m */, + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */, + 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */, + 03B6D26010F626EA00EC6EFF /* RuneConditionController.h */, + 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */, + 03168DC610FE8BA900EF241B /* DurabilityConditionController.h */, + 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */, + 03168E1910FE972300EF241B /* PlayerLevelConditionController.h */, + 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */, + 03168E1C10FE972B00EF241B /* PlayerZoneConditionController.h */, + 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */, + 03168E1F10FE973900EF241B /* QuestConditionController.h */, + 03168E2010FE973900EF241B /* QuestConditionController.m */, + 03168E2210FE974800EF241B /* RouteRunCountConditionController.h */, + 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */, + 03168E2510FE975300EF241B /* RouteRunTimeConditionController.h */, + 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */, + 03168E2810FE975E00EF241B /* InventoryFreeConditionController.h */, + 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */, + 03FFD46C110B930F0046AEDF /* MobsKilledConditionController.h */, + 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */, + 03BB2218112258A00048DE7B /* GateConditionController.h */, + 03BB2219112258A00048DE7B /* GateConditionController.m */, + 03BB227C1122F1240048DE7B /* StrandStatusConditionController.h */, + 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */, + ); + name = Conditions; + sourceTree = ""; + }; + 7D65C8F60D2EE0B100C50DF7 /* GUI Subclasses */ = { + isa = PBXGroup; + children = ( + 7D9772A70D2DB2B300E6D8F9 /* BetterTableView.h */, + 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */, + 7D9771760D2D951900E6D8F9 /* BetterSegmentedControl.h */, + 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */, + 7DD64AF40D5D10FA00773CAB /* RouteVisualizationView.h */, + 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */, + 7D0C43CF0DF2089E005F3940 /* ScanGridView.h */, + 7D0C43D00DF2089E005F3940 /* ScanGridView.m */, + 7D0C43F60DF20B0D005F3940 /* TransparentWindow.h */, + 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */, + ); + name = "GUI Subclasses"; + sourceTree = ""; + }; + 7D65CA9F0D2F095F00C50DF7 /* Waypoints & Routes */ = { + isa = PBXGroup; + children = ( + 7DD03F330D163F9A000CC1A6 /* Route.h */, + 7DD03F340D163F9A000CC1A6 /* Route.m */, + 7DD03F360D163FF8000CC1A6 /* Waypoint.h */, + 7DD03F370D163FF8000CC1A6 /* Waypoint.m */, + 7D1659890D455F6500BDF5CA /* RouteSet.h */, + 7D16598A0D455F6500BDF5CA /* RouteSet.m */, + 038769131124532000B2C571 /* RouteCollection.h */, + 038769141124532000B2C571 /* RouteCollection.m */, + ); + name = "Waypoints & Routes"; + sourceTree = ""; + }; + 7D72453E0D1511E20094665C /* Units */ = { + isa = PBXGroup; + children = ( + 03503FF0125A9A0300E511C8 /* Objects_Enum.h */, + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */, + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */, + 7D7A6A470D270F130008C3FF /* WoWObject.h */, + 7D7A6A480D270F130008C3FF /* WoWObject.m */, + 7D41EA0F0DEB554100118EA0 /* Unit.h */, + 7D41EA100DEB554100118EA0 /* Unit.m */, + 7D7245400D1511F40094665C /* Mob.h */, + 7D7245410D1511F40094665C /* Mob.m */, + 7D41E5960DEA00A500118EA0 /* Player.h */, + 7D41E5970DEA00A500118EA0 /* Player.m */, + 7D9712940D248DA0005E3BD1 /* Item.h */, + 7D9712950D248DA0005E3BD1 /* Item.m */, + 7D9713C70D24D339005E3BD1 /* Node.h */, + 7D9713C80D24D339005E3BD1 /* Node.m */, + 7DA7B8C10D1DF92B00F81519 /* Spell.h */, + 7DA7B8C20D1DF92B00F81519 /* Spell.m */, + 7D8343F90D17231300853E32 /* Position.h */, + 7D8343FA0D17231300853E32 /* Position.m */, + 7DAD11640E117BF000B0F7BD /* Macro.h */, + 7DAD11650E117BF000B0F7BD /* Macro.m */, + 7D1BEE510F8733A400DF5FBF /* ChatLogEntry.h */, + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */, + 03CEF7840FCCD93100B47336 /* Corpse.h */, + 03CEF7850FCCD93100B47336 /* Corpse.m */, + 034429B60FAA3E1800E9DE03 /* Quest.h */, + 034429B70FAA3E1800E9DE03 /* Quest.m */, + 034429BB0FAA3E3800E9DE03 /* QuestItem.h */, + 034429BC0FAA3E3800E9DE03 /* QuestItem.m */, + ); + name = Units; + sourceTree = ""; + }; + 7D80B4710DE7578C004D00F6 /* Status Icons */ = { + isa = PBXGroup; + children = ( + 7D80B48C0DE75905004D00F6 /* Dead.png */, + 7D80B4720DE75795004D00F6 /* Friendly.png */, + 7D80B4B00DE76098004D00F6 /* Neutral.png */, + 7D80B4730DE75795004D00F6 /* Hostile.png */, + 7D80B4740DE75795004D00F6 /* Combat.png */, + 7DC41A6F0DEE041400F3B083 /* Skull.png */, + ); + name = "Status Icons"; + sourceTree = ""; + }; + 7D9770BA0D2D84C400E6D8F9 /* Rules & Procedures */ = { + isa = PBXGroup; + children = ( + 0362CDDC11A99CED00EA65B2 /* CombatProfile.h */, + 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */, + D02F3C5B1182C497000F4037 /* MailActionProfile.h */, + D02F3C5C1182C497000F4037 /* MailActionProfile.m */, + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */, + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */, + D02F3C851182C975000F4037 /* Profile.h */, + D02F3C861182C975000F4037 /* Profile.m */, + 03168EE110FF70E900EF241B /* WaypointActions */, + 7D65C8F70D2EE14500C50DF7 /* Rule.h */, + 7D65C8F80D2EE14500C50DF7 /* Rule.m */, + 7D65CA460D2F04D200C50DF7 /* Procedure.h */, + 7D65CA470D2F04D200C50DF7 /* Procedure.m */, + 7D65C8F50D2EE06200C50DF7 /* Conditions */, + 7DE53DD90E32B84C00C59033 /* IgnoreEntry.h */, + 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */, + 7D1B39400F896A96005CA0CD /* ChatAction.h */, + 7D1B39410F896A96005CA0CD /* ChatAction.m */, + ); + name = "Rules & Procedures"; + sourceTree = ""; + }; + 7D97730C0D2DBF2800E6D8F9 /* GUI Controllers */ = { + isa = PBXGroup; + children = ( + 034126BF1135706E00BE6819 /* PvPController.h */, + 034126C01135706E00BE6819 /* PvPController.m */, + 0341DD64111B0FBE00074CED /* ObjectsController.h */, + 0341DD65111B0FBE00074CED /* ObjectsController.m */, + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */, + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */, + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */, + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */, + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */, + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */, + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */, + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */, + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */, + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */, + D02F3C5E1182C5AC000F4037 /* ProfileController.h */, + D02F3C5F1182C5AC000F4037 /* ProfileController.m */, + ); + name = "GUI Controllers"; + sourceTree = ""; + }; + 7DA95E190E2302BD00AC85E2 /* Banners */ = { + isa = PBXGroup; + children = ( + 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */, + 7DA95E320E2302C400AC85E2 /* BannerHorde.png */, + 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */, + ); + name = Banners; + sourceTree = ""; + }; + 7DAA05710D55656200A6D06A /* Authentication Library */ = { + isa = PBXGroup; + children = ( + 7DC3FF160D57C75100BEB58B /* BetterAuthorizationSampleLib.h */, + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */, + 7DC3FF150D57C75100BEB58B /* BetterAuthorizationSampleLibInstallTool.c */, + ); + name = "Authentication Library"; + sourceTree = ""; + }; + 7DAB64580E22A84A00B84C0E /* Ability Icons */ = { + isa = PBXGroup; + children = ( + 0352F46511376DA5005B28D6 /* PVP.png */, + 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */, + 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */, + 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */, + ); + name = "Ability Icons"; + sourceTree = ""; + }; + 7DBA60570D51D27100FD6A5F /* WoW Icons */ = { + isa = PBXGroup; + children = ( + 7DA95E190E2302BD00AC85E2 /* Banners */, + 7DAB64580E22A84A00B84C0E /* Ability Icons */, + 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */, + 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */, + 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */, + 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */, + 7DC419E30DEDFD0300F3B083 /* Nodes */, + 7D41E87B0DEA2DEC00118EA0 /* Class */, + 7D41E8520DEA2DDE00118EA0 /* Race */, + 7D41E9210DEA389800118EA0 /* Gender */, + 7D80B4710DE7578C004D00F6 /* Status Icons */, + 7D41E8330DEA2DC900118EA0 /* Toolbar */, + ); + name = "WoW Icons"; + sourceTree = ""; + }; + 7DBA606F0D51D54E00FD6A5F /* Unused */ = { + isa = PBXGroup; + children = ( + 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */, + ); + name = Unused; + sourceTree = ""; + }; + 7DBC344F0DB57665000C9BCF /* SRImages */ = { + isa = PBXGroup; + children = ( + 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */, + 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */, + 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */, + 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */, + ); + name = SRImages; + path = Images; + sourceTree = ""; + }; + 7DC3FF240D57C78700BEB58B /* Helper Tools */ = { + isa = PBXGroup; + children = ( + 7DC3FF270D57C79400BEB58B /* ToolCommon.h */, + 7DC3FF280D57C79400BEB58B /* ToolCommon.c */, + 7DC3FF260D57C79400BEB58B /* MemoryAccessTool.c */, + 7DAA05710D55656200A6D06A /* Authentication Library */, + ); + name = "Helper Tools"; + sourceTree = ""; + }; + 7DC419E30DEDFD0300F3B083 /* Nodes */ = { + isa = PBXGroup; + children = ( + 7DC41AE40DEE111600F3B083 /* Chicken.png */, + 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */, + 7DC41AD50DEE0CA100F3B083 /* Stable.png */, + 7DC41A560DEE020B00F3B083 /* Repair.png */, + 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */, + 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */, + 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */, + 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */, + 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */, + 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */, + 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */, + 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */, + 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */, + 7DC419EA0DEDFD0300F3B083 /* Scroll.png */, + 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */, + 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */, + 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */, + 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */, + ); + path = Nodes; + sourceTree = ""; + }; + 7DD64B090D5D191B00773CAB /* Images */ = { + isa = PBXGroup; + children = ( + 7DD64B1F0D5D192500773CAB /* off.png */, + 7D60430B0D5FC2DF001501AF /* mixed.png */, + 7DD64B200D5D192500773CAB /* on.png */, + 7D4AFB320D9EDBF100A33CE1 /* bad.tif */, + 7D4AFB330D9EDBF100A33CE1 /* good.tif */, + 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */, + 7D1B3B8E0F89AD22005CA0CD /* iChat.png */, + ); + name = Images; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* Pocket Gnome */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Pocket Gnome" */; + buildPhases = ( + 83A9BBD61178B706003E3683 /* Get SVN Revision */, + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 7DC8B60C0D419BF500B25B45 /* CopyFiles */, + ); + buildRules = ( + 7D1B3A500F8987B1005CA0CD /* PBXBuildRule */, + ); + dependencies = ( + ); + name = "Pocket Gnome"; + productInstallPath = "$(HOME)/Applications"; + productName = WoWWaypoint; + productReference = 8D1107320486CEB800E47090 /* Pocket Gnome.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + attributes = { + ORGANIZATIONNAME = "Savory Software, LLC\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010"; + }; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pocket Gnome" */; + compatibilityVersion = "Xcode 3.0"; + hasScannedForEncodings = 1; + knownRegions = ( + English, + Japanese, + French, + German, + en, + ); + mainGroup = 29B97314FDCFA39411CA2CEA /* WoWWaypoint */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* Pocket Gnome */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7D6BEC8D0F8844F600ED364A /* Growl Registration Ticket.growlRegDict in Resources */, + 7DB0ABC90EABED7F00B81BC1 /* FactionTemplate.plist in Resources */, + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + 7D3C91EB0E47C8C700EDF3B3 /* Gathering.plist in Resources */, + 7DD8037D0D514E62005C2F01 /* Player.xib in Resources */, + 7DD803980D515142005C2F01 /* Spells.xib in Resources */, + 7DD803A20D5151CA005C2F01 /* Routes.xib in Resources */, + 7DD803A40D5153E5005C2F01 /* Behaviors.xib in Resources */, + 7DBA60600D51D28600FD6A5F /* Spell_Holy_MindVision.png in Resources */, + 7DBA60620D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png in Resources */, + 7DBA60630D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png in Resources */, + 7DBA60640D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png in Resources */, + 7DBA60660D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png in Resources */, + 7DBA60690D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png in Resources */, + 7DBA606B0D51D38B00FD6A5F /* inv_misc_bag_14.png in Resources */, + 7DBA606D0D51D52600FD6A5F /* INV_Misc_Orb_05.png in Resources */, + 7DBA607B0D51D68000FD6A5F /* INV_Misc_Gear_01.png in Resources */, + 7DBA60810D51D75C00FD6A5F /* Ability_Warrior_Revenge.png in Resources */, + 7DBA60A20D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png in Resources */, + 7DCB5A400D540647001678BC /* Memory.xib in Resources */, + 7DD64B210D5D192500773CAB /* off.png in Resources */, + 7DD64B220D5D192500773CAB /* on.png in Resources */, + 7D60430C0D5FC2DF001501AF /* mixed.png in Resources */, + 7D4AFB340D9EDBF100A33CE1 /* bad.tif in Resources */, + 7D4AFB350D9EDBF100A33CE1 /* good.tif in Resources */, + 7DBC34540DB57665000C9BCF /* SRRemoveShortcut.tif in Resources */, + 7DBC34550DB57665000C9BCF /* SRRemoveShortcutPressed.tif in Resources */, + 7DBC34560DB57665000C9BCF /* SRRemoveShortcutRollover.tif in Resources */, + 7DBC34570DB57665000C9BCF /* SRSnapback.tiff in Resources */, + 7DD1D1560DD242A70069CB07 /* ComboPointCondition.xib in Resources */, + 7D80B4750DE75795004D00F6 /* Friendly.png in Resources */, + 7D80B4760DE75795004D00F6 /* Hostile.png in Resources */, + 7D80B4770DE75795004D00F6 /* Combat.png in Resources */, + 7D80B48D0DE75905004D00F6 /* Dead.png in Resources */, + 7D80B4B10DE76098004D00F6 /* Neutral.png in Resources */, + 7D41E8130DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png in Resources */, + 7D41E8670DEA2DE800118EA0 /* BloodElf-Female.png in Resources */, + 7D41E8680DEA2DE800118EA0 /* BloodElf-Male.png in Resources */, + 7D41E8690DEA2DE800118EA0 /* Draenei-Female.png in Resources */, + 7D41E86A0DEA2DE800118EA0 /* Draenei-Male.png in Resources */, + 7D41E86B0DEA2DE800118EA0 /* Dwarf-Female.png in Resources */, + 7D41E86C0DEA2DE800118EA0 /* Dwarf-Male.png in Resources */, + 7D41E86D0DEA2DE800118EA0 /* Gnome-Female.png in Resources */, + 7D41E86E0DEA2DE800118EA0 /* Gnome-Male.png in Resources */, + 7D41E86F0DEA2DE800118EA0 /* Human-Female.png in Resources */, + 7D41E8700DEA2DE800118EA0 /* Human-Male.png in Resources */, + 7D41E8710DEA2DE800118EA0 /* NightElf-Female.png in Resources */, + 7D41E8720DEA2DE800118EA0 /* NightElf-Male.png in Resources */, + 7D41E8730DEA2DE800118EA0 /* Orc-Female.png in Resources */, + 7D41E8740DEA2DE800118EA0 /* Orc-Male.png in Resources */, + 7D41E8750DEA2DE800118EA0 /* Tauren-Female.png in Resources */, + 7D41E8760DEA2DE800118EA0 /* Tauren-Male.png in Resources */, + 7D41E8770DEA2DE800118EA0 /* Troll-Female.png in Resources */, + 7D41E8780DEA2DE800118EA0 /* Troll-Male.png in Resources */, + 7D41E8790DEA2DE800118EA0 /* Undead-Female.png in Resources */, + 7D41E87A0DEA2DE800118EA0 /* Undead-Male.png in Resources */, + 7D41E8870DEA2DFA00118EA0 /* Druid.png in Resources */, + 7D41E8880DEA2DFA00118EA0 /* Hunter.png in Resources */, + 7D41E8890DEA2DFA00118EA0 /* Mage.png in Resources */, + 7D41E88A0DEA2DFA00118EA0 /* Paladin.png in Resources */, + 7D41E88B0DEA2DFA00118EA0 /* Priest.png in Resources */, + 7D41E88C0DEA2DFA00118EA0 /* Rogue.png in Resources */, + 7D41E88D0DEA2DFA00118EA0 /* Shaman.png in Resources */, + 7D41E88E0DEA2DFA00118EA0 /* Warlock.png in Resources */, + 7D41E88F0DEA2DFA00118EA0 /* Warrior.png in Resources */, + 7D41E9010DEA379300118EA0 /* Priest_Small.gif in Resources */, + 7D41E9020DEA379300118EA0 /* Shaman_Small.gif in Resources */, + 7D41E9030DEA379300118EA0 /* Paladin_Small.gif in Resources */, + 7D41E9040DEA379300118EA0 /* Warlock_Small.gif in Resources */, + 7D41E9050DEA379300118EA0 /* Mage_Small.gif in Resources */, + 7D41E9060DEA379300118EA0 /* Warrior_Small.gif in Resources */, + 7D41E9070DEA379300118EA0 /* Hunter_Small.gif in Resources */, + 7D41E9080DEA379300118EA0 /* Druid_Small.gif in Resources */, + 7D41E9090DEA379300118EA0 /* Rogue_Small.gif in Resources */, + 7D41E9260DEA38A500118EA0 /* Male.png in Resources */, + 7D41E9270DEA38A500118EA0 /* Female.png in Resources */, + 7D41E9AA0DEA734200118EA0 /* Keybindings.png in Resources */, + 7D41E9AB0DEA734200118EA0 /* InterfaceBars.png in Resources */, + 7D41E9AC0DEA734200118EA0 /* Result.png in Resources */, + 7D41E9AF0DEB467500118EA0 /* HotkeyFinished.png in Resources */, + 7D41E9B00DEB467500118EA0 /* TypeShortcut.png in Resources */, + 7D41EE7C0DECD45100118EA0 /* UnknownSmall.png in Resources */, + 7D41EEE00DECD7C600118EA0 /* Orc-Female_Small.gif in Resources */, + 7D41EEE10DECD7C600118EA0 /* Gnome-Female_Small.gif in Resources */, + 7D41EEE20DECD7C600118EA0 /* BloodElf-Female_Small.gif in Resources */, + 7D41EEE30DECD7C600118EA0 /* Orc-Male_Small.gif in Resources */, + 7D41EEE40DECD7C600118EA0 /* Troll-Female_Small.gif in Resources */, + 7D41EEE50DECD7C600118EA0 /* Undead-Male_Small.gif in Resources */, + 7D41EEE60DECD7C600118EA0 /* Human-Male_Small.gif in Resources */, + 7D41EEE70DECD7C600118EA0 /* BloodElf-Male_Small.gif in Resources */, + 7D41EEE80DECD7C600118EA0 /* Draenei-Female_Small.gif in Resources */, + 7D41EEE90DECD7C600118EA0 /* Tauren-Male_Small.gif in Resources */, + 7D41EEEA0DECD7C600118EA0 /* Draenei-Male_Small.gif in Resources */, + 7D41EEEB0DECD7C600118EA0 /* Dwarf-Male_Small.gif in Resources */, + 7D41EEEC0DECD7C600118EA0 /* Undead-Female_Small.gif in Resources */, + 7D41EEED0DECD7C600118EA0 /* Gnome-Male_Small.gif in Resources */, + 7D41EEEE0DECD7C600118EA0 /* Human-Female_Small.gif in Resources */, + 7D41EEEF0DECD7C600118EA0 /* Dwarf-Female_Small.gif in Resources */, + 7D41EEF00DECD7C600118EA0 /* Tauren-Female_Small.gif in Resources */, + 7D41EEF10DECD7C600118EA0 /* Troll-Male_Small.gif in Resources */, + 7D41EEFD0DECD85000118EA0 /* NightElf-Male_Small.gif in Resources */, + 7D41EEFE0DECD85000118EA0 /* NightElf-Female_Small.gif in Resources */, + 7DC419EF0DEDFD0300F3B083 /* ActiveQuestIcon.png in Resources */, + 7DC419F00DEDFD0300F3B083 /* AvailableQuestIcon.png in Resources */, + 7DC419F10DEDFD0300F3B083 /* BankerGossipIcon.png in Resources */, + 7DC419F20DEDFD0300F3B083 /* BinderGossipIcon.png in Resources */, + 7DC419F30DEDFD0300F3B083 /* GossipGossipIcon.png in Resources */, + 7DC419F40DEDFD0300F3B083 /* PetitionGossipIcon.png in Resources */, + 7DC419F50DEDFD0300F3B083 /* Scroll.png in Resources */, + 7DC419F60DEDFD0300F3B083 /* TabardGossipIcon.png in Resources */, + 7DC419F70DEDFD0300F3B083 /* TaxiGossipIcon.png in Resources */, + 7DC419F80DEDFD0300F3B083 /* TrainerGossipIcon.png in Resources */, + 7DC419F90DEDFD0300F3B083 /* VendorGossipIcon.png in Resources */, + 7DC419FC0DEDFDD000F3B083 /* MinimapGuideFlag.png in Resources */, + 7DC419FD0DEDFDD000F3B083 /* WarnTriangle.png in Resources */, + 7DC41A220DEDFED400F3B083 /* ResourceBlip.png in Resources */, + 7DC41A570DEE020B00F3B083 /* Repair.png in Resources */, + 7DC41A700DEE041400F3B083 /* Skull.png in Resources */, + 7DC41AD60DEE0CA100F3B083 /* Stable.png in Resources */, + 7DC41ADC0DEE0D9100F3B083 /* Innkeeper.png in Resources */, + 7DC41AE50DEE111600F3B083 /* Chicken.png in Resources */, + 7DC41AFE0DEE156800F3B083 /* NeutralCrest.gif in Resources */, + 7DC41AFF0DEE156800F3B083 /* HordeCrest.gif in Resources */, + 7DC41B000DEE156800F3B083 /* AllianceCrest.gif in Resources */, + 7DC7A9580DFB70CA00F6FA63 /* pgRoute.icns in Resources */, + 7DC7A9860DFC85C700F6FA63 /* pgBehavior.icns in Resources */, + 7DC7A9A60DFC869400F6FA63 /* gnome2.icns in Resources */, + 7DCE50660E12EF9100C5DF01 /* MainMenu.xib in Resources */, + 7DCE50750E12F05E00C5DF01 /* AuraCondition.xib in Resources */, + 7DCE50760E12F05E00C5DF01 /* StatusCondition.xib in Resources */, + 7DCE50770E12F05E00C5DF01 /* DistanceCondition.xib in Resources */, + 7DCE50780E12F05E00C5DF01 /* HealthCondition.xib in Resources */, + 7DCE50790E12F05E00C5DF01 /* InventoryCondition.xib in Resources */, + 7D5496460E1AA0F5004AA3E9 /* AuraStackCondition.xib in Resources */, + 7DAB645E0E22A85900B84C0E /* Ability_DualWieldSpecialization.png in Resources */, + 7DAB64610E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png in Resources */, + 7DAB64630E22AAB300B84C0E /* Ability_Warrior_Challange.png in Resources */, + 7DA95E340E2302C400AC85E2 /* BannerNeutral.png in Resources */, + 7DA95E350E2302C400AC85E2 /* BannerHorde.png in Resources */, + 7DA95E360E2302C400AC85E2 /* BannerAlliance.png in Resources */, + 7DA95ECE0E23537A00AC85E2 /* alarm.mp3 in Resources */, + 7DF445550E241AE30075B96B /* TotemCondition.xib in Resources */, + 7DB8222A0E33382900661394 /* TempEnchantCondition.xib in Resources */, + 7D7C66A30E58E74D002A6C96 /* TargetType.xib in Resources */, + 7D7C66AE0E58E8B0002A6C96 /* CombatCount.xib in Resources */, + 7D7C670A0E58EB37002A6C96 /* ProximityCount.xib in Resources */, + 7D7C670E0E58EC50002A6C96 /* TargetClass.xib in Resources */, + 7D3108E30EFDBCCB00ECFABE /* Bobber.png in Resources */, + 7D3109440EFDCBA700ECFABE /* splash.mp3 in Resources */, + 7D5498910F0222DC00DD46F8 /* INV_Fishingpole_03.png in Resources */, + 7DD8910B0F2BE875007E9FE4 /* DeathKnight.png in Resources */, + 7DD891240F2BE92A007E9FE4 /* DeathKnight_Small.gif in Resources */, + 7D6BE9700F87ED8B00ED364A /* ChatLog.xib in Resources */, + 7D6BE9990F87F6FB00ED364A /* Trade_Engraving.png in Resources */, + 7D1B3B8D0F89ACE9005CA0CD /* Mail.png in Resources */, + 7D1B3B8F0F89AD22005CA0CD /* iChat.png in Resources */, + 7DDCC4860F9EE3BE0085A88E /* InteractWithTarget.png in Resources */, + 03A4047C0FE148C60087BC0D /* mbobbleicon.png in Resources */, + 03D65A591090EC0D00537E9C /* OffsetSignatures.plist in Resources */, + 03C42CCA1096839E0085E888 /* Macros.plist in Resources */, + 03A01B3A109A2CFF00E6098E /* Statistics.xib in Resources */, + 0350738410CDBA460004636E /* SpellCooldown.xib in Resources */, + 038A4B4610E9656D00577D8F /* LastSpellCast.xib in Resources */, + 03B6D25E10F626C500EC6EFF /* RuneCondition.xib in Resources */, + 03168C8C10FE6D2000EF241B /* WaypointActionEditor.xib in Resources */, + 03168DDD10FE90B600EF241B /* DurabilityCondition.xib in Resources */, + 03168DDE10FE90B600EF241B /* InventoryFreeCondition.xib in Resources */, + 03168DDF10FE90B600EF241B /* PlayerLevelCondition.xib in Resources */, + 03168DE010FE90B600EF241B /* PlayerZoneCondition.xib in Resources */, + 03168DE110FE90B600EF241B /* QuestCondition.xib in Resources */, + 03168DE210FE90B600EF241B /* RouteRunCountCondition.xib in Resources */, + 03168DE310FE90B600EF241B /* RouteRunTimeCondition.xib in Resources */, + 03168EDE10FF70C600EF241B /* RepairAction.xib in Resources */, + 0316901010FF84AB00EF241B /* SwitchRouteAction.xib in Resources */, + 031695191101314B00EF241B /* ItemAction.xib in Resources */, + 0316951A1101314B00EF241B /* MacroAction.xib in Resources */, + 0316951B1101314B00EF241B /* SpellAction.xib in Resources */, + 03685DC6110266FC001CE552 /* DelayAction.xib in Resources */, + 03685DDA11026831001CE552 /* JumpAction.xib in Resources */, + 03685FA81103D73B001CE552 /* QuestGrabAction.xib in Resources */, + 03685FA91103D73B001CE552 /* QuestTurnInAction.xib in Resources */, + 614CD78A1106182100BA1B2F /* Bot.xib in Resources */, + 0322D6E211065D8900EF3EEF /* CombatProfileAction.xib in Resources */, + 0393F52D110A558200296CF8 /* ReverseRouteAction.xib in Resources */, + 0393F52E110A558300296CF8 /* VendorAction.xib in Resources */, + 0393F530110A558F00296CF8 /* MailAction.xib in Resources */, + 03FFD45B110B922D0046AEDF /* MobsKilledCondition.xib in Resources */, + 03FFD59A110CB55A0046AEDF /* InteractNPCAction.xib in Resources */, + 03FFD59B110CB55A0046AEDF /* InteractObjectAction.xib in Resources */, + 0341DD60111B0F6B00074CED /* Objects.xib in Resources */, + 03BB222A11225E410048DE7B /* GateCondition.xib in Resources */, + 03BB227B1122F1160048DE7B /* StrandStatus.xib in Resources */, + 03981DE9112B22E90081835F /* dsa_pub.pem in Resources */, + 034126C4113570E100BE6819 /* PvP.xib in Resources */, + 0352F46611376DA5005B28D6 /* PVP.png in Resources */, + 03A3211B114E9AC2000D23EE /* JumpToWaypointAction.xib in Resources */, + 03CD6AC41183D5AC00CCABFE /* Profiles.xib in Resources */, + 0331619611AAF1B900467490 /* appcast.xml in Resources */, + 033C3F3E126CA54C0050DBDC /* buildnumber.xcconfig in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 83A9BBD61178B706003E3683 /* Get SVN Revision */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + comments = foo; + files = ( + ); + inputPaths = ( + ); + name = "Get SVN Revision"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "REV=`/usr/bin/svnversion -nc ${PROJECT_DIR} | /usr/bin/sed -e 's/^[^:]*://;s/[A-Za-z]//'`;echo \"BUILD_NUMBER = $REV\" > ${PROJECT_DIR}/buildnumber.xcconfig\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7D1B3A960F898D90005CA0CD /* iChat.app in Sources */, + 7D1B3A5C0F898887005CA0CD /* Mail.app in Sources */, + 8D11072D0486CEB800E47090 /* main.m in Sources */, + 7DAAE71A0D148972003F1E3C /* Controller.m in Sources */, + 7DAAE7220D14897D003F1E3C /* MemoryAccess.m in Sources */, + 7DAAE7690D14917E003F1E3C /* PlayerDataController.m in Sources */, + 7D5A384A0D14B52900E491CD /* NSNumberToHexString.m in Sources */, + 7D7245420D1511F40094665C /* Mob.m in Sources */, + 7DD03DE20D160075000CC1A6 /* MemoryViewController.m in Sources */, + 7DD03F0C0D163F44000CC1A6 /* WaypointController.m in Sources */, + 7DD03F350D163F9A000CC1A6 /* Route.m in Sources */, + 7DD03F380D163FF8000CC1A6 /* Waypoint.m in Sources */, + 7D220F150D1691E90026DF75 /* MobController.m in Sources */, + 7D8343FB0D17231300853E32 /* Position.m in Sources */, + 7DD3D40B0D1B2FEB0023D097 /* SpellController.m in Sources */, + 7DA7B8C30D1DF92B00F81519 /* Spell.m in Sources */, + 7D06F0420D23058B00DA4E99 /* AuraController.m in Sources */, + 7D9712960D248DA0005E3BD1 /* Item.m in Sources */, + 7D9712990D248ED4005E3BD1 /* InventoryController.m in Sources */, + 7D9713C90D24D339005E3BD1 /* Node.m in Sources */, + 7D7A695D0D26F04F0008C3FF /* NodeController.m in Sources */, + 7D7A6A490D270F130008C3FF /* WoWObject.m in Sources */, + 7D9770C10D2D84D700E6D8F9 /* HealthConditionController.m in Sources */, + 7D9771150D2D8C0E00E6D8F9 /* ConditionCell.m in Sources */, + 7D9771180D2D8F6000E6D8F9 /* ConditionController.m in Sources */, + 7D9771780D2D951900E6D8F9 /* BetterSegmentedControl.m in Sources */, + 7D9772050D2DA23D00E6D8F9 /* StatusConditionController.m in Sources */, + 7D9772750D2DA97A00E6D8F9 /* AuraConditionController.m in Sources */, + 7D9772A90D2DB2B300E6D8F9 /* BetterTableView.m in Sources */, + 7D97730F0D2DBF5400E6D8F9 /* RuleEditor.m in Sources */, + 7D65C8F90D2EE14500C50DF7 /* Rule.m in Sources */, + 7D65C8FC0D2EE16B00C50DF7 /* Condition.m in Sources */, + 7D65C9DB0D2EF93100C50DF7 /* ProcedureController.m in Sources */, + 7D65CA480D2F04D200C50DF7 /* Procedure.m in Sources */, + 7D65CC1D0D2F69BB00C50DF7 /* Behavior.m in Sources */, + 7DB2C44A0D3BFE4100100B4D /* BotController.m in Sources */, + 7DC8B44D0D4147CB00B25B45 /* DistanceConditionController.m in Sources */, + 7DC8B4610D4152EC00B25B45 /* InventoryConditionController.m in Sources */, + 7D16598B0D455F6500BDF5CA /* RouteSet.m in Sources */, + 7DC3FF190D57C76D00BEB58B /* BetterAuthorizationSampleLib.c in Sources */, + 7DC3FF2A0D57C7CE00BEB58B /* ToolCommon.c in Sources */, + 7DD64AF60D5D10FA00773CAB /* RouteVisualizationView.m in Sources */, + 7D21677E0DC456A400D5A815 /* PTKeyBroadcaster.m in Sources */, + 7D21677F0DC456A400D5A815 /* PTHotKeyCenter.m in Sources */, + 7D2167800DC456A400D5A815 /* PTKeyCodeTranslator.m in Sources */, + 7D2167810DC456A400D5A815 /* PTHotKey.m in Sources */, + 7D2167820DC456A400D5A815 /* PTKeyCombo.m in Sources */, + 7D70E7E20DC65372006B8826 /* ChatController.m in Sources */, + 7DD1D14F0DD241F60069CB07 /* ComboPointConditionController.m in Sources */, + 7D41E5950DE9FE8800118EA0 /* PlayersController.m in Sources */, + 7D41E5980DEA00A500118EA0 /* Player.m in Sources */, + 7D41E8B80DEA31DD00118EA0 /* ImageAndTextCell.m in Sources */, + 7D41EA110DEB554100118EA0 /* Unit.m in Sources */, + 7D0C43D10DF2089E005F3940 /* ScanGridView.m in Sources */, + 7D0C43F80DF20B0D005F3940 /* TransparentWindow.m in Sources */, + 7DE59CE00E09CABB003C6559 /* NSString+URLEncode.m in Sources */, + 7DBDA6770E0DAE5D0021E180 /* NoAccessApplication.m in Sources */, + 7DAD11660E117BF000B0F7BD /* Macro.m in Sources */, + 7D5496430E1AA073004AA3E9 /* AuraStackConditionController.m in Sources */, + 7DF445530E241ABA0075B96B /* TotemConditionController.m in Sources */, + 7DE983820E2B2BA800F41293 /* NSString+Extras.m in Sources */, + 7DE53DDB0E32B84C00C59033 /* IgnoreEntry.m in Sources */, + 7DB8222F0E33384300661394 /* TempEnchantConditionController.m in Sources */, + 7D45A6CC0E4461DE008A3601 /* NSData+SockAddr.m in Sources */, + 7DBEC7DB0E4512D800994A7A /* GrabWindow.m in Sources */, + 7D7C66BC0E58E92F002A6C96 /* TargetTypeConditionController.m in Sources */, + 7D7C66DD0E58E97D002A6C96 /* CombatCountConditionController.m in Sources */, + 7D7C67160E58EC79002A6C96 /* ProximityCountConditionController.m in Sources */, + 7D7C67190E58EC85002A6C96 /* TargetClassConditionController.m in Sources */, + 7D53C0E90E5E2199007B3AA6 /* UKMainThreadProxy.m in Sources */, + 7D53C0EA0E5E2199007B3AA6 /* UKFileWatcher.m in Sources */, + 7D53C0EB0E5E2199007B3AA6 /* UKKQueue.m in Sources */, + 7D53C0EC0E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m in Sources */, + 7D370B0D0E7350DD002FE3A4 /* Action.m in Sources */, + 7D370C070E7366DC002FE3A4 /* ActionMenusController.m in Sources */, + 7DB0ADE50EB02F0C00B81BC1 /* Aura.m in Sources */, + 7D5498960F02232500DD46F8 /* FishController.m in Sources */, + 7D1BEDF00F8717CF00DF5FBF /* ChatLogController.m in Sources */, + 7D1BEE530F8733A400DF5FBF /* ChatLogEntry.m in Sources */, + 7D1B39420F896A96005CA0CD /* ChatAction.m in Sources */, + 034429B80FAA3E1800E9DE03 /* Quest.m in Sources */, + 034429BD0FAA3E3800E9DE03 /* QuestItem.m in Sources */, + 034429C00FAA3E5600E9DE03 /* QuestController.m in Sources */, + 03CEF7880FCCD93100B47336 /* Corpse.m in Sources */, + 03CEF7890FCCD93100B47336 /* CorpseController.m in Sources */, + 030C2E4D0FDC09B300E80F7E /* LootController.m in Sources */, + 030604F31088162100C57D77 /* OffsetController.m in Sources */, + 0306057C10881CAE00C57D77 /* MacroController.m in Sources */, + 03A01B0D109A2A9600E6098E /* StatisticsController.m in Sources */, + 0313B4D810BAEA0B009E74E4 /* EventController.m in Sources */, + 0350738910CDBA640004636E /* SpellCooldownConditionController.m in Sources */, + 038709BA10D576E100DF5B90 /* BlacklistController.m in Sources */, + 03567AAD10DDAB52001ACE43 /* CombatController.m in Sources */, + 038A4B4910E9657900577D8F /* LastSpellCastConditionController.m in Sources */, + 03B6D26210F626EA00EC6EFF /* RuneConditionController.m in Sources */, + 03168C7110FE6CCD00EF241B /* WaypointActionEditor.m in Sources */, + 03168DC810FE8BA900EF241B /* DurabilityConditionController.m in Sources */, + 03168E1B10FE972300EF241B /* PlayerLevelConditionController.m in Sources */, + 03168E1E10FE972B00EF241B /* PlayerZoneConditionController.m in Sources */, + 03168E2110FE973900EF241B /* QuestConditionController.m in Sources */, + 03168E2410FE974800EF241B /* RouteRunCountConditionController.m in Sources */, + 03168E2710FE975300EF241B /* RouteRunTimeConditionController.m in Sources */, + 03168E2A10FE975E00EF241B /* InventoryFreeConditionController.m in Sources */, + 03168EE410FF713000EF241B /* ActionController.m in Sources */, + 03168EFE10FF72DF00EF241B /* RepairActionController.m in Sources */, + 0316904710FF89FC00EF241B /* SwitchRouteActionController.m in Sources */, + 031694CD110103C000EF241B /* SpellActionController.m in Sources */, + 031694D0110103CC00EF241B /* ItemActionController.m in Sources */, + 031694D3110103DA00EF241B /* MacroActionController.m in Sources */, + 031694D6110103E000EF241B /* DelayActionController.m in Sources */, + 031694D9110103E900EF241B /* JumpActionController.m in Sources */, + 03685FAD1103D768001CE552 /* QuestGrabActionController.m in Sources */, + 03685FB01103D77A001CE552 /* QuestTurnInActionController.m in Sources */, + 0322D6DA11065D0800EF3EEF /* CombatProfileActionController.m in Sources */, + 0393F533110A55DB00296CF8 /* MailActionController.m in Sources */, + 0393F536110A55E300296CF8 /* VendorActionController.m in Sources */, + 0393F539110A55EF00296CF8 /* ReverseRouteActionController.m in Sources */, + 03FFD46E110B930F0046AEDF /* MobsKilledConditionController.m in Sources */, + 03FFD596110CB5440046AEDF /* InteractNPCActionController.m in Sources */, + 03FFD597110CB5440046AEDF /* InteractObjectActionController.m in Sources */, + 03E1D7B8110F62CD003180E4 /* FileObject.m in Sources */, + 03BD330E11120A7A00941971 /* BindingsController.m in Sources */, + 0341DD66111B0FBE00074CED /* ObjectsController.m in Sources */, + 0341DDDA111B21D700074CED /* ObjectController.m in Sources */, + 03BB221A112258A00048DE7B /* GateConditionController.m in Sources */, + 03BB227E1122F1240048DE7B /* StrandStatusConditionController.m in Sources */, + 038769151124532000B2C571 /* RouteCollection.m in Sources */, + 03981E78112B898E0081835F /* MovementController.m in Sources */, + 03981F38112C819E0081835F /* LogController.m in Sources */, + 034126C11135706E00BE6819 /* PvPController.m in Sources */, + 034126E61135774100BE6819 /* Battleground.m in Sources */, + 034126E91135774A00BE6819 /* PvPBehavior.m in Sources */, + 03A320D5114E88A9000D23EE /* JumpToWaypointActionController.m in Sources */, + 03BE961A11828343004DBFBF /* FileController.m in Sources */, + D02F3C561182C37E000F4037 /* DatabaseManager.m in Sources */, + D02F3C5D1182C497000F4037 /* MailActionProfile.m in Sources */, + D02F3C601182C5AC000F4037 /* ProfileController.m in Sources */, + D02F3C871182C975000F4037 /* Profile.m in Sources */, + 0362CDDE11A99CED00EA65B2 /* CombatProfile.m in Sources */, + 03FE91E2125FB5DB00A40445 /* lapi.c in Sources */, + 03FE91E3125FB5DB00A40445 /* lauxlib.c in Sources */, + 03FE91E4125FB5DB00A40445 /* lbaselib.c in Sources */, + 03FE91E5125FB5DB00A40445 /* lcode.c in Sources */, + 03FE91E6125FB5DB00A40445 /* ldblib.c in Sources */, + 03FE91E7125FB5DB00A40445 /* ldebug.c in Sources */, + 03FE91E8125FB5DB00A40445 /* ldo.c in Sources */, + 03FE91E9125FB5DB00A40445 /* ldump.c in Sources */, + 03FE91EA125FB5DB00A40445 /* lfunc.c in Sources */, + 03FE91EB125FB5DB00A40445 /* lgc.c in Sources */, + 03FE91EC125FB5DB00A40445 /* linit.c in Sources */, + 03FE91ED125FB5DB00A40445 /* liolib.c in Sources */, + 03FE91EE125FB5DB00A40445 /* llex.c in Sources */, + 03FE91EF125FB5DB00A40445 /* lmathlib.c in Sources */, + 03FE91F0125FB5DB00A40445 /* lmem.c in Sources */, + 03FE91F1125FB5DB00A40445 /* loadlib.c in Sources */, + 03FE91F2125FB5DB00A40445 /* lobject.c in Sources */, + 03FE91F3125FB5DB00A40445 /* lopcodes.c in Sources */, + 03FE91F4125FB5DB00A40445 /* loslib.c in Sources */, + 03FE91F5125FB5DB00A40445 /* lparser.c in Sources */, + 03FE91F6125FB5DB00A40445 /* lstate.c in Sources */, + 03FE91F7125FB5DB00A40445 /* lstring.c in Sources */, + 03FE91F8125FB5DB00A40445 /* lstrlib.c in Sources */, + 03FE91F9125FB5DB00A40445 /* ltable.c in Sources */, + 03FE91FA125FB5DB00A40445 /* ltablib.c in Sources */, + 03FE91FB125FB5DB00A40445 /* ltm.c in Sources */, + 03FE91FC125FB5DB00A40445 /* lundump.c in Sources */, + 03FE91FD125FB5DB00A40445 /* lvm.c in Sources */, + 03FE91FE125FB5DB00A40445 /* lzio.c in Sources */, + 03FE91FF125FB5DB00A40445 /* print.c in Sources */, + 0344CB231267D0E700B4A9C7 /* LuaController.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */ = { + isa = PBXVariantGroup; + children = ( + 7D9714760D24F16C005E3BD1 /* English */, + 7D3C91EC0E47C8EA00EDF3B3 /* French */, + ); + name = Gathering.plist; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)\"", + ); + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 1; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = PocketGnome_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = PGLOGGING; + GCC_PREPROCESSOR_DEFINITIONS_NOT_USED_IN_PRECOMPS = ""; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = NO; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = ggteabag; + VALID_ARCHS = "ppc i386"; + WRAPPER_EXTENSION = app; + ZERO_LINK = YES; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)\"", + ); + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = PocketGnome_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = NDEBUG; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = NO; + GCC_WARN_UNUSED_PARAMETER = NO; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "Pocket Gnome"; + VALID_ARCHS = "ppc i386"; + WARNING_CFLAGS = ""; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALTERNATE_GROUP = "$(INSTALL_GROUP)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = "PGLOGGING=1"; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALTERNATE_GROUP = "$(INSTALL_GROUP)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_DYNAMIC_NO_PIC = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_LABEL = YES; + GCC_WARN_UNUSED_PARAMETER = YES; + GCC_WARN_UNUSED_VALUE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + WARNING_CFLAGS = "-Wall"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Pocket Gnome" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pocket Gnome" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Pocket Gnome.xcodeproj/.svn/tmp/project.pbxproj.tmp b/Pocket Gnome.xcodeproj/.svn/tmp/project.pbxproj.tmp new file mode 100644 index 0000000..467b0f6 --- /dev/null +++ b/Pocket Gnome.xcodeproj/.svn/tmp/project.pbxproj.tmp @@ -0,0 +1,2376 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 44; + objects = { + +/* Begin PBXBuildFile section */ + 030604B71088140000C57D77 /* ShortcutRecorder.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 030604B61088140000C57D77 /* ShortcutRecorder.framework */; }; + 030604F31088162100C57D77 /* OffsetController.m in Sources */ = {isa = PBXBuildFile; fileRef = 030604F21088162100C57D77 /* OffsetController.m */; }; + 0306057C10881CAE00C57D77 /* MacroController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0306057B10881CAE00C57D77 /* MacroController.m */; }; + 030C2E4D0FDC09B300E80F7E /* LootController.m in Sources */ = {isa = PBXBuildFile; fileRef = 030C2E4C0FDC09B300E80F7E /* LootController.m */; }; + 0313B4D810BAEA0B009E74E4 /* EventController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0313B4D710BAEA0B009E74E4 /* EventController.m */; }; + 03168C7110FE6CCD00EF241B /* WaypointActionEditor.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */; }; + 03168C8C10FE6D2000EF241B /* WaypointActionEditor.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */; }; + 03168DC810FE8BA900EF241B /* DurabilityConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */; }; + 03168DDD10FE90B600EF241B /* DurabilityCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD610FE90B600EF241B /* DurabilityCondition.xib */; }; + 03168DDE10FE90B600EF241B /* InventoryFreeCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */; }; + 03168DDF10FE90B600EF241B /* PlayerLevelCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */; }; + 03168DE010FE90B600EF241B /* PlayerZoneCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */; }; + 03168DE110FE90B600EF241B /* QuestCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDA10FE90B600EF241B /* QuestCondition.xib */; }; + 03168DE210FE90B600EF241B /* RouteRunCountCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */; }; + 03168DE310FE90B600EF241B /* RouteRunTimeCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */; }; + 03168E1B10FE972300EF241B /* PlayerLevelConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */; }; + 03168E1E10FE972B00EF241B /* PlayerZoneConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */; }; + 03168E2110FE973900EF241B /* QuestConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2010FE973900EF241B /* QuestConditionController.m */; }; + 03168E2410FE974800EF241B /* RouteRunCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */; }; + 03168E2710FE975300EF241B /* RouteRunTimeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */; }; + 03168E2A10FE975E00EF241B /* InventoryFreeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */; }; + 03168EDE10FF70C600EF241B /* RepairAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168EDC10FF70C600EF241B /* RepairAction.xib */; }; + 03168EE410FF713000EF241B /* ActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168EE310FF713000EF241B /* ActionController.m */; }; + 03168EFE10FF72DF00EF241B /* RepairActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168EFD10FF72DF00EF241B /* RepairActionController.m */; }; + 0316901010FF84AB00EF241B /* SwitchRouteAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */; }; + 0316904710FF89FC00EF241B /* SwitchRouteActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */; }; + 031694CD110103C000EF241B /* SpellActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694CC110103C000EF241B /* SpellActionController.m */; }; + 031694D0110103CC00EF241B /* ItemActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694CF110103CC00EF241B /* ItemActionController.m */; }; + 031694D3110103DA00EF241B /* MacroActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D2110103DA00EF241B /* MacroActionController.m */; }; + 031694D6110103E000EF241B /* DelayActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D5110103E000EF241B /* DelayActionController.m */; }; + 031694D9110103E900EF241B /* JumpActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D8110103E900EF241B /* JumpActionController.m */; }; + 031695191101314B00EF241B /* ItemAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695161101314B00EF241B /* ItemAction.xib */; }; + 0316951A1101314B00EF241B /* MacroAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695171101314B00EF241B /* MacroAction.xib */; }; + 0316951B1101314B00EF241B /* SpellAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695181101314B00EF241B /* SpellAction.xib */; }; + 0322D6DA11065D0800EF3EEF /* CombatProfileActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */; }; + 0322D6E211065D8900EF3EEF /* CombatProfileAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */; }; + 0322D72F110744D500EF3EEF /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0322D72E110744D500EF3EEF /* CoreData.framework */; }; + 034126C11135706E00BE6819 /* PvPController.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126C01135706E00BE6819 /* PvPController.m */; }; + 034126C4113570E100BE6819 /* PvP.xib in Resources */ = {isa = PBXBuildFile; fileRef = 034126C3113570E100BE6819 /* PvP.xib */; }; + 034126E61135774100BE6819 /* Battleground.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126E51135774100BE6819 /* Battleground.m */; }; + 034126E91135774A00BE6819 /* PvPBehavior.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126E81135774A00BE6819 /* PvPBehavior.m */; }; + 0341DD60111B0F6B00074CED /* Objects.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0341DD5F111B0F6B00074CED /* Objects.xib */; }; + 0341DD66111B0FBE00074CED /* ObjectsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0341DD65111B0FBE00074CED /* ObjectsController.m */; }; + 0341DDDA111B21D700074CED /* ObjectController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0341DDD9111B21D700074CED /* ObjectController.m */; }; + 034429B80FAA3E1800E9DE03 /* Quest.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429B70FAA3E1800E9DE03 /* Quest.m */; }; + 034429BD0FAA3E3800E9DE03 /* QuestItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429BC0FAA3E3800E9DE03 /* QuestItem.m */; }; + 034429C00FAA3E5600E9DE03 /* QuestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429BF0FAA3E5600E9DE03 /* QuestController.m */; }; + 0350738410CDBA460004636E /* SpellCooldown.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0350738310CDBA460004636E /* SpellCooldown.xib */; }; + 0350738910CDBA640004636E /* SpellCooldownConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0350738810CDBA640004636E /* SpellCooldownConditionController.m */; }; + 0352F46611376DA5005B28D6 /* PVP.png in Resources */ = {isa = PBXBuildFile; fileRef = 0352F46511376DA5005B28D6 /* PVP.png */; }; + 03567AAD10DDAB52001ACE43 /* CombatController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03567AAC10DDAB52001ACE43 /* CombatController.m */; }; + 03685DC6110266FC001CE552 /* DelayAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685DC5110266FC001CE552 /* DelayAction.xib */; }; + 03685DDA11026831001CE552 /* JumpAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685DD911026831001CE552 /* JumpAction.xib */; }; + 03685FA81103D73B001CE552 /* QuestGrabAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685FA61103D73B001CE552 /* QuestGrabAction.xib */; }; + 03685FA91103D73B001CE552 /* QuestTurnInAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */; }; + 03685FAD1103D768001CE552 /* QuestGrabActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03685FAC1103D768001CE552 /* QuestGrabActionController.m */; }; + 03685FB01103D77A001CE552 /* QuestTurnInActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */; }; + 038709BA10D576E100DF5B90 /* BlacklistController.m in Sources */ = {isa = PBXBuildFile; fileRef = 038709B910D576E100DF5B90 /* BlacklistController.m */; }; + 038769151124532000B2C571 /* RouteCollection.m in Sources */ = {isa = PBXBuildFile; fileRef = 038769141124532000B2C571 /* RouteCollection.m */; }; + 038A4B4610E9656D00577D8F /* LastSpellCast.xib in Resources */ = {isa = PBXBuildFile; fileRef = 038A4B4510E9656D00577D8F /* LastSpellCast.xib */; }; + 038A4B4910E9657900577D8F /* LastSpellCastConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */; }; + 0393F413110A205800296CF8 /* libcrypto.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 0393F412110A205800296CF8 /* libcrypto.dylib */; }; + 0393F52D110A558200296CF8 /* ReverseRouteAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */; }; + 0393F52E110A558300296CF8 /* VendorAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52C110A558200296CF8 /* VendorAction.xib */; }; + 0393F530110A558F00296CF8 /* MailAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52F110A558F00296CF8 /* MailAction.xib */; }; + 0393F533110A55DB00296CF8 /* MailActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F532110A55DB00296CF8 /* MailActionController.m */; }; + 0393F536110A55E300296CF8 /* VendorActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F535110A55E300296CF8 /* VendorActionController.m */; }; + 0393F539110A55EF00296CF8 /* ReverseRouteActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */; }; + 03981D8E112AEC870081835F /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 03981D8D112AEC860081835F /* Sparkle.framework */; }; + 03981DA6112AECA80081835F /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 03981D8D112AEC860081835F /* Sparkle.framework */; }; + 03981DE9112B22E90081835F /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 03981DE8112B22E90081835F /* dsa_pub.pem */; }; + 03981E78112B898E0081835F /* MovementController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03981E77112B898E0081835F /* MovementController.m */; }; + 03981F38112C819E0081835F /* LogController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03981F37112C819E0081835F /* LogController.m */; }; + 03A01B0D109A2A9600E6098E /* StatisticsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03A01B0C109A2A9600E6098E /* StatisticsController.m */; }; + 03A01B3A109A2CFF00E6098E /* Statistics.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03A01B39109A2CFF00E6098E /* Statistics.xib */; }; + 03A320D5114E88A9000D23EE /* JumpToWaypointActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */; }; + 03A3211B114E9AC2000D23EE /* JumpToWaypointAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */; }; + 03A4047C0FE148C60087BC0D /* mbobbleicon.png in Resources */ = {isa = PBXBuildFile; fileRef = 03A4047B0FE148C60087BC0D /* mbobbleicon.png */; }; + 03B6D25E10F626C500EC6EFF /* RuneCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */; }; + 03B6D26210F626EA00EC6EFF /* RuneConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */; }; + 03BB221A112258A00048DE7B /* GateConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BB2219112258A00048DE7B /* GateConditionController.m */; }; + 03BB222A11225E410048DE7B /* GateCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03BB222911225E410048DE7B /* GateCondition.xib */; }; + 03BB227B1122F1160048DE7B /* StrandStatus.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03BB227A1122F1160048DE7B /* StrandStatus.xib */; }; + 03BB227E1122F1240048DE7B /* StrandStatusConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */; }; + 03BD330E11120A7A00941971 /* BindingsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BD330D11120A7A00941971 /* BindingsController.m */; }; + 03BE961A11828343004DBFBF /* FileController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BE961911828343004DBFBF /* FileController.m */; }; + 03C280CD1089178600A76249 /* ShortcutRecorder.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 030604B61088140000C57D77 /* ShortcutRecorder.framework */; }; + 03C42CCA1096839E0085E888 /* Macros.plist in Resources */ = {isa = PBXBuildFile; fileRef = 03C42CC91096839E0085E888 /* Macros.plist */; }; + 03CD6AC41183D5AC00CCABFE /* Profiles.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03CD6AC31183D5AC00CCABFE /* Profiles.xib */; }; + 03CEF7880FCCD93100B47336 /* Corpse.m in Sources */ = {isa = PBXBuildFile; fileRef = 03CEF7850FCCD93100B47336 /* Corpse.m */; }; + 03CEF7890FCCD93100B47336 /* CorpseController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03CEF7870FCCD93100B47336 /* CorpseController.m */; }; + 03D65A591090EC0D00537E9C /* OffsetSignatures.plist in Resources */ = {isa = PBXBuildFile; fileRef = 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */; }; + 03E1D73B110F54BE003180E4 /* SaveData.m in Sources */ = {isa = PBXBuildFile; fileRef = 03E1D73A110F54BE003180E4 /* SaveData.m */; }; + 03E1D7B8110F62CD003180E4 /* FileObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 03E1D7B7110F62CD003180E4 /* FileObject.m */; }; + 03FFD45B110B922D0046AEDF /* MobsKilledCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */; }; + 03FFD46E110B930F0046AEDF /* MobsKilledConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */; }; + 03FFD596110CB5440046AEDF /* InteractNPCActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */; }; + 03FFD597110CB5440046AEDF /* InteractObjectActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */; }; + 03FFD59A110CB55A0046AEDF /* InteractNPCAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */; }; + 03FFD59B110CB55A0046AEDF /* InteractObjectAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */; }; + 614CD78A1106182100BA1B2F /* Bot.xib in Resources */ = {isa = PBXBuildFile; fileRef = 614CD7891106182100BA1B2F /* Bot.xib */; }; + 7D06F0420D23058B00DA4E99 /* AuraController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D06F0410D23058B00DA4E99 /* AuraController.m */; }; + 7D0C43D10DF2089E005F3940 /* ScanGridView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D0C43D00DF2089E005F3940 /* ScanGridView.m */; }; + 7D0C43F80DF20B0D005F3940 /* TransparentWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */; }; + 7D16598B0D455F6500BDF5CA /* RouteSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D16598A0D455F6500BDF5CA /* RouteSet.m */; }; + 7D1B39420F896A96005CA0CD /* ChatAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B39410F896A96005CA0CD /* ChatAction.m */; }; + 7D1B39C50F897721005CA0CD /* Message.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D1B39C40F897721005CA0CD /* Message.framework */; }; + 7D1B3A220F89860D005CA0CD /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */; }; + 7D1B3A5C0F898887005CA0CD /* Mail.app in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B3A560F89885D005CA0CD /* Mail.app */; }; + 7D1B3A960F898D90005CA0CD /* iChat.app in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B3A940F898D89005CA0CD /* iChat.app */; }; + 7D1B3B8D0F89ACE9005CA0CD /* Mail.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */; }; + 7D1B3B8F0F89AD22005CA0CD /* iChat.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D1B3B8E0F89AD22005CA0CD /* iChat.png */; }; + 7D1BEDF00F8717CF00DF5FBF /* ChatLogController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */; }; + 7D1BEE530F8733A400DF5FBF /* ChatLogEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */; }; + 7D21677E0DC456A400D5A815 /* PTKeyBroadcaster.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */; }; + 7D21677F0DC456A400D5A815 /* PTHotKeyCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */; }; + 7D2167800DC456A400D5A815 /* PTKeyCodeTranslator.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */; }; + 7D2167810DC456A400D5A815 /* PTHotKey.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D21677A0DC456A400D5A815 /* PTHotKey.m */; }; + 7D2167820DC456A400D5A815 /* PTKeyCombo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */; }; + 7D2167F40DC4581700D5A815 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D2167F30DC4581700D5A815 /* Carbon.framework */; }; + 7D220F150D1691E90026DF75 /* MobController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D220F140D1691E90026DF75 /* MobController.m */; }; + 7D3108E30EFDBCCB00ECFABE /* Bobber.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D3108E20EFDBCCB00ECFABE /* Bobber.png */; }; + 7D3109440EFDCBA700ECFABE /* splash.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 7D3109430EFDCBA700ECFABE /* splash.mp3 */; }; + 7D370B0D0E7350DD002FE3A4 /* Action.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D370B0C0E7350DD002FE3A4 /* Action.m */; }; + 7D370C070E7366DC002FE3A4 /* ActionMenusController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */; }; + 7D3C91EB0E47C8C700EDF3B3 /* Gathering.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */; }; + 7D41E5950DE9FE8800118EA0 /* PlayersController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E5940DE9FE8800118EA0 /* PlayersController.m */; }; + 7D41E5980DEA00A500118EA0 /* Player.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E5970DEA00A500118EA0 /* Player.m */; }; + 7D41E8130DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */; }; + 7D41E8670DEA2DE800118EA0 /* BloodElf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */; }; + 7D41E8680DEA2DE800118EA0 /* BloodElf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */; }; + 7D41E8690DEA2DE800118EA0 /* Draenei-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */; }; + 7D41E86A0DEA2DE800118EA0 /* Draenei-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */; }; + 7D41E86B0DEA2DE800118EA0 /* Dwarf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */; }; + 7D41E86C0DEA2DE800118EA0 /* Dwarf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */; }; + 7D41E86D0DEA2DE800118EA0 /* Gnome-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */; }; + 7D41E86E0DEA2DE800118EA0 /* Gnome-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */; }; + 7D41E86F0DEA2DE800118EA0 /* Human-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */; }; + 7D41E8700DEA2DE800118EA0 /* Human-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */; }; + 7D41E8710DEA2DE800118EA0 /* NightElf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */; }; + 7D41E8720DEA2DE800118EA0 /* NightElf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */; }; + 7D41E8730DEA2DE800118EA0 /* Orc-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */; }; + 7D41E8740DEA2DE800118EA0 /* Orc-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */; }; + 7D41E8750DEA2DE800118EA0 /* Tauren-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */; }; + 7D41E8760DEA2DE800118EA0 /* Tauren-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */; }; + 7D41E8770DEA2DE800118EA0 /* Troll-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */; }; + 7D41E8780DEA2DE800118EA0 /* Troll-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */; }; + 7D41E8790DEA2DE800118EA0 /* Undead-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */; }; + 7D41E87A0DEA2DE800118EA0 /* Undead-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */; }; + 7D41E8870DEA2DFA00118EA0 /* Druid.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E87E0DEA2DFA00118EA0 /* Druid.png */; }; + 7D41E8880DEA2DFA00118EA0 /* Hunter.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */; }; + 7D41E8890DEA2DFA00118EA0 /* Mage.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8800DEA2DFA00118EA0 /* Mage.png */; }; + 7D41E88A0DEA2DFA00118EA0 /* Paladin.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8810DEA2DFA00118EA0 /* Paladin.png */; }; + 7D41E88B0DEA2DFA00118EA0 /* Priest.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8820DEA2DFA00118EA0 /* Priest.png */; }; + 7D41E88C0DEA2DFA00118EA0 /* Rogue.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8830DEA2DFA00118EA0 /* Rogue.png */; }; + 7D41E88D0DEA2DFA00118EA0 /* Shaman.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8840DEA2DFA00118EA0 /* Shaman.png */; }; + 7D41E88E0DEA2DFA00118EA0 /* Warlock.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8850DEA2DFA00118EA0 /* Warlock.png */; }; + 7D41E88F0DEA2DFA00118EA0 /* Warrior.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8860DEA2DFA00118EA0 /* Warrior.png */; }; + 7D41E8B80DEA31DD00118EA0 /* ImageAndTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */; }; + 7D41E9010DEA379300118EA0 /* Priest_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */; }; + 7D41E9020DEA379300118EA0 /* Shaman_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */; }; + 7D41E9030DEA379300118EA0 /* Paladin_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */; }; + 7D41E9040DEA379300118EA0 /* Warlock_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */; }; + 7D41E9050DEA379300118EA0 /* Mage_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */; }; + 7D41E9060DEA379300118EA0 /* Warrior_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */; }; + 7D41E9070DEA379300118EA0 /* Hunter_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */; }; + 7D41E9080DEA379300118EA0 /* Druid_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */; }; + 7D41E9090DEA379300118EA0 /* Rogue_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */; }; + 7D41E9260DEA38A500118EA0 /* Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9240DEA38A500118EA0 /* Male.png */; }; + 7D41E9270DEA38A500118EA0 /* Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9250DEA38A500118EA0 /* Female.png */; }; + 7D41E9AA0DEA734200118EA0 /* Keybindings.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A70DEA734200118EA0 /* Keybindings.png */; }; + 7D41E9AB0DEA734200118EA0 /* InterfaceBars.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */; }; + 7D41E9AC0DEA734200118EA0 /* Result.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A90DEA734200118EA0 /* Result.png */; }; + 7D41E9AF0DEB467500118EA0 /* HotkeyFinished.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */; }; + 7D41E9B00DEB467500118EA0 /* TypeShortcut.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */; }; + 7D41EA110DEB554100118EA0 /* Unit.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41EA100DEB554100118EA0 /* Unit.m */; }; + 7D41EE7C0DECD45100118EA0 /* UnknownSmall.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */; }; + 7D41EEE00DECD7C600118EA0 /* Orc-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */; }; + 7D41EEE10DECD7C600118EA0 /* Gnome-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */; }; + 7D41EEE20DECD7C600118EA0 /* BloodElf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */; }; + 7D41EEE30DECD7C600118EA0 /* Orc-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */; }; + 7D41EEE40DECD7C600118EA0 /* Troll-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */; }; + 7D41EEE50DECD7C600118EA0 /* Undead-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */; }; + 7D41EEE60DECD7C600118EA0 /* Human-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */; }; + 7D41EEE70DECD7C600118EA0 /* BloodElf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */; }; + 7D41EEE80DECD7C600118EA0 /* Draenei-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */; }; + 7D41EEE90DECD7C600118EA0 /* Tauren-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */; }; + 7D41EEEA0DECD7C600118EA0 /* Draenei-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */; }; + 7D41EEEB0DECD7C600118EA0 /* Dwarf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */; }; + 7D41EEEC0DECD7C600118EA0 /* Undead-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */; }; + 7D41EEED0DECD7C600118EA0 /* Gnome-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */; }; + 7D41EEEE0DECD7C600118EA0 /* Human-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */; }; + 7D41EEEF0DECD7C600118EA0 /* Dwarf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */; }; + 7D41EEF00DECD7C600118EA0 /* Tauren-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */; }; + 7D41EEF10DECD7C600118EA0 /* Troll-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */; }; + 7D41EEFD0DECD85000118EA0 /* NightElf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */; }; + 7D41EEFE0DECD85000118EA0 /* NightElf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */; }; + 7D45A6BA0E4461CA008A3601 /* BonjourController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D45A6B90E4461CA008A3601 /* BonjourController.m */; }; + 7D45A6CC0E4461DE008A3601 /* NSData+SockAddr.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */; }; + 7D4AFB340D9EDBF100A33CE1 /* bad.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7D4AFB320D9EDBF100A33CE1 /* bad.tif */; }; + 7D4AFB350D9EDBF100A33CE1 /* good.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7D4AFB330D9EDBF100A33CE1 /* good.tif */; }; + 7D53BFDB0E5DFAC6007B3AA6 /* SecureUserDefaults.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53BFDA0E5DFAC6007B3AA6 /* SecureUserDefaults.m */; }; + 7D53C0E90E5E2199007B3AA6 /* UKMainThreadProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */; }; + 7D53C0EA0E5E2199007B3AA6 /* UKFileWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */; }; + 7D53C0EB0E5E2199007B3AA6 /* UKKQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */; }; + 7D53C0EC0E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */; }; + 7D5496430E1AA073004AA3E9 /* AuraStackConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */; }; + 7D5496460E1AA0F5004AA3E9 /* AuraStackCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */; }; + 7D5498910F0222DC00DD46F8 /* INV_Fishingpole_03.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */; }; + 7D5498960F02232500DD46F8 /* FishController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5498950F02232500DD46F8 /* FishController.m */; }; + 7D5A384A0D14B52900E491CD /* NSNumberToHexString.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */; }; + 7D60430C0D5FC2DF001501AF /* mixed.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D60430B0D5FC2DF001501AF /* mixed.png */; }; + 7D65C8F90D2EE14500C50DF7 /* Rule.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C8F80D2EE14500C50DF7 /* Rule.m */; }; + 7D65C8FC0D2EE16B00C50DF7 /* Condition.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */; }; + 7D65C9DB0D2EF93100C50DF7 /* ProcedureController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */; }; + 7D65CA480D2F04D200C50DF7 /* Procedure.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65CA470D2F04D200C50DF7 /* Procedure.m */; }; + 7D65CC1D0D2F69BB00C50DF7 /* Behavior.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */; }; + 7D6BE9700F87ED8B00ED364A /* ChatLog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */; }; + 7D6BE9990F87F6FB00ED364A /* Trade_Engraving.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */; }; + 7D6BEC8D0F8844F600ED364A /* Growl Registration Ticket.growlRegDict in Resources */ = {isa = PBXBuildFile; fileRef = 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */; }; + 7D70E7E20DC65372006B8826 /* ChatController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D70E7E10DC65372006B8826 /* ChatController.m */; }; + 7D7245420D1511F40094665C /* Mob.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7245410D1511F40094665C /* Mob.m */; }; + 7D7A695D0D26F04F0008C3FF /* NodeController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7A695C0D26F04F0008C3FF /* NodeController.m */; }; + 7D7A6A490D270F130008C3FF /* WoWObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7A6A480D270F130008C3FF /* WoWObject.m */; }; + 7D7C66A30E58E74D002A6C96 /* TargetType.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C66A20E58E74D002A6C96 /* TargetType.xib */; }; + 7D7C66AE0E58E8B0002A6C96 /* CombatCount.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */; }; + 7D7C66BC0E58E92F002A6C96 /* TargetTypeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */; }; + 7D7C66DD0E58E97D002A6C96 /* CombatCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */; }; + 7D7C670A0E58EB37002A6C96 /* ProximityCount.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */; }; + 7D7C670E0E58EC50002A6C96 /* TargetClass.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */; }; + 7D7C67160E58EC79002A6C96 /* ProximityCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */; }; + 7D7C67190E58EC85002A6C96 /* TargetClassConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */; }; + 7D80B4750DE75795004D00F6 /* Friendly.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4720DE75795004D00F6 /* Friendly.png */; }; + 7D80B4760DE75795004D00F6 /* Hostile.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4730DE75795004D00F6 /* Hostile.png */; }; + 7D80B4770DE75795004D00F6 /* Combat.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4740DE75795004D00F6 /* Combat.png */; }; + 7D80B48D0DE75905004D00F6 /* Dead.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B48C0DE75905004D00F6 /* Dead.png */; }; + 7D80B4B10DE76098004D00F6 /* Neutral.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4B00DE76098004D00F6 /* Neutral.png */; }; + 7D8343FB0D17231300853E32 /* Position.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D8343FA0D17231300853E32 /* Position.m */; }; + 7D9712960D248DA0005E3BD1 /* Item.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9712950D248DA0005E3BD1 /* Item.m */; }; + 7D9712990D248ED4005E3BD1 /* InventoryController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9712980D248ED4005E3BD1 /* InventoryController.m */; }; + 7D9713C90D24D339005E3BD1 /* Node.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9713C80D24D339005E3BD1 /* Node.m */; }; + 7D9770C10D2D84D700E6D8F9 /* HealthConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */; }; + 7D9771150D2D8C0E00E6D8F9 /* ConditionCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */; }; + 7D9771180D2D8F6000E6D8F9 /* ConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */; }; + 7D9771780D2D951900E6D8F9 /* BetterSegmentedControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */; }; + 7D9772050D2DA23D00E6D8F9 /* StatusConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */; }; + 7D9772750D2DA97A00E6D8F9 /* AuraConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */; }; + 7D9772A90D2DB2B300E6D8F9 /* BetterTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */; }; + 7D97730F0D2DBF5400E6D8F9 /* RuleEditor.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */; }; + 7DA7B8C30D1DF92B00F81519 /* Spell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DA7B8C20D1DF92B00F81519 /* Spell.m */; }; + 7DA95E340E2302C400AC85E2 /* BannerNeutral.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */; }; + 7DA95E350E2302C400AC85E2 /* BannerHorde.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E320E2302C400AC85E2 /* BannerHorde.png */; }; + 7DA95E360E2302C400AC85E2 /* BannerAlliance.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */; }; + 7DA95ECE0E23537A00AC85E2 /* alarm.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */; }; + 7DAAE71A0D148972003F1E3C /* Controller.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7190D148972003F1E3C /* Controller.m */; }; + 7DAAE7220D14897D003F1E3C /* MemoryAccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */; }; + 7DAAE7630D148995003F1E3C /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DAAE7620D148995003F1E3C /* Security.framework */; }; + 7DAAE7690D14917E003F1E3C /* PlayerDataController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */; }; + 7DAB645E0E22A85900B84C0E /* Ability_DualWieldSpecialization.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */; }; + 7DAB64610E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */; }; + 7DAB64630E22AAB300B84C0E /* Ability_Warrior_Challange.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */; }; + 7DAD11660E117BF000B0F7BD /* Macro.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAD11650E117BF000B0F7BD /* Macro.m */; }; + 7DB0ABC90EABED7F00B81BC1 /* FactionTemplate.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */; }; + 7DB0ADE50EB02F0C00B81BC1 /* Aura.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */; }; + 7DB260D50DB30922007DB867 /* libz.1.2.3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */; }; + 7DB2C44A0D3BFE4100100B4D /* BotController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; }; + 7DB8222A0E33382900661394 /* TempEnchantCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DB822290E33382900661394 /* TempEnchantCondition.xib */; }; + 7DB8222F0E33384300661394 /* TempEnchantConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */; }; + 7DBA60600D51D28600FD6A5F /* Spell_Holy_MindVision.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */; }; + 7DBA60620D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */; }; + 7DBA60630D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */; }; + 7DBA60640D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */; }; + 7DBA60660D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */; }; + 7DBA60690D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */; }; + 7DBA606B0D51D38B00FD6A5F /* inv_misc_bag_14.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */; }; + 7DBA606D0D51D52600FD6A5F /* INV_Misc_Orb_05.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */; }; + 7DBA607B0D51D68000FD6A5F /* INV_Misc_Gear_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */; }; + 7DBA60810D51D75C00FD6A5F /* Ability_Warrior_Revenge.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */; }; + 7DBA60A20D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */; }; + 7DBC34540DB57665000C9BCF /* SRRemoveShortcut.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */; }; + 7DBC34550DB57665000C9BCF /* SRRemoveShortcutPressed.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */; }; + 7DBC34560DB57665000C9BCF /* SRRemoveShortcutRollover.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */; }; + 7DBC34570DB57665000C9BCF /* SRSnapback.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */; }; + 7DBDA6770E0DAE5D0021E180 /* NoAccessApplication.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */; }; + 7DBEC7DB0E4512D800994A7A /* GrabWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */; }; + 7DBF31C60E94679500A592BD /* Growl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DBF31C50E94679500A592BD /* Growl.framework */; }; + 7DBF31CE0E94679900A592BD /* Growl.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 7DBF31C50E94679500A592BD /* Growl.framework */; }; + 7DC3FF190D57C76D00BEB58B /* BetterAuthorizationSampleLib.c in Sources */ = {isa = PBXBuildFile; fileRef = 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */; }; + 7DC3FF2A0D57C7CE00BEB58B /* ToolCommon.c in Sources */ = {isa = PBXBuildFile; fileRef = 7DC3FF280D57C79400BEB58B /* ToolCommon.c */; }; + 7DC419EF0DEDFD0300F3B083 /* ActiveQuestIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */; }; + 7DC419F00DEDFD0300F3B083 /* AvailableQuestIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */; }; + 7DC419F10DEDFD0300F3B083 /* BankerGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */; }; + 7DC419F20DEDFD0300F3B083 /* BinderGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */; }; + 7DC419F30DEDFD0300F3B083 /* GossipGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */; }; + 7DC419F40DEDFD0300F3B083 /* PetitionGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */; }; + 7DC419F50DEDFD0300F3B083 /* Scroll.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EA0DEDFD0300F3B083 /* Scroll.png */; }; + 7DC419F60DEDFD0300F3B083 /* TabardGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */; }; + 7DC419F70DEDFD0300F3B083 /* TaxiGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */; }; + 7DC419F80DEDFD0300F3B083 /* TrainerGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */; }; + 7DC419F90DEDFD0300F3B083 /* VendorGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */; }; + 7DC419FC0DEDFDD000F3B083 /* MinimapGuideFlag.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */; }; + 7DC419FD0DEDFDD000F3B083 /* WarnTriangle.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */; }; + 7DC41A220DEDFED400F3B083 /* ResourceBlip.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */; }; + 7DC41A570DEE020B00F3B083 /* Repair.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A560DEE020B00F3B083 /* Repair.png */; }; + 7DC41A700DEE041400F3B083 /* Skull.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A6F0DEE041400F3B083 /* Skull.png */; }; + 7DC41AD60DEE0CA100F3B083 /* Stable.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AD50DEE0CA100F3B083 /* Stable.png */; }; + 7DC41ADC0DEE0D9100F3B083 /* Innkeeper.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */; }; + 7DC41AE50DEE111600F3B083 /* Chicken.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AE40DEE111600F3B083 /* Chicken.png */; }; + 7DC41AFE0DEE156800F3B083 /* NeutralCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */; }; + 7DC41AFF0DEE156800F3B083 /* HordeCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */; }; + 7DC41B000DEE156800F3B083 /* AllianceCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */; }; + 7DC7A9580DFB70CA00F6FA63 /* pgRoute.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */; }; + 7DC7A9860DFC85C700F6FA63 /* pgBehavior.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */; }; + 7DC7A9A60DFC869400F6FA63 /* gnome2.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */; }; + 7DC8B44D0D4147CB00B25B45 /* DistanceConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */; }; + 7DC8B4610D4152EC00B25B45 /* InventoryConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */; }; + 7DCB5A400D540647001678BC /* Memory.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCB5A3F0D540647001678BC /* Memory.xib */; }; + 7DCE50660E12EF9100C5DF01 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */; }; + 7DCE50750E12F05E00C5DF01 /* AuraCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */; }; + 7DCE50760E12F05E00C5DF01 /* StatusCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */; }; + 7DCE50770E12F05E00C5DF01 /* DistanceCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */; }; + 7DCE50780E12F05E00C5DF01 /* HealthCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */; }; + 7DCE50790E12F05E00C5DF01 /* InventoryCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */; }; + 7DD03DE20D160075000CC1A6 /* MemoryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */; }; + 7DD03F0C0D163F44000CC1A6 /* WaypointController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */; }; + 7DD03F350D163F9A000CC1A6 /* Route.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F340D163F9A000CC1A6 /* Route.m */; }; + 7DD03F380D163FF8000CC1A6 /* Waypoint.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F370D163FF8000CC1A6 /* Waypoint.m */; }; + 7DD1D14F0DD241F60069CB07 /* ComboPointConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */; }; + 7DD1D1560DD242A70069CB07 /* ComboPointCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */; }; + 7DD3D40B0D1B2FEB0023D097 /* SpellController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */; }; + 7DD64AF60D5D10FA00773CAB /* RouteVisualizationView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */; }; + 7DD64B210D5D192500773CAB /* off.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD64B1F0D5D192500773CAB /* off.png */; }; + 7DD64B220D5D192500773CAB /* on.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD64B200D5D192500773CAB /* on.png */; }; + 7DD8037D0D514E62005C2F01 /* Player.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD8037C0D514E62005C2F01 /* Player.xib */; }; + 7DD803980D515142005C2F01 /* Spells.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803970D515142005C2F01 /* Spells.xib */; }; + 7DD803A20D5151CA005C2F01 /* Routes.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803A10D5151CA005C2F01 /* Routes.xib */; }; + 7DD803A40D5153E5005C2F01 /* Behaviors.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803A30D5153E5005C2F01 /* Behaviors.xib */; }; + 7DD8910B0F2BE875007E9FE4 /* DeathKnight.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */; }; + 7DD891240F2BE92A007E9FE4 /* DeathKnight_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */; }; + 7DDCC4860F9EE3BE0085A88E /* InteractWithTarget.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */; }; + 7DE53DD80E32B48500C59033 /* CombatProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE53DD70E32B48500C59033 /* CombatProfile.m */; }; + 7DE53DDB0E32B84C00C59033 /* IgnoreEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */; }; + 7DE53E6D0E32BF4A00C59033 /* CombatProfile.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DE53E6C0E32BF4A00C59033 /* CombatProfile.xib */; }; + 7DE59CE00E09CABB003C6559 /* NSString+URLEncode.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */; }; + 7DE983820E2B2BA800F41293 /* NSString+Extras.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE983810E2B2BA800F41293 /* NSString+Extras.m */; }; + 7DF445530E241ABA0075B96B /* TotemConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DF445520E241ABA0075B96B /* TotemConditionController.m */; }; + 7DF445550E241AE30075B96B /* TotemCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DF445540E241AE30075B96B /* TotemCondition.xib */; }; + 83A9BBF21178BA03003E3683 /* buildnumber.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 83A9BBF11178BA03003E3683 /* buildnumber.xcconfig */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; + D02F3C561182C37E000F4037 /* DatabaseManager.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C551182C37E000F4037 /* DatabaseManager.m */; }; + D02F3C5D1182C497000F4037 /* MailActionProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C5C1182C497000F4037 /* MailActionProfile.m */; }; + D02F3C601182C5AC000F4037 /* ProfileController.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C5F1182C5AC000F4037 /* ProfileController.m */; }; + D02F3C871182C975000F4037 /* Profile.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C861182C975000F4037 /* Profile.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXBuildRule section */ + 7D1B3A500F8987B1005CA0CD /* PBXBuildRule */ = { + isa = PBXBuildRule; + compilerSpec = com.apple.compilers.proxy.script; + filePatterns = "*.app"; + fileType = pattern.proxy; + isEditable = 1; + outputFiles = ( + "$(DERIVED_FILES_DIR)/$(INPUT_FILE_BASE).h", + ); + script = "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`"; + }; +/* End PBXBuildRule section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 7DC8B60C0D419BF500B25B45 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 03981DA6112AECA80081835F /* Sparkle.framework in CopyFiles */, + 03C280CD1089178600A76249 /* ShortcutRecorder.framework in CopyFiles */, + 7DBF31CE0E94679900A592BD /* Growl.framework in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 030604B61088140000C57D77 /* ShortcutRecorder.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = ShortcutRecorder.framework; sourceTree = ""; }; + 030604F11088162100C57D77 /* OffsetController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OffsetController.h; sourceTree = ""; }; + 030604F21088162100C57D77 /* OffsetController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OffsetController.m; sourceTree = ""; }; + 0306057A10881CAE00C57D77 /* MacroController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroController.h; sourceTree = ""; }; + 0306057B10881CAE00C57D77 /* MacroController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MacroController.m; sourceTree = ""; }; + 030C2E4B0FDC09B300E80F7E /* LootController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LootController.h; sourceTree = ""; }; + 030C2E4C0FDC09B300E80F7E /* LootController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LootController.m; sourceTree = ""; }; + 0313B4D610BAEA0B009E74E4 /* EventController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventController.h; sourceTree = ""; }; + 0313B4D710BAEA0B009E74E4 /* EventController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EventController.m; sourceTree = ""; }; + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaypointActionEditor.h; sourceTree = ""; }; + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WaypointActionEditor.m; sourceTree = ""; }; + 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WaypointActionEditor.xib; sourceTree = ""; }; + 03168DC610FE8BA900EF241B /* DurabilityConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DurabilityConditionController.h; sourceTree = ""; }; + 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DurabilityConditionController.m; sourceTree = ""; }; + 03168DD610FE90B600EF241B /* DurabilityCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DurabilityCondition.xib; sourceTree = ""; }; + 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InventoryFreeCondition.xib; sourceTree = ""; }; + 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlayerLevelCondition.xib; sourceTree = ""; }; + 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlayerZoneCondition.xib; sourceTree = ""; }; + 03168DDA10FE90B600EF241B /* QuestCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestCondition.xib; sourceTree = ""; }; + 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RouteRunCountCondition.xib; sourceTree = ""; }; + 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RouteRunTimeCondition.xib; sourceTree = ""; }; + 03168E1910FE972300EF241B /* PlayerLevelConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerLevelConditionController.h; sourceTree = ""; }; + 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerLevelConditionController.m; sourceTree = ""; }; + 03168E1C10FE972B00EF241B /* PlayerZoneConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerZoneConditionController.h; sourceTree = ""; }; + 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerZoneConditionController.m; sourceTree = ""; }; + 03168E1F10FE973900EF241B /* QuestConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestConditionController.h; sourceTree = ""; }; + 03168E2010FE973900EF241B /* QuestConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestConditionController.m; sourceTree = ""; }; + 03168E2210FE974800EF241B /* RouteRunCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteRunCountConditionController.h; sourceTree = ""; }; + 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteRunCountConditionController.m; sourceTree = ""; }; + 03168E2510FE975300EF241B /* RouteRunTimeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteRunTimeConditionController.h; sourceTree = ""; }; + 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteRunTimeConditionController.m; sourceTree = ""; }; + 03168E2810FE975E00EF241B /* InventoryFreeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryFreeConditionController.h; sourceTree = ""; }; + 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryFreeConditionController.m; sourceTree = ""; }; + 03168EDC10FF70C600EF241B /* RepairAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RepairAction.xib; sourceTree = ""; }; + 03168EE210FF713000EF241B /* ActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionController.h; sourceTree = ""; }; + 03168EE310FF713000EF241B /* ActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ActionController.m; sourceTree = ""; }; + 03168EFC10FF72DF00EF241B /* RepairActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RepairActionController.h; sourceTree = ""; }; + 03168EFD10FF72DF00EF241B /* RepairActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RepairActionController.m; sourceTree = ""; }; + 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SwitchRouteAction.xib; sourceTree = ""; }; + 0316904510FF89FC00EF241B /* SwitchRouteActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SwitchRouteActionController.h; sourceTree = ""; }; + 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SwitchRouteActionController.m; sourceTree = ""; }; + 031694CB110103C000EF241B /* SpellActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellActionController.h; sourceTree = ""; }; + 031694CC110103C000EF241B /* SpellActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellActionController.m; sourceTree = ""; }; + 031694CE110103CC00EF241B /* ItemActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ItemActionController.h; sourceTree = ""; }; + 031694CF110103CC00EF241B /* ItemActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ItemActionController.m; sourceTree = ""; }; + 031694D1110103DA00EF241B /* MacroActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroActionController.h; sourceTree = ""; }; + 031694D2110103DA00EF241B /* MacroActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MacroActionController.m; sourceTree = ""; }; + 031694D4110103E000EF241B /* DelayActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DelayActionController.h; sourceTree = ""; }; + 031694D5110103E000EF241B /* DelayActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DelayActionController.m; sourceTree = ""; }; + 031694D7110103E900EF241B /* JumpActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JumpActionController.h; sourceTree = ""; }; + 031694D8110103E900EF241B /* JumpActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JumpActionController.m; sourceTree = ""; }; + 031695161101314B00EF241B /* ItemAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ItemAction.xib; sourceTree = ""; }; + 031695171101314B00EF241B /* MacroAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MacroAction.xib; sourceTree = ""; }; + 031695181101314B00EF241B /* SpellAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SpellAction.xib; sourceTree = ""; }; + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatProfileActionController.h; sourceTree = ""; }; + 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatProfileActionController.m; sourceTree = ""; }; + 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatProfileAction.xib; sourceTree = ""; }; + 0322D72E110744D500EF3EEF /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + 032B8C030FDEE37900807DD0 /* Errors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Errors.h; sourceTree = ""; }; + 034126BF1135706E00BE6819 /* PvPController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PvPController.h; sourceTree = ""; }; + 034126C01135706E00BE6819 /* PvPController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PvPController.m; sourceTree = ""; }; + 034126C3113570E100BE6819 /* PvP.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PvP.xib; sourceTree = ""; }; + 034126E41135774100BE6819 /* Battleground.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Battleground.h; sourceTree = ""; }; + 034126E51135774100BE6819 /* Battleground.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Battleground.m; sourceTree = ""; }; + 034126E71135774A00BE6819 /* PvPBehavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PvPBehavior.h; sourceTree = ""; }; + 034126E81135774A00BE6819 /* PvPBehavior.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PvPBehavior.m; sourceTree = ""; }; + 0341DD5F111B0F6B00074CED /* Objects.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Objects.xib; sourceTree = ""; }; + 0341DD64111B0FBE00074CED /* ObjectsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectsController.h; sourceTree = ""; }; + 0341DD65111B0FBE00074CED /* ObjectsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjectsController.m; sourceTree = ""; }; + 0341DDD8111B21D700074CED /* ObjectController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectController.h; sourceTree = ""; }; + 0341DDD9111B21D700074CED /* ObjectController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjectController.m; sourceTree = ""; }; + 034429B60FAA3E1800E9DE03 /* Quest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Quest.h; sourceTree = ""; }; + 034429B70FAA3E1800E9DE03 /* Quest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Quest.m; sourceTree = ""; }; + 034429BB0FAA3E3800E9DE03 /* QuestItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestItem.h; sourceTree = ""; }; + 034429BC0FAA3E3800E9DE03 /* QuestItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestItem.m; sourceTree = ""; }; + 034429BE0FAA3E5600E9DE03 /* QuestController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestController.h; sourceTree = ""; }; + 034429BF0FAA3E5600E9DE03 /* QuestController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestController.m; sourceTree = ""; }; + 0350738310CDBA460004636E /* SpellCooldown.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SpellCooldown.xib; sourceTree = ""; }; + 0350738710CDBA640004636E /* SpellCooldownConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellCooldownConditionController.h; sourceTree = ""; }; + 0350738810CDBA640004636E /* SpellCooldownConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellCooldownConditionController.m; sourceTree = ""; }; + 0352F46511376DA5005B28D6 /* PVP.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = PVP.png; sourceTree = ""; }; + 03567AAB10DDAB52001ACE43 /* CombatController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatController.h; sourceTree = ""; }; + 03567AAC10DDAB52001ACE43 /* CombatController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatController.m; sourceTree = ""; }; + 03685DC5110266FC001CE552 /* DelayAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DelayAction.xib; sourceTree = ""; }; + 03685DD911026831001CE552 /* JumpAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JumpAction.xib; sourceTree = ""; }; + 03685FA61103D73B001CE552 /* QuestGrabAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestGrabAction.xib; sourceTree = ""; }; + 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestTurnInAction.xib; sourceTree = ""; }; + 03685FAB1103D768001CE552 /* QuestGrabActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestGrabActionController.h; sourceTree = ""; }; + 03685FAC1103D768001CE552 /* QuestGrabActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestGrabActionController.m; sourceTree = ""; }; + 03685FAE1103D77A001CE552 /* QuestTurnInActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestTurnInActionController.h; sourceTree = ""; }; + 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestTurnInActionController.m; sourceTree = ""; }; + 038709B810D576E100DF5B90 /* BlacklistController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BlacklistController.h; sourceTree = ""; }; + 038709B910D576E100DF5B90 /* BlacklistController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BlacklistController.m; sourceTree = ""; }; + 038769131124532000B2C571 /* RouteCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteCollection.h; sourceTree = ""; }; + 038769141124532000B2C571 /* RouteCollection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteCollection.m; sourceTree = ""; }; + 038A4B4510E9656D00577D8F /* LastSpellCast.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LastSpellCast.xib; sourceTree = ""; }; + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LastSpellCastConditionController.h; sourceTree = ""; }; + 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LastSpellCastConditionController.m; sourceTree = ""; }; + 0393F412110A205800296CF8 /* libcrypto.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcrypto.dylib; path = usr/lib/libcrypto.dylib; sourceTree = SDKROOT; }; + 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ReverseRouteAction.xib; sourceTree = ""; }; + 0393F52C110A558200296CF8 /* VendorAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = VendorAction.xib; sourceTree = ""; }; + 0393F52F110A558F00296CF8 /* MailAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MailAction.xib; sourceTree = ""; }; + 0393F531110A55DB00296CF8 /* MailActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailActionController.h; sourceTree = ""; }; + 0393F532110A55DB00296CF8 /* MailActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MailActionController.m; sourceTree = ""; }; + 0393F534110A55E300296CF8 /* VendorActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VendorActionController.h; sourceTree = ""; }; + 0393F535110A55E300296CF8 /* VendorActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VendorActionController.m; sourceTree = ""; }; + 0393F537110A55EF00296CF8 /* ReverseRouteActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ReverseRouteActionController.h; sourceTree = ""; }; + 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ReverseRouteActionController.m; sourceTree = ""; }; + 03981D8D112AEC860081835F /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = ""; }; + 03981DE8112B22E90081835F /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = ""; }; + 03981E76112B898E0081835F /* MovementController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MovementController.h; sourceTree = ""; }; + 03981E77112B898E0081835F /* MovementController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MovementController.m; sourceTree = ""; }; + 03981F36112C819E0081835F /* LogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LogController.h; sourceTree = ""; }; + 03981F37112C819E0081835F /* LogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LogController.m; sourceTree = ""; }; + 03A01B0B109A2A9600E6098E /* StatisticsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatisticsController.h; sourceTree = ""; }; + 03A01B0C109A2A9600E6098E /* StatisticsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatisticsController.m; sourceTree = ""; }; + 03A01B39109A2CFF00E6098E /* Statistics.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Statistics.xib; sourceTree = ""; }; + 03A320D3114E88A9000D23EE /* JumpToWaypointActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JumpToWaypointActionController.h; sourceTree = ""; }; + 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JumpToWaypointActionController.m; sourceTree = ""; }; + 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JumpToWaypointAction.xib; sourceTree = ""; }; + 03A4047B0FE148C60087BC0D /* mbobbleicon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mbobbleicon.png; sourceTree = ""; }; + 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RuneCondition.xib; sourceTree = ""; }; + 03B6D26010F626EA00EC6EFF /* RuneConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuneConditionController.h; sourceTree = ""; }; + 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RuneConditionController.m; sourceTree = ""; }; + 03BB2218112258A00048DE7B /* GateConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GateConditionController.h; sourceTree = ""; }; + 03BB2219112258A00048DE7B /* GateConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GateConditionController.m; sourceTree = ""; }; + 03BB222911225E410048DE7B /* GateCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GateCondition.xib; sourceTree = ""; }; + 03BB227A1122F1160048DE7B /* StrandStatus.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StrandStatus.xib; sourceTree = ""; }; + 03BB227C1122F1240048DE7B /* StrandStatusConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StrandStatusConditionController.h; sourceTree = ""; }; + 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StrandStatusConditionController.m; sourceTree = ""; }; + 03BD330C11120A7A00941971 /* BindingsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BindingsController.h; sourceTree = ""; }; + 03BD330D11120A7A00941971 /* BindingsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BindingsController.m; sourceTree = ""; }; + 03BE961811828343004DBFBF /* FileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileController.h; sourceTree = ""; }; + 03BE961911828343004DBFBF /* FileController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileController.m; sourceTree = ""; }; + 03C42CC91096839E0085E888 /* Macros.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Macros.plist; sourceTree = ""; }; + 03CD6A67118359B100CCABFE /* Defines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Defines.h; sourceTree = ""; }; + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClientDbDefines.h; sourceTree = ""; }; + 03CD6AC31183D5AC00CCABFE /* Profiles.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Profiles.xib; sourceTree = ""; }; + 03CEF7840FCCD93100B47336 /* Corpse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Corpse.h; sourceTree = ""; }; + 03CEF7850FCCD93100B47336 /* Corpse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Corpse.m; sourceTree = ""; }; + 03CEF7860FCCD93100B47336 /* CorpseController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CorpseController.h; sourceTree = ""; }; + 03CEF7870FCCD93100B47336 /* CorpseController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CorpseController.m; sourceTree = ""; }; + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = OffsetSignatures.plist; sourceTree = ""; }; + 03E1D739110F54BE003180E4 /* SaveData.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SaveData.h; sourceTree = ""; }; + 03E1D73A110F54BE003180E4 /* SaveData.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SaveData.m; sourceTree = ""; }; + 03E1D7B6110F62CD003180E4 /* FileObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileObject.h; sourceTree = ""; }; + 03E1D7B7110F62CD003180E4 /* FileObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileObject.m; sourceTree = ""; }; + 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MobsKilledCondition.xib; sourceTree = ""; }; + 03FFD46C110B930F0046AEDF /* MobsKilledConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MobsKilledConditionController.h; sourceTree = ""; }; + 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MobsKilledConditionController.m; sourceTree = ""; }; + 03FFD592110CB5440046AEDF /* InteractNPCActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InteractNPCActionController.h; sourceTree = ""; }; + 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InteractNPCActionController.m; sourceTree = ""; }; + 03FFD594110CB5440046AEDF /* InteractObjectActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InteractObjectActionController.h; sourceTree = ""; }; + 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InteractObjectActionController.m; sourceTree = ""; }; + 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InteractNPCAction.xib; sourceTree = ""; }; + 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InteractObjectAction.xib; sourceTree = ""; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; + 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PocketGnome_Prefix.pch; sourceTree = ""; }; + 614CD7891106182100BA1B2F /* Bot.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Bot.xib; sourceTree = ""; }; + 7D06F0400D23058B00DA4E99 /* AuraController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraController.h; sourceTree = ""; }; + 7D06F0410D23058B00DA4E99 /* AuraController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraController.m; sourceTree = ""; }; + 7D0C43CF0DF2089E005F3940 /* ScanGridView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScanGridView.h; sourceTree = ""; }; + 7D0C43D00DF2089E005F3940 /* ScanGridView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ScanGridView.m; sourceTree = ""; }; + 7D0C43F60DF20B0D005F3940 /* TransparentWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransparentWindow.h; sourceTree = ""; }; + 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TransparentWindow.m; sourceTree = ""; }; + 7D1659890D455F6500BDF5CA /* RouteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteSet.h; sourceTree = ""; }; + 7D16598A0D455F6500BDF5CA /* RouteSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteSet.m; sourceTree = ""; }; + 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = CGKeyCodeMap.plist; sourceTree = ""; }; + 7D1B39400F896A96005CA0CD /* ChatAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatAction.h; sourceTree = ""; }; + 7D1B39410F896A96005CA0CD /* ChatAction.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatAction.m; sourceTree = ""; }; + 7D1B39C40F897721005CA0CD /* Message.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Message.framework; path = /System/Library/Frameworks/Message.framework; sourceTree = ""; }; + 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ScriptingBridge.framework; path = /System/Library/Frameworks/ScriptingBridge.framework; sourceTree = ""; }; + 7D1B3A560F89885D005CA0CD /* Mail.app */ = {isa = PBXFileReference; lastKnownFileType = wrapper.application; name = Mail.app; path = /Applications/Mail.app; sourceTree = ""; }; + 7D1B3A940F898D89005CA0CD /* iChat.app */ = {isa = PBXFileReference; lastKnownFileType = wrapper.application; name = iChat.app; path = /Applications/iChat.app; sourceTree = ""; }; + 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Mail.png; sourceTree = ""; }; + 7D1B3B8E0F89AD22005CA0CD /* iChat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = iChat.png; sourceTree = ""; }; + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatLogController.h; sourceTree = ""; }; + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatLogController.m; sourceTree = ""; }; + 7D1BEE510F8733A400DF5FBF /* ChatLogEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatLogEntry.h; sourceTree = ""; }; + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatLogEntry.m; sourceTree = ""; }; + 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyBroadcaster.m; sourceTree = ""; }; + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTHotKeyCenter.m; sourceTree = ""; }; + 7D2167760DC456A400D5A815 /* PTKeyBroadcaster.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyBroadcaster.h; sourceTree = ""; }; + 7D2167770DC456A400D5A815 /* PTHotKey.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHotKey.h; sourceTree = ""; }; + 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyCodeTranslator.m; sourceTree = ""; }; + 7D2167790DC456A400D5A815 /* PTHotKeyCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHotKeyCenter.h; sourceTree = ""; }; + 7D21677A0DC456A400D5A815 /* PTHotKey.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTHotKey.m; sourceTree = ""; }; + 7D21677B0DC456A400D5A815 /* PTKeyCodeTranslator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyCodeTranslator.h; sourceTree = ""; }; + 7D21677C0DC456A400D5A815 /* PTKeyCombo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyCombo.h; sourceTree = ""; }; + 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyCombo.m; sourceTree = ""; }; + 7D2167840DC456D100D5A815 /* PTHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHeader.h; sourceTree = ""; }; + 7D2167F30DC4581700D5A815 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; + 7D220F130D1691E90026DF75 /* MobController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MobController.h; sourceTree = ""; }; + 7D220F140D1691E90026DF75 /* MobController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MobController.m; sourceTree = ""; }; + 7D3108E20EFDBCCB00ECFABE /* Bobber.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Bobber.png; sourceTree = ""; }; + 7D3109430EFDCBA700ECFABE /* splash.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = splash.mp3; sourceTree = ""; }; + 7D370B0B0E7350DD002FE3A4 /* Action.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Action.h; sourceTree = ""; }; + 7D370B0C0E7350DD002FE3A4 /* Action.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Action.m; sourceTree = ""; }; + 7D370C050E7366DC002FE3A4 /* ActionMenusController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionMenusController.h; sourceTree = ""; }; + 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ActionMenusController.m; sourceTree = ""; }; + 7D3C91EC0E47C8EA00EDF3B3 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = French; path = French.lproj/Gathering.plist; sourceTree = ""; }; + 7D41E5930DE9FE8800118EA0 /* PlayersController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayersController.h; sourceTree = ""; }; + 7D41E5940DE9FE8800118EA0 /* PlayersController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayersController.m; sourceTree = ""; }; + 7D41E5960DEA00A500118EA0 /* Player.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Player.h; sourceTree = ""; }; + 7D41E5970DEA00A500118EA0 /* Player.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Player.m; sourceTree = ""; }; + 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Holy_PrayerofSpirit.png; sourceTree = ""; }; + 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "BloodElf-Female.png"; sourceTree = ""; }; + 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "BloodElf-Male.png"; sourceTree = ""; }; + 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Draenei-Female.png"; sourceTree = ""; }; + 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Draenei-Male.png"; sourceTree = ""; }; + 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Dwarf-Female.png"; sourceTree = ""; }; + 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Dwarf-Male.png"; sourceTree = ""; }; + 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Gnome-Female.png"; sourceTree = ""; }; + 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Gnome-Male.png"; sourceTree = ""; }; + 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Human-Female.png"; sourceTree = ""; }; + 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Human-Male.png"; sourceTree = ""; }; + 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "NightElf-Female.png"; sourceTree = ""; }; + 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "NightElf-Male.png"; sourceTree = ""; }; + 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Orc-Female.png"; sourceTree = ""; }; + 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Orc-Male.png"; sourceTree = ""; }; + 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Tauren-Female.png"; sourceTree = ""; }; + 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Tauren-Male.png"; sourceTree = ""; }; + 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Troll-Female.png"; sourceTree = ""; }; + 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Troll-Male.png"; sourceTree = ""; }; + 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Undead-Female.png"; sourceTree = ""; }; + 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Undead-Male.png"; sourceTree = ""; }; + 7D41E87E0DEA2DFA00118EA0 /* Druid.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Druid.png; sourceTree = ""; }; + 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Hunter.png; sourceTree = ""; }; + 7D41E8800DEA2DFA00118EA0 /* Mage.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Mage.png; sourceTree = ""; }; + 7D41E8810DEA2DFA00118EA0 /* Paladin.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Paladin.png; sourceTree = ""; }; + 7D41E8820DEA2DFA00118EA0 /* Priest.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Priest.png; sourceTree = ""; }; + 7D41E8830DEA2DFA00118EA0 /* Rogue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Rogue.png; sourceTree = ""; }; + 7D41E8840DEA2DFA00118EA0 /* Shaman.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Shaman.png; sourceTree = ""; }; + 7D41E8850DEA2DFA00118EA0 /* Warlock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Warlock.png; sourceTree = ""; }; + 7D41E8860DEA2DFA00118EA0 /* Warrior.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Warrior.png; sourceTree = ""; }; + 7D41E8B60DEA31DD00118EA0 /* ImageAndTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageAndTextCell.h; sourceTree = ""; }; + 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ImageAndTextCell.m; sourceTree = ""; }; + 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Priest_Small.gif; sourceTree = ""; }; + 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Shaman_Small.gif; sourceTree = ""; }; + 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Paladin_Small.gif; sourceTree = ""; }; + 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Warlock_Small.gif; sourceTree = ""; }; + 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Mage_Small.gif; sourceTree = ""; }; + 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Warrior_Small.gif; sourceTree = ""; }; + 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Hunter_Small.gif; sourceTree = ""; }; + 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Druid_Small.gif; sourceTree = ""; }; + 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Rogue_Small.gif; sourceTree = ""; }; + 7D41E9240DEA38A500118EA0 /* Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Male.png; sourceTree = ""; }; + 7D41E9250DEA38A500118EA0 /* Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Female.png; sourceTree = ""; }; + 7D41E9A70DEA734200118EA0 /* Keybindings.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Keybindings.png; sourceTree = ""; }; + 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InterfaceBars.png; sourceTree = ""; }; + 7D41E9A90DEA734200118EA0 /* Result.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Result.png; sourceTree = ""; }; + 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = HotkeyFinished.png; sourceTree = ""; }; + 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TypeShortcut.png; sourceTree = ""; }; + 7D41EA0F0DEB554100118EA0 /* Unit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Unit.h; sourceTree = ""; }; + 7D41EA100DEB554100118EA0 /* Unit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Unit.m; sourceTree = ""; }; + 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = UnknownSmall.png; sourceTree = ""; }; + 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Orc-Female_Small.gif"; sourceTree = ""; }; + 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Gnome-Female_Small.gif"; sourceTree = ""; }; + 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "BloodElf-Female_Small.gif"; sourceTree = ""; }; + 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Orc-Male_Small.gif"; sourceTree = ""; }; + 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Troll-Female_Small.gif"; sourceTree = ""; }; + 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Undead-Male_Small.gif"; sourceTree = ""; }; + 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Human-Male_Small.gif"; sourceTree = ""; }; + 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "BloodElf-Male_Small.gif"; sourceTree = ""; }; + 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Draenei-Female_Small.gif"; sourceTree = ""; }; + 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Tauren-Male_Small.gif"; sourceTree = ""; }; + 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Draenei-Male_Small.gif"; sourceTree = ""; }; + 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Dwarf-Male_Small.gif"; sourceTree = ""; }; + 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Undead-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Gnome-Male_Small.gif"; sourceTree = ""; }; + 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Human-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Dwarf-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Tauren-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Troll-Male_Small.gif"; sourceTree = ""; }; + 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "NightElf-Male_Small.gif"; sourceTree = ""; }; + 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "NightElf-Female_Small.gif"; sourceTree = ""; }; + 7D45A6B80E4461CA008A3601 /* BonjourController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BonjourController.h; sourceTree = ""; }; + 7D45A6B90E4461CA008A3601 /* BonjourController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BonjourController.m; sourceTree = ""; }; + 7D45A6CA0E4461DE008A3601 /* NSData+SockAddr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+SockAddr.h"; sourceTree = ""; }; + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+SockAddr.m"; sourceTree = ""; }; + 7D4AFB320D9EDBF100A33CE1 /* bad.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = bad.tif; sourceTree = ""; }; + 7D4AFB330D9EDBF100A33CE1 /* good.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = good.tif; sourceTree = ""; }; + 7D53BFD90E5DFAC6007B3AA6 /* SecureUserDefaults.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SecureUserDefaults.h; sourceTree = ""; }; + 7D53BFDA0E5DFAC6007B3AA6 /* SecureUserDefaults.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SecureUserDefaults.m; sourceTree = ""; }; + 7D53C0E10E5E2199007B3AA6 /* UKFileWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKFileWatcher.h; sourceTree = ""; }; + 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKMainThreadProxy.m; sourceTree = ""; }; + 7D53C0E30E5E2199007B3AA6 /* UKMainThreadProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKMainThreadProxy.h; sourceTree = ""; }; + 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKFileWatcher.m; sourceTree = ""; }; + 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKKQueue.m; sourceTree = ""; }; + 7D53C0E60E5E2199007B3AA6 /* UKKQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKKQueue.h; sourceTree = ""; }; + 7D53C0E70E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKFNSubscribeFileWatcher.h; sourceTree = ""; }; + 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKFNSubscribeFileWatcher.m; sourceTree = ""; }; + 7D5496410E1AA073004AA3E9 /* AuraStackConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraStackConditionController.h; sourceTree = ""; }; + 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraStackConditionController.m; sourceTree = ""; }; + 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AuraStackCondition.xib; sourceTree = ""; }; + 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Fishingpole_03.png; sourceTree = ""; }; + 7D5498940F02232500DD46F8 /* FishController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FishController.h; sourceTree = ""; }; + 7D5498950F02232500DD46F8 /* FishController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FishController.m; sourceTree = ""; }; + 7D5A38480D14B52900E491CD /* NSNumberToHexString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSNumberToHexString.h; sourceTree = ""; }; + 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSNumberToHexString.m; sourceTree = ""; }; + 7D5B92960D9F179D00423FC6 /* gnome.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = gnome.icns; sourceTree = ""; }; + 7D60430B0D5FC2DF001501AF /* mixed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mixed.png; sourceTree = ""; }; + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectConstants.h; sourceTree = ""; }; + 7D65C8F70D2EE14500C50DF7 /* Rule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Rule.h; sourceTree = ""; }; + 7D65C8F80D2EE14500C50DF7 /* Rule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Rule.m; sourceTree = ""; }; + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Condition.h; sourceTree = ""; }; + 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Condition.m; sourceTree = ""; }; + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProcedureController.h; sourceTree = ""; }; + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProcedureController.m; sourceTree = ""; }; + 7D65CA460D2F04D200C50DF7 /* Procedure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Procedure.h; sourceTree = ""; }; + 7D65CA470D2F04D200C50DF7 /* Procedure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Procedure.m; sourceTree = ""; }; + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Behavior.h; sourceTree = ""; }; + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Behavior.m; sourceTree = ""; }; + 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ChatLog.xib; sourceTree = ""; }; + 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Trade_Engraving.png; sourceTree = ""; }; + 7D70E7E00DC65372006B8826 /* ChatController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatController.h; sourceTree = ""; }; + 7D70E7E10DC65372006B8826 /* ChatController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatController.m; sourceTree = ""; }; + 7D7245400D1511F40094665C /* Mob.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Mob.h; sourceTree = ""; }; + 7D7245410D1511F40094665C /* Mob.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Mob.m; sourceTree = ""; }; + 7D7A695B0D26F04F0008C3FF /* NodeController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NodeController.h; sourceTree = ""; }; + 7D7A695C0D26F04F0008C3FF /* NodeController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NodeController.m; sourceTree = ""; }; + 7D7A6A470D270F130008C3FF /* WoWObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WoWObject.h; sourceTree = ""; }; + 7D7A6A480D270F130008C3FF /* WoWObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WoWObject.m; sourceTree = ""; }; + 7D7C66A20E58E74D002A6C96 /* TargetType.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TargetType.xib; sourceTree = ""; }; + 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatCount.xib; sourceTree = ""; }; + 7D7C66BA0E58E92F002A6C96 /* TargetTypeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetTypeConditionController.h; sourceTree = ""; }; + 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TargetTypeConditionController.m; sourceTree = ""; }; + 7D7C66DB0E58E97D002A6C96 /* CombatCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatCountConditionController.h; sourceTree = ""; }; + 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatCountConditionController.m; sourceTree = ""; }; + 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ProximityCount.xib; sourceTree = ""; }; + 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TargetClass.xib; sourceTree = ""; }; + 7D7C67140E58EC79002A6C96 /* ProximityCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProximityCountConditionController.h; sourceTree = ""; }; + 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProximityCountConditionController.m; sourceTree = ""; }; + 7D7C67170E58EC85002A6C96 /* TargetClassConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetClassConditionController.h; sourceTree = ""; }; + 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TargetClassConditionController.m; sourceTree = ""; }; + 7D80B4720DE75795004D00F6 /* Friendly.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Friendly.png; sourceTree = ""; }; + 7D80B4730DE75795004D00F6 /* Hostile.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Hostile.png; sourceTree = ""; }; + 7D80B4740DE75795004D00F6 /* Combat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Combat.png; sourceTree = ""; }; + 7D80B48C0DE75905004D00F6 /* Dead.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Dead.png; sourceTree = ""; }; + 7D80B4B00DE76098004D00F6 /* Neutral.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Neutral.png; sourceTree = ""; }; + 7D8343F90D17231300853E32 /* Position.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Position.h; sourceTree = ""; }; + 7D8343FA0D17231300853E32 /* Position.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Position.m; sourceTree = ""; }; + 7D9712940D248DA0005E3BD1 /* Item.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Item.h; sourceTree = ""; }; + 7D9712950D248DA0005E3BD1 /* Item.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Item.m; sourceTree = ""; }; + 7D9712970D248ED4005E3BD1 /* InventoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryController.h; sourceTree = ""; }; + 7D9712980D248ED4005E3BD1 /* InventoryController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryController.m; sourceTree = ""; }; + 7D9713C70D24D339005E3BD1 /* Node.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Node.h; sourceTree = ""; }; + 7D9713C80D24D339005E3BD1 /* Node.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Node.m; sourceTree = ""; }; + 7D9714760D24F16C005E3BD1 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = English; path = English.lproj/Gathering.plist; sourceTree = ""; }; + 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HealthConditionController.m; sourceTree = ""; }; + 7D9770C00D2D84D700E6D8F9 /* HealthConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HealthConditionController.h; sourceTree = ""; }; + 7D9771130D2D8C0E00E6D8F9 /* ConditionCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConditionCell.h; sourceTree = ""; }; + 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConditionCell.m; sourceTree = ""; }; + 7D9771160D2D8F6000E6D8F9 /* ConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConditionController.h; sourceTree = ""; }; + 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConditionController.m; sourceTree = ""; }; + 7D9771760D2D951900E6D8F9 /* BetterSegmentedControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterSegmentedControl.h; sourceTree = ""; }; + 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BetterSegmentedControl.m; sourceTree = ""; }; + 7D9772030D2DA23D00E6D8F9 /* StatusConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatusConditionController.h; sourceTree = ""; }; + 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatusConditionController.m; sourceTree = ""; }; + 7D9772730D2DA97A00E6D8F9 /* AuraConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraConditionController.h; sourceTree = ""; }; + 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraConditionController.m; sourceTree = ""; }; + 7D9772A70D2DB2B300E6D8F9 /* BetterTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterTableView.h; sourceTree = ""; }; + 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BetterTableView.m; sourceTree = ""; }; + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuleEditor.h; sourceTree = ""; }; + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RuleEditor.m; sourceTree = ""; }; + 7DA7B8C10D1DF92B00F81519 /* Spell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Spell.h; sourceTree = ""; }; + 7DA7B8C20D1DF92B00F81519 /* Spell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Spell.m; sourceTree = ""; }; + 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerNeutral.png; sourceTree = ""; }; + 7DA95E320E2302C400AC85E2 /* BannerHorde.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerHorde.png; sourceTree = ""; }; + 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerAlliance.png; sourceTree = ""; }; + 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = alarm.mp3; sourceTree = ""; }; + 7DAA07F60D5579ED00A6D06A /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; + 7DAA08010D557A7600A6D06A /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = ""; }; + 7DAA09A90D55988F00A6D06A /* Globals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Globals.h; sourceTree = ""; }; + 7DAAE7180D148972003F1E3C /* Controller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Controller.h; sourceTree = ""; }; + 7DAAE7190D148972003F1E3C /* Controller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Controller.m; sourceTree = ""; }; + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryAccess.h; sourceTree = ""; }; + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MemoryAccess.m; sourceTree = ""; }; + 7DAAE7620D148995003F1E3C /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerDataController.h; sourceTree = ""; }; + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerDataController.m; sourceTree = ""; }; + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Offsets.h; sourceTree = ""; }; + 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_DualWieldSpecialization.png; sourceTree = ""; }; + 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_ImprovedDisciplines.png; sourceTree = ""; }; + 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_Challange.png; sourceTree = ""; }; + 7DAD11640E117BF000B0F7BD /* Macro.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Macro.h; sourceTree = ""; }; + 7DAD11650E117BF000B0F7BD /* Macro.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Macro.m; sourceTree = ""; }; + 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = FactionTemplate.plist; sourceTree = ""; }; + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Aura.h; sourceTree = ""; }; + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Aura.m; sourceTree = ""; }; + 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.1.2.3.dylib; path = /usr/lib/libz.1.2.3.dylib; sourceTree = ""; }; + 7DB2C4480D3BFE4100100B4D /* BotController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BotController.h; sourceTree = ""; }; + 7DB2C4490D3BFE4100100B4D /* BotController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BotController.m; sourceTree = ""; }; + 7DB822290E33382900661394 /* TempEnchantCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TempEnchantCondition.xib; sourceTree = ""; }; + 7DB8222D0E33384300661394 /* TempEnchantConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TempEnchantConditionController.h; sourceTree = ""; }; + 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TempEnchantConditionController.m; sourceTree = ""; }; + 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Holy_MindVision.png; sourceTree = ""; }; + 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_FireResistanceTotem_01.png; sourceTree = ""; }; + 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Head_Dragon_Bronze.png; sourceTree = ""; }; + 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Gem_Bloodstone_01.png; sourceTree = ""; }; + 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Nature_PoisonCleansingTotem.png; sourceTree = ""; }; + 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Head_Dragon_Blue.png; sourceTree = ""; }; + 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = inv_misc_bag_14.png; sourceTree = ""; }; + 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Orb_05.png; sourceTree = ""; }; + 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Gear_01.png; sourceTree = ""; }; + 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_Revenge.png; sourceTree = ""; }; + 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Rogue_Sprint.png; sourceTree = ""; }; + 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcut.tif; sourceTree = ""; }; + 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcutPressed.tif; sourceTree = ""; }; + 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcutRollover.tif; sourceTree = ""; }; + 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRSnapback.tiff; sourceTree = ""; }; + 7DBDA6750E0DAE5D0021E180 /* NoAccessApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoAccessApplication.h; sourceTree = ""; }; + 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NoAccessApplication.m; sourceTree = ""; }; + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GrabWindow.h; sourceTree = ""; }; + 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GrabWindow.m; sourceTree = ""; }; + 7DBF31C50E94679500A592BD /* Growl.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Growl.framework; sourceTree = ""; }; + 7DC3FF150D57C75100BEB58B /* BetterAuthorizationSampleLibInstallTool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BetterAuthorizationSampleLibInstallTool.c; sourceTree = ""; }; + 7DC3FF160D57C75100BEB58B /* BetterAuthorizationSampleLib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterAuthorizationSampleLib.h; sourceTree = ""; }; + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BetterAuthorizationSampleLib.c; sourceTree = ""; }; + 7DC3FF260D57C79400BEB58B /* MemoryAccessTool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MemoryAccessTool.c; sourceTree = ""; }; + 7DC3FF270D57C79400BEB58B /* ToolCommon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ToolCommon.h; sourceTree = ""; }; + 7DC3FF280D57C79400BEB58B /* ToolCommon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ToolCommon.c; sourceTree = ""; }; + 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ActiveQuestIcon.png; sourceTree = ""; }; + 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = AvailableQuestIcon.png; sourceTree = ""; }; + 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BankerGossipIcon.png; sourceTree = ""; }; + 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BinderGossipIcon.png; sourceTree = ""; }; + 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = GossipGossipIcon.png; sourceTree = ""; }; + 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = PetitionGossipIcon.png; sourceTree = ""; }; + 7DC419EA0DEDFD0300F3B083 /* Scroll.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Scroll.png; sourceTree = ""; }; + 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TabardGossipIcon.png; sourceTree = ""; }; + 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TaxiGossipIcon.png; sourceTree = ""; }; + 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TrainerGossipIcon.png; sourceTree = ""; }; + 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = VendorGossipIcon.png; sourceTree = ""; }; + 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MinimapGuideFlag.png; sourceTree = ""; }; + 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = WarnTriangle.png; sourceTree = ""; }; + 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ResourceBlip.png; sourceTree = ""; }; + 7DC41A560DEE020B00F3B083 /* Repair.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Repair.png; sourceTree = ""; }; + 7DC41A6F0DEE041400F3B083 /* Skull.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Skull.png; sourceTree = ""; }; + 7DC41AD50DEE0CA100F3B083 /* Stable.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Stable.png; sourceTree = ""; }; + 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Innkeeper.png; sourceTree = ""; }; + 7DC41AE40DEE111600F3B083 /* Chicken.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Chicken.png; sourceTree = ""; }; + 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = NeutralCrest.gif; sourceTree = ""; }; + 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = HordeCrest.gif; sourceTree = ""; }; + 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = AllianceCrest.gif; sourceTree = ""; }; + 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = pgRoute.icns; sourceTree = ""; }; + 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = pgBehavior.icns; sourceTree = ""; }; + 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = gnome2.icns; sourceTree = ""; }; + 7DC8B44B0D4147CB00B25B45 /* DistanceConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DistanceConditionController.h; sourceTree = ""; }; + 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DistanceConditionController.m; sourceTree = ""; }; + 7DC8B45F0D4152EC00B25B45 /* InventoryConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryConditionController.h; sourceTree = ""; }; + 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryConditionController.m; sourceTree = ""; }; + 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "Growl Registration Ticket.growlRegDict"; sourceTree = ""; }; + 7DCB5A3F0D540647001678BC /* Memory.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Memory.xib; sourceTree = ""; }; + 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainMenu.xib; sourceTree = ""; }; + 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AuraCondition.xib; sourceTree = ""; }; + 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StatusCondition.xib; sourceTree = ""; }; + 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DistanceCondition.xib; sourceTree = ""; }; + 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HealthCondition.xib; sourceTree = ""; }; + 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InventoryCondition.xib; sourceTree = ""; }; + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryViewController.h; sourceTree = ""; }; + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MemoryViewController.m; sourceTree = ""; }; + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaypointController.h; sourceTree = ""; }; + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WaypointController.m; sourceTree = ""; }; + 7DD03F330D163F9A000CC1A6 /* Route.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Route.h; sourceTree = ""; }; + 7DD03F340D163F9A000CC1A6 /* Route.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Route.m; sourceTree = ""; }; + 7DD03F360D163FF8000CC1A6 /* Waypoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Waypoint.h; sourceTree = ""; }; + 7DD03F370D163FF8000CC1A6 /* Waypoint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Waypoint.m; sourceTree = ""; }; + 7DD1D14D0DD241F60069CB07 /* ComboPointConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComboPointConditionController.h; sourceTree = ""; }; + 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ComboPointConditionController.m; sourceTree = ""; }; + 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ComboPointCondition.xib; sourceTree = ""; }; + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellController.h; sourceTree = ""; }; + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellController.m; sourceTree = ""; }; + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CGSPrivate.h; sourceTree = ""; }; + 7DD64AF40D5D10FA00773CAB /* RouteVisualizationView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteVisualizationView.h; sourceTree = ""; }; + 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteVisualizationView.m; sourceTree = ""; }; + 7DD64B1F0D5D192500773CAB /* off.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = off.png; sourceTree = ""; }; + 7DD64B200D5D192500773CAB /* on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = on.png; sourceTree = ""; }; + 7DD8037C0D514E62005C2F01 /* Player.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Player.xib; sourceTree = ""; }; + 7DD803970D515142005C2F01 /* Spells.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Spells.xib; sourceTree = ""; }; + 7DD803A10D5151CA005C2F01 /* Routes.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Routes.xib; sourceTree = ""; }; + 7DD803A30D5153E5005C2F01 /* Behaviors.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Behaviors.xib; sourceTree = ""; }; + 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = DeathKnight.png; sourceTree = ""; }; + 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = DeathKnight_Small.gif; sourceTree = ""; }; + 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InteractWithTarget.png; sourceTree = ""; }; + 7DE53DD60E32B48500C59033 /* CombatProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatProfile.h; sourceTree = ""; }; + 7DE53DD70E32B48500C59033 /* CombatProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatProfile.m; sourceTree = ""; }; + 7DE53DD90E32B84C00C59033 /* IgnoreEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IgnoreEntry.h; sourceTree = ""; }; + 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IgnoreEntry.m; sourceTree = ""; }; + 7DE53E6C0E32BF4A00C59033 /* CombatProfile.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatProfile.xib; sourceTree = ""; }; + 7DE59CDE0E09CABB003C6559 /* NSString+URLEncode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+URLEncode.h"; sourceTree = ""; }; + 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+URLEncode.m"; sourceTree = ""; }; + 7DE983800E2B2BA800F41293 /* NSString+Extras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Extras.h"; sourceTree = ""; }; + 7DE983810E2B2BA800F41293 /* NSString+Extras.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Extras.m"; sourceTree = ""; }; + 7DF445510E241ABA0075B96B /* TotemConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TotemConditionController.h; sourceTree = ""; }; + 7DF445520E241ABA0075B96B /* TotemConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TotemConditionController.m; sourceTree = ""; }; + 7DF445540E241AE30075B96B /* TotemCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TotemCondition.xib; sourceTree = ""; }; + 83A9BBF11178BA03003E3683 /* buildnumber.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = buildnumber.xcconfig; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* Pocket Gnome.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Pocket Gnome.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + D02F3C541182C37E000F4037 /* DatabaseManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseManager.h; sourceTree = ""; }; + D02F3C551182C37E000F4037 /* DatabaseManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DatabaseManager.m; sourceTree = ""; }; + D02F3C5B1182C497000F4037 /* MailActionProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailActionProfile.h; sourceTree = ""; }; + D02F3C5C1182C497000F4037 /* MailActionProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MailActionProfile.m; sourceTree = ""; }; + D02F3C5E1182C5AC000F4037 /* ProfileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProfileController.h; sourceTree = ""; }; + D02F3C5F1182C5AC000F4037 /* ProfileController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProfileController.m; sourceTree = ""; }; + D02F3C851182C975000F4037 /* Profile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Profile.h; sourceTree = ""; }; + D02F3C861182C975000F4037 /* Profile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Profile.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 7DAAE7630D148995003F1E3C /* Security.framework in Frameworks */, + 7DB260D50DB30922007DB867 /* libz.1.2.3.dylib in Frameworks */, + 7D2167F40DC4581700D5A815 /* Carbon.framework in Frameworks */, + 7DBF31C60E94679500A592BD /* Growl.framework in Frameworks */, + 7D1B39C50F897721005CA0CD /* Message.framework in Frameworks */, + 7D1B3A220F89860D005CA0CD /* ScriptingBridge.framework in Frameworks */, + 030604B71088140000C57D77 /* ShortcutRecorder.framework in Frameworks */, + 0322D72F110744D500EF3EEF /* CoreData.framework in Frameworks */, + 0393F413110A205800296CF8 /* libcrypto.dylib in Frameworks */, + 03981D8E112AEC870081835F /* Sparkle.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 03168DCA10FE8D0B00EF241B /* Waypoint Actions */ = { + isa = PBXGroup; + children = ( + 03BB227A1122F1160048DE7B /* StrandStatus.xib */, + 03BB222911225E410048DE7B /* GateCondition.xib */, + 0393F52F110A558F00296CF8 /* MailAction.xib */, + 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */, + 0393F52C110A558200296CF8 /* VendorAction.xib */, + 03168DD610FE90B600EF241B /* DurabilityCondition.xib */, + 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */, + 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */, + 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */, + 03168DDA10FE90B600EF241B /* QuestCondition.xib */, + 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */, + 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */, + 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */, + ); + name = "Waypoint Actions"; + sourceTree = ""; + }; + 03168ED410FF705A00EF241B /* Waypoint Action NIBs */ = { + isa = PBXGroup; + children = ( + 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */, + 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */, + 03685FA61103D73B001CE552 /* QuestGrabAction.xib */, + 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */, + 03685DD911026831001CE552 /* JumpAction.xib */, + 03685DC5110266FC001CE552 /* DelayAction.xib */, + 031695161101314B00EF241B /* ItemAction.xib */, + 031695171101314B00EF241B /* MacroAction.xib */, + 031695181101314B00EF241B /* SpellAction.xib */, + 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */, + 03168EDC10FF70C600EF241B /* RepairAction.xib */, + 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */, + 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */, + ); + name = "Waypoint Action NIBs"; + sourceTree = ""; + }; + 03168EE110FF70E900EF241B /* WaypointActions */ = { + isa = PBXGroup; + children = ( + 7D370B0B0E7350DD002FE3A4 /* Action.h */, + 7D370B0C0E7350DD002FE3A4 /* Action.m */, + 03168EE210FF713000EF241B /* ActionController.h */, + 03168EE310FF713000EF241B /* ActionController.m */, + 03168EFC10FF72DF00EF241B /* RepairActionController.h */, + 03168EFD10FF72DF00EF241B /* RepairActionController.m */, + 0316904510FF89FC00EF241B /* SwitchRouteActionController.h */, + 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */, + 031694CB110103C000EF241B /* SpellActionController.h */, + 031694CC110103C000EF241B /* SpellActionController.m */, + 031694CE110103CC00EF241B /* ItemActionController.h */, + 031694CF110103CC00EF241B /* ItemActionController.m */, + 031694D1110103DA00EF241B /* MacroActionController.h */, + 031694D2110103DA00EF241B /* MacroActionController.m */, + 031694D4110103E000EF241B /* DelayActionController.h */, + 031694D5110103E000EF241B /* DelayActionController.m */, + 031694D7110103E900EF241B /* JumpActionController.h */, + 031694D8110103E900EF241B /* JumpActionController.m */, + 03685FAB1103D768001CE552 /* QuestGrabActionController.h */, + 03685FAC1103D768001CE552 /* QuestGrabActionController.m */, + 03685FAE1103D77A001CE552 /* QuestTurnInActionController.h */, + 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */, + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */, + 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */, + 0393F531110A55DB00296CF8 /* MailActionController.h */, + 0393F532110A55DB00296CF8 /* MailActionController.m */, + 0393F534110A55E300296CF8 /* VendorActionController.h */, + 0393F535110A55E300296CF8 /* VendorActionController.m */, + 0393F537110A55EF00296CF8 /* ReverseRouteActionController.h */, + 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */, + 03FFD592110CB5440046AEDF /* InteractNPCActionController.h */, + 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */, + 03FFD594110CB5440046AEDF /* InteractObjectActionController.h */, + 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */, + 03A320D3114E88A9000D23EE /* JumpToWaypointActionController.h */, + 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */, + ); + name = WaypointActions; + sourceTree = ""; + }; + 034126E21135773900BE6819 /* PvP */ = { + isa = PBXGroup; + children = ( + 034126E41135774100BE6819 /* Battleground.h */, + 034126E51135774100BE6819 /* Battleground.m */, + 034126E71135774A00BE6819 /* PvPBehavior.h */, + 034126E81135774A00BE6819 /* PvPBehavior.m */, + ); + name = PvP; + sourceTree = ""; + }; + 0341DD68111B104100074CED /* Object Controllers */ = { + isa = PBXGroup; + children = ( + 0341DDD8111B21D700074CED /* ObjectController.h */, + 0341DDD9111B21D700074CED /* ObjectController.m */, + 7D220F130D1691E90026DF75 /* MobController.h */, + 7D220F140D1691E90026DF75 /* MobController.m */, + 7D41E5930DE9FE8800118EA0 /* PlayersController.h */, + 7D41E5940DE9FE8800118EA0 /* PlayersController.m */, + 7D7A695B0D26F04F0008C3FF /* NodeController.h */, + 7D7A695C0D26F04F0008C3FF /* NodeController.m */, + 7D9712970D248ED4005E3BD1 /* InventoryController.h */, + 7D9712980D248ED4005E3BD1 /* InventoryController.m */, + ); + name = "Object Controllers"; + sourceTree = ""; + }; + 03BE9607118282E4004DBFBF /* File Management */ = { + isa = PBXGroup; + children = ( + 03E1D739110F54BE003180E4 /* SaveData.h */, + 03E1D73A110F54BE003180E4 /* SaveData.m */, + 03E1D7B6110F62CD003180E4 /* FileObject.h */, + 03E1D7B7110F62CD003180E4 /* FileObject.m */, + 03BE961811828343004DBFBF /* FileController.h */, + 03BE961911828343004DBFBF /* FileController.m */, + ); + name = "File Management"; + sourceTree = ""; + }; + 03CD6A641183595F00CCABFE /* Profiles */ = { + isa = PBXGroup; + children = ( + D02F3C5B1182C497000F4037 /* MailActionProfile.h */, + D02F3C5C1182C497000F4037 /* MailActionProfile.m */, + 7DE53DD60E32B48500C59033 /* CombatProfile.h */, + 7DE53DD70E32B48500C59033 /* CombatProfile.m */, + D02F3C5E1182C5AC000F4037 /* ProfileController.h */, + D02F3C5F1182C5AC000F4037 /* ProfileController.m */, + D02F3C851182C975000F4037 /* Profile.h */, + D02F3C861182C975000F4037 /* Profile.m */, + ); + name = Profiles; + sourceTree = ""; + }; + 03CD6A651183596A00CCABFE /* Reversed */ = { + isa = PBXGroup; + children = ( + 03CD6A67118359B100CCABFE /* Defines.h */, + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */, + 03CD6A661183597C00CCABFE /* WoWDb */, + ); + name = Reversed; + sourceTree = ""; + }; + 03CD6A661183597C00CCABFE /* WoWDb */ = { + isa = PBXGroup; + children = ( + D02F3C541182C37E000F4037 /* DatabaseManager.h */, + D02F3C551182C37E000F4037 /* DatabaseManager.m */, + ); + name = WoWDb; + sourceTree = ""; + }; + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 0341DD68111B104100074CED /* Object Controllers */, + 7DAAE7180D148972003F1E3C /* Controller.h */, + 7DAAE7190D148972003F1E3C /* Controller.m */, + 7DB2C4480D3BFE4100100B4D /* BotController.h */, + 7DB2C4490D3BFE4100100B4D /* BotController.m */, + 7D5498940F02232500DD46F8 /* FishController.h */, + 7D5498950F02232500DD46F8 /* FishController.m */, + 7D70E7E00DC65372006B8826 /* ChatController.h */, + 7D70E7E10DC65372006B8826 /* ChatController.m */, + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */, + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */, + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */, + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */, + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */, + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */, + 03567AAB10DDAB52001ACE43 /* CombatController.h */, + 03567AAC10DDAB52001ACE43 /* CombatController.m */, + 03981E76112B898E0081835F /* MovementController.h */, + 03981E77112B898E0081835F /* MovementController.m */, + 7D06F0400D23058B00DA4E99 /* AuraController.h */, + 7D06F0410D23058B00DA4E99 /* AuraController.m */, + 7D45A6B80E4461CA008A3601 /* BonjourController.h */, + 7D45A6B90E4461CA008A3601 /* BonjourController.m */, + 7D370C050E7366DC002FE3A4 /* ActionMenusController.h */, + 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */, + 034429BE0FAA3E5600E9DE03 /* QuestController.h */, + 034429BF0FAA3E5600E9DE03 /* QuestController.m */, + 03CEF7860FCCD93100B47336 /* CorpseController.h */, + 03CEF7870FCCD93100B47336 /* CorpseController.m */, + 030C2E4B0FDC09B300E80F7E /* LootController.h */, + 030C2E4C0FDC09B300E80F7E /* LootController.m */, + 030604F11088162100C57D77 /* OffsetController.h */, + 030604F21088162100C57D77 /* OffsetController.m */, + 0306057A10881CAE00C57D77 /* MacroController.h */, + 0306057B10881CAE00C57D77 /* MacroController.m */, + 03A01B0B109A2A9600E6098E /* StatisticsController.h */, + 03A01B0C109A2A9600E6098E /* StatisticsController.m */, + 0313B4D610BAEA0B009E74E4 /* EventController.h */, + 0313B4D710BAEA0B009E74E4 /* EventController.m */, + 038709B810D576E100DF5B90 /* BlacklistController.h */, + 038709B910D576E100DF5B90 /* BlacklistController.m */, + 03BD330C11120A7A00941971 /* BindingsController.h */, + 03BD330D11120A7A00941971 /* BindingsController.m */, + 03981F36112C819E0081835F /* LogController.h */, + 03981F37112C819E0081835F /* LogController.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 0393F412110A205800296CF8 /* libcrypto.dylib */, + 0322D72E110744D500EF3EEF /* CoreData.framework */, + 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */, + 7D1B39C40F897721005CA0CD /* Message.framework */, + 7D2167F30DC4581700D5A815 /* Carbon.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + 7DAA08010D557A7600A6D06A /* CoreServices.framework */, + 7DAA07F60D5579ED00A6D06A /* CoreFoundation.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */, + 7DAAE7620D148995003F1E3C /* Security.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 03981D8D112AEC860081835F /* Sparkle.framework */, + 030604B61088140000C57D77 /* ShortcutRecorder.framework */, + 7DBF31C50E94679500A592BD /* Growl.framework */, + 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* Pocket Gnome.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* WoWWaypoint */ = { + isa = PBXGroup; + children = ( + 83A9BBF11178BA03003E3683 /* buildnumber.xcconfig */, + 080E96DDFE201D6D7F000001 /* Classes */, + 7D97730C0D2DBF2800E6D8F9 /* GUI Controllers */, + 7D65C8F60D2EE0B100C50DF7 /* GUI Subclasses */, + 7D9770BA0D2D84C400E6D8F9 /* Rules & Procedures */, + 7D65CA9F0D2F095F00C50DF7 /* Waypoints & Routes */, + 034126E21135773900BE6819 /* PvP */, + 7D72453E0D1511E20094665C /* Units */, + 03CD6A651183596A00CCABFE /* Reversed */, + 03CD6A641183595F00CCABFE /* Profiles */, + 03BE9607118282E4004DBFBF /* File Management */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 7D1B3A560F89885D005CA0CD /* Mail.app */, + 7D1B3A940F898D89005CA0CD /* iChat.app */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = WoWWaypoint; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 7D41E8B60DEA31DD00118EA0 /* ImageAndTextCell.h */, + 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */, + 7D2167440DC4566600D5A815 /* PTKeyCode */, + 7D53C0DF0E5E2182007B3AA6 /* UKKQueue */, + 7DC3FF240D57C78700BEB58B /* Helper Tools */, + 7DBDA6750E0DAE5D0021E180 /* NoAccessApplication.h */, + 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */, + 7DAA09A90D55988F00A6D06A /* Globals.h */, + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */, + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */, + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */, + 29B97316FDCFA39411CA2CEA /* main.m */, + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */, + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */, + 7D5A38480D14B52900E491CD /* NSNumberToHexString.h */, + 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */, + 7DE59CDE0E09CABB003C6559 /* NSString+URLEncode.h */, + 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */, + 7DE983800E2B2BA800F41293 /* NSString+Extras.h */, + 7DE983810E2B2BA800F41293 /* NSString+Extras.m */, + 7D45A6CA0E4461DE008A3601 /* NSData+SockAddr.h */, + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */, + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */, + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */, + 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */, + 7D53BFD90E5DFAC6007B3AA6 /* SecureUserDefaults.h */, + 7D53BFDA0E5DFAC6007B3AA6 /* SecureUserDefaults.m */, + 032B8C030FDEE37900807DD0 /* Errors.h */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 03981DE8112B22E90081835F /* dsa_pub.pem */, + 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */, + 7D3109430EFDCBA700ECFABE /* splash.mp3 */, + 7D3108E20EFDBCCB00ECFABE /* Bobber.png */, + 7D41E99A0DEA731E00118EA0 /* Hotkey Help */, + 7D5B92960D9F179D00423FC6 /* gnome.icns */, + 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */, + 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */, + 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */, + 7DBC344F0DB57665000C9BCF /* SRImages */, + 7DD64B090D5D191B00773CAB /* Images */, + 7DBA60570D51D27100FD6A5F /* WoW Icons */, + 614CD7891106182100BA1B2F /* Bot.xib */, + 034126C3113570E100BE6819 /* PvP.xib */, + 03A01B39109A2CFF00E6098E /* Statistics.xib */, + 7DD8037C0D514E62005C2F01 /* Player.xib */, + 7DD803970D515142005C2F01 /* Spells.xib */, + 03CD6AC31183D5AC00CCABFE /* Profiles.xib */, + 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */, + 0341DD5F111B0F6B00074CED /* Objects.xib */, + 7DD803A10D5151CA005C2F01 /* Routes.xib */, + 7DD803A30D5153E5005C2F01 /* Behaviors.xib */, + 7DCB5A3F0D540647001678BC /* Memory.xib */, + 7DE53E6C0E32BF4A00C59033 /* CombatProfile.xib */, + 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */, + 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */, + 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */, + 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */, + 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */, + 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */, + 8D1107310486CEB800E47090 /* Info.plist */, + 03C42CC91096839E0085E888 /* Macros.plist */, + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + 03168ED410FF705A00EF241B /* Waypoint Action NIBs */, + 7D54DCB80E08449F00E1B463 /* Condition NIBs */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; + 7D2167440DC4566600D5A815 /* PTKeyCode */ = { + isa = PBXGroup; + children = ( + 7D2167840DC456D100D5A815 /* PTHeader.h */, + 7D2167770DC456A400D5A815 /* PTHotKey.h */, + 7D21677A0DC456A400D5A815 /* PTHotKey.m */, + 7D21677C0DC456A400D5A815 /* PTKeyCombo.h */, + 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */, + 7D2167790DC456A400D5A815 /* PTHotKeyCenter.h */, + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */, + 7D2167760DC456A400D5A815 /* PTKeyBroadcaster.h */, + 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */, + 7D21677B0DC456A400D5A815 /* PTKeyCodeTranslator.h */, + 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */, + ); + name = PTKeyCode; + sourceTree = ""; + }; + 7D41E8330DEA2DC900118EA0 /* Toolbar */ = { + isa = PBXGroup; + children = ( + 03A4047B0FE148C60087BC0D /* mbobbleicon.png */, + 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */, + 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */, + 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */, + 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */, + 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */, + 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */, + 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */, + 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */, + 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */, + 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */, + 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */, + 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */, + 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */, + 7DBA606F0D51D54E00FD6A5F /* Unused */, + ); + name = Toolbar; + sourceTree = ""; + }; + 7D41E8520DEA2DDE00118EA0 /* Race */ = { + isa = PBXGroup; + children = ( + 7D41EEC20DECD7BA00118EA0 /* Small */, + 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */, + 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */, + 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */, + 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */, + 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */, + 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */, + 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */, + 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */, + 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */, + 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */, + 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */, + 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */, + 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */, + 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */, + 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */, + 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */, + 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */, + 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */, + 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */, + 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */, + ); + name = Race; + sourceTree = ""; + }; + 7D41E87B0DEA2DEC00118EA0 /* Class */ = { + isa = PBXGroup; + children = ( + 7D41E8F50DEA378B00118EA0 /* Small */, + 7D41E87E0DEA2DFA00118EA0 /* Druid.png */, + 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */, + 7D41E8800DEA2DFA00118EA0 /* Mage.png */, + 7D41E8810DEA2DFA00118EA0 /* Paladin.png */, + 7D41E8820DEA2DFA00118EA0 /* Priest.png */, + 7D41E8830DEA2DFA00118EA0 /* Rogue.png */, + 7D41E8840DEA2DFA00118EA0 /* Shaman.png */, + 7D41E8850DEA2DFA00118EA0 /* Warlock.png */, + 7D41E8860DEA2DFA00118EA0 /* Warrior.png */, + 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */, + ); + name = Class; + sourceTree = ""; + }; + 7D41E8F50DEA378B00118EA0 /* Small */ = { + isa = PBXGroup; + children = ( + 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */, + 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */, + 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */, + 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */, + 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */, + 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */, + 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */, + 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */, + 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */, + 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */, + ); + name = Small; + sourceTree = ""; + }; + 7D41E9210DEA389800118EA0 /* Gender */ = { + isa = PBXGroup; + children = ( + 7D41E9240DEA38A500118EA0 /* Male.png */, + 7D41E9250DEA38A500118EA0 /* Female.png */, + ); + name = Gender; + sourceTree = ""; + }; + 7D41E99A0DEA731E00118EA0 /* Hotkey Help */ = { + isa = PBXGroup; + children = ( + 7D41E9A70DEA734200118EA0 /* Keybindings.png */, + 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */, + 7D41E9A90DEA734200118EA0 /* Result.png */, + 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */, + 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */, + 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */, + ); + name = "Hotkey Help"; + sourceTree = ""; + }; + 7D41EEC20DECD7BA00118EA0 /* Small */ = { + isa = PBXGroup; + children = ( + 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */, + 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */, + 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */, + 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */, + 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */, + 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */, + 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */, + 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */, + 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */, + 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */, + 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */, + 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */, + 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */, + 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */, + 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */, + 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */, + 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */, + 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */, + 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */, + 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */, + ); + name = Small; + sourceTree = ""; + }; + 7D53C0DF0E5E2182007B3AA6 /* UKKQueue */ = { + isa = PBXGroup; + children = ( + 7D53C0E10E5E2199007B3AA6 /* UKFileWatcher.h */, + 7D53C0E30E5E2199007B3AA6 /* UKMainThreadProxy.h */, + 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */, + 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */, + 7D53C0E60E5E2199007B3AA6 /* UKKQueue.h */, + 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */, + 7D53C0E70E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.h */, + 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */, + ); + name = UKKQueue; + sourceTree = ""; + }; + 7D54DCB80E08449F00E1B463 /* Condition NIBs */ = { + isa = PBXGroup; + children = ( + 03168DCA10FE8D0B00EF241B /* Waypoint Actions */, + 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */, + 038A4B4510E9656D00577D8F /* LastSpellCast.xib */, + 0350738310CDBA460004636E /* SpellCooldown.xib */, + 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */, + 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */, + 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */, + 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */, + 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */, + 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */, + 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */, + 7DF445540E241AE30075B96B /* TotemCondition.xib */, + 7DB822290E33382900661394 /* TempEnchantCondition.xib */, + 7D7C66A20E58E74D002A6C96 /* TargetType.xib */, + 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */, + 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */, + 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */, + ); + name = "Condition NIBs"; + sourceTree = ""; + }; + 7D65C8F50D2EE06200C50DF7 /* Conditions */ = { + isa = PBXGroup; + children = ( + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */, + 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */, + 7D9771130D2D8C0E00E6D8F9 /* ConditionCell.h */, + 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */, + 7D9771160D2D8F6000E6D8F9 /* ConditionController.h */, + 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */, + 7D9770C00D2D84D700E6D8F9 /* HealthConditionController.h */, + 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */, + 7D9772030D2DA23D00E6D8F9 /* StatusConditionController.h */, + 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */, + 7D9772730D2DA97A00E6D8F9 /* AuraConditionController.h */, + 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */, + 7D5496410E1AA073004AA3E9 /* AuraStackConditionController.h */, + 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */, + 7DC8B44B0D4147CB00B25B45 /* DistanceConditionController.h */, + 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */, + 7DC8B45F0D4152EC00B25B45 /* InventoryConditionController.h */, + 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */, + 7DD1D14D0DD241F60069CB07 /* ComboPointConditionController.h */, + 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */, + 7DF445510E241ABA0075B96B /* TotemConditionController.h */, + 7DF445520E241ABA0075B96B /* TotemConditionController.m */, + 7DB8222D0E33384300661394 /* TempEnchantConditionController.h */, + 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */, + 7D7C66BA0E58E92F002A6C96 /* TargetTypeConditionController.h */, + 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */, + 7D7C67170E58EC85002A6C96 /* TargetClassConditionController.h */, + 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */, + 7D7C66DB0E58E97D002A6C96 /* CombatCountConditionController.h */, + 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */, + 7D7C67140E58EC79002A6C96 /* ProximityCountConditionController.h */, + 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */, + 0350738710CDBA640004636E /* SpellCooldownConditionController.h */, + 0350738810CDBA640004636E /* SpellCooldownConditionController.m */, + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */, + 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */, + 03B6D26010F626EA00EC6EFF /* RuneConditionController.h */, + 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */, + 03168DC610FE8BA900EF241B /* DurabilityConditionController.h */, + 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */, + 03168E1910FE972300EF241B /* PlayerLevelConditionController.h */, + 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */, + 03168E1C10FE972B00EF241B /* PlayerZoneConditionController.h */, + 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */, + 03168E1F10FE973900EF241B /* QuestConditionController.h */, + 03168E2010FE973900EF241B /* QuestConditionController.m */, + 03168E2210FE974800EF241B /* RouteRunCountConditionController.h */, + 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */, + 03168E2510FE975300EF241B /* RouteRunTimeConditionController.h */, + 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */, + 03168E2810FE975E00EF241B /* InventoryFreeConditionController.h */, + 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */, + 03FFD46C110B930F0046AEDF /* MobsKilledConditionController.h */, + 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */, + 03BB2218112258A00048DE7B /* GateConditionController.h */, + 03BB2219112258A00048DE7B /* GateConditionController.m */, + 03BB227C1122F1240048DE7B /* StrandStatusConditionController.h */, + 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */, + ); + name = Conditions; + sourceTree = ""; + }; + 7D65C8F60D2EE0B100C50DF7 /* GUI Subclasses */ = { + isa = PBXGroup; + children = ( + 7D9772A70D2DB2B300E6D8F9 /* BetterTableView.h */, + 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */, + 7D9771760D2D951900E6D8F9 /* BetterSegmentedControl.h */, + 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */, + 7DD64AF40D5D10FA00773CAB /* RouteVisualizationView.h */, + 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */, + 7D0C43CF0DF2089E005F3940 /* ScanGridView.h */, + 7D0C43D00DF2089E005F3940 /* ScanGridView.m */, + 7D0C43F60DF20B0D005F3940 /* TransparentWindow.h */, + 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */, + ); + name = "GUI Subclasses"; + sourceTree = ""; + }; + 7D65CA9F0D2F095F00C50DF7 /* Waypoints & Routes */ = { + isa = PBXGroup; + children = ( + 7DD03F330D163F9A000CC1A6 /* Route.h */, + 7DD03F340D163F9A000CC1A6 /* Route.m */, + 7DD03F360D163FF8000CC1A6 /* Waypoint.h */, + 7DD03F370D163FF8000CC1A6 /* Waypoint.m */, + 7D1659890D455F6500BDF5CA /* RouteSet.h */, + 7D16598A0D455F6500BDF5CA /* RouteSet.m */, + 038769131124532000B2C571 /* RouteCollection.h */, + 038769141124532000B2C571 /* RouteCollection.m */, + ); + name = "Waypoints & Routes"; + sourceTree = ""; + }; + 7D72453E0D1511E20094665C /* Units */ = { + isa = PBXGroup; + children = ( + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */, + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */, + 7D7A6A470D270F130008C3FF /* WoWObject.h */, + 7D7A6A480D270F130008C3FF /* WoWObject.m */, + 7D41EA0F0DEB554100118EA0 /* Unit.h */, + 7D41EA100DEB554100118EA0 /* Unit.m */, + 7D7245400D1511F40094665C /* Mob.h */, + 7D7245410D1511F40094665C /* Mob.m */, + 7D41E5960DEA00A500118EA0 /* Player.h */, + 7D41E5970DEA00A500118EA0 /* Player.m */, + 7D9712940D248DA0005E3BD1 /* Item.h */, + 7D9712950D248DA0005E3BD1 /* Item.m */, + 7D9713C70D24D339005E3BD1 /* Node.h */, + 7D9713C80D24D339005E3BD1 /* Node.m */, + 7DA7B8C10D1DF92B00F81519 /* Spell.h */, + 7DA7B8C20D1DF92B00F81519 /* Spell.m */, + 7D8343F90D17231300853E32 /* Position.h */, + 7D8343FA0D17231300853E32 /* Position.m */, + 7DAD11640E117BF000B0F7BD /* Macro.h */, + 7DAD11650E117BF000B0F7BD /* Macro.m */, + 7D1BEE510F8733A400DF5FBF /* ChatLogEntry.h */, + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */, + 03CEF7840FCCD93100B47336 /* Corpse.h */, + 03CEF7850FCCD93100B47336 /* Corpse.m */, + 034429B60FAA3E1800E9DE03 /* Quest.h */, + 034429B70FAA3E1800E9DE03 /* Quest.m */, + 034429BB0FAA3E3800E9DE03 /* QuestItem.h */, + 034429BC0FAA3E3800E9DE03 /* QuestItem.m */, + ); + name = Units; + sourceTree = ""; + }; + 7D80B4710DE7578C004D00F6 /* Status Icons */ = { + isa = PBXGroup; + children = ( + 7D80B48C0DE75905004D00F6 /* Dead.png */, + 7D80B4720DE75795004D00F6 /* Friendly.png */, + 7D80B4B00DE76098004D00F6 /* Neutral.png */, + 7D80B4730DE75795004D00F6 /* Hostile.png */, + 7D80B4740DE75795004D00F6 /* Combat.png */, + 7DC41A6F0DEE041400F3B083 /* Skull.png */, + ); + name = "Status Icons"; + sourceTree = ""; + }; + 7D9770BA0D2D84C400E6D8F9 /* Rules & Procedures */ = { + isa = PBXGroup; + children = ( + 03168EE110FF70E900EF241B /* WaypointActions */, + 7D65C8F70D2EE14500C50DF7 /* Rule.h */, + 7D65C8F80D2EE14500C50DF7 /* Rule.m */, + 7D65CA460D2F04D200C50DF7 /* Procedure.h */, + 7D65CA470D2F04D200C50DF7 /* Procedure.m */, + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */, + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */, + 7D65C8F50D2EE06200C50DF7 /* Conditions */, + 7DE53DD90E32B84C00C59033 /* IgnoreEntry.h */, + 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */, + 7D1B39400F896A96005CA0CD /* ChatAction.h */, + 7D1B39410F896A96005CA0CD /* ChatAction.m */, + ); + name = "Rules & Procedures"; + sourceTree = ""; + }; + 7D97730C0D2DBF2800E6D8F9 /* GUI Controllers */ = { + isa = PBXGroup; + children = ( + 034126BF1135706E00BE6819 /* PvPController.h */, + 034126C01135706E00BE6819 /* PvPController.m */, + 0341DD64111B0FBE00074CED /* ObjectsController.h */, + 0341DD65111B0FBE00074CED /* ObjectsController.m */, + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */, + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */, + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */, + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */, + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */, + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */, + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */, + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */, + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */, + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */, + 7DE53DD60E32B48500C59033 /* CombatProfile.h */, + 7DE53DD70E32B48500C59033 /* CombatProfile.m */, + ); + name = "GUI Controllers"; + sourceTree = ""; + }; + 7DA95E190E2302BD00AC85E2 /* Banners */ = { + isa = PBXGroup; + children = ( + 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */, + 7DA95E320E2302C400AC85E2 /* BannerHorde.png */, + 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */, + ); + name = Banners; + sourceTree = ""; + }; + 7DAA05710D55656200A6D06A /* Authentication Library */ = { + isa = PBXGroup; + children = ( + 7DC3FF160D57C75100BEB58B /* BetterAuthorizationSampleLib.h */, + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */, + 7DC3FF150D57C75100BEB58B /* BetterAuthorizationSampleLibInstallTool.c */, + ); + name = "Authentication Library"; + sourceTree = ""; + }; + 7DAB64580E22A84A00B84C0E /* Ability Icons */ = { + isa = PBXGroup; + children = ( + 0352F46511376DA5005B28D6 /* PVP.png */, + 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */, + 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */, + 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */, + ); + name = "Ability Icons"; + sourceTree = ""; + }; + 7DBA60570D51D27100FD6A5F /* WoW Icons */ = { + isa = PBXGroup; + children = ( + 7DA95E190E2302BD00AC85E2 /* Banners */, + 7DAB64580E22A84A00B84C0E /* Ability Icons */, + 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */, + 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */, + 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */, + 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */, + 7DC419E30DEDFD0300F3B083 /* Nodes */, + 7D41E87B0DEA2DEC00118EA0 /* Class */, + 7D41E8520DEA2DDE00118EA0 /* Race */, + 7D41E9210DEA389800118EA0 /* Gender */, + 7D80B4710DE7578C004D00F6 /* Status Icons */, + 7D41E8330DEA2DC900118EA0 /* Toolbar */, + ); + name = "WoW Icons"; + sourceTree = ""; + }; + 7DBA606F0D51D54E00FD6A5F /* Unused */ = { + isa = PBXGroup; + children = ( + 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */, + ); + name = Unused; + sourceTree = ""; + }; + 7DBC344F0DB57665000C9BCF /* SRImages */ = { + isa = PBXGroup; + children = ( + 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */, + 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */, + 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */, + 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */, + ); + name = SRImages; + path = Images; + sourceTree = ""; + }; + 7DC3FF240D57C78700BEB58B /* Helper Tools */ = { + isa = PBXGroup; + children = ( + 7DC3FF270D57C79400BEB58B /* ToolCommon.h */, + 7DC3FF280D57C79400BEB58B /* ToolCommon.c */, + 7DC3FF260D57C79400BEB58B /* MemoryAccessTool.c */, + 7DAA05710D55656200A6D06A /* Authentication Library */, + ); + name = "Helper Tools"; + sourceTree = ""; + }; + 7DC419E30DEDFD0300F3B083 /* Nodes */ = { + isa = PBXGroup; + children = ( + 7DC41AE40DEE111600F3B083 /* Chicken.png */, + 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */, + 7DC41AD50DEE0CA100F3B083 /* Stable.png */, + 7DC41A560DEE020B00F3B083 /* Repair.png */, + 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */, + 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */, + 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */, + 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */, + 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */, + 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */, + 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */, + 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */, + 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */, + 7DC419EA0DEDFD0300F3B083 /* Scroll.png */, + 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */, + 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */, + 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */, + 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */, + ); + path = Nodes; + sourceTree = ""; + }; + 7DD64B090D5D191B00773CAB /* Images */ = { + isa = PBXGroup; + children = ( + 7DD64B1F0D5D192500773CAB /* off.png */, + 7D60430B0D5FC2DF001501AF /* mixed.png */, + 7DD64B200D5D192500773CAB /* on.png */, + 7D4AFB320D9EDBF100A33CE1 /* bad.tif */, + 7D4AFB330D9EDBF100A33CE1 /* good.tif */, + 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */, + 7D1B3B8E0F89AD22005CA0CD /* iChat.png */, + ); + name = Images; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* Pocket Gnome */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Pocket Gnome" */; + buildPhases = ( + 83A9BBD61178B706003E3683 /* Get SVN Revision */, + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 7DC8B60C0D419BF500B25B45 /* CopyFiles */, + ); + buildRules = ( + 7D1B3A500F8987B1005CA0CD /* PBXBuildRule */, + ); + dependencies = ( + ); + name = "Pocket Gnome"; + productInstallPath = "$(HOME)/Applications"; + productName = WoWWaypoint; + productReference = 8D1107320486CEB800E47090 /* Pocket Gnome.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + attributes = { + ORGANIZATIONNAME = "Savory Software, LLC\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010"; + }; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pocket Gnome" */; + compatibilityVersion = "Xcode 3.0"; + hasScannedForEncodings = 1; + knownRegions = ( + English, + Japanese, + French, + German, + en, + ); + mainGroup = 29B97314FDCFA39411CA2CEA /* WoWWaypoint */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* Pocket Gnome */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7D6BEC8D0F8844F600ED364A /* Growl Registration Ticket.growlRegDict in Resources */, + 7DB0ABC90EABED7F00B81BC1 /* FactionTemplate.plist in Resources */, + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + 7D3C91EB0E47C8C700EDF3B3 /* Gathering.plist in Resources */, + 7DD8037D0D514E62005C2F01 /* Player.xib in Resources */, + 7DD803980D515142005C2F01 /* Spells.xib in Resources */, + 7DD803A20D5151CA005C2F01 /* Routes.xib in Resources */, + 7DD803A40D5153E5005C2F01 /* Behaviors.xib in Resources */, + 7DBA60600D51D28600FD6A5F /* Spell_Holy_MindVision.png in Resources */, + 7DBA60620D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png in Resources */, + 7DBA60630D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png in Resources */, + 7DBA60640D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png in Resources */, + 7DBA60660D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png in Resources */, + 7DBA60690D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png in Resources */, + 7DBA606B0D51D38B00FD6A5F /* inv_misc_bag_14.png in Resources */, + 7DBA606D0D51D52600FD6A5F /* INV_Misc_Orb_05.png in Resources */, + 7DBA607B0D51D68000FD6A5F /* INV_Misc_Gear_01.png in Resources */, + 7DBA60810D51D75C00FD6A5F /* Ability_Warrior_Revenge.png in Resources */, + 7DBA60A20D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png in Resources */, + 7DCB5A400D540647001678BC /* Memory.xib in Resources */, + 7DD64B210D5D192500773CAB /* off.png in Resources */, + 7DD64B220D5D192500773CAB /* on.png in Resources */, + 7D60430C0D5FC2DF001501AF /* mixed.png in Resources */, + 7D4AFB340D9EDBF100A33CE1 /* bad.tif in Resources */, + 7D4AFB350D9EDBF100A33CE1 /* good.tif in Resources */, + 7DBC34540DB57665000C9BCF /* SRRemoveShortcut.tif in Resources */, + 7DBC34550DB57665000C9BCF /* SRRemoveShortcutPressed.tif in Resources */, + 7DBC34560DB57665000C9BCF /* SRRemoveShortcutRollover.tif in Resources */, + 7DBC34570DB57665000C9BCF /* SRSnapback.tiff in Resources */, + 7DD1D1560DD242A70069CB07 /* ComboPointCondition.xib in Resources */, + 7D80B4750DE75795004D00F6 /* Friendly.png in Resources */, + 7D80B4760DE75795004D00F6 /* Hostile.png in Resources */, + 7D80B4770DE75795004D00F6 /* Combat.png in Resources */, + 7D80B48D0DE75905004D00F6 /* Dead.png in Resources */, + 7D80B4B10DE76098004D00F6 /* Neutral.png in Resources */, + 7D41E8130DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png in Resources */, + 7D41E8670DEA2DE800118EA0 /* BloodElf-Female.png in Resources */, + 7D41E8680DEA2DE800118EA0 /* BloodElf-Male.png in Resources */, + 7D41E8690DEA2DE800118EA0 /* Draenei-Female.png in Resources */, + 7D41E86A0DEA2DE800118EA0 /* Draenei-Male.png in Resources */, + 7D41E86B0DEA2DE800118EA0 /* Dwarf-Female.png in Resources */, + 7D41E86C0DEA2DE800118EA0 /* Dwarf-Male.png in Resources */, + 7D41E86D0DEA2DE800118EA0 /* Gnome-Female.png in Resources */, + 7D41E86E0DEA2DE800118EA0 /* Gnome-Male.png in Resources */, + 7D41E86F0DEA2DE800118EA0 /* Human-Female.png in Resources */, + 7D41E8700DEA2DE800118EA0 /* Human-Male.png in Resources */, + 7D41E8710DEA2DE800118EA0 /* NightElf-Female.png in Resources */, + 7D41E8720DEA2DE800118EA0 /* NightElf-Male.png in Resources */, + 7D41E8730DEA2DE800118EA0 /* Orc-Female.png in Resources */, + 7D41E8740DEA2DE800118EA0 /* Orc-Male.png in Resources */, + 7D41E8750DEA2DE800118EA0 /* Tauren-Female.png in Resources */, + 7D41E8760DEA2DE800118EA0 /* Tauren-Male.png in Resources */, + 7D41E8770DEA2DE800118EA0 /* Troll-Female.png in Resources */, + 7D41E8780DEA2DE800118EA0 /* Troll-Male.png in Resources */, + 7D41E8790DEA2DE800118EA0 /* Undead-Female.png in Resources */, + 7D41E87A0DEA2DE800118EA0 /* Undead-Male.png in Resources */, + 7D41E8870DEA2DFA00118EA0 /* Druid.png in Resources */, + 7D41E8880DEA2DFA00118EA0 /* Hunter.png in Resources */, + 7D41E8890DEA2DFA00118EA0 /* Mage.png in Resources */, + 7D41E88A0DEA2DFA00118EA0 /* Paladin.png in Resources */, + 7D41E88B0DEA2DFA00118EA0 /* Priest.png in Resources */, + 7D41E88C0DEA2DFA00118EA0 /* Rogue.png in Resources */, + 7D41E88D0DEA2DFA00118EA0 /* Shaman.png in Resources */, + 7D41E88E0DEA2DFA00118EA0 /* Warlock.png in Resources */, + 7D41E88F0DEA2DFA00118EA0 /* Warrior.png in Resources */, + 7D41E9010DEA379300118EA0 /* Priest_Small.gif in Resources */, + 7D41E9020DEA379300118EA0 /* Shaman_Small.gif in Resources */, + 7D41E9030DEA379300118EA0 /* Paladin_Small.gif in Resources */, + 7D41E9040DEA379300118EA0 /* Warlock_Small.gif in Resources */, + 7D41E9050DEA379300118EA0 /* Mage_Small.gif in Resources */, + 7D41E9060DEA379300118EA0 /* Warrior_Small.gif in Resources */, + 7D41E9070DEA379300118EA0 /* Hunter_Small.gif in Resources */, + 7D41E9080DEA379300118EA0 /* Druid_Small.gif in Resources */, + 7D41E9090DEA379300118EA0 /* Rogue_Small.gif in Resources */, + 7D41E9260DEA38A500118EA0 /* Male.png in Resources */, + 7D41E9270DEA38A500118EA0 /* Female.png in Resources */, + 7D41E9AA0DEA734200118EA0 /* Keybindings.png in Resources */, + 7D41E9AB0DEA734200118EA0 /* InterfaceBars.png in Resources */, + 7D41E9AC0DEA734200118EA0 /* Result.png in Resources */, + 7D41E9AF0DEB467500118EA0 /* HotkeyFinished.png in Resources */, + 7D41E9B00DEB467500118EA0 /* TypeShortcut.png in Resources */, + 7D41EE7C0DECD45100118EA0 /* UnknownSmall.png in Resources */, + 7D41EEE00DECD7C600118EA0 /* Orc-Female_Small.gif in Resources */, + 7D41EEE10DECD7C600118EA0 /* Gnome-Female_Small.gif in Resources */, + 7D41EEE20DECD7C600118EA0 /* BloodElf-Female_Small.gif in Resources */, + 7D41EEE30DECD7C600118EA0 /* Orc-Male_Small.gif in Resources */, + 7D41EEE40DECD7C600118EA0 /* Troll-Female_Small.gif in Resources */, + 7D41EEE50DECD7C600118EA0 /* Undead-Male_Small.gif in Resources */, + 7D41EEE60DECD7C600118EA0 /* Human-Male_Small.gif in Resources */, + 7D41EEE70DECD7C600118EA0 /* BloodElf-Male_Small.gif in Resources */, + 7D41EEE80DECD7C600118EA0 /* Draenei-Female_Small.gif in Resources */, + 7D41EEE90DECD7C600118EA0 /* Tauren-Male_Small.gif in Resources */, + 7D41EEEA0DECD7C600118EA0 /* Draenei-Male_Small.gif in Resources */, + 7D41EEEB0DECD7C600118EA0 /* Dwarf-Male_Small.gif in Resources */, + 7D41EEEC0DECD7C600118EA0 /* Undead-Female_Small.gif in Resources */, + 7D41EEED0DECD7C600118EA0 /* Gnome-Male_Small.gif in Resources */, + 7D41EEEE0DECD7C600118EA0 /* Human-Female_Small.gif in Resources */, + 7D41EEEF0DECD7C600118EA0 /* Dwarf-Female_Small.gif in Resources */, + 7D41EEF00DECD7C600118EA0 /* Tauren-Female_Small.gif in Resources */, + 7D41EEF10DECD7C600118EA0 /* Troll-Male_Small.gif in Resources */, + 7D41EEFD0DECD85000118EA0 /* NightElf-Male_Small.gif in Resources */, + 7D41EEFE0DECD85000118EA0 /* NightElf-Female_Small.gif in Resources */, + 7DC419EF0DEDFD0300F3B083 /* ActiveQuestIcon.png in Resources */, + 7DC419F00DEDFD0300F3B083 /* AvailableQuestIcon.png in Resources */, + 7DC419F10DEDFD0300F3B083 /* BankerGossipIcon.png in Resources */, + 7DC419F20DEDFD0300F3B083 /* BinderGossipIcon.png in Resources */, + 7DC419F30DEDFD0300F3B083 /* GossipGossipIcon.png in Resources */, + 7DC419F40DEDFD0300F3B083 /* PetitionGossipIcon.png in Resources */, + 7DC419F50DEDFD0300F3B083 /* Scroll.png in Resources */, + 7DC419F60DEDFD0300F3B083 /* TabardGossipIcon.png in Resources */, + 7DC419F70DEDFD0300F3B083 /* TaxiGossipIcon.png in Resources */, + 7DC419F80DEDFD0300F3B083 /* TrainerGossipIcon.png in Resources */, + 7DC419F90DEDFD0300F3B083 /* VendorGossipIcon.png in Resources */, + 7DC419FC0DEDFDD000F3B083 /* MinimapGuideFlag.png in Resources */, + 7DC419FD0DEDFDD000F3B083 /* WarnTriangle.png in Resources */, + 7DC41A220DEDFED400F3B083 /* ResourceBlip.png in Resources */, + 7DC41A570DEE020B00F3B083 /* Repair.png in Resources */, + 7DC41A700DEE041400F3B083 /* Skull.png in Resources */, + 7DC41AD60DEE0CA100F3B083 /* Stable.png in Resources */, + 7DC41ADC0DEE0D9100F3B083 /* Innkeeper.png in Resources */, + 7DC41AE50DEE111600F3B083 /* Chicken.png in Resources */, + 7DC41AFE0DEE156800F3B083 /* NeutralCrest.gif in Resources */, + 7DC41AFF0DEE156800F3B083 /* HordeCrest.gif in Resources */, + 7DC41B000DEE156800F3B083 /* AllianceCrest.gif in Resources */, + 7DC7A9580DFB70CA00F6FA63 /* pgRoute.icns in Resources */, + 7DC7A9860DFC85C700F6FA63 /* pgBehavior.icns in Resources */, + 7DC7A9A60DFC869400F6FA63 /* gnome2.icns in Resources */, + 7DCE50660E12EF9100C5DF01 /* MainMenu.xib in Resources */, + 7DCE50750E12F05E00C5DF01 /* AuraCondition.xib in Resources */, + 7DCE50760E12F05E00C5DF01 /* StatusCondition.xib in Resources */, + 7DCE50770E12F05E00C5DF01 /* DistanceCondition.xib in Resources */, + 7DCE50780E12F05E00C5DF01 /* HealthCondition.xib in Resources */, + 7DCE50790E12F05E00C5DF01 /* InventoryCondition.xib in Resources */, + 7D5496460E1AA0F5004AA3E9 /* AuraStackCondition.xib in Resources */, + 7DAB645E0E22A85900B84C0E /* Ability_DualWieldSpecialization.png in Resources */, + 7DAB64610E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png in Resources */, + 7DAB64630E22AAB300B84C0E /* Ability_Warrior_Challange.png in Resources */, + 7DA95E340E2302C400AC85E2 /* BannerNeutral.png in Resources */, + 7DA95E350E2302C400AC85E2 /* BannerHorde.png in Resources */, + 7DA95E360E2302C400AC85E2 /* BannerAlliance.png in Resources */, + 7DA95ECE0E23537A00AC85E2 /* alarm.mp3 in Resources */, + 7DF445550E241AE30075B96B /* TotemCondition.xib in Resources */, + 7DE53E6D0E32BF4A00C59033 /* CombatProfile.xib in Resources */, + 7DB8222A0E33382900661394 /* TempEnchantCondition.xib in Resources */, + 7D7C66A30E58E74D002A6C96 /* TargetType.xib in Resources */, + 7D7C66AE0E58E8B0002A6C96 /* CombatCount.xib in Resources */, + 7D7C670A0E58EB37002A6C96 /* ProximityCount.xib in Resources */, + 7D7C670E0E58EC50002A6C96 /* TargetClass.xib in Resources */, + 7D3108E30EFDBCCB00ECFABE /* Bobber.png in Resources */, + 7D3109440EFDCBA700ECFABE /* splash.mp3 in Resources */, + 7D5498910F0222DC00DD46F8 /* INV_Fishingpole_03.png in Resources */, + 7DD8910B0F2BE875007E9FE4 /* DeathKnight.png in Resources */, + 7DD891240F2BE92A007E9FE4 /* DeathKnight_Small.gif in Resources */, + 7D6BE9700F87ED8B00ED364A /* ChatLog.xib in Resources */, + 7D6BE9990F87F6FB00ED364A /* Trade_Engraving.png in Resources */, + 7D1B3B8D0F89ACE9005CA0CD /* Mail.png in Resources */, + 7D1B3B8F0F89AD22005CA0CD /* iChat.png in Resources */, + 7DDCC4860F9EE3BE0085A88E /* InteractWithTarget.png in Resources */, + 03A4047C0FE148C60087BC0D /* mbobbleicon.png in Resources */, + 03D65A591090EC0D00537E9C /* OffsetSignatures.plist in Resources */, + 03C42CCA1096839E0085E888 /* Macros.plist in Resources */, + 03A01B3A109A2CFF00E6098E /* Statistics.xib in Resources */, + 0350738410CDBA460004636E /* SpellCooldown.xib in Resources */, + 038A4B4610E9656D00577D8F /* LastSpellCast.xib in Resources */, + 03B6D25E10F626C500EC6EFF /* RuneCondition.xib in Resources */, + 03168C8C10FE6D2000EF241B /* WaypointActionEditor.xib in Resources */, + 03168DDD10FE90B600EF241B /* DurabilityCondition.xib in Resources */, + 03168DDE10FE90B600EF241B /* InventoryFreeCondition.xib in Resources */, + 03168DDF10FE90B600EF241B /* PlayerLevelCondition.xib in Resources */, + 03168DE010FE90B600EF241B /* PlayerZoneCondition.xib in Resources */, + 03168DE110FE90B600EF241B /* QuestCondition.xib in Resources */, + 03168DE210FE90B600EF241B /* RouteRunCountCondition.xib in Resources */, + 03168DE310FE90B600EF241B /* RouteRunTimeCondition.xib in Resources */, + 03168EDE10FF70C600EF241B /* RepairAction.xib in Resources */, + 0316901010FF84AB00EF241B /* SwitchRouteAction.xib in Resources */, + 031695191101314B00EF241B /* ItemAction.xib in Resources */, + 0316951A1101314B00EF241B /* MacroAction.xib in Resources */, + 0316951B1101314B00EF241B /* SpellAction.xib in Resources */, + 03685DC6110266FC001CE552 /* DelayAction.xib in Resources */, + 03685DDA11026831001CE552 /* JumpAction.xib in Resources */, + 03685FA81103D73B001CE552 /* QuestGrabAction.xib in Resources */, + 03685FA91103D73B001CE552 /* QuestTurnInAction.xib in Resources */, + 614CD78A1106182100BA1B2F /* Bot.xib in Resources */, + 0322D6E211065D8900EF3EEF /* CombatProfileAction.xib in Resources */, + 0393F52D110A558200296CF8 /* ReverseRouteAction.xib in Resources */, + 0393F52E110A558300296CF8 /* VendorAction.xib in Resources */, + 0393F530110A558F00296CF8 /* MailAction.xib in Resources */, + 03FFD45B110B922D0046AEDF /* MobsKilledCondition.xib in Resources */, + 03FFD59A110CB55A0046AEDF /* InteractNPCAction.xib in Resources */, + 03FFD59B110CB55A0046AEDF /* InteractObjectAction.xib in Resources */, + 0341DD60111B0F6B00074CED /* Objects.xib in Resources */, + 03BB222A11225E410048DE7B /* GateCondition.xib in Resources */, + 03BB227B1122F1160048DE7B /* StrandStatus.xib in Resources */, + 03981DE9112B22E90081835F /* dsa_pub.pem in Resources */, + 034126C4113570E100BE6819 /* PvP.xib in Resources */, + 0352F46611376DA5005B28D6 /* PVP.png in Resources */, + 03A3211B114E9AC2000D23EE /* JumpToWaypointAction.xib in Resources */, + 83A9BBF21178BA03003E3683 /* buildnumber.xcconfig in Resources */, + 03CD6AC41183D5AC00CCABFE /* Profiles.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 83A9BBD61178B706003E3683 /* Get SVN Revision */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + comments = foo; + files = ( + ); + inputPaths = ( + ); + name = "Get SVN Revision"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "REV=`/usr/bin/svnversion -nc ${PROJECT_DIR} | /usr/bin/sed -e 's/^[^:]*://;s/[A-Za-z]//'`;echo \"BUILD_NUMBER = $REV\" > ${PROJECT_DIR}/buildnumber.xcconfig\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7D1B3A960F898D90005CA0CD /* iChat.app in Sources */, + 7D1B3A5C0F898887005CA0CD /* Mail.app in Sources */, + 8D11072D0486CEB800E47090 /* main.m in Sources */, + 7DAAE71A0D148972003F1E3C /* Controller.m in Sources */, + 7DAAE7220D14897D003F1E3C /* MemoryAccess.m in Sources */, + 7DAAE7690D14917E003F1E3C /* PlayerDataController.m in Sources */, + 7D5A384A0D14B52900E491CD /* NSNumberToHexString.m in Sources */, + 7D7245420D1511F40094665C /* Mob.m in Sources */, + 7DD03DE20D160075000CC1A6 /* MemoryViewController.m in Sources */, + 7DD03F0C0D163F44000CC1A6 /* WaypointController.m in Sources */, + 7DD03F350D163F9A000CC1A6 /* Route.m in Sources */, + 7DD03F380D163FF8000CC1A6 /* Waypoint.m in Sources */, + 7D220F150D1691E90026DF75 /* MobController.m in Sources */, + 7D8343FB0D17231300853E32 /* Position.m in Sources */, + 7DD3D40B0D1B2FEB0023D097 /* SpellController.m in Sources */, + 7DA7B8C30D1DF92B00F81519 /* Spell.m in Sources */, + 7D06F0420D23058B00DA4E99 /* AuraController.m in Sources */, + 7D9712960D248DA0005E3BD1 /* Item.m in Sources */, + 7D9712990D248ED4005E3BD1 /* InventoryController.m in Sources */, + 7D9713C90D24D339005E3BD1 /* Node.m in Sources */, + 7D7A695D0D26F04F0008C3FF /* NodeController.m in Sources */, + 7D7A6A490D270F130008C3FF /* WoWObject.m in Sources */, + 7D9770C10D2D84D700E6D8F9 /* HealthConditionController.m in Sources */, + 7D9771150D2D8C0E00E6D8F9 /* ConditionCell.m in Sources */, + 7D9771180D2D8F6000E6D8F9 /* ConditionController.m in Sources */, + 7D9771780D2D951900E6D8F9 /* BetterSegmentedControl.m in Sources */, + 7D9772050D2DA23D00E6D8F9 /* StatusConditionController.m in Sources */, + 7D9772750D2DA97A00E6D8F9 /* AuraConditionController.m in Sources */, + 7D9772A90D2DB2B300E6D8F9 /* BetterTableView.m in Sources */, + 7D97730F0D2DBF5400E6D8F9 /* RuleEditor.m in Sources */, + 7D65C8F90D2EE14500C50DF7 /* Rule.m in Sources */, + 7D65C8FC0D2EE16B00C50DF7 /* Condition.m in Sources */, + 7D65C9DB0D2EF93100C50DF7 /* ProcedureController.m in Sources */, + 7D65CA480D2F04D200C50DF7 /* Procedure.m in Sources */, + 7D65CC1D0D2F69BB00C50DF7 /* Behavior.m in Sources */, + 7DB2C44A0D3BFE4100100B4D /* BotController.m in Sources */, + 7DC8B44D0D4147CB00B25B45 /* DistanceConditionController.m in Sources */, + 7DC8B4610D4152EC00B25B45 /* InventoryConditionController.m in Sources */, + 7D16598B0D455F6500BDF5CA /* RouteSet.m in Sources */, + 7DC3FF190D57C76D00BEB58B /* BetterAuthorizationSampleLib.c in Sources */, + 7DC3FF2A0D57C7CE00BEB58B /* ToolCommon.c in Sources */, + 7DD64AF60D5D10FA00773CAB /* RouteVisualizationView.m in Sources */, + 7D21677E0DC456A400D5A815 /* PTKeyBroadcaster.m in Sources */, + 7D21677F0DC456A400D5A815 /* PTHotKeyCenter.m in Sources */, + 7D2167800DC456A400D5A815 /* PTKeyCodeTranslator.m in Sources */, + 7D2167810DC456A400D5A815 /* PTHotKey.m in Sources */, + 7D2167820DC456A400D5A815 /* PTKeyCombo.m in Sources */, + 7D70E7E20DC65372006B8826 /* ChatController.m in Sources */, + 7DD1D14F0DD241F60069CB07 /* ComboPointConditionController.m in Sources */, + 7D41E5950DE9FE8800118EA0 /* PlayersController.m in Sources */, + 7D41E5980DEA00A500118EA0 /* Player.m in Sources */, + 7D41E8B80DEA31DD00118EA0 /* ImageAndTextCell.m in Sources */, + 7D41EA110DEB554100118EA0 /* Unit.m in Sources */, + 7D0C43D10DF2089E005F3940 /* ScanGridView.m in Sources */, + 7D0C43F80DF20B0D005F3940 /* TransparentWindow.m in Sources */, + 7DE59CE00E09CABB003C6559 /* NSString+URLEncode.m in Sources */, + 7DBDA6770E0DAE5D0021E180 /* NoAccessApplication.m in Sources */, + 7DAD11660E117BF000B0F7BD /* Macro.m in Sources */, + 7D5496430E1AA073004AA3E9 /* AuraStackConditionController.m in Sources */, + 7DF445530E241ABA0075B96B /* TotemConditionController.m in Sources */, + 7DE983820E2B2BA800F41293 /* NSString+Extras.m in Sources */, + 7DE53DD80E32B48500C59033 /* CombatProfile.m in Sources */, + 7DE53DDB0E32B84C00C59033 /* IgnoreEntry.m in Sources */, + 7DB8222F0E33384300661394 /* TempEnchantConditionController.m in Sources */, + 7D45A6BA0E4461CA008A3601 /* BonjourController.m in Sources */, + 7D45A6CC0E4461DE008A3601 /* NSData+SockAddr.m in Sources */, + 7DBEC7DB0E4512D800994A7A /* GrabWindow.m in Sources */, + 7D7C66BC0E58E92F002A6C96 /* TargetTypeConditionController.m in Sources */, + 7D7C66DD0E58E97D002A6C96 /* CombatCountConditionController.m in Sources */, + 7D7C67160E58EC79002A6C96 /* ProximityCountConditionController.m in Sources */, + 7D7C67190E58EC85002A6C96 /* TargetClassConditionController.m in Sources */, + 7D53BFDB0E5DFAC6007B3AA6 /* SecureUserDefaults.m in Sources */, + 7D53C0E90E5E2199007B3AA6 /* UKMainThreadProxy.m in Sources */, + 7D53C0EA0E5E2199007B3AA6 /* UKFileWatcher.m in Sources */, + 7D53C0EB0E5E2199007B3AA6 /* UKKQueue.m in Sources */, + 7D53C0EC0E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m in Sources */, + 7D370B0D0E7350DD002FE3A4 /* Action.m in Sources */, + 7D370C070E7366DC002FE3A4 /* ActionMenusController.m in Sources */, + 7DB0ADE50EB02F0C00B81BC1 /* Aura.m in Sources */, + 7D5498960F02232500DD46F8 /* FishController.m in Sources */, + 7D1BEDF00F8717CF00DF5FBF /* ChatLogController.m in Sources */, + 7D1BEE530F8733A400DF5FBF /* ChatLogEntry.m in Sources */, + 7D1B39420F896A96005CA0CD /* ChatAction.m in Sources */, + 034429B80FAA3E1800E9DE03 /* Quest.m in Sources */, + 034429BD0FAA3E3800E9DE03 /* QuestItem.m in Sources */, + 034429C00FAA3E5600E9DE03 /* QuestController.m in Sources */, + 03CEF7880FCCD93100B47336 /* Corpse.m in Sources */, + 03CEF7890FCCD93100B47336 /* CorpseController.m in Sources */, + 030C2E4D0FDC09B300E80F7E /* LootController.m in Sources */, + 030604F31088162100C57D77 /* OffsetController.m in Sources */, + 0306057C10881CAE00C57D77 /* MacroController.m in Sources */, + 03A01B0D109A2A9600E6098E /* StatisticsController.m in Sources */, + 0313B4D810BAEA0B009E74E4 /* EventController.m in Sources */, + 0350738910CDBA640004636E /* SpellCooldownConditionController.m in Sources */, + 038709BA10D576E100DF5B90 /* BlacklistController.m in Sources */, + 03567AAD10DDAB52001ACE43 /* CombatController.m in Sources */, + 038A4B4910E9657900577D8F /* LastSpellCastConditionController.m in Sources */, + 03B6D26210F626EA00EC6EFF /* RuneConditionController.m in Sources */, + 03168C7110FE6CCD00EF241B /* WaypointActionEditor.m in Sources */, + 03168DC810FE8BA900EF241B /* DurabilityConditionController.m in Sources */, + 03168E1B10FE972300EF241B /* PlayerLevelConditionController.m in Sources */, + 03168E1E10FE972B00EF241B /* PlayerZoneConditionController.m in Sources */, + 03168E2110FE973900EF241B /* QuestConditionController.m in Sources */, + 03168E2410FE974800EF241B /* RouteRunCountConditionController.m in Sources */, + 03168E2710FE975300EF241B /* RouteRunTimeConditionController.m in Sources */, + 03168E2A10FE975E00EF241B /* InventoryFreeConditionController.m in Sources */, + 03168EE410FF713000EF241B /* ActionController.m in Sources */, + 03168EFE10FF72DF00EF241B /* RepairActionController.m in Sources */, + 0316904710FF89FC00EF241B /* SwitchRouteActionController.m in Sources */, + 031694CD110103C000EF241B /* SpellActionController.m in Sources */, + 031694D0110103CC00EF241B /* ItemActionController.m in Sources */, + 031694D3110103DA00EF241B /* MacroActionController.m in Sources */, + 031694D6110103E000EF241B /* DelayActionController.m in Sources */, + 031694D9110103E900EF241B /* JumpActionController.m in Sources */, + 03685FAD1103D768001CE552 /* QuestGrabActionController.m in Sources */, + 03685FB01103D77A001CE552 /* QuestTurnInActionController.m in Sources */, + 0322D6DA11065D0800EF3EEF /* CombatProfileActionController.m in Sources */, + 0393F533110A55DB00296CF8 /* MailActionController.m in Sources */, + 0393F536110A55E300296CF8 /* VendorActionController.m in Sources */, + 0393F539110A55EF00296CF8 /* ReverseRouteActionController.m in Sources */, + 03FFD46E110B930F0046AEDF /* MobsKilledConditionController.m in Sources */, + 03FFD596110CB5440046AEDF /* InteractNPCActionController.m in Sources */, + 03FFD597110CB5440046AEDF /* InteractObjectActionController.m in Sources */, + 03E1D73B110F54BE003180E4 /* SaveData.m in Sources */, + 03E1D7B8110F62CD003180E4 /* FileObject.m in Sources */, + 03BD330E11120A7A00941971 /* BindingsController.m in Sources */, + 0341DD66111B0FBE00074CED /* ObjectsController.m in Sources */, + 0341DDDA111B21D700074CED /* ObjectController.m in Sources */, + 03BB221A112258A00048DE7B /* GateConditionController.m in Sources */, + 03BB227E1122F1240048DE7B /* StrandStatusConditionController.m in Sources */, + 038769151124532000B2C571 /* RouteCollection.m in Sources */, + 03981E78112B898E0081835F /* MovementController.m in Sources */, + 03981F38112C819E0081835F /* LogController.m in Sources */, + 034126C11135706E00BE6819 /* PvPController.m in Sources */, + 034126E61135774100BE6819 /* Battleground.m in Sources */, + 034126E91135774A00BE6819 /* PvPBehavior.m in Sources */, + 03A320D5114E88A9000D23EE /* JumpToWaypointActionController.m in Sources */, + 03BE961A11828343004DBFBF /* FileController.m in Sources */, + D02F3C561182C37E000F4037 /* DatabaseManager.m in Sources */, + D02F3C5D1182C497000F4037 /* MailActionProfile.m in Sources */, + D02F3C601182C5AC000F4037 /* ProfileController.m in Sources */, + D02F3C871182C975000F4037 /* Profile.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */ = { + isa = PBXVariantGroup; + children = ( + 7D9714760D24F16C005E3BD1 /* English */, + 7D3C91EC0E47C8EA00EDF3B3 /* French */, + ); + name = Gathering.plist; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 83A9BBF11178BA03003E3683 /* buildnumber.xcconfig */; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)\"", + ); + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 1; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = PocketGnome_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = PGLOGGING; + GCC_PREPROCESSOR_DEFINITIONS_NOT_USED_IN_PRECOMPS = ""; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = NO; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = ggteabag; + VALID_ARCHS = "ppc i386"; + WRAPPER_EXTENSION = app; + ZERO_LINK = YES; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)\"", + ); + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = PocketGnome_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = NDEBUG; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = NO; + GCC_WARN_UNUSED_PARAMETER = NO; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "Pocket Gnome"; + VALID_ARCHS = "ppc i386"; + WARNING_CFLAGS = ""; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 83A9BBF11178BA03003E3683 /* buildnumber.xcconfig */; + buildSettings = { + ALTERNATE_GROUP = "$(INSTALL_GROUP)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = "PGLOGGING=1"; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 83A9BBF11178BA03003E3683 /* buildnumber.xcconfig */; + buildSettings = { + ALTERNATE_GROUP = "$(INSTALL_GROUP)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_DYNAMIC_NO_PIC = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_LABEL = YES; + GCC_WARN_UNUSED_PARAMETER = YES; + GCC_WARN_UNUSED_VALUE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + WARNING_CFLAGS = "-Wall"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Pocket Gnome" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pocket Gnome" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Pocket Gnome.xcodeproj/Josh.mode1v3 b/Pocket Gnome.xcodeproj/Josh.mode1v3 new file mode 100644 index 0000000..2f15c45 --- /dev/null +++ b/Pocket Gnome.xcodeproj/Josh.mode1v3 @@ -0,0 +1,1605 @@ + + + + + ActivePerspectiveName + Project + AllowedModules + + + BundleLoadPath + + MaxInstances + n + Module + PBXSmartGroupTreeModule + Name + Groups and Files Outline View + + + BundleLoadPath + + MaxInstances + n + Module + PBXNavigatorGroup + Name + Editor + + + BundleLoadPath + + MaxInstances + n + Module + XCTaskListModule + Name + Task List + + + BundleLoadPath + + MaxInstances + n + Module + XCDetailModule + Name + File and Smart Group Detail Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXBuildResultsModule + Name + Detailed Build Results Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXProjectFindModule + Name + Project Batch Find Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCProjectFormatConflictsModule + Name + Project Format Conflicts List + + + BundleLoadPath + + MaxInstances + n + Module + PBXBookmarksModule + Name + Bookmarks Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXClassBrowserModule + Name + Class Browser + + + BundleLoadPath + + MaxInstances + n + Module + PBXCVSModule + Name + Source Code Control Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXDebugBreakpointsModule + Name + Debug Breakpoints Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCDockableInspector + Name + Inspector + + + BundleLoadPath + + MaxInstances + n + Module + PBXOpenQuicklyModule + Name + Open Quickly Tool + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugSessionModule + Name + Debugger + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugCLIModule + Name + Debug Console + + + BundleLoadPath + + MaxInstances + n + Module + XCSnapshotModule + Name + Snapshots Tool + + + BundlePath + /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources + Description + DefaultDescriptionKey + DockingSystemVisible + + Extension + mode1v3 + FavBarConfig + + PBXProjectModuleGUID + 03CD6A3E1183573500CCABFE + XCBarModuleItemNames + + XCBarModuleItems + + + FirstTimeWindowDisplayed + + Identifier + com.apple.perspectives.project.mode1v3 + MajorVersion + 33 + MinorVersion + 0 + Name + Default + Notifications + + OpenEditors + + + Content + + PBXProjectModuleGUID + 03627A29126CF73D001BD472 + PBXProjectModuleLabel + BotController.m + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 03627A2A126CF73D001BD472 + PBXProjectModuleLabel + BotController.m + _historyCapacity + 0 + bookmark + 03627A44126CF9CC001BD472 + history + + 03627A2B126CF73D001BD472 + + + SplitCount + 1 + + StatusBarVisibility + + + Geometry + + Frame + {{0, 20}, {1432, 864}} + PBXModuleWindowStatusBarHidden2 + + RubberWindowFrame + 251 213 1432 905 0 0 1920 1178 + + + + PerspectiveWidths + + -1 + -1 + + Perspectives + + + ChosenToolbarItems + + active-combo-popup + action + NSToolbarFlexibleSpaceItem + debugger-enable-breakpoints + buildOrClean + build-and-go + com.apple.ide.PBXToolbarStopButton + get-info + NSToolbarFlexibleSpaceItem + com.apple.pbx.toolbar.searchfield + + ControllerClassBaseName + + IconName + WindowOfProjectWithEditor + Identifier + perspective.project + IsVertical + + Layout + + + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 217 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 29B97314FDCFA39411CA2CEA + 080E96DDFE201D6D7F000001 + 7D9770BA0D2D84C400E6D8F9 + 29B97317FDCFA39411CA2CEA + 1C37FBAC04509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 7 + 2 + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {217, 944}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + + XCSharingToken + com.apple.Xcode.GFSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {234, 962}} + GroupTreeTableConfiguration + + MainColumn + 217 + + RubberWindowFrame + 273 175 1391 1003 0 0 1920 1178 + + Module + PBXSmartGroupTreeModule + Proportion + 234pt + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 1CE0B20306471E060097A5F4 + PBXProjectModuleLabel + BotController.m + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CE0B20406471E060097A5F4 + PBXProjectModuleLabel + BotController.m + _historyCapacity + 0 + bookmark + 03627A43126CF9CC001BD472 + history + + 03D9CF10118B51C6004F0A52 + 035D4E8011989B5E0056C274 + 035D4E8311989B5E0056C274 + 035D4E8D1198AB900056C274 + 0314C301119AF911001F9652 + 0314C30B119AF96E001F9652 + 0314C3D1119C72F3001F9652 + 0314C3D7119C74D3001F9652 + 0362C9F211A88A6400EA65B2 + 0362CAA411A89B3100EA65B2 + 0362CAA511A89B3100EA65B2 + 0362CAA611A89B3100EA65B2 + 0362CAA711A89B3100EA65B2 + 0362CAA811A89B3100EA65B2 + 0362CAA911A89B3100EA65B2 + 0362CAAA11A89B3100EA65B2 + 0362CAAB11A89B3100EA65B2 + 0362CAAC11A89B3100EA65B2 + 0362CAAD11A89B3100EA65B2 + 0362CAAE11A89B3100EA65B2 + 0362CAAF11A89B3100EA65B2 + 0362CAB011A89B3100EA65B2 + 0362CAB111A89B3100EA65B2 + 0362CAB211A89B3100EA65B2 + 0362CAB311A89B3100EA65B2 + 0362CAB411A89B3100EA65B2 + 0362CAB511A89B3100EA65B2 + 0362CAB611A89B3100EA65B2 + 0362CAB711A89B3100EA65B2 + 0362CAB811A89B3100EA65B2 + 0362CAB911A89B3100EA65B2 + 0362CABA11A89B3100EA65B2 + 0362CABB11A89B3100EA65B2 + 0362CABC11A89B3100EA65B2 + 0362CABD11A89B3100EA65B2 + 0362CABE11A89B3100EA65B2 + 0362CABF11A89B3100EA65B2 + 0362CAC011A89B3100EA65B2 + 0362CAC111A89B3100EA65B2 + 0362CAC211A89B3100EA65B2 + 0362CAC311A89B3100EA65B2 + 0362CAC411A89B3100EA65B2 + 0362CAC511A89B3100EA65B2 + 0362CAC611A89B3100EA65B2 + 0362CAC711A89B3100EA65B2 + 0362CAC811A89B3100EA65B2 + 0362CAC911A89B3100EA65B2 + 0362CACA11A89B3100EA65B2 + 0362CAD411A89C5F00EA65B2 + 0362CC0711A8AD8100EA65B2 + 0362CDAF11A9990B00EA65B2 + 0362CDB011A9990B00EA65B2 + 0362CE1A11A9A28700EA65B2 + 0362CE1D11A9A28700EA65B2 + 0362CE3311A9A44500EA65B2 + 0362CE5511A9A7DD00EA65B2 + 0362CE6211A9A83200EA65B2 + 0362CE7611A9A92200EA65B2 + 0362CE8611A9AEDF00EA65B2 + 0362CEAF11A9AFFD00EA65B2 + 0362CEC511A9B0F900EA65B2 + 0362CEC611A9B0F900EA65B2 + 0362CEF011A9B1CB00EA65B2 + 0362CEFB11A9B2C200EA65B2 + 0362CEFC11A9B2C200EA65B2 + 0362CEFD11A9B2C200EA65B2 + 0362CEFF11A9B2C200EA65B2 + 0362CF2511A9B76000EA65B2 + 039E95D911A9BA99006BFB10 + 0331618211AAEAAD00467490 + 0384672B11AC1BE500C679A7 + 0384672E11AC1BE500C679A7 + 0384680311AC54CB00C679A7 + 038469E711B3186D00C679A7 + 038469E811B3186D00C679A7 + 032D138311C2CA790095B4B9 + 035DC44711DBC5F400EEE71A + 0344AF9811F7626100C4B991 + 0344AF9911F7626100C4B991 + 0344B0DC11F792D600C4B991 + 03DA4F16121C2B7F005E486B + 03DA4F17121C2B7F005E486B + 03A2E05C121CD83F0076F35D + 03753C4C1226C1790019C889 + 03BB4280123149EF00F9DA66 + 03BB44E91231806F00F9DA66 + 03BB46BB1236A73C00F9DA66 + 0368D79112380A68004E9D13 + 03503F381257D06E00E511C8 + 03504005125A9CF300E511C8 + 035040D9125AACF600E511C8 + 035040FF125AB14300E511C8 + 03504100125AB14300E511C8 + 03504104125AB1FE00E511C8 + 030A04FD12674DC0001DBEFC + 030A05201267572B001DBEFC + 030A056E12675E40001DBEFC + 030A058612675E90001DBEFC + 030A058712675E90001DBEFC + 030A058D12675EDB001DBEFC + 030A059312675F05001DBEFC + 030A05EA12678E62001DBEFC + 030A0601126791B5001DBEFC + 030A061412679293001DBEFC + 030A06A71267A124001DBEFC + 030A06FD1267A5BD001DBEFC + 030A071B1267A6AE001DBEFC + 0344CABC1267B08C00B4A9C7 + 0344CAEA1267B1D900B4A9C7 + 0344CAEB1267B1D900B4A9C7 + 0344CAF11267B24C00B4A9C7 + 0344CB011267CE5300B4A9C7 + 0344CB041267CE5300B4A9C7 + 0344CB051267CE5300B4A9C7 + 0344CB081267CE5300B4A9C7 + 0344CB091267CE5300B4A9C7 + 0344CB2E1267DDC000B4A9C7 + 0344CB2F1267DDC000B4A9C7 + 0344CB301267DDC000B4A9C7 + 0344CB311267DDC000B4A9C7 + 0344CB321267DDC000B4A9C7 + 0344CB351267DDC000B4A9C7 + 033C3C7E1268F4B90050DBDC + 033C3C881268F5030050DBDC + 033C3CC7126B36AA0050DBDC + 033C3CDE126B39F90050DBDC + 033C3CE5126B3AF70050DBDC + 033C3CE6126B3AF70050DBDC + 033C3CE7126B3AF70050DBDC + 033C3CE8126B3AF70050DBDC + 033C3CEA126B3AF70050DBDC + 033C3CEB126B3AF70050DBDC + 033C3D1B126B40F00050DBDC + 033C3D1C126B40F00050DBDC + 033C3D1D126B40F00050DBDC + 033C3D21126B40F00050DBDC + 033C3D27126B413D0050DBDC + 033C3D47126B42880050DBDC + 033C3D60126B5EC90050DBDC + 033C3D8C126B62730050DBDC + 033C3D93126B62C30050DBDC + 033C3DA9126B63EB0050DBDC + 033C3DBF126B64DF0050DBDC + 033C3DDE126B780F0050DBDC + 033C3E3A126B82560050DBDC + 033C3E3D126B84540050DBDC + 033C3E3E126B84540050DBDC + 033C3E3F126B84540050DBDC + 033C3E8E126B8E8F0050DBDC + 033C3E9C126B90FD0050DBDC + 033C3E9D126B90FD0050DBDC + 033C3EA2126B933C0050DBDC + 033C3EAC126B94180050DBDC + 033C3EB8126B94C90050DBDC + 033C3F11126BD6C10050DBDC + 033C3F4D126CA5EB0050DBDC + 033C3F4F126CA5EB0050DBDC + 033C3F50126CA5EB0050DBDC + 033C3F51126CA5EB0050DBDC + 033C3F52126CA5EB0050DBDC + 033C3F53126CA5EB0050DBDC + 033C3F54126CA5EB0050DBDC + 033C3F55126CA5EB0050DBDC + 033C3F56126CA5EB0050DBDC + 033C3F57126CA5EB0050DBDC + 033C3F58126CA5EB0050DBDC + 033C3F5C126CA6170050DBDC + 03627A24126CF73D001BD472 + 03627A25126CF73D001BD472 + 03627A26126CF73D001BD472 + 03627A3D126CF854001BD472 + 03627A3E126CF854001BD472 + + + SplitCount + 1 + + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {1152, 761}} + RubberWindowFrame + 273 175 1391 1003 0 0 1920 1178 + + Module + PBXNavigatorGroup + Proportion + 761pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CE0B20506471E060097A5F4 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{0, 766}, {1152, 196}} + RubberWindowFrame + 273 175 1391 1003 0 0 1920 1178 + + Module + XCDetailModule + Proportion + 196pt + + + Proportion + 1152pt + + + Name + Project + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + XCModuleDock + PBXNavigatorGroup + XCDetailModule + + TableOfContents + + 03627A1E126CF481001BD472 + 1CE0B1FE06471DED0097A5F4 + 03627A1F126CF481001BD472 + 1CE0B20306471E060097A5F4 + 1CE0B20506471E060097A5F4 + + ToolbarConfigUserDefaultsMinorVersion + 2 + ToolbarConfiguration + xcode.toolbar.config.defaultV3 + + + ControllerClassBaseName + + IconName + WindowOfProject + Identifier + perspective.morph + IsVertical + 0 + Layout + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C08E77C0454961000C914BD + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + + PBXProjectModuleGUID + 11E0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 186 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 29B97314FDCFA39411CA2CEA + 1C37FABC05509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {186, 337}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 1 + XCSharingToken + com.apple.Xcode.GFSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {203, 355}} + GroupTreeTableConfiguration + + MainColumn + 186 + + RubberWindowFrame + 373 269 690 397 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 100% + + + Name + Morph + PreferredWidth + 300 + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + + TableOfContents + + 11E0B1FE06471DED0097A5F4 + + ToolbarConfiguration + xcode.toolbar.config.default.shortV3 + + + PerspectivesBarVisible + + ShelfIsVisible + + SourceDescription + file at '/Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec' + StatusbarIsVisible + + TimeStamp + 0.0 + ToolbarConfigUserDefaultsMinorVersion + 2 + ToolbarDisplayMode + 1 + ToolbarIsVisible + + ToolbarSizeMode + 1 + Type + Perspectives + UpdateMessage + The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? + WindowJustification + 5 + WindowOrderList + + 03627A41126CF854001BD472 + 03627A42126CF854001BD472 + 1C78EAAD065D492600B07095 + 1C530D57069F1CE1000CFCEE + 1CD10A99069EF8BA00B06720 + 03CD6A3F1183573500CCABFE + 03627A29126CF73D001BD472 + /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj + + WindowString + 273 175 1391 1003 0 0 1920 1178 + WindowToolsV3 + + + FirstTimeWindowDisplayed + + Identifier + windowTool.build + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528F0623707200166675 + PBXProjectModuleLabel + + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {1759, 401}} + RubberWindowFrame + 85 378 1759 888 0 0 1920 1178 + + Module + PBXNavigatorGroup + Proportion + 401pt + + + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build Results + XCBuildResultsTrigger_Collapse + 1021 + XCBuildResultsTrigger_Open + 1011 + + GeometryConfiguration + + Frame + {{0, 406}, {1759, 441}} + RubberWindowFrame + 85 378 1759 888 0 0 1920 1178 + + Module + PBXBuildResultsModule + Proportion + 441pt + + + Proportion + 847pt + + + Name + Build Results + ServiceClasses + + PBXBuildResultsModule + + StatusbarIsVisible + + TableOfContents + + 03CD6A3F1183573500CCABFE + 03627A20126CF481001BD472 + 1CD0528F0623707200166675 + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.buildV3 + WindowContentMinSize + 486 300 + WindowString + 85 378 1759 888 0 0 1920 1178 + WindowToolGUID + 03CD6A3F1183573500CCABFE + WindowToolIsVisible + + + + FirstTimeWindowDisplayed + + Identifier + windowTool.debugger + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {316, 203}} + {{316, 0}, {378, 203}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {694, 203}} + {{0, 203}, {694, 178}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1C162984064C10D400B95A72 + PBXProjectModuleLabel + Debug - GLUTExamples (Underwater) + + GeometryConfiguration + + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 0}, {694, 381}} + PBXDebugSessionStackFrameViewKey + + DebugVariablesTableConfiguration + + Name + 120 + Value + 85 + Summary + 148 + + Frame + {{316, 0}, {378, 203}} + RubberWindowFrame + 492 801 694 422 0 0 1920 1178 + + RubberWindowFrame + 492 801 694 422 0 0 1920 1178 + + Module + PBXDebugSessionModule + Proportion + 381pt + + + Proportion + 381pt + + + Name + Debugger + ServiceClasses + + PBXDebugSessionModule + + StatusbarIsVisible + + TableOfContents + + 1CD10A99069EF8BA00B06720 + 03627A2D126CF73D001BD472 + 1C162984064C10D400B95A72 + 03627A2E126CF73D001BD472 + 03627A2F126CF73D001BD472 + 03627A30126CF73D001BD472 + 03627A31126CF73D001BD472 + 03627A32126CF73D001BD472 + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + WindowString + 492 801 694 422 0 0 1920 1178 + WindowToolGUID + 1CD10A99069EF8BA00B06720 + WindowToolIsVisible + + + + FirstTimeWindowDisplayed + + Identifier + windowTool.find + IsVertical + + Layout + + + Dock + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CDD528C0622207200134675 + PBXProjectModuleLabel + CombatController.m + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {1510, 560}} + RubberWindowFrame + -1800 196 1510 1022 -1920 80 1920 1200 + + Module + PBXNavigatorGroup + Proportion + 1510pt + + + Proportion + 560pt + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528E0623707200166675 + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{0, 565}, {1510, 416}} + RubberWindowFrame + -1800 196 1510 1022 -1920 80 1920 1200 + + Module + PBXProjectFindModule + Proportion + 416pt + + + Proportion + 981pt + + + Name + Project Find + ServiceClasses + + PBXProjectFindModule + + StatusbarIsVisible + + TableOfContents + + 1C530D57069F1CE1000CFCEE + 03627A33126CF73D001BD472 + 03627A34126CF73D001BD472 + 1CDD528C0622207200134675 + 1CD0528E0623707200166675 + + WindowString + -1800 196 1510 1022 -1920 80 1920 1200 + WindowToolGUID + 1C530D57069F1CE1000CFCEE + WindowToolIsVisible + + + + Identifier + MENUSEPARATOR + + + FirstTimeWindowDisplayed + + Identifier + windowTool.debuggerConsole + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAAC065D492600B07095 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {985, 307}} + RubberWindowFrame + 464 471 985 348 0 0 1920 1178 + + Module + PBXDebugCLIModule + Proportion + 307pt + + + Proportion + 307pt + + + Name + Debugger Console + ServiceClasses + + PBXDebugCLIModule + + StatusbarIsVisible + + TableOfContents + + 1C78EAAD065D492600B07095 + 03627A3C126CF852001BD472 + 1C78EAAC065D492600B07095 + + ToolbarConfiguration + xcode.toolbar.config.consoleV3 + WindowString + 464 471 985 348 0 0 1920 1178 + WindowToolGUID + 1C78EAAD065D492600B07095 + WindowToolIsVisible + + + + Identifier + windowTool.snapshots + Layout + + + Dock + + + Module + XCSnapshotModule + Proportion + 100% + + + Proportion + 100% + + + Name + Snapshots + ServiceClasses + + XCSnapshotModule + + StatusbarIsVisible + Yes + ToolbarConfiguration + xcode.toolbar.config.snapshots + WindowString + 315 824 300 550 0 0 1440 878 + WindowToolIsVisible + Yes + + + Identifier + windowTool.scm + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAB2065D492600B07095 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1C78EAB3065D492600B07095 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {452, 0}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 0pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD052920623707200166675 + PBXProjectModuleLabel + SCM + + GeometryConfiguration + + ConsoleFrame + {{0, 259}, {452, 0}} + Frame + {{0, 7}, {452, 259}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + TableConfiguration + + Status + 30 + FileName + 199 + Path + 197.0950012207031 + + TableFrame + {{0, 0}, {452, 250}} + + Module + PBXCVSModule + Proportion + 262pt + + + Proportion + 266pt + + + Name + SCM + ServiceClasses + + PBXCVSModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAB4065D492600B07095 + 1C78EAB5065D492600B07095 + 1C78EAB2065D492600B07095 + 1CD052920623707200166675 + + ToolbarConfiguration + xcode.toolbar.config.scm + WindowString + 743 379 452 308 0 0 1280 1002 + + + Identifier + windowTool.breakpoints + IsVertical + 0 + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + no + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 168 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 1C77FABC04509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {168, 350}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 0 + + GeometryConfiguration + + Frame + {{0, 0}, {185, 368}} + GroupTreeTableConfiguration + + MainColumn + 168 + + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 185pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA1AED706398EBD00589147 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{190, 0}, {554, 368}} + RubberWindowFrame + 315 424 744 409 0 0 1440 878 + + Module + XCDetailModule + Proportion + 554pt + + + Proportion + 368pt + + + MajorVersion + 3 + MinorVersion + 0 + Name + Breakpoints + ServiceClasses + + PBXSmartGroupTreeModule + XCDetailModule + + StatusbarIsVisible + 1 + TableOfContents + + 1CDDB66807F98D9800BB5817 + 1CDDB66907F98D9800BB5817 + 1CE0B1FE06471DED0097A5F4 + 1CA1AED706398EBD00589147 + + ToolbarConfiguration + xcode.toolbar.config.breakpointsV3 + WindowString + 315 424 744 409 0 0 1440 878 + WindowToolGUID + 1CDDB66807F98D9800BB5817 + WindowToolIsVisible + 1 + + + Identifier + windowTool.debugAnimator + Layout + + + Dock + + + Module + PBXNavigatorGroup + Proportion + 100% + + + Proportion + 100% + + + Name + Debug Visualizer + ServiceClasses + + PBXNavigatorGroup + + StatusbarIsVisible + 1 + ToolbarConfiguration + xcode.toolbar.config.debugAnimatorV3 + WindowString + 100 100 700 500 0 0 1280 1002 + + + Identifier + windowTool.bookmarks + Layout + + + Dock + + + Module + PBXBookmarksModule + Proportion + 100% + + + Proportion + 100% + + + Name + Bookmarks + ServiceClasses + + PBXBookmarksModule + + StatusbarIsVisible + 0 + WindowString + 538 42 401 187 0 0 1280 1002 + + + Identifier + windowTool.projectFormatConflicts + Layout + + + Dock + + + Module + XCProjectFormatConflictsModule + Proportion + 100% + + + Proportion + 100% + + + Name + Project Format Conflicts + ServiceClasses + + XCProjectFormatConflictsModule + + StatusbarIsVisible + 0 + WindowContentMinSize + 450 300 + WindowString + 50 850 472 307 0 0 1440 877 + + + Identifier + windowTool.classBrowser + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + OptionsSetName + Hierarchy, all classes + PBXProjectModuleGUID + 1CA6456E063B45B4001379D8 + PBXProjectModuleLabel + Class Browser - NSObject + + GeometryConfiguration + + ClassesFrame + {{0, 0}, {374, 96}} + ClassesTreeTableConfiguration + + PBXClassNameColumnIdentifier + 208 + PBXClassBookColumnIdentifier + 22 + + Frame + {{0, 0}, {630, 331}} + MembersFrame + {{0, 105}, {374, 395}} + MembersTreeTableConfiguration + + PBXMemberTypeIconColumnIdentifier + 22 + PBXMemberNameColumnIdentifier + 216 + PBXMemberTypeColumnIdentifier + 97 + PBXMemberBookColumnIdentifier + 22 + + PBXModuleWindowStatusBarHidden2 + 1 + RubberWindowFrame + 385 179 630 352 0 0 1440 878 + + Module + PBXClassBrowserModule + Proportion + 332pt + + + Proportion + 332pt + + + Name + Class Browser + ServiceClasses + + PBXClassBrowserModule + + StatusbarIsVisible + 0 + TableOfContents + + 1C0AD2AF069F1E9B00FABCE6 + 1C0AD2B0069F1E9B00FABCE6 + 1CA6456E063B45B4001379D8 + + ToolbarConfiguration + xcode.toolbar.config.classbrowser + WindowString + 385 179 630 352 0 0 1440 878 + WindowToolGUID + 1C0AD2AF069F1E9B00FABCE6 + WindowToolIsVisible + 0 + + + Identifier + windowTool.refactoring + IncludeInToolsMenu + 0 + Layout + + + Dock + + + BecomeActive + 1 + GeometryConfiguration + + Frame + {0, 0}, {500, 335} + RubberWindowFrame + {0, 0}, {500, 335} + + Module + XCRefactoringModule + Proportion + 100% + + + Proportion + 100% + + + Name + Refactoring + ServiceClasses + + XCRefactoringModule + + WindowString + 200 200 500 356 0 0 1920 1200 + + + + diff --git a/Pocket Gnome.xcodeproj/Josh.pbxuser b/Pocket Gnome.xcodeproj/Josh.pbxuser new file mode 100644 index 0000000..7e142f7 --- /dev/null +++ b/Pocket Gnome.xcodeproj/Josh.pbxuser @@ -0,0 +1,2788 @@ +// !$*UTF8*$! +{ + 030604F11088162100C57D77 /* OffsetController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1268, 772}}"; + sepNavSelRange = "{1108, 0}"; + sepNavVisRange = "{0, 1678}"; + }; + }; + 030604F21088162100C57D77 /* OffsetController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1268, 6266}}"; + sepNavSelRange = "{2373, 0}"; + sepNavVisRange = "{1821, 1461}"; + }; + }; + 0306057B10881CAE00C57D77 /* MacroController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 5148}}"; + sepNavSelRange = "{1319, 13}"; + sepNavVisRange = "{685, 986}"; + }; + }; + 030A04FD12674DC0001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03BD330C11120A7A00941971 /* BindingsController.h */; + name = "BindingsController.h: 32"; + rLen = 13; + rLoc = 981; + rType = 0; + vrLen = 1373; + vrLoc = 235; + }; + 030A05201267572B001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03981F36112C819E0081835F /* LogController.h */; + name = "LogController.h: 7"; + rLen = 0; + rLoc = 142; + rType = 0; + vrLen = 1708; + vrLoc = 0; + }; + 030A056E12675E40001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DA7B8C20D1DF92B00F81519 /* Spell.m */; + name = "Spell.m: 25"; + rLen = 0; + rLoc = 395; + rType = 0; + vrLen = 1065; + vrLoc = 3417; + }; + 030A058612675E90001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03CD6A67118359B100CCABFE /* Defines.h */; + name = "Defines.h: 289"; + rLen = 0; + rLoc = 21550; + rType = 0; + vrLen = 2174; + vrLoc = 0; + }; + 030A058712675E90001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */; + name = "ClientDbDefines.h: 27"; + rLen = 8; + rLoc = 1248; + rType = 0; + vrLen = 1395; + vrLoc = 1143; + }; + 030A058D12675EDB001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C541182C37E000F4037 /* DatabaseManager.h */; + name = "DatabaseManager.h: 19"; + rLen = 0; + rLoc = 1093; + rType = 0; + vrLen = 2362; + vrLoc = 0; + }; + 030A059312675F05001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C551182C37E000F4037 /* DatabaseManager.m */; + name = "DatabaseManager.m: 185"; + rLen = 0; + rLoc = 6105; + rType = 0; + vrLen = 1521; + vrLoc = 3824; + }; + 030A05EA12678E62001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 030A05EB12678E62001DBEFC /* NSSound.h */; + name = "NSSound.h: 73"; + rLen = 31; + rLoc = 2130; + rType = 0; + vrLen = 2582; + vrLoc = 1326; + }; + 030A05EB12678E62001DBEFC /* NSSound.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = NSSound.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSSound.h; + sourceTree = ""; + }; + 030A05FA12679147001DBEFC /* MacTypes.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = MacTypes.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacTypes.h; + sourceTree = ""; + }; + 030A0601126791B5001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 030A05FA12679147001DBEFC /* MacTypes.h */; + name = "MacTypes.h: 111"; + rLen = 0; + rLoc = 3020; + rType = 0; + vrLen = 1570; + vrLoc = 1833; + }; + 030A061412679293001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */; + name = "Aura.h: 31"; + rLen = 49; + rLoc = 898; + rType = 0; + vrLen = 953; + vrLoc = 0; + }; + 030A06A71267A124001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D06F0400D23058B00DA4E99 /* AuraController.h */; + name = "AuraController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1519; + vrLoc = 0; + }; + 030A06FD1267A5BD001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03BD330D11120A7A00941971 /* BindingsController.m */; + name = "BindingsController.m: 471"; + rLen = 0; + rLoc = 14707; + rType = 0; + vrLen = 1605; + vrLoc = 14076; + }; + 030A071B1267A6AE001DBEFC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD3D4090D1B2FEB0023D097 /* SpellController.h */; + name = "SpellController.h: 53"; + rLen = 0; + rLoc = 1415; + rType = 0; + vrLen = 1217; + vrLoc = 787; + }; + 030C2E4C0FDC09B300E80F7E /* LootController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 3432}}"; + sepNavSelRange = "{7988, 13}"; + sepNavVisRange = "{6920, 1267}"; + }; + }; + 0313B4D610BAEA0B009E74E4 /* EventController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 600}}"; + sepNavSelRange = "{628, 7}"; + sepNavVisRange = "{0, 852}"; + }; + }; + 0313B4D710BAEA0B009E74E4 /* EventController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 1612}}"; + sepNavSelRange = "{1922, 13}"; + sepNavVisRange = "{1240, 1767}"; + }; + }; + 0314C301119AF911001F9652 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0314C302119AF911001F9652 /* vm_region.h */; + name = "vm_region.h: 98"; + rLen = 30; + rLoc = 3094; + rType = 0; + vrLen = 1423; + vrLoc = 2723; + }; + 0314C302119AF911001F9652 /* vm_region.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = vm_region.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/vm_region.h; + sourceTree = ""; + }; + 0314C304119AF911001F9652 /* vm_prot.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = vm_prot.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/vm_prot.h; + sourceTree = ""; + }; + 0314C30B119AF96E001F9652 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0314C304119AF911001F9652 /* vm_prot.h */; + name = "vm_prot.h: 84"; + rLen = 0; + rLoc = 2885; + rType = 0; + vrLen = 1003; + vrLoc = 2502; + }; + 0314C3D1119C72F3001F9652 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D5B92960D9F179D00423FC6 /* gnome.icns */; + }; + 0314C3D7119C74D3001F9652 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */; + }; + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 754}}"; + sepNavSelRange = "{626, 0}"; + sepNavVisRange = "{0, 1435}"; + }; + }; + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1261, 4927}}"; + sepNavSelRange = "{316, 0}"; + sepNavVisRange = "{0, 799}"; + }; + }; + 03168EE310FF713000EF241B /* ActionController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 1599}}"; + sepNavSelRange = "{2596, 20}"; + sepNavVisRange = "{1481, 1687}"; + }; + }; + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 647}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 461}"; + }; + }; + 032B8C030FDEE37900807DD0 /* Errors.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 871}}"; + sepNavSelRange = "{236, 7}"; + sepNavVisRange = "{0, 1139}"; + }; + }; + 032D138311C2CA790095B4B9 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0341DDD9111B21D700074CED /* ObjectController.m */; + name = "ObjectController.m: 164"; + rLen = 0; + rLoc = 4711; + rType = 0; + vrLen = 1101; + vrLoc = 4339; + }; + 0331618211AAEAAD00467490 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */; + name = "WaypointController.h: 4"; + rLen = 0; + rLoc = 47; + rType = 0; + vrLen = 1272; + vrLoc = 3; + }; + 0331619511AAF1B900467490 /* appcast.xml */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1965, 1573}}"; + sepNavSelRange = "{210, 0}"; + sepNavVisRange = "{0, 3514}"; + sepNavWindowFrame = "{{217, 113}, {1351, 740}}"; + }; + }; + 033C3C7E1268F4B90050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 030604F21088162100C57D77 /* OffsetController.m */; + name = "OffsetController.m: 74"; + rLen = 0; + rLoc = 2373; + rType = 0; + vrLen = 1461; + vrLoc = 1821; + }; + 033C3C881268F5030050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 030604F11088162100C57D77 /* OffsetController.h */; + name = "OffsetController.h: 19"; + rLen = 0; + rLoc = 1108; + rType = 0; + vrLen = 1678; + vrLoc = 0; + }; + 033C3CC7126B36AA0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */; + name = "SpellController.m: 184"; + rLen = 0; + rLoc = 5847; + rType = 0; + vrLen = 2167; + vrLoc = 4396; + }; + 033C3CDE126B39F90050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D5498950F02232500DD46F8 /* FishController.m */; + name = "FishController.m: 258"; + rLen = 11; + rLoc = 7398; + rType = 0; + vrLen = 1587; + vrLoc = 7178; + }; + 033C3CE5126B3AF70050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C851182C975000F4037 /* Profile.h */; + name = "Profile.h: 30"; + rLen = 10; + rLoc = 1294; + rType = 0; + vrLen = 1357; + vrLoc = 0; + }; + 033C3CE6126B3AF70050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */; + name = "Behavior.m: 46"; + rLen = 0; + rLoc = 946; + rType = 0; + vrLen = 2185; + vrLoc = 1260; + }; + 033C3CE7126B3AF70050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */; + name = "Behavior.h: 19"; + rLen = 10; + rLoc = 481; + rType = 0; + vrLen = 845; + vrLoc = 0; + }; + 033C3CE8126B3AF70050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C5C1182C497000F4037 /* MailActionProfile.m */; + name = "MailActionProfile.m: 46"; + rLen = 342; + rLoc = 1665; + rType = 0; + vrLen = 1455; + vrLoc = 1065; + }; + 033C3CEA126B3AF70050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */; + name = "RuleEditor.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1344; + vrLoc = 0; + }; + 033C3CEB126B3AF70050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */; + name = "RuleEditor.m: 396"; + rLen = 12; + rLoc = 13843; + rType = 0; + vrLen = 1533; + vrLoc = 12424; + }; + 033C3D1B126B40F00050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D7A695B0D26F04F0008C3FF /* NodeController.h */; + name = "NodeController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1572; + vrLoc = 0; + }; + 033C3D1C126B40F00050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D220F130D1691E90026DF75 /* MobController.h */; + name = "MobController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1257; + vrLoc = 0; + }; + 033C3D1D126B40F00050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D9712970D248ED4005E3BD1 /* InventoryController.h */; + name = "InventoryController.h: 62"; + rLen = 11; + rLoc = 2095; + rType = 0; + vrLen = 1485; + vrLoc = 1503; + }; + 033C3D21126B40F00050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D7A695C0D26F04F0008C3FF /* NodeController.m */; + name = "NodeController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1493; + vrLoc = 0; + }; + 033C3D27126B413D0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */; + name = "WaypointActionEditor.h: 27"; + rLen = 0; + rLoc = 626; + rType = 0; + vrLen = 1435; + vrLoc = 0; + }; + 033C3D47126B42880050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */; + name = "MemoryViewController.m: 504"; + rLen = 0; + rLoc = 16690; + rType = 0; + vrLen = 1861; + vrLoc = 16176; + }; + 033C3D60126B5EC90050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D9712980D248ED4005E3BD1 /* InventoryController.m */; + name = "InventoryController.m: 135"; + rLen = 0; + rLoc = 4204; + rType = 0; + vrLen = 1693; + vrLoc = 3341; + }; + 033C3D8C126B62730050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D7A6A480D270F130008C3FF /* WoWObject.m */; + name = "WoWObject.m: 94"; + rLen = 440; + rLoc = 2042; + rType = 0; + vrLen = 1516; + vrLoc = 1362; + }; + 033C3D93126B62C30050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D7A6A470D270F130008C3FF /* WoWObject.h */; + name = "WoWObject.h: 20"; + rLen = 100; + rLoc = 490; + rType = 0; + vrLen = 1802; + vrLoc = 0; + }; + 033C3DA9126B63EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D7245410D1511F40094665C /* Mob.m */; + name = "Mob.m: 13"; + rLen = 5; + rLoc = 220; + rType = 0; + vrLen = 1415; + vrLoc = 0; + }; + 033C3DBF126B64DF0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */; + name = "PlayerDataController.h: 187"; + rLen = 0; + rLoc = 5034; + rType = 0; + vrLen = 1351; + vrLoc = 4061; + }; + 033C3DDE126B780F0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03503FF0125A9A0300E511C8 /* Objects_Enum.h */; + name = "Objects_Enum.h: 90"; + rLen = 17; + rLoc = 2535; + rType = 0; + vrLen = 1616; + vrLoc = 2108; + }; + 033C3E3A126B82560050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE7180D148972003F1E3C /* Controller.h */; + name = "Controller.h: 93"; + rLen = 0; + rLoc = 3203; + rType = 0; + vrLen = 1759; + vrLoc = 2087; + }; + 033C3E3D126B84540050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE7190D148972003F1E3C /* Controller.m */; + name = "Controller.m: 72"; + rLen = 0; + rLoc = 1706; + rType = 0; + vrLen = 2779; + vrLoc = 1257; + }; + 033C3E3E126B84540050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D41E5960DEA00A500118EA0 /* Player.h */; + name = "Player.h: 10"; + rLen = 0; + rLoc = 182; + rType = 0; + vrLen = 1280; + vrLoc = 76; + }; + 033C3E3F126B84540050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D41E5970DEA00A500118EA0 /* Player.m */; + name = "Player.m: 58"; + rLen = 274; + rLoc = 1816; + rType = 0; + vrLen = 1931; + vrLoc = 161; + }; + 033C3E8E126B8E8F0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D41EA0F0DEB554100118EA0 /* Unit.h */; + name = "Unit.h: 430"; + rLen = 0; + rLoc = 16781; + rType = 0; + vrLen = 1266; + vrLoc = 16123; + }; + 033C3E9C126B90FD0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D7245400D1511F40094665C /* Mob.h */; + name = "Mob.h: 24"; + rLen = 0; + rLoc = 419; + rType = 0; + vrLen = 945; + vrLoc = 0; + }; + 033C3E9D126B90FD0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D41EA100DEB554100118EA0 /* Unit.m */; + name = "Unit.m: 334"; + rLen = 16; + rLoc = 9570; + rType = 0; + vrLen = 1388; + vrLoc = 8487; + }; + 033C3EA2126B933C0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */; + name = "Condition.h: 84"; + rLen = 0; + rLoc = 1886; + rType = 0; + vrLen = 1117; + vrLoc = 1302; + }; + 033C3EAC126B94180050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE76A0D1494F0003F1E3C /* Offsets.h */; + name = "Offsets.h: 243"; + rLen = 11; + rLoc = 9360; + rType = 0; + vrLen = 1538; + vrLoc = 8331; + }; + 033C3EB8126B94C90050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB2C4480D3BFE4100100B4D /* BotController.h */; + name = "BotController.h: 447"; + rLen = 4; + rLoc = 14071; + rType = 0; + vrLen = 1717; + vrLoc = 13109; + }; + 033C3F11126BD6C10050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D5498940F02232500DD46F8 /* FishController.h */; + name = "FishController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1211; + vrLoc = 0; + }; + 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 503}}"; + sepNavSelRange = "{20, 0}"; + sepNavVisRange = "{0, 20}"; + sepNavWindowFrame = "{{84, 29}, {1432, 961}}"; + }; + }; + 033C3F4D126CA5EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */; + name = "PlayerDataController.m: 511"; + rLen = 0; + rLoc = 16508; + rType = 0; + vrLen = 2236; + vrLoc = 17632; + }; + 033C3F4F126CA5EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */; + name = "buildnumber.xcconfig: 2"; + rLen = 0; + rLoc = 20; + rType = 0; + vrLen = 20; + vrLoc = 0; + }; + 033C3F50126CA5EB0050DBDC /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CGKeyCodeMap.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 033C3F51126CA5EB0050DBDC /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 7D9714760D24F16C005E3BD1 /* English */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/Gathering.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 033C3F52126CA5EB0050DBDC /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FactionTemplate.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 033C3F53126CA5EB0050DBDC /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + Lua_GetPartyMember, + ); + name = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetSignatures.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 033C3F54126CA5EB0050DBDC /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 03C42CC91096839E0085E888 /* Macros.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macros.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 033C3F55126CA5EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 089C165DFE840E0CC02AAC07 /* English */; + name = "InfoPlist.strings: 3"; + rLen = 0; + rLoc = 96; + rType = 0; + vrLen = 107; + vrLoc = 0; + }; + 033C3F56126CA5EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */; + name = "ObjectConstants.h: 59"; + rLen = 17; + rLoc = 1643; + rType = 0; + vrLen = 1557; + vrLoc = 147; + }; + 033C3F57126CA5EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAA09A90D55988F00A6D06A /* Globals.h */; + name = "Globals.h: 9"; + rLen = 0; + rLoc = 263; + rType = 0; + vrLen = 263; + vrLoc = 0; + }; + 033C3F58126CA5EB0050DBDC /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */; + name = "PocketGnome_Prefix.pch: 28"; + rLen = 0; + rLoc = 1044; + rType = 0; + vrLen = 1044; + vrLoc = 0; + }; + 033C3F5C126CA6170050DBDC /* PlistBookmark */ = { + isa = PlistBookmark; + fRef = 8D1107310486CEB800E47090 /* Info.plist */; + fallbackIsa = PBXBookmark; + isK = 0; + kPath = ( + ); + name = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist"; + rLen = 0; + rLoc = 9223372036854775808; + }; + 034126BF1135706E00BE6819 /* PvPController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1165, 767}}"; + sepNavSelRange = "{1200, 14}"; + sepNavVisRange = "{141, 1243}"; + }; + }; + 034126C01135706E00BE6819 /* PvPController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1195, 4849}}"; + sepNavSelRange = "{683, 0}"; + sepNavVisRange = "{329, 1337}"; + }; + }; + 0341DD65111B0FBE00074CED /* ObjectsController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1165, 7241}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{14465, 1088}"; + }; + }; + 0341DDD8111B21D700074CED /* ObjectController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 1079}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 933}"; + }; + }; + 0341DDD9111B21D700074CED /* ObjectController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 3016}}"; + sepNavSelRange = "{4711, 0}"; + sepNavVisRange = "{4339, 1101}"; + }; + }; + 034429B70FAA3E1800E9DE03 /* Quest.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1461, 4641}}"; + sepNavSelRange = "{3489, 0}"; + sepNavVisRange = "{2846, 1629}"; + }; + }; + 034429BF0FAA3E5600E9DE03 /* QuestController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1698, 2470}}"; + sepNavSelRange = "{1715, 0}"; + sepNavVisRange = "{1472, 983}"; + }; + }; + 0344AF9811F7626100C4B991 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */; + name = "MemoryAccess.h: 1"; + rLen = 2862; + rLoc = 0; + rType = 0; + vrLen = 1167; + vrLoc = 1511; + }; + 0344AF9911F7626100C4B991 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */; + name = "MemoryAccess.m: 1"; + rLen = 9545; + rLoc = 0; + rType = 0; + vrLen = 1343; + vrLoc = 3766; + }; + 0344AFAA11F7637F00C4B991 /* Controller.m:1007 */ = { + isa = PBXFileBreakpoint; + actions = ( + ); + breakpointStyle = 0; + continueAfterActions = 0; + countType = 0; + delayBeforeContinue = 0; + fileReference = 7DAAE7190D148972003F1E3C /* Controller.m */; + functionName = "-wowMemoryAccess"; + hitCount = 0; + ignoreCount = 0; + lineNumber = 1007; + modificationTime = 301425535.780419; + originalNumberOfMultipleMatches = 0; + state = 1; + }; + 0344B0DC11F792D600C4B991 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0341DD65111B0FBE00074CED /* ObjectsController.m */; + name = "ObjectsController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1088; + vrLoc = 14465; + }; + 0344CABC1267B08C00B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 29B97316FDCFA39411CA2CEA /* main.m */; + name = "main.m: 56"; + rLen = 26; + rLoc = 1285; + rType = 0; + vrLen = 1468; + vrLoc = 802; + }; + 0344CAEA1267B1D900B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D06F0410D23058B00DA4E99 /* AuraController.m */; + name = "AuraController.m: 749"; + rLen = 0; + rLoc = 29644; + rType = 0; + vrLen = 3224; + vrLoc = 24872; + }; + 0344CAEB1267B1D900B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */; + name = "LastSpellCastConditionController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 455; + vrLoc = 0; + }; + 0344CAF11267B24C00B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0344CAF21267B24C00B4A9C7 /* MacErrors.h */; + name = "MacErrors.h: 496"; + rLen = 137; + rLoc = 28915; + rType = 0; + vrLen = 2630; + vrLoc = 27676; + }; + 0344CAF21267B24C00B4A9C7 /* MacErrors.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = MacErrors.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/CarbonCore.framework/Versions/A/Headers/MacErrors.h; + sourceTree = ""; + }; + 0344CB011267CE5300B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0344CB021267CE5300B4A9C7 /* sign_update.rb */; + name = "sign_update.rb: 7"; + rLen = 0; + rLoc = 220; + rType = 0; + vrLen = 220; + vrLoc = 0; + }; + 0344CB021267CE5300B4A9C7 /* sign_update.rb */ = { + isa = PBXFileReference; + lastKnownFileType = text.script.ruby; + name = sign_update.rb; + path = /Volumes/HD/Users/Josh/Desktop/Bot/Sparkle/sign_update.rb; + sourceTree = ""; + }; + 0344CB041267CE5300B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D70E7E10DC65372006B8826 /* ChatController.m */; + name = "ChatController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1243; + vrLoc = 0; + }; + 0344CB051267CE5300B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */; + name = "ChatLogController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1717; + vrLoc = 288; + }; + 0344CB081267CE5300B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */; + name = "ChatLogController.m: 176"; + rLen = 12; + rLoc = 6588; + rType = 0; + vrLen = 2656; + vrLoc = 4504; + }; + 0344CB091267CE5300B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */; + name = "ChatLogEntry.m: 73"; + rLen = 0; + rLoc = 2387; + rType = 0; + vrLen = 1624; + vrLoc = 1955; + }; + 0344CB211267D0E700B4A9C7 /* LuaController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 639}}"; + sepNavSelRange = "{262, 0}"; + sepNavVisRange = "{0, 272}"; + }; + }; + 0344CB221267D0E700B4A9C7 /* LuaController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 639}}"; + sepNavSelRange = "{42, 0}"; + sepNavVisRange = "{0, 206}"; + }; + }; + 0344CB2E1267DDC000B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0344CB221267D0E700B4A9C7 /* LuaController.m */; + name = "LuaController.m: 4"; + rLen = 0; + rLoc = 42; + rType = 0; + vrLen = 206; + vrLoc = 0; + }; + 0344CB2F1267DDC000B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03FE91AE125FB5DB00A40445 /* lapi.h */; + name = "lapi.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 262; + vrLoc = 0; + }; + 0344CB301267DDC000B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03FE91AD125FB5DB00A40445 /* lapi.c */; + name = "lapi.c: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1013; + vrLoc = 9345; + }; + 0344CB311267DDC000B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03FE91B1125FB5DB00A40445 /* lbaselib.c */; + name = "lbaselib.c: 561"; + rLen = 41; + rLoc = 14577; + rType = 0; + vrLen = 1336; + vrLoc = 13920; + }; + 0344CB321267DDC000B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0344CB211267D0E700B4A9C7 /* LuaController.h */; + name = "LuaController.h: 14"; + rLen = 0; + rLoc = 262; + rType = 0; + vrLen = 272; + vrLoc = 0; + }; + 0344CB351267DDC000B4A9C7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DBEC7D90E4512D800994A7A /* GrabWindow.h */; + name = "GrabWindow.h: 24"; + rLen = 0; + rLoc = 613; + rType = 0; + vrLen = 689; + vrLoc = 0; + }; + 03503F301257CFB300E511C8 /* wow.c */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.c; + name = wow.c; + path = /Volumes/HD/Users/Josh/Desktop/Injection/wow.c; + sourceTree = ""; + }; + 03503F381257D06E00E511C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03503F301257CFB300E511C8 /* wow.c */; + name = "wow.c: 172"; + rLen = 0; + rLoc = 3910; + rType = 0; + vrLen = 1468; + vrLoc = 3971; + }; + 03503FF0125A9A0300E511C8 /* Objects_Enum.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 6916}}"; + sepNavSelRange = "{2535, 17}"; + sepNavVisRange = "{2108, 1616}"; + }; + }; + 03504005125A9CF300E511C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */; + name = "Aura.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1098; + vrLoc = 0; + }; + 035040D9125AACF600E511C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D9712940D248DA0005E3BD1 /* Item.h */; + name = "Item.h: 16"; + rLen = 19; + rLoc = 295; + rType = 0; + vrLen = 1172; + vrLoc = 137; + }; + 035040FF125AB14300E511C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D9712950D248DA0005E3BD1 /* Item.m */; + name = "Item.m: 18"; + rLen = 0; + rLoc = 518; + rType = 0; + vrLen = 2188; + vrLoc = 1511; + }; + 03504100125AB14300E511C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D9713C70D24D339005E3BD1 /* Node.h */; + name = "Node.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2088; + vrLoc = 1228; + }; + 03504104125AB1FE00E511C8 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D9713C80D24D339005E3BD1 /* Node.m */; + name = "Node.m: 160"; + rLen = 0; + rLoc = 4862; + rType = 0; + vrLen = 2106; + vrLoc = 4535; + }; + 03567AAC10DDAB52001ACE43 /* CombatController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 25688}}"; + sepNavSelRange = "{64839, 14}"; + sepNavVisRange = "{63970, 1350}"; + }; + }; + 035D4E62119899610056C274 /* kern_return.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = kern_return.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/kern_return.h; + sourceTree = ""; + }; + 035D4E8011989B5E0056C274 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 035D4E62119899610056C274 /* kern_return.h */; + name = "kern_return.h: 74"; + rLen = 0; + rLoc = 2672; + rType = 0; + vrLen = 1044; + vrLoc = 2474; + }; + 035D4E8311989B5E0056C274 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 035D4E8411989B5E0056C274 /* vm_map.h */; + name = "vm_map.h: 152"; + rLen = 13; + rLoc = 2672; + rType = 0; + vrLen = 733; + vrLoc = 2528; + }; + 035D4E8411989B5E0056C274 /* vm_map.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = vm_map.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/vm_map.h; + sourceTree = ""; + }; + 035D4E8611989B5E0056C274 /* kern_return.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = kern_return.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/ppc/kern_return.h; + sourceTree = ""; + }; + 035D4E8D1198AB900056C274 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 035D4E8611989B5E0056C274 /* kern_return.h */; + name = "kern_return.h: 50"; + rLen = 0; + rLoc = 2239; + rType = 0; + vrLen = 1052; + vrLoc = 1356; + }; + 035DC44711DBC5F400EEE71A /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */; + name = "ProcedureController.m: 380"; + rLen = 0; + rLoc = 11695; + rType = 0; + vrLen = 1602; + vrLoc = 11468; + }; + 03627A24126CF73D001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0331619511AAF1B900467490 /* appcast.xml */; + name = "appcast.xml: 4"; + rLen = 0; + rLoc = 210; + rType = 0; + vrLen = 3514; + vrLoc = 0; + }; + 03627A25126CF73D001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */; + name = "CombatProfile.m: 133"; + rLen = 17; + rLoc = 3559; + rType = 0; + vrLen = 1698; + vrLoc = 2678; + }; + 03627A26126CF73D001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0362CDDC11A99CED00EA65B2 /* CombatProfile.h */; + name = "CombatProfile.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2325; + vrLoc = 2318; + }; + 03627A2B126CF73D001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; + rLen = 1; + rLoc = 4988; + rType = 1; + }; + 03627A3D126CF854001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03981F37112C819E0081835F /* LogController.m */; + name = "LogController.m: 6"; + rLen = 0; + rLoc = 139; + rType = 0; + vrLen = 1828; + vrLoc = 3; + }; + 03627A3E126CF854001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; + name = "BotController.m: 1556"; + rLen = 34; + rLoc = 67739; + rType = 0; + vrLen = 3071; + vrLoc = 66374; + }; + 03627A43126CF9CC001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; + name = "BotController.m: 6005"; + rLen = 0; + rLoc = 223176; + rType = 0; + vrLen = 1858; + vrLoc = 222793; + }; + 03627A44126CF9CC001BD472 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; + name = "BotController.m: 5011"; + rLen = 20; + rLoc = 188722; + rType = 0; + vrLen = 2052; + vrLoc = 188065; + }; + 0362C9F211A88A6400EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */; + name = "CGSPrivate.h: 14"; + rLen = 7; + rLoc = 359; + rType = 0; + vrLen = 1624; + vrLoc = 0; + }; + 0362CAA411A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */; + }; + 0362CAA511A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */; + }; + 0362CAA611A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */; + }; + 0362CAA711A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */; + }; + 0362CAA811A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41AE40DEE111600F3B083 /* Chicken.png */; + }; + 0362CAA911A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */; + }; + 0362CAAA11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41AD50DEE0CA100F3B083 /* Stable.png */; + }; + 0362CAAB11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41A560DEE020B00F3B083 /* Repair.png */; + }; + 0362CAAC11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */; + }; + 0362CAAD11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */; + }; + 0362CAAE11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */; + }; + 0362CAAF11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */; + }; + 0362CAB011A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */; + }; + 0362CAB111A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */; + }; + 0362CAB211A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DA95E320E2302C400AC85E2 /* BannerHorde.png */; + }; + 0362CAB311A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */; + }; + 0362CAB411A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 0352F46511376DA5005B28D6 /* PVP.png */; + }; + 0362CAB511A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */; + }; + 0362CAB611A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */; + }; + 0362CAB711A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */; + }; + 0362CAB811A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DC41A6F0DEE041400F3B083 /* Skull.png */; + }; + 0362CAB911A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D80B4740DE75795004D00F6 /* Combat.png */; + }; + 0362CABA11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D80B4730DE75795004D00F6 /* Hostile.png */; + }; + 0362CABB11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D80B4B00DE76098004D00F6 /* Neutral.png */; + }; + 0362CABC11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D80B4720DE75795004D00F6 /* Friendly.png */; + }; + 0362CABD11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D80B48C0DE75905004D00F6 /* Dead.png */; + }; + 0362CABE11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 03A4047B0FE148C60087BC0D /* mbobbleicon.png */; + }; + 0362CABF11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */; + }; + 0362CAC011A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */; + }; + 0362CAC111A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */; + }; + 0362CAC211A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */; + }; + 0362CAC311A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */; + }; + 0362CAC411A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */; + }; + 0362CAC511A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */; + }; + 0362CAC611A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */; + }; + 0362CAC711A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */; + }; + 0362CAC811A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */; + }; + 0362CAC911A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */; + }; + 0362CACA11A89B3100EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */; + }; + 0362CAD411A89C5F00EA65B2 /* PBXBookmark */ = { + isa = PBXBookmark; + fRef = 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */; + }; + 0362CC0711A8AD8100EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */; + name = "PTHotKeyCenter.m: 259"; + rLen = 0; + rLoc = 5373; + rType = 0; + vrLen = 1035; + vrLoc = 4831; + }; + 0362CDAF11A9990B00EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C5B1182C497000F4037 /* MailActionProfile.h */; + name = "MailActionProfile.h: 45"; + rLen = 12; + rLoc = 1952; + rType = 0; + vrLen = 2134; + vrLoc = 81; + }; + 0362CDB011A9990B00EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C861182C975000F4037 /* Profile.m */; + name = "Profile.m: 35"; + rLen = 0; + rLoc = 1369; + rType = 0; + vrLen = 921; + vrLoc = 1223; + }; + 0362CDDC11A99CED00EA65B2 /* CombatProfile.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 2860}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{2318, 2325}"; + }; + }; + 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 9789}}"; + sepNavSelRange = "{3559, 17}"; + sepNavVisRange = "{2678, 1698}"; + }; + }; + 0362CE1A11A9A28700EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C5E1182C5AC000F4037 /* ProfileController.h */; + name = "ProfileController.h: 70"; + rLen = 26; + rLoc = 2302; + rType = 0; + vrLen = 1363; + vrLoc = 1259; + }; + 0362CE1D11A9A28700EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03BE961811828343004DBFBF /* FileController.h */; + name = "FileController.h: 47"; + rLen = 52; + rLoc = 1659; + rType = 0; + vrLen = 1548; + vrLoc = 476; + }; + 0362CE3311A9A44500EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = D02F3C5F1182C5AC000F4037 /* ProfileController.m */; + name = "ProfileController.m: 52"; + rLen = 572; + rLoc = 1764; + rType = 0; + vrLen = 1416; + vrLoc = 1375; + }; + 0362CE5511A9A7DD00EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65CA470D2F04D200C50DF7 /* Procedure.m */; + name = "Procedure.m: 83"; + rLen = 0; + rLoc = 1747; + rType = 0; + vrLen = 1008; + vrLoc = 0; + }; + 0362CE6211A9A83200EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65CA460D2F04D200C50DF7 /* Procedure.h */; + name = "Procedure.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 723; + vrLoc = 0; + }; + 0362CE7611A9A92200EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03BE961911828343004DBFBF /* FileController.m */; + name = "FileController.m: 256"; + rLen = 45; + rLoc = 7540; + rType = 0; + vrLen = 1515; + vrLoc = 2756; + }; + 0362CE8611A9AEDF00EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */; + name = "ProcedureController.h: 56"; + rLen = 14; + rLoc = 1350; + rType = 0; + vrLen = 1322; + vrLoc = 426; + }; + 0362CEAF11A9AFFD00EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */; + name = "WaypointController.m: 1380"; + rLen = 0; + rLoc = 42132; + rType = 0; + vrLen = 1169; + vrLoc = 41471; + }; + 0362CEC511A9B0F900EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D370B0C0E7350DD002FE3A4 /* Action.m */; + name = "Action.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1460; + vrLoc = 1128; + }; + 0362CEC611A9B0F900EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03168EE310FF713000EF241B /* ActionController.m */; + name = "ActionController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2170; + vrLoc = 959; + }; + 0362CEF011A9B1CB00EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0393F535110A55E300296CF8 /* VendorActionController.m */; + name = "VendorActionController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 797; + vrLoc = 0; + }; + 0362CEFB11A9B2C200EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */; + name = "WaypointActionEditor.m: 57"; + rLen = 0; + rLoc = 1689; + rType = 0; + vrLen = 1564; + vrLoc = 430; + }; + 0362CEFC11A9B2C200EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */; + name = "CombatProfileActionController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 461; + vrLoc = 0; + }; + 0362CEFD11A9B2C200EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0393F531110A55DB00296CF8 /* MailActionController.h */; + name = "MailActionController.h: 35"; + rLen = 32; + rLoc = 1415; + rType = 0; + vrLen = 1523; + vrLoc = 0; + }; + 0362CEFF11A9B2C200EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0393F532110A55DB00296CF8 /* MailActionController.m */; + name = "MailActionController.m: 105"; + rLen = 0; + rLoc = 3299; + rType = 0; + vrLen = 1117; + vrLoc = 2218; + }; + 0362CF2511A9B76000EA65B2 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0341DDD8111B21D700074CED /* ObjectController.h */; + name = "ObjectController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 933; + vrLoc = 0; + }; + 0368D79112380A68004E9D13 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03981E77112B898E0081835F /* MovementController.m */; + name = "MovementController.m: 2657"; + rLen = 0; + rLoc = 89060; + rType = 0; + vrLen = 1189; + vrLoc = 88626; + }; + 03753C4C1226C1790019C889 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 034126C01135706E00BE6819 /* PvPController.m */; + name = "PvPController.m: 35"; + rLen = 0; + rLoc = 683; + rType = 0; + vrLen = 1337; + vrLoc = 329; + }; + 0384672B11AC1BE500C679A7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03981DE8112B22E90081835F /* dsa_pub.pem */; + name = "dsa_pub.pem: 9"; + rLen = 0; + rLoc = 515; + rType = 0; + vrLen = 1182; + vrLoc = 0; + }; + 0384672E11AC1BE500C679A7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0313B4D610BAEA0B009E74E4 /* EventController.h */; + name = "EventController.h: 27"; + rLen = 7; + rLoc = 628; + rType = 0; + vrLen = 852; + vrLoc = 0; + }; + 0384680311AC54CB00C679A7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0384680411AC54CB00C679A7 /* stdio.h */; + name = "stdio.h: 345"; + rLen = 9; + rLoc = 12976; + rType = 0; + vrLen = 1761; + vrLoc = 12068; + }; + 0384680411AC54CB00C679A7 /* stdio.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = stdio.h; + path = /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdio.h; + sourceTree = ""; + }; + 038469E711B3186D00C679A7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03E1D7B6110F62CD003180E4 /* FileObject.h */; + name = "FileObject.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1614; + vrLoc = 0; + }; + 038469E811B3186D00C679A7 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03E1D7B7110F62CD003180E4 /* FileObject.m */; + name = "FileObject.m: 66"; + rLen = 0; + rLoc = 2025; + rType = 0; + vrLen = 940; + vrLoc = 1724; + }; + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 639}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 455}"; + }; + }; + 0393F531110A55DB00296CF8 /* MailActionController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 647}}"; + sepNavSelRange = "{1415, 32}"; + sepNavVisRange = "{0, 1523}"; + }; + }; + 0393F532110A55DB00296CF8 /* MailActionController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 1443}}"; + sepNavSelRange = "{3299, 0}"; + sepNavVisRange = "{2218, 1117}"; + }; + }; + 0393F535110A55E300296CF8 /* VendorActionController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 647}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 797}"; + }; + }; + 03981DE8112B22E90081835F /* dsa_pub.pem */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 625}}"; + sepNavSelRange = "{515, 0}"; + sepNavVisRange = "{0, 1182}"; + }; + }; + 03981E76112B898E0081835F /* MovementController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1351, 2665}}"; + sepNavSelRange = "{2795, 12}"; + sepNavVisRange = "{3803, 1217}"; + }; + }; + 03981E77112B898E0081835F /* MovementController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1111, 39585}}"; + sepNavSelRange = "{89060, 0}"; + sepNavVisRange = "{88626, 1189}"; + }; + }; + 03981F36112C819E0081835F /* LogController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1264, 786}}"; + sepNavSelRange = "{142, 0}"; + sepNavVisRange = "{0, 1708}"; + }; + }; + 03981F37112C819E0081835F /* LogController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 871}}"; + sepNavSelRange = "{139, 0}"; + sepNavVisRange = "{3, 1828}"; + }; + }; + 039E95C911A9B96A006BFB10 /* SUUpdater.h */ = { + isa = PBXFileReference; + lastKnownFileType = sourcecode.c.h; + name = SUUpdater.h; + path = "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUUpdater.h"; + sourceTree = ""; + }; + 039E95D911A9BA99006BFB10 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 039E95C911A9B96A006BFB10 /* SUUpdater.h */; + name = "SUUpdater.h: 132"; + rLen = 0; + rLoc = 5492; + rType = 0; + vrLen = 2061; + vrLoc = 4891; + }; + 03A01B0C109A2A9600E6098E /* StatisticsController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 3367}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1138}"; + }; + }; + 03A2E05C121CD83F0076F35D /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 034126BF1135706E00BE6819 /* PvPController.h */; + name = "PvPController.h: 50"; + rLen = 14; + rLoc = 1200; + rType = 0; + vrLen = 1243; + vrLoc = 141; + }; + 03BB4280123149EF00F9DA66 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03981E76112B898E0081835F /* MovementController.h */; + name = "MovementController.h: 102"; + rLen = 12; + rLoc = 2795; + rType = 0; + vrLen = 1217; + vrLoc = 3803; + }; + 03BB44E91231806F00F9DA66 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DA7B8C10D1DF92B00F81519 /* Spell.h */; + name = "Spell.h: 34"; + rLen = 67; + rLoc = 657; + rType = 0; + vrLen = 1459; + vrLoc = 0; + }; + 03BB46BB1236A73C00F9DA66 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */; + name = "MemoryViewController.h: 47"; + rLen = 4; + rLoc = 1821; + rType = 0; + vrLen = 1135; + vrLoc = 1406; + }; + 03BD330C11120A7A00941971 /* BindingsController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1174, 819}}"; + sepNavSelRange = "{981, 13}"; + sepNavVisRange = "{235, 1373}"; + }; + }; + 03BD330D11120A7A00941971 /* BindingsController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1496, 7033}}"; + sepNavSelRange = "{5881, 13}"; + sepNavVisRange = "{5516, 988}"; + }; + }; + 03BE961811828343004DBFBF /* FileController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 793}}"; + sepNavSelRange = "{1659, 52}"; + sepNavVisRange = "{476, 1548}"; + }; + }; + 03BE961911828343004DBFBF /* FileController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 4134}}"; + sepNavSelRange = "{5153, 19}"; + sepNavVisRange = "{4582, 1017}"; + }; + }; + 03CD6A1A1183573100CCABFE /* Pocket Gnome */ = { + isa = PBXExecutable; + activeArgIndices = ( + ); + argumentStrings = ( + ); + autoAttachOnCrash = 1; + breakpointsEnabled = 0; + configStateDict = { + }; + customDataFormattersEnabled = 1; + dataTipCustomDataFormattersEnabled = 1; + dataTipShowTypeColumn = 1; + dataTipSortType = 0; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = ""; + enableDebugStr = 1; + environmentEntries = ( + ); + executableSystemSymbolLevel = 0; + executableUserSymbolLevel = 0; + libgmallocEnabled = 0; + name = "Pocket Gnome"; + savedGlobals = { + }; + showTypeColumn = 0; + sourceDirectories = ( + ); + }; + 03CD6A411183573500CCABFE /* Source Control */ = { + isa = PBXSourceControlManager; + fallbackIsa = XCSourceControlManager; + isSCMEnabled = 0; + scmConfiguration = { + repositoryNamesForRoots = { + "" = ""; + }; + }; + }; + 03CD6A421183573500CCABFE /* Code sense */ = { + isa = PBXCodeSenseManager; + indexTemplatePath = ""; + }; + 03CD6A67118359B100CCABFE /* Defines.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1178, 6318}}"; + sepNavSelRange = "{21550, 0}"; + sepNavVisRange = "{0, 2174}"; + }; + }; + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1178, 1755}}"; + sepNavSelRange = "{1248, 8}"; + sepNavVisRange = "{1143, 1395}"; + }; + }; + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */ = { + uiCtxt = { + sepNavWindowFrame = "{{67, 6}, {1432, 961}}"; + }; + }; + 03D9CF10118B51C6004F0A52 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 0306057B10881CAE00C57D77 /* MacroController.m */; + name = "MacroController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1072; + vrLoc = 0; + }; + 03DA4F16121C2B7F005E486B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 03567AAC10DDAB52001ACE43 /* CombatController.m */; + name = "CombatController.m: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 2015; + vrLoc = 43321; + }; + 03DA4F17121C2B7F005E486B /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7D70E7E00DC65372006B8826 /* ChatController.h */; + name = "ChatController.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 562; + vrLoc = 0; + }; + 03E1D7B6110F62CD003180E4 /* FileObject.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 593}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1614}"; + }; + }; + 03E1D7B7110F62CD003180E4 /* FileObject.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 1716}}"; + sepNavSelRange = "{2025, 0}"; + sepNavVisRange = "{1724, 940}"; + }; + }; + 03FE91AD125FB5DB00A40445 /* lapi.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 13858}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{9345, 1013}"; + }; + }; + 03FE91AE125FB5DB00A40445 /* lapi.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 639}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 262}"; + }; + }; + 03FE91B1125FB5DB00A40445 /* lbaselib.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 8632}}"; + sepNavSelRange = "{14577, 41}"; + sepNavVisRange = "{13920, 1336}"; + }; + }; + 03FE91C6125FB5DB00A40445 /* loadlib.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 9074}}"; + sepNavSelRange = "{8584, 0}"; + sepNavVisRange = "{8169, 1318}"; + }; + }; + 03FE91D2125FB5DB00A40445 /* lstrlib.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1698, 11544}}"; + sepNavSelRange = "{18949, 0}"; + sepNavVisRange = "{18567, 663}"; + }; + }; + 089C165DFE840E0CC02AAC07 /* English */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 708}}"; + sepNavSelRange = "{96, 0}"; + sepNavVisRange = "{0, 107}"; + }; + }; + 29B97313FDCFA39411CA2CEA /* Project object */ = { + activeBuildConfigurationName = Release; + activeExecutable = 03CD6A1A1183573100CCABFE /* Pocket Gnome */; + activeTarget = 8D1107260486CEB800E47090 /* Pocket Gnome */; + addToTargets = ( + 8D1107260486CEB800E47090 /* Pocket Gnome */, + ); + breakpoints = ( + 0344AFAA11F7637F00C4B991 /* Controller.m:1007 */, + ); + codeSenseManager = 03CD6A421183573500CCABFE /* Code sense */; + executables = ( + 03CD6A1A1183573100CCABFE /* Pocket Gnome */, + ); + perUserDictionary = { + PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 913, + 20, + 48, + 43, + 43, + 20, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + PBXFileDataSource_Target_ColumnID, + ); + }; + PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 1005, + 60, + 20, + 48, + 43, + 43, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXTargetDataSource_PrimaryAttribute, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + ); + }; + PBXPerProjectTemplateStateSaveDate = 309130367; + PBXWorkspaceStateSaveDate = 309130367; + }; + perUserProjectItems = { + 030A04FD12674DC0001DBEFC /* PBXTextBookmark */ = 030A04FD12674DC0001DBEFC /* PBXTextBookmark */; + 030A05201267572B001DBEFC /* PBXTextBookmark */ = 030A05201267572B001DBEFC /* PBXTextBookmark */; + 030A056E12675E40001DBEFC /* PBXTextBookmark */ = 030A056E12675E40001DBEFC /* PBXTextBookmark */; + 030A058612675E90001DBEFC /* PBXTextBookmark */ = 030A058612675E90001DBEFC /* PBXTextBookmark */; + 030A058712675E90001DBEFC /* PBXTextBookmark */ = 030A058712675E90001DBEFC /* PBXTextBookmark */; + 030A058D12675EDB001DBEFC /* PBXTextBookmark */ = 030A058D12675EDB001DBEFC /* PBXTextBookmark */; + 030A059312675F05001DBEFC /* PBXTextBookmark */ = 030A059312675F05001DBEFC /* PBXTextBookmark */; + 030A05EA12678E62001DBEFC /* PBXTextBookmark */ = 030A05EA12678E62001DBEFC /* PBXTextBookmark */; + 030A0601126791B5001DBEFC /* PBXTextBookmark */ = 030A0601126791B5001DBEFC /* PBXTextBookmark */; + 030A061412679293001DBEFC /* PBXTextBookmark */ = 030A061412679293001DBEFC /* PBXTextBookmark */; + 030A06A71267A124001DBEFC /* PBXTextBookmark */ = 030A06A71267A124001DBEFC /* PBXTextBookmark */; + 030A06FD1267A5BD001DBEFC /* PBXTextBookmark */ = 030A06FD1267A5BD001DBEFC /* PBXTextBookmark */; + 030A071B1267A6AE001DBEFC /* PBXTextBookmark */ = 030A071B1267A6AE001DBEFC /* PBXTextBookmark */; + 0314C301119AF911001F9652 /* PBXTextBookmark */ = 0314C301119AF911001F9652 /* PBXTextBookmark */; + 0314C30B119AF96E001F9652 /* PBXTextBookmark */ = 0314C30B119AF96E001F9652 /* PBXTextBookmark */; + 0314C3D1119C72F3001F9652 /* PBXBookmark */ = 0314C3D1119C72F3001F9652 /* PBXBookmark */; + 0314C3D7119C74D3001F9652 /* PBXBookmark */ = 0314C3D7119C74D3001F9652 /* PBXBookmark */; + 032D138311C2CA790095B4B9 /* PBXTextBookmark */ = 032D138311C2CA790095B4B9 /* PBXTextBookmark */; + 0331618211AAEAAD00467490 /* PBXTextBookmark */ = 0331618211AAEAAD00467490 /* PBXTextBookmark */; + 033C3C7E1268F4B90050DBDC /* PBXTextBookmark */ = 033C3C7E1268F4B90050DBDC /* PBXTextBookmark */; + 033C3C881268F5030050DBDC /* PBXTextBookmark */ = 033C3C881268F5030050DBDC /* PBXTextBookmark */; + 033C3CC7126B36AA0050DBDC /* PBXTextBookmark */ = 033C3CC7126B36AA0050DBDC /* PBXTextBookmark */; + 033C3CDE126B39F90050DBDC /* PBXTextBookmark */ = 033C3CDE126B39F90050DBDC /* PBXTextBookmark */; + 033C3CE5126B3AF70050DBDC /* PBXTextBookmark */ = 033C3CE5126B3AF70050DBDC /* PBXTextBookmark */; + 033C3CE6126B3AF70050DBDC /* PBXTextBookmark */ = 033C3CE6126B3AF70050DBDC /* PBXTextBookmark */; + 033C3CE7126B3AF70050DBDC /* PBXTextBookmark */ = 033C3CE7126B3AF70050DBDC /* PBXTextBookmark */; + 033C3CE8126B3AF70050DBDC /* PBXTextBookmark */ = 033C3CE8126B3AF70050DBDC /* PBXTextBookmark */; + 033C3CEA126B3AF70050DBDC /* PBXTextBookmark */ = 033C3CEA126B3AF70050DBDC /* PBXTextBookmark */; + 033C3CEB126B3AF70050DBDC /* PBXTextBookmark */ = 033C3CEB126B3AF70050DBDC /* PBXTextBookmark */; + 033C3D1B126B40F00050DBDC /* PBXTextBookmark */ = 033C3D1B126B40F00050DBDC /* PBXTextBookmark */; + 033C3D1C126B40F00050DBDC /* PBXTextBookmark */ = 033C3D1C126B40F00050DBDC /* PBXTextBookmark */; + 033C3D1D126B40F00050DBDC /* PBXTextBookmark */ = 033C3D1D126B40F00050DBDC /* PBXTextBookmark */; + 033C3D21126B40F00050DBDC /* PBXTextBookmark */ = 033C3D21126B40F00050DBDC /* PBXTextBookmark */; + 033C3D27126B413D0050DBDC /* PBXTextBookmark */ = 033C3D27126B413D0050DBDC /* PBXTextBookmark */; + 033C3D47126B42880050DBDC /* PBXTextBookmark */ = 033C3D47126B42880050DBDC /* PBXTextBookmark */; + 033C3D60126B5EC90050DBDC /* PBXTextBookmark */ = 033C3D60126B5EC90050DBDC /* PBXTextBookmark */; + 033C3D8C126B62730050DBDC /* PBXTextBookmark */ = 033C3D8C126B62730050DBDC /* PBXTextBookmark */; + 033C3D93126B62C30050DBDC /* PBXTextBookmark */ = 033C3D93126B62C30050DBDC /* PBXTextBookmark */; + 033C3DA9126B63EB0050DBDC /* PBXTextBookmark */ = 033C3DA9126B63EB0050DBDC /* PBXTextBookmark */; + 033C3DBF126B64DF0050DBDC /* PBXTextBookmark */ = 033C3DBF126B64DF0050DBDC /* PBXTextBookmark */; + 033C3DDE126B780F0050DBDC /* PBXTextBookmark */ = 033C3DDE126B780F0050DBDC /* PBXTextBookmark */; + 033C3E3A126B82560050DBDC /* PBXTextBookmark */ = 033C3E3A126B82560050DBDC /* PBXTextBookmark */; + 033C3E3D126B84540050DBDC /* PBXTextBookmark */ = 033C3E3D126B84540050DBDC /* PBXTextBookmark */; + 033C3E3E126B84540050DBDC /* PBXTextBookmark */ = 033C3E3E126B84540050DBDC /* PBXTextBookmark */; + 033C3E3F126B84540050DBDC /* PBXTextBookmark */ = 033C3E3F126B84540050DBDC /* PBXTextBookmark */; + 033C3E8E126B8E8F0050DBDC /* PBXTextBookmark */ = 033C3E8E126B8E8F0050DBDC /* PBXTextBookmark */; + 033C3E9C126B90FD0050DBDC /* PBXTextBookmark */ = 033C3E9C126B90FD0050DBDC /* PBXTextBookmark */; + 033C3E9D126B90FD0050DBDC /* PBXTextBookmark */ = 033C3E9D126B90FD0050DBDC /* PBXTextBookmark */; + 033C3EA2126B933C0050DBDC /* PBXTextBookmark */ = 033C3EA2126B933C0050DBDC /* PBXTextBookmark */; + 033C3EAC126B94180050DBDC /* PBXTextBookmark */ = 033C3EAC126B94180050DBDC /* PBXTextBookmark */; + 033C3EB8126B94C90050DBDC /* PBXTextBookmark */ = 033C3EB8126B94C90050DBDC /* PBXTextBookmark */; + 033C3F11126BD6C10050DBDC /* PBXTextBookmark */ = 033C3F11126BD6C10050DBDC /* PBXTextBookmark */; + 033C3F4D126CA5EB0050DBDC /* PBXTextBookmark */ = 033C3F4D126CA5EB0050DBDC /* PBXTextBookmark */; + 033C3F4F126CA5EB0050DBDC /* PBXTextBookmark */ = 033C3F4F126CA5EB0050DBDC /* PBXTextBookmark */; + 033C3F50126CA5EB0050DBDC /* PlistBookmark */ = 033C3F50126CA5EB0050DBDC /* PlistBookmark */; + 033C3F51126CA5EB0050DBDC /* PlistBookmark */ = 033C3F51126CA5EB0050DBDC /* PlistBookmark */; + 033C3F52126CA5EB0050DBDC /* PlistBookmark */ = 033C3F52126CA5EB0050DBDC /* PlistBookmark */; + 033C3F53126CA5EB0050DBDC /* PlistBookmark */ = 033C3F53126CA5EB0050DBDC /* PlistBookmark */; + 033C3F54126CA5EB0050DBDC /* PlistBookmark */ = 033C3F54126CA5EB0050DBDC /* PlistBookmark */; + 033C3F55126CA5EB0050DBDC /* PBXTextBookmark */ = 033C3F55126CA5EB0050DBDC /* PBXTextBookmark */; + 033C3F56126CA5EB0050DBDC /* PBXTextBookmark */ = 033C3F56126CA5EB0050DBDC /* PBXTextBookmark */; + 033C3F57126CA5EB0050DBDC /* PBXTextBookmark */ = 033C3F57126CA5EB0050DBDC /* PBXTextBookmark */; + 033C3F58126CA5EB0050DBDC /* PBXTextBookmark */ = 033C3F58126CA5EB0050DBDC /* PBXTextBookmark */; + 033C3F5C126CA6170050DBDC /* PlistBookmark */ = 033C3F5C126CA6170050DBDC /* PlistBookmark */; + 0344AF9811F7626100C4B991 /* PBXTextBookmark */ = 0344AF9811F7626100C4B991 /* PBXTextBookmark */; + 0344AF9911F7626100C4B991 /* PBXTextBookmark */ = 0344AF9911F7626100C4B991 /* PBXTextBookmark */; + 0344B0DC11F792D600C4B991 /* PBXTextBookmark */ = 0344B0DC11F792D600C4B991 /* PBXTextBookmark */; + 0344CABC1267B08C00B4A9C7 /* PBXTextBookmark */ = 0344CABC1267B08C00B4A9C7 /* PBXTextBookmark */; + 0344CAEA1267B1D900B4A9C7 /* PBXTextBookmark */ = 0344CAEA1267B1D900B4A9C7 /* PBXTextBookmark */; + 0344CAEB1267B1D900B4A9C7 /* PBXTextBookmark */ = 0344CAEB1267B1D900B4A9C7 /* PBXTextBookmark */; + 0344CAF11267B24C00B4A9C7 /* PBXTextBookmark */ = 0344CAF11267B24C00B4A9C7 /* PBXTextBookmark */; + 0344CB011267CE5300B4A9C7 /* PBXTextBookmark */ = 0344CB011267CE5300B4A9C7 /* PBXTextBookmark */; + 0344CB041267CE5300B4A9C7 /* PBXTextBookmark */ = 0344CB041267CE5300B4A9C7 /* PBXTextBookmark */; + 0344CB051267CE5300B4A9C7 /* PBXTextBookmark */ = 0344CB051267CE5300B4A9C7 /* PBXTextBookmark */; + 0344CB081267CE5300B4A9C7 /* PBXTextBookmark */ = 0344CB081267CE5300B4A9C7 /* PBXTextBookmark */; + 0344CB091267CE5300B4A9C7 /* PBXTextBookmark */ = 0344CB091267CE5300B4A9C7 /* PBXTextBookmark */; + 0344CB2E1267DDC000B4A9C7 /* PBXTextBookmark */ = 0344CB2E1267DDC000B4A9C7 /* PBXTextBookmark */; + 0344CB2F1267DDC000B4A9C7 /* PBXTextBookmark */ = 0344CB2F1267DDC000B4A9C7 /* PBXTextBookmark */; + 0344CB301267DDC000B4A9C7 /* PBXTextBookmark */ = 0344CB301267DDC000B4A9C7 /* PBXTextBookmark */; + 0344CB311267DDC000B4A9C7 /* PBXTextBookmark */ = 0344CB311267DDC000B4A9C7 /* PBXTextBookmark */; + 0344CB321267DDC000B4A9C7 /* PBXTextBookmark */ = 0344CB321267DDC000B4A9C7 /* PBXTextBookmark */; + 0344CB351267DDC000B4A9C7 /* PBXTextBookmark */ = 0344CB351267DDC000B4A9C7 /* PBXTextBookmark */; + 03503F381257D06E00E511C8 /* PBXTextBookmark */ = 03503F381257D06E00E511C8 /* PBXTextBookmark */; + 03504005125A9CF300E511C8 /* PBXTextBookmark */ = 03504005125A9CF300E511C8 /* PBXTextBookmark */; + 035040D9125AACF600E511C8 /* PBXTextBookmark */ = 035040D9125AACF600E511C8 /* PBXTextBookmark */; + 035040FF125AB14300E511C8 /* PBXTextBookmark */ = 035040FF125AB14300E511C8 /* PBXTextBookmark */; + 03504100125AB14300E511C8 /* PBXTextBookmark */ = 03504100125AB14300E511C8 /* PBXTextBookmark */; + 03504104125AB1FE00E511C8 /* PBXTextBookmark */ = 03504104125AB1FE00E511C8 /* PBXTextBookmark */; + 035D4E8011989B5E0056C274 /* PBXTextBookmark */ = 035D4E8011989B5E0056C274 /* PBXTextBookmark */; + 035D4E8311989B5E0056C274 /* PBXTextBookmark */ = 035D4E8311989B5E0056C274 /* PBXTextBookmark */; + 035D4E8D1198AB900056C274 /* PBXTextBookmark */ = 035D4E8D1198AB900056C274 /* PBXTextBookmark */; + 035DC44711DBC5F400EEE71A /* PBXTextBookmark */ = 035DC44711DBC5F400EEE71A /* PBXTextBookmark */; + 03627A24126CF73D001BD472 /* PBXTextBookmark */ = 03627A24126CF73D001BD472 /* PBXTextBookmark */; + 03627A25126CF73D001BD472 /* PBXTextBookmark */ = 03627A25126CF73D001BD472 /* PBXTextBookmark */; + 03627A26126CF73D001BD472 /* PBXTextBookmark */ = 03627A26126CF73D001BD472 /* PBXTextBookmark */; + 03627A2B126CF73D001BD472 /* PBXTextBookmark */ = 03627A2B126CF73D001BD472 /* PBXTextBookmark */; + 03627A3D126CF854001BD472 /* PBXTextBookmark */ = 03627A3D126CF854001BD472 /* PBXTextBookmark */; + 03627A3E126CF854001BD472 /* PBXTextBookmark */ = 03627A3E126CF854001BD472 /* PBXTextBookmark */; + 03627A43126CF9CC001BD472 /* PBXTextBookmark */ = 03627A43126CF9CC001BD472 /* PBXTextBookmark */; + 03627A44126CF9CC001BD472 /* PBXTextBookmark */ = 03627A44126CF9CC001BD472 /* PBXTextBookmark */; + 0362C9F211A88A6400EA65B2 /* PBXTextBookmark */ = 0362C9F211A88A6400EA65B2 /* PBXTextBookmark */; + 0362CAA411A89B3100EA65B2 /* PBXBookmark */ = 0362CAA411A89B3100EA65B2 /* PBXBookmark */; + 0362CAA511A89B3100EA65B2 /* PBXBookmark */ = 0362CAA511A89B3100EA65B2 /* PBXBookmark */; + 0362CAA611A89B3100EA65B2 /* PBXBookmark */ = 0362CAA611A89B3100EA65B2 /* PBXBookmark */; + 0362CAA711A89B3100EA65B2 /* PBXBookmark */ = 0362CAA711A89B3100EA65B2 /* PBXBookmark */; + 0362CAA811A89B3100EA65B2 /* PBXBookmark */ = 0362CAA811A89B3100EA65B2 /* PBXBookmark */; + 0362CAA911A89B3100EA65B2 /* PBXBookmark */ = 0362CAA911A89B3100EA65B2 /* PBXBookmark */; + 0362CAAA11A89B3100EA65B2 /* PBXBookmark */ = 0362CAAA11A89B3100EA65B2 /* PBXBookmark */; + 0362CAAB11A89B3100EA65B2 /* PBXBookmark */ = 0362CAAB11A89B3100EA65B2 /* PBXBookmark */; + 0362CAAC11A89B3100EA65B2 /* PBXBookmark */ = 0362CAAC11A89B3100EA65B2 /* PBXBookmark */; + 0362CAAD11A89B3100EA65B2 /* PBXBookmark */ = 0362CAAD11A89B3100EA65B2 /* PBXBookmark */; + 0362CAAE11A89B3100EA65B2 /* PBXBookmark */ = 0362CAAE11A89B3100EA65B2 /* PBXBookmark */; + 0362CAAF11A89B3100EA65B2 /* PBXBookmark */ = 0362CAAF11A89B3100EA65B2 /* PBXBookmark */; + 0362CAB011A89B3100EA65B2 /* PBXBookmark */ = 0362CAB011A89B3100EA65B2 /* PBXBookmark */; + 0362CAB111A89B3100EA65B2 /* PBXBookmark */ = 0362CAB111A89B3100EA65B2 /* PBXBookmark */; + 0362CAB211A89B3100EA65B2 /* PBXBookmark */ = 0362CAB211A89B3100EA65B2 /* PBXBookmark */; + 0362CAB311A89B3100EA65B2 /* PBXBookmark */ = 0362CAB311A89B3100EA65B2 /* PBXBookmark */; + 0362CAB411A89B3100EA65B2 /* PBXBookmark */ = 0362CAB411A89B3100EA65B2 /* PBXBookmark */; + 0362CAB511A89B3100EA65B2 /* PBXBookmark */ = 0362CAB511A89B3100EA65B2 /* PBXBookmark */; + 0362CAB611A89B3100EA65B2 /* PBXBookmark */ = 0362CAB611A89B3100EA65B2 /* PBXBookmark */; + 0362CAB711A89B3100EA65B2 /* PBXBookmark */ = 0362CAB711A89B3100EA65B2 /* PBXBookmark */; + 0362CAB811A89B3100EA65B2 /* PBXBookmark */ = 0362CAB811A89B3100EA65B2 /* PBXBookmark */; + 0362CAB911A89B3100EA65B2 /* PBXBookmark */ = 0362CAB911A89B3100EA65B2 /* PBXBookmark */; + 0362CABA11A89B3100EA65B2 /* PBXBookmark */ = 0362CABA11A89B3100EA65B2 /* PBXBookmark */; + 0362CABB11A89B3100EA65B2 /* PBXBookmark */ = 0362CABB11A89B3100EA65B2 /* PBXBookmark */; + 0362CABC11A89B3100EA65B2 /* PBXBookmark */ = 0362CABC11A89B3100EA65B2 /* PBXBookmark */; + 0362CABD11A89B3100EA65B2 /* PBXBookmark */ = 0362CABD11A89B3100EA65B2 /* PBXBookmark */; + 0362CABE11A89B3100EA65B2 /* PBXBookmark */ = 0362CABE11A89B3100EA65B2 /* PBXBookmark */; + 0362CABF11A89B3100EA65B2 /* PBXBookmark */ = 0362CABF11A89B3100EA65B2 /* PBXBookmark */; + 0362CAC011A89B3100EA65B2 /* PBXBookmark */ = 0362CAC011A89B3100EA65B2 /* PBXBookmark */; + 0362CAC111A89B3100EA65B2 /* PBXBookmark */ = 0362CAC111A89B3100EA65B2 /* PBXBookmark */; + 0362CAC211A89B3100EA65B2 /* PBXBookmark */ = 0362CAC211A89B3100EA65B2 /* PBXBookmark */; + 0362CAC311A89B3100EA65B2 /* PBXBookmark */ = 0362CAC311A89B3100EA65B2 /* PBXBookmark */; + 0362CAC411A89B3100EA65B2 /* PBXBookmark */ = 0362CAC411A89B3100EA65B2 /* PBXBookmark */; + 0362CAC511A89B3100EA65B2 /* PBXBookmark */ = 0362CAC511A89B3100EA65B2 /* PBXBookmark */; + 0362CAC611A89B3100EA65B2 /* PBXBookmark */ = 0362CAC611A89B3100EA65B2 /* PBXBookmark */; + 0362CAC711A89B3100EA65B2 /* PBXBookmark */ = 0362CAC711A89B3100EA65B2 /* PBXBookmark */; + 0362CAC811A89B3100EA65B2 /* PBXBookmark */ = 0362CAC811A89B3100EA65B2 /* PBXBookmark */; + 0362CAC911A89B3100EA65B2 /* PBXBookmark */ = 0362CAC911A89B3100EA65B2 /* PBXBookmark */; + 0362CACA11A89B3100EA65B2 /* PBXBookmark */ = 0362CACA11A89B3100EA65B2 /* PBXBookmark */; + 0362CAD411A89C5F00EA65B2 /* PBXBookmark */ = 0362CAD411A89C5F00EA65B2 /* PBXBookmark */; + 0362CC0711A8AD8100EA65B2 /* PBXTextBookmark */ = 0362CC0711A8AD8100EA65B2 /* PBXTextBookmark */; + 0362CDAF11A9990B00EA65B2 /* PBXTextBookmark */ = 0362CDAF11A9990B00EA65B2 /* PBXTextBookmark */; + 0362CDB011A9990B00EA65B2 /* PBXTextBookmark */ = 0362CDB011A9990B00EA65B2 /* PBXTextBookmark */; + 0362CE1A11A9A28700EA65B2 /* PBXTextBookmark */ = 0362CE1A11A9A28700EA65B2 /* PBXTextBookmark */; + 0362CE1D11A9A28700EA65B2 /* PBXTextBookmark */ = 0362CE1D11A9A28700EA65B2 /* PBXTextBookmark */; + 0362CE3311A9A44500EA65B2 /* PBXTextBookmark */ = 0362CE3311A9A44500EA65B2 /* PBXTextBookmark */; + 0362CE5511A9A7DD00EA65B2 /* PBXTextBookmark */ = 0362CE5511A9A7DD00EA65B2 /* PBXTextBookmark */; + 0362CE6211A9A83200EA65B2 /* PBXTextBookmark */ = 0362CE6211A9A83200EA65B2 /* PBXTextBookmark */; + 0362CE7611A9A92200EA65B2 /* PBXTextBookmark */ = 0362CE7611A9A92200EA65B2 /* PBXTextBookmark */; + 0362CE8611A9AEDF00EA65B2 /* PBXTextBookmark */ = 0362CE8611A9AEDF00EA65B2 /* PBXTextBookmark */; + 0362CEAF11A9AFFD00EA65B2 /* PBXTextBookmark */ = 0362CEAF11A9AFFD00EA65B2 /* PBXTextBookmark */; + 0362CEC511A9B0F900EA65B2 /* PBXTextBookmark */ = 0362CEC511A9B0F900EA65B2 /* PBXTextBookmark */; + 0362CEC611A9B0F900EA65B2 /* PBXTextBookmark */ = 0362CEC611A9B0F900EA65B2 /* PBXTextBookmark */; + 0362CEF011A9B1CB00EA65B2 /* PBXTextBookmark */ = 0362CEF011A9B1CB00EA65B2 /* PBXTextBookmark */; + 0362CEFB11A9B2C200EA65B2 /* PBXTextBookmark */ = 0362CEFB11A9B2C200EA65B2 /* PBXTextBookmark */; + 0362CEFC11A9B2C200EA65B2 /* PBXTextBookmark */ = 0362CEFC11A9B2C200EA65B2 /* PBXTextBookmark */; + 0362CEFD11A9B2C200EA65B2 /* PBXTextBookmark */ = 0362CEFD11A9B2C200EA65B2 /* PBXTextBookmark */; + 0362CEFF11A9B2C200EA65B2 /* PBXTextBookmark */ = 0362CEFF11A9B2C200EA65B2 /* PBXTextBookmark */; + 0362CF2511A9B76000EA65B2 /* PBXTextBookmark */ = 0362CF2511A9B76000EA65B2 /* PBXTextBookmark */; + 0368D79112380A68004E9D13 /* PBXTextBookmark */ = 0368D79112380A68004E9D13 /* PBXTextBookmark */; + 03753C4C1226C1790019C889 /* PBXTextBookmark */ = 03753C4C1226C1790019C889 /* PBXTextBookmark */; + 0384672B11AC1BE500C679A7 /* PBXTextBookmark */ = 0384672B11AC1BE500C679A7 /* PBXTextBookmark */; + 0384672E11AC1BE500C679A7 /* PBXTextBookmark */ = 0384672E11AC1BE500C679A7 /* PBXTextBookmark */; + 0384680311AC54CB00C679A7 /* PBXTextBookmark */ = 0384680311AC54CB00C679A7 /* PBXTextBookmark */; + 038469E711B3186D00C679A7 /* PBXTextBookmark */ = 038469E711B3186D00C679A7 /* PBXTextBookmark */; + 038469E811B3186D00C679A7 /* PBXTextBookmark */ = 038469E811B3186D00C679A7 /* PBXTextBookmark */; + 039E95D911A9BA99006BFB10 /* PBXTextBookmark */ = 039E95D911A9BA99006BFB10 /* PBXTextBookmark */; + 03A2E05C121CD83F0076F35D /* PBXTextBookmark */ = 03A2E05C121CD83F0076F35D /* PBXTextBookmark */; + 03BB4280123149EF00F9DA66 /* PBXTextBookmark */ = 03BB4280123149EF00F9DA66 /* PBXTextBookmark */; + 03BB44E91231806F00F9DA66 /* PBXTextBookmark */ = 03BB44E91231806F00F9DA66 /* PBXTextBookmark */; + 03BB46BB1236A73C00F9DA66 /* PBXTextBookmark */ = 03BB46BB1236A73C00F9DA66 /* PBXTextBookmark */; + 03D9CF10118B51C6004F0A52 /* PBXTextBookmark */ = 03D9CF10118B51C6004F0A52 /* PBXTextBookmark */; + 03DA4F16121C2B7F005E486B /* PBXTextBookmark */ = 03DA4F16121C2B7F005E486B /* PBXTextBookmark */; + 03DA4F17121C2B7F005E486B /* PBXTextBookmark */ = 03DA4F17121C2B7F005E486B /* PBXTextBookmark */; + }; + sourceControlManager = 03CD6A411183573500CCABFE /* Source Control */; + userBuildSettings = { + }; + }; + 29B97316FDCFA39411CA2CEA /* main.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1268, 1456}}"; + sepNavSelRange = "{1285, 26}"; + sepNavVisRange = "{716, 1830}"; + }; + }; + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1664, 708}}"; + sepNavSelRange = "{1044, 0}"; + sepNavVisRange = "{0, 1044}"; + }; + }; + 7D06F0400D23058B00DA4E99 /* AuraController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1178, 962}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1519}"; + }; + }; + 7D06F0410D23058B00DA4E99 /* AuraController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1286, 10322}}"; + sepNavSelRange = "{29644, 0}"; + sepNavVisRange = "{24872, 3224}"; + }; + }; + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 858}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{288, 1717}"; + }; + }; + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {2000, 7826}}"; + sepNavSelRange = "{6588, 12}"; + sepNavVisRange = "{4504, 2656}"; + }; + }; + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1916, 3770}}"; + sepNavSelRange = "{2387, 0}"; + sepNavVisRange = "{1955, 1624}"; + }; + }; + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1698, 3653}}"; + sepNavSelRange = "{5340, 0}"; + sepNavVisRange = "{4719, 676}"; + }; + }; + 7D220F130D1691E90026DF75 /* MobController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 936}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1257}"; + }; + }; + 7D220F140D1691E90026DF75 /* MobController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 9178}}"; + sepNavSelRange = "{805, 16}"; + sepNavVisRange = "{472, 882}"; + }; + }; + 7D370B0B0E7350DD002FE3A4 /* Action.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 728}}"; + sepNavSelRange = "{649, 0}"; + sepNavVisRange = "{296, 944}"; + }; + }; + 7D370B0C0E7350DD002FE3A4 /* Action.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 1404}}"; + sepNavSelRange = "{1902, 0}"; + sepNavVisRange = "{882, 1183}"; + }; + }; + 7D41E5960DEA00A500118EA0 /* Player.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 1053}}"; + sepNavSelRange = "{182, 0}"; + sepNavVisRange = "{76, 1280}"; + }; + }; + 7D41E5970DEA00A500118EA0 /* Player.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1698, 1872}}"; + sepNavSelRange = "{278, 0}"; + sepNavVisRange = "{0, 842}"; + }; + }; + 7D41EA0F0DEB554100118EA0 /* Unit.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 6357}}"; + sepNavSelRange = "{16781, 0}"; + sepNavVisRange = "{16123, 1266}"; + sepNavWindowFrame = "{{61, 170}, {1432, 961}}"; + }; + }; + 7D41EA100DEB554100118EA0 /* Unit.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1279, 14417}}"; + sepNavSelRange = "{9570, 16}"; + sepNavVisRange = "{8487, 1388}"; + }; + }; + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1261, 401}}"; + sepNavSelRange = "{473, 0}"; + sepNavVisRange = "{0, 567}"; + }; + }; + 7D5498940F02232500DD46F8 /* FishController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 949}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1211}"; + }; + }; + 7D5498950F02232500DD46F8 /* FishController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {919, 7735}}"; + sepNavSelRange = "{7398, 11}"; + sepNavVisRange = "{7178, 1587}"; + }; + }; + 7D5B92960D9F179D00423FC6 /* gnome.icns */ = { + uiCtxt = { + sepNavWindowFrame = "{{15, 550}, {1202, 623}}"; + }; + }; + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 819}}"; + sepNavSelRange = "{1643, 17}"; + sepNavVisRange = "{147, 1557}"; + }; + }; + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 2340}}"; + sepNavSelRange = "{1913, 25}"; + sepNavVisRange = "{1417, 767}"; + }; + }; + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 910}}"; + sepNavSelRange = "{1350, 14}"; + sepNavVisRange = "{426, 1322}"; + }; + }; + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 8190}}"; + sepNavSelRange = "{285, 0}"; + sepNavVisRange = "{0, 833}"; + }; + }; + 7D65CA460D2F04D200C50DF7 /* Procedure.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 647}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 723}"; + }; + }; + 7D65CA470D2F04D200C50DF7 /* Procedure.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 1885}}"; + sepNavSelRange = "{1747, 0}"; + sepNavVisRange = "{0, 1008}"; + }; + }; + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {919, 705}}"; + sepNavSelRange = "{481, 10}"; + sepNavVisRange = "{0, 845}"; + }; + }; + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1020, 2249}}"; + sepNavSelRange = "{946, 0}"; + sepNavVisRange = "{1260, 2185}"; + }; + }; + 7D70E7E00DC65372006B8826 /* ChatController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1165, 658}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 562}"; + }; + }; + 7D70E7E10DC65372006B8826 /* ChatController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1223, 4966}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1243}"; + }; + }; + 7D7245400D1511F40094665C /* Mob.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 708}}"; + sepNavSelRange = "{419, 0}"; + sepNavVisRange = "{0, 945}"; + }; + }; + 7D7245410D1511F40094665C /* Mob.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1188, 4771}}"; + sepNavSelRange = "{220, 5}"; + sepNavVisRange = "{0, 1415}"; + }; + }; + 7D7A695B0D26F04F0008C3FF /* NodeController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 871}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1572}"; + }; + }; + 7D7A695C0D26F04F0008C3FF /* NodeController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 6734}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1493}"; + }; + }; + 7D7A6A470D270F130008C3FF /* WoWObject.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 1235}}"; + sepNavSelRange = "{490, 100}"; + sepNavVisRange = "{0, 1802}"; + }; + }; + 7D7A6A480D270F130008C3FF /* WoWObject.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1181, 4654}}"; + sepNavSelRange = "{2042, 440}"; + sepNavVisRange = "{1362, 1516}"; + sepNavWindowFrame = "{{38, 191}, {1432, 961}}"; + }; + }; + 7D9712940D248DA0005E3BD1 /* Item.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1381, 1014}}"; + sepNavSelRange = "{295, 19}"; + sepNavVisRange = "{137, 1172}"; + }; + }; + 7D9712950D248DA0005E3BD1 /* Item.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1482, 12376}}"; + sepNavSelRange = "{8842, 0}"; + sepNavVisRange = "{8086, 1043}"; + }; + }; + 7D9712970D248ED4005E3BD1 /* InventoryController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 1235}}"; + sepNavSelRange = "{2095, 11}"; + sepNavVisRange = "{1503, 1485}"; + }; + }; + 7D9712980D248ED4005E3BD1 /* InventoryController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 11076}}"; + sepNavSelRange = "{4204, 0}"; + sepNavVisRange = "{3341, 1693}"; + }; + }; + 7D9713C70D24D339005E3BD1 /* Node.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1381, 1170}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{1228, 2088}"; + }; + }; + 7D9713C80D24D339005E3BD1 /* Node.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1381, 5408}}"; + sepNavSelRange = "{4862, 0}"; + sepNavVisRange = "{4535, 2106}"; + }; + }; + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {919, 767}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1344}"; + }; + }; + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {957, 5707}}"; + sepNavSelRange = "{13843, 12}"; + sepNavVisRange = "{12424, 1533}"; + }; + }; + 7DA7B8C10D1DF92B00F81519 /* Spell.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 988}}"; + sepNavSelRange = "{1422, 0}"; + sepNavVisRange = "{727, 877}"; + }; + }; + 7DA7B8C20D1DF92B00F81519 /* Spell.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1698, 8749}}"; + sepNavSelRange = "{5560, 0}"; + sepNavVisRange = "{5356, 598}"; + }; + }; + 7DAA09A90D55988F00A6D06A /* Globals.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 708}}"; + sepNavSelRange = "{263, 0}"; + sepNavVisRange = "{0, 263}"; + }; + }; + 7DAAE7180D148972003F1E3C /* Controller.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 2301}}"; + sepNavSelRange = "{3203, 0}"; + sepNavVisRange = "{2087, 1759}"; + }; + }; + 7DAAE7190D148972003F1E3C /* Controller.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 20670}}"; + sepNavSelRange = "{1706, 0}"; + sepNavVisRange = "{1257, 2779}"; + sepNavWindowFrame = "{{15, 615}, {750, 558}}"; + }; + }; + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1268, 1131}}"; + sepNavSelRange = "{0, 2862}"; + sepNavVisRange = "{1203, 1659}"; + }; + }; + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1268, 4108}}"; + sepNavSelRange = "{0, 9545}"; + sepNavVisRange = "{3502, 1941}"; + }; + }; + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 2535}}"; + sepNavSelRange = "{1542, 22}"; + sepNavVisRange = "{1303, 1197}"; + }; + }; + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1286, 18291}}"; + sepNavSelRange = "{16508, 0}"; + sepNavVisRange = "{17632, 2236}"; + }; + }; + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 3666}}"; + sepNavSelRange = "{1063, 0}"; + sepNavVisRange = "{357, 2118}"; + }; + }; + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1178, 683}}"; + sepNavSelRange = "{898, 49}"; + sepNavVisRange = "{0, 953}"; + }; + }; + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1248, 793}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1098}"; + }; + }; + 7DB2C4480D3BFE4100100B4D /* BotController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 6097}}"; + sepNavSelRange = "{14071, 4}"; + sepNavVisRange = "{13109, 1717}"; + }; + }; + 7DB2C4490D3BFE4100100B4D /* BotController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1373, 113425}}"; + sepNavSelRange = "{188722, 20}"; + sepNavVisRange = "{188065, 2052}"; + sepNavWindowFrame = "{{251, 157}, {1432, 961}}"; + }; + }; + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1268, 776}}"; + sepNavSelRange = "{613, 0}"; + sepNavVisRange = "{0, 689}"; + }; + }; + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1261, 31200}}"; + sepNavSelRange = "{49539, 0}"; + sepNavVisRange = "{48921, 1513}"; + }; + }; + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {958, 1911}}"; + sepNavSelRange = "{1821, 4}"; + sepNavVisRange = "{1406, 1135}"; + }; + }; + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1091, 18239}}"; + sepNavSelRange = "{16690, 0}"; + sepNavVisRange = "{16176, 1861}"; + }; + }; + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 2236}}"; + sepNavSelRange = "{47, 0}"; + sepNavVisRange = "{3, 1272}"; + }; + }; + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 21008}}"; + sepNavSelRange = "{3444, 0}"; + sepNavVisRange = "{2989, 1593}"; + }; + }; + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1178, 1157}}"; + sepNavSelRange = "{1415, 0}"; + sepNavVisRange = "{787, 1217}"; + }; + }; + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1118, 13832}}"; + sepNavSelRange = "{5847, 0}"; + sepNavVisRange = "{4396, 2167}"; + }; + }; + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 2821}}"; + sepNavSelRange = "{359, 7}"; + sepNavVisRange = "{0, 1253}"; + }; + }; + 8D1107260486CEB800E47090 /* Pocket Gnome */ = { + activeExec = 0; + executables = ( + 03CD6A1A1183573100CCABFE /* Pocket Gnome */, + ); + }; + 8D1107310486CEB800E47090 /* Info.plist */ = { + uiCtxt = { + sepNavWindowFrame = "{{84, 220}, {1351, 740}}"; + }; + }; + D02F3C541182C37E000F4037 /* DatabaseManager.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1178, 3692}}"; + sepNavSelRange = "{1093, 0}"; + sepNavVisRange = "{0, 2362}"; + }; + }; + D02F3C551182C37E000F4037 /* DatabaseManager.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1475, 2496}}"; + sepNavSelRange = "{6105, 0}"; + sepNavVisRange = "{3824, 1521}"; + }; + }; + D02F3C5B1182C497000F4037 /* MailActionProfile.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 702}}"; + sepNavSelRange = "{1952, 12}"; + sepNavVisRange = "{81, 2134}"; + }; + }; + D02F3C5C1182C497000F4037 /* MailActionProfile.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {919, 2184}}"; + sepNavSelRange = "{1665, 342}"; + sepNavVisRange = "{1065, 1455}"; + }; + }; + D02F3C5E1182C5AC000F4037 /* ProfileController.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 1365}}"; + sepNavSelRange = "{2302, 26}"; + sepNavVisRange = "{1259, 1363}"; + }; + }; + D02F3C5F1182C5AC000F4037 /* ProfileController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1449, 10504}}"; + sepNavSelRange = "{9655, 0}"; + sepNavVisRange = "{9257, 1099}"; + }; + }; + D02F3C851182C975000F4037 /* Profile.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {919, 705}}"; + sepNavSelRange = "{1294, 10}"; + sepNavVisRange = "{0, 1357}"; + }; + }; + D02F3C861182C975000F4037 /* Profile.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1236, 988}}"; + sepNavSelRange = "{1369, 0}"; + sepNavVisRange = "{1223, 921}"; + }; + }; +} diff --git a/Pocket Gnome.xcodeproj/project.pbxproj b/Pocket Gnome.xcodeproj/project.pbxproj new file mode 100644 index 0000000..507e316 --- /dev/null +++ b/Pocket Gnome.xcodeproj/project.pbxproj @@ -0,0 +1,2527 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 44; + objects = { + +/* Begin PBXBuildFile section */ + 030604B71088140000C57D77 /* ShortcutRecorder.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 030604B61088140000C57D77 /* ShortcutRecorder.framework */; }; + 030604F31088162100C57D77 /* OffsetController.m in Sources */ = {isa = PBXBuildFile; fileRef = 030604F21088162100C57D77 /* OffsetController.m */; }; + 0306057C10881CAE00C57D77 /* MacroController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0306057B10881CAE00C57D77 /* MacroController.m */; }; + 030C2E4D0FDC09B300E80F7E /* LootController.m in Sources */ = {isa = PBXBuildFile; fileRef = 030C2E4C0FDC09B300E80F7E /* LootController.m */; }; + 0313B4D810BAEA0B009E74E4 /* EventController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0313B4D710BAEA0B009E74E4 /* EventController.m */; }; + 03168C7110FE6CCD00EF241B /* WaypointActionEditor.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */; }; + 03168C8C10FE6D2000EF241B /* WaypointActionEditor.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */; }; + 03168DC810FE8BA900EF241B /* DurabilityConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */; }; + 03168DDD10FE90B600EF241B /* DurabilityCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD610FE90B600EF241B /* DurabilityCondition.xib */; }; + 03168DDE10FE90B600EF241B /* InventoryFreeCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */; }; + 03168DDF10FE90B600EF241B /* PlayerLevelCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */; }; + 03168DE010FE90B600EF241B /* PlayerZoneCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */; }; + 03168DE110FE90B600EF241B /* QuestCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDA10FE90B600EF241B /* QuestCondition.xib */; }; + 03168DE210FE90B600EF241B /* RouteRunCountCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */; }; + 03168DE310FE90B600EF241B /* RouteRunTimeCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */; }; + 03168E1B10FE972300EF241B /* PlayerLevelConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */; }; + 03168E1E10FE972B00EF241B /* PlayerZoneConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */; }; + 03168E2110FE973900EF241B /* QuestConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2010FE973900EF241B /* QuestConditionController.m */; }; + 03168E2410FE974800EF241B /* RouteRunCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */; }; + 03168E2710FE975300EF241B /* RouteRunTimeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */; }; + 03168E2A10FE975E00EF241B /* InventoryFreeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */; }; + 03168EDE10FF70C600EF241B /* RepairAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03168EDC10FF70C600EF241B /* RepairAction.xib */; }; + 03168EE410FF713000EF241B /* ActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168EE310FF713000EF241B /* ActionController.m */; }; + 03168EFE10FF72DF00EF241B /* RepairActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03168EFD10FF72DF00EF241B /* RepairActionController.m */; }; + 0316901010FF84AB00EF241B /* SwitchRouteAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */; }; + 0316904710FF89FC00EF241B /* SwitchRouteActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */; }; + 031694CD110103C000EF241B /* SpellActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694CC110103C000EF241B /* SpellActionController.m */; }; + 031694D0110103CC00EF241B /* ItemActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694CF110103CC00EF241B /* ItemActionController.m */; }; + 031694D3110103DA00EF241B /* MacroActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D2110103DA00EF241B /* MacroActionController.m */; }; + 031694D6110103E000EF241B /* DelayActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D5110103E000EF241B /* DelayActionController.m */; }; + 031694D9110103E900EF241B /* JumpActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 031694D8110103E900EF241B /* JumpActionController.m */; }; + 031695191101314B00EF241B /* ItemAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695161101314B00EF241B /* ItemAction.xib */; }; + 0316951A1101314B00EF241B /* MacroAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695171101314B00EF241B /* MacroAction.xib */; }; + 0316951B1101314B00EF241B /* SpellAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 031695181101314B00EF241B /* SpellAction.xib */; }; + 0322D6DA11065D0800EF3EEF /* CombatProfileActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */; }; + 0322D6E211065D8900EF3EEF /* CombatProfileAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */; }; + 0322D72F110744D500EF3EEF /* CoreData.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0322D72E110744D500EF3EEF /* CoreData.framework */; }; + 0331619611AAF1B900467490 /* appcast.xml in Resources */ = {isa = PBXBuildFile; fileRef = 0331619511AAF1B900467490 /* appcast.xml */; }; + 033C3F3E126CA54C0050DBDC /* buildnumber.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */; }; + 034126C11135706E00BE6819 /* PvPController.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126C01135706E00BE6819 /* PvPController.m */; }; + 034126C4113570E100BE6819 /* PvP.xib in Resources */ = {isa = PBXBuildFile; fileRef = 034126C3113570E100BE6819 /* PvP.xib */; }; + 034126E61135774100BE6819 /* Battleground.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126E51135774100BE6819 /* Battleground.m */; }; + 034126E91135774A00BE6819 /* PvPBehavior.m in Sources */ = {isa = PBXBuildFile; fileRef = 034126E81135774A00BE6819 /* PvPBehavior.m */; }; + 0341DD60111B0F6B00074CED /* Objects.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0341DD5F111B0F6B00074CED /* Objects.xib */; }; + 0341DD66111B0FBE00074CED /* ObjectsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0341DD65111B0FBE00074CED /* ObjectsController.m */; }; + 0341DDDA111B21D700074CED /* ObjectController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0341DDD9111B21D700074CED /* ObjectController.m */; }; + 034429B80FAA3E1800E9DE03 /* Quest.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429B70FAA3E1800E9DE03 /* Quest.m */; }; + 034429BD0FAA3E3800E9DE03 /* QuestItem.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429BC0FAA3E3800E9DE03 /* QuestItem.m */; }; + 034429C00FAA3E5600E9DE03 /* QuestController.m in Sources */ = {isa = PBXBuildFile; fileRef = 034429BF0FAA3E5600E9DE03 /* QuestController.m */; }; + 0344CB231267D0E700B4A9C7 /* LuaController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0344CB221267D0E700B4A9C7 /* LuaController.m */; }; + 0350738410CDBA460004636E /* SpellCooldown.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0350738310CDBA460004636E /* SpellCooldown.xib */; }; + 0350738910CDBA640004636E /* SpellCooldownConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0350738810CDBA640004636E /* SpellCooldownConditionController.m */; }; + 0352F46611376DA5005B28D6 /* PVP.png in Resources */ = {isa = PBXBuildFile; fileRef = 0352F46511376DA5005B28D6 /* PVP.png */; }; + 03567AAD10DDAB52001ACE43 /* CombatController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03567AAC10DDAB52001ACE43 /* CombatController.m */; }; + 0362CDDE11A99CED00EA65B2 /* CombatProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */; }; + 03685DC6110266FC001CE552 /* DelayAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685DC5110266FC001CE552 /* DelayAction.xib */; }; + 03685DDA11026831001CE552 /* JumpAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685DD911026831001CE552 /* JumpAction.xib */; }; + 03685FA81103D73B001CE552 /* QuestGrabAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685FA61103D73B001CE552 /* QuestGrabAction.xib */; }; + 03685FA91103D73B001CE552 /* QuestTurnInAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */; }; + 03685FAD1103D768001CE552 /* QuestGrabActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03685FAC1103D768001CE552 /* QuestGrabActionController.m */; }; + 03685FB01103D77A001CE552 /* QuestTurnInActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */; }; + 038709BA10D576E100DF5B90 /* BlacklistController.m in Sources */ = {isa = PBXBuildFile; fileRef = 038709B910D576E100DF5B90 /* BlacklistController.m */; }; + 038769151124532000B2C571 /* RouteCollection.m in Sources */ = {isa = PBXBuildFile; fileRef = 038769141124532000B2C571 /* RouteCollection.m */; }; + 038A4B4610E9656D00577D8F /* LastSpellCast.xib in Resources */ = {isa = PBXBuildFile; fileRef = 038A4B4510E9656D00577D8F /* LastSpellCast.xib */; }; + 038A4B4910E9657900577D8F /* LastSpellCastConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */; }; + 0393F413110A205800296CF8 /* libcrypto.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 0393F412110A205800296CF8 /* libcrypto.dylib */; }; + 0393F52D110A558200296CF8 /* ReverseRouteAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */; }; + 0393F52E110A558300296CF8 /* VendorAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52C110A558200296CF8 /* VendorAction.xib */; }; + 0393F530110A558F00296CF8 /* MailAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 0393F52F110A558F00296CF8 /* MailAction.xib */; }; + 0393F533110A55DB00296CF8 /* MailActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F532110A55DB00296CF8 /* MailActionController.m */; }; + 0393F536110A55E300296CF8 /* VendorActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F535110A55E300296CF8 /* VendorActionController.m */; }; + 0393F539110A55EF00296CF8 /* ReverseRouteActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */; }; + 03981D8E112AEC870081835F /* Sparkle.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 03981D8D112AEC860081835F /* Sparkle.framework */; }; + 03981DA6112AECA80081835F /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 03981D8D112AEC860081835F /* Sparkle.framework */; }; + 03981DE9112B22E90081835F /* dsa_pub.pem in Resources */ = {isa = PBXBuildFile; fileRef = 03981DE8112B22E90081835F /* dsa_pub.pem */; }; + 03981E78112B898E0081835F /* MovementController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03981E77112B898E0081835F /* MovementController.m */; }; + 03981F38112C819E0081835F /* LogController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03981F37112C819E0081835F /* LogController.m */; }; + 03A01B0D109A2A9600E6098E /* StatisticsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03A01B0C109A2A9600E6098E /* StatisticsController.m */; }; + 03A01B3A109A2CFF00E6098E /* Statistics.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03A01B39109A2CFF00E6098E /* Statistics.xib */; }; + 03A320D5114E88A9000D23EE /* JumpToWaypointActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */; }; + 03A3211B114E9AC2000D23EE /* JumpToWaypointAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */; }; + 03A4047C0FE148C60087BC0D /* mbobbleicon.png in Resources */ = {isa = PBXBuildFile; fileRef = 03A4047B0FE148C60087BC0D /* mbobbleicon.png */; }; + 03B6D25E10F626C500EC6EFF /* RuneCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */; }; + 03B6D26210F626EA00EC6EFF /* RuneConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */; }; + 03BB221A112258A00048DE7B /* GateConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BB2219112258A00048DE7B /* GateConditionController.m */; }; + 03BB222A11225E410048DE7B /* GateCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03BB222911225E410048DE7B /* GateCondition.xib */; }; + 03BB227B1122F1160048DE7B /* StrandStatus.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03BB227A1122F1160048DE7B /* StrandStatus.xib */; }; + 03BB227E1122F1240048DE7B /* StrandStatusConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */; }; + 03BD330E11120A7A00941971 /* BindingsController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BD330D11120A7A00941971 /* BindingsController.m */; }; + 03BE961A11828343004DBFBF /* FileController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03BE961911828343004DBFBF /* FileController.m */; }; + 03C280CD1089178600A76249 /* ShortcutRecorder.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 030604B61088140000C57D77 /* ShortcutRecorder.framework */; }; + 03C42CCA1096839E0085E888 /* Macros.plist in Resources */ = {isa = PBXBuildFile; fileRef = 03C42CC91096839E0085E888 /* Macros.plist */; }; + 03CD6AC41183D5AC00CCABFE /* Profiles.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03CD6AC31183D5AC00CCABFE /* Profiles.xib */; }; + 03CEF7880FCCD93100B47336 /* Corpse.m in Sources */ = {isa = PBXBuildFile; fileRef = 03CEF7850FCCD93100B47336 /* Corpse.m */; }; + 03CEF7890FCCD93100B47336 /* CorpseController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03CEF7870FCCD93100B47336 /* CorpseController.m */; }; + 03D65A591090EC0D00537E9C /* OffsetSignatures.plist in Resources */ = {isa = PBXBuildFile; fileRef = 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */; }; + 03E1D7B8110F62CD003180E4 /* FileObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 03E1D7B7110F62CD003180E4 /* FileObject.m */; }; + 03FE91E2125FB5DB00A40445 /* lapi.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91AD125FB5DB00A40445 /* lapi.c */; }; + 03FE91E3125FB5DB00A40445 /* lauxlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91AF125FB5DB00A40445 /* lauxlib.c */; }; + 03FE91E4125FB5DB00A40445 /* lbaselib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B1125FB5DB00A40445 /* lbaselib.c */; }; + 03FE91E5125FB5DB00A40445 /* lcode.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B2125FB5DB00A40445 /* lcode.c */; }; + 03FE91E6125FB5DB00A40445 /* ldblib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B4125FB5DB00A40445 /* ldblib.c */; }; + 03FE91E7125FB5DB00A40445 /* ldebug.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B5125FB5DB00A40445 /* ldebug.c */; }; + 03FE91E8125FB5DB00A40445 /* ldo.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B7125FB5DB00A40445 /* ldo.c */; }; + 03FE91E9125FB5DB00A40445 /* ldump.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91B9125FB5DB00A40445 /* ldump.c */; }; + 03FE91EA125FB5DB00A40445 /* lfunc.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BA125FB5DB00A40445 /* lfunc.c */; }; + 03FE91EB125FB5DB00A40445 /* lgc.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BC125FB5DB00A40445 /* lgc.c */; }; + 03FE91EC125FB5DB00A40445 /* linit.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BE125FB5DB00A40445 /* linit.c */; }; + 03FE91ED125FB5DB00A40445 /* liolib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91BF125FB5DB00A40445 /* liolib.c */; }; + 03FE91EE125FB5DB00A40445 /* llex.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C0125FB5DB00A40445 /* llex.c */; }; + 03FE91EF125FB5DB00A40445 /* lmathlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C3125FB5DB00A40445 /* lmathlib.c */; }; + 03FE91F0125FB5DB00A40445 /* lmem.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C4125FB5DB00A40445 /* lmem.c */; }; + 03FE91F1125FB5DB00A40445 /* loadlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C6125FB5DB00A40445 /* loadlib.c */; }; + 03FE91F2125FB5DB00A40445 /* lobject.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C7125FB5DB00A40445 /* lobject.c */; }; + 03FE91F3125FB5DB00A40445 /* lopcodes.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91C9125FB5DB00A40445 /* lopcodes.c */; }; + 03FE91F4125FB5DB00A40445 /* loslib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91CB125FB5DB00A40445 /* loslib.c */; }; + 03FE91F5125FB5DB00A40445 /* lparser.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91CC125FB5DB00A40445 /* lparser.c */; }; + 03FE91F6125FB5DB00A40445 /* lstate.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91CE125FB5DB00A40445 /* lstate.c */; }; + 03FE91F7125FB5DB00A40445 /* lstring.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D0125FB5DB00A40445 /* lstring.c */; }; + 03FE91F8125FB5DB00A40445 /* lstrlib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D2125FB5DB00A40445 /* lstrlib.c */; }; + 03FE91F9125FB5DB00A40445 /* ltable.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D3125FB5DB00A40445 /* ltable.c */; }; + 03FE91FA125FB5DB00A40445 /* ltablib.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D5125FB5DB00A40445 /* ltablib.c */; }; + 03FE91FB125FB5DB00A40445 /* ltm.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91D6125FB5DB00A40445 /* ltm.c */; }; + 03FE91FC125FB5DB00A40445 /* lundump.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91DB125FB5DB00A40445 /* lundump.c */; }; + 03FE91FD125FB5DB00A40445 /* lvm.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91DD125FB5DB00A40445 /* lvm.c */; }; + 03FE91FE125FB5DB00A40445 /* lzio.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91DF125FB5DB00A40445 /* lzio.c */; }; + 03FE91FF125FB5DB00A40445 /* print.c in Sources */ = {isa = PBXBuildFile; fileRef = 03FE91E1125FB5DB00A40445 /* print.c */; }; + 03FFD45B110B922D0046AEDF /* MobsKilledCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */; }; + 03FFD46E110B930F0046AEDF /* MobsKilledConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */; }; + 03FFD596110CB5440046AEDF /* InteractNPCActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */; }; + 03FFD597110CB5440046AEDF /* InteractObjectActionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */; }; + 03FFD59A110CB55A0046AEDF /* InteractNPCAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */; }; + 03FFD59B110CB55A0046AEDF /* InteractObjectAction.xib in Resources */ = {isa = PBXBuildFile; fileRef = 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */; }; + 614CD78A1106182100BA1B2F /* Bot.xib in Resources */ = {isa = PBXBuildFile; fileRef = 614CD7891106182100BA1B2F /* Bot.xib */; }; + 7D06F0420D23058B00DA4E99 /* AuraController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D06F0410D23058B00DA4E99 /* AuraController.m */; }; + 7D0C43D10DF2089E005F3940 /* ScanGridView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D0C43D00DF2089E005F3940 /* ScanGridView.m */; }; + 7D0C43F80DF20B0D005F3940 /* TransparentWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */; }; + 7D16598B0D455F6500BDF5CA /* RouteSet.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D16598A0D455F6500BDF5CA /* RouteSet.m */; }; + 7D1B39420F896A96005CA0CD /* ChatAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B39410F896A96005CA0CD /* ChatAction.m */; }; + 7D1B39C50F897721005CA0CD /* Message.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D1B39C40F897721005CA0CD /* Message.framework */; }; + 7D1B3A220F89860D005CA0CD /* ScriptingBridge.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */; }; + 7D1B3A5C0F898887005CA0CD /* Mail.app in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B3A560F89885D005CA0CD /* Mail.app */; }; + 7D1B3A960F898D90005CA0CD /* iChat.app in Sources */ = {isa = PBXBuildFile; fileRef = 7D1B3A940F898D89005CA0CD /* iChat.app */; }; + 7D1B3B8D0F89ACE9005CA0CD /* Mail.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */; }; + 7D1B3B8F0F89AD22005CA0CD /* iChat.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D1B3B8E0F89AD22005CA0CD /* iChat.png */; }; + 7D1BEDF00F8717CF00DF5FBF /* ChatLogController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */; }; + 7D1BEE530F8733A400DF5FBF /* ChatLogEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */; }; + 7D21677E0DC456A400D5A815 /* PTKeyBroadcaster.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */; }; + 7D21677F0DC456A400D5A815 /* PTHotKeyCenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */; }; + 7D2167800DC456A400D5A815 /* PTKeyCodeTranslator.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */; }; + 7D2167810DC456A400D5A815 /* PTHotKey.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D21677A0DC456A400D5A815 /* PTHotKey.m */; }; + 7D2167820DC456A400D5A815 /* PTKeyCombo.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */; }; + 7D2167F40DC4581700D5A815 /* Carbon.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7D2167F30DC4581700D5A815 /* Carbon.framework */; }; + 7D220F150D1691E90026DF75 /* MobController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D220F140D1691E90026DF75 /* MobController.m */; }; + 7D3108E30EFDBCCB00ECFABE /* Bobber.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D3108E20EFDBCCB00ECFABE /* Bobber.png */; }; + 7D3109440EFDCBA700ECFABE /* splash.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 7D3109430EFDCBA700ECFABE /* splash.mp3 */; }; + 7D370B0D0E7350DD002FE3A4 /* Action.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D370B0C0E7350DD002FE3A4 /* Action.m */; }; + 7D370C070E7366DC002FE3A4 /* ActionMenusController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */; }; + 7D3C91EB0E47C8C700EDF3B3 /* Gathering.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */; }; + 7D41E5950DE9FE8800118EA0 /* PlayersController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E5940DE9FE8800118EA0 /* PlayersController.m */; }; + 7D41E5980DEA00A500118EA0 /* Player.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E5970DEA00A500118EA0 /* Player.m */; }; + 7D41E8130DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */; }; + 7D41E8670DEA2DE800118EA0 /* BloodElf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */; }; + 7D41E8680DEA2DE800118EA0 /* BloodElf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */; }; + 7D41E8690DEA2DE800118EA0 /* Draenei-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */; }; + 7D41E86A0DEA2DE800118EA0 /* Draenei-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */; }; + 7D41E86B0DEA2DE800118EA0 /* Dwarf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */; }; + 7D41E86C0DEA2DE800118EA0 /* Dwarf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */; }; + 7D41E86D0DEA2DE800118EA0 /* Gnome-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */; }; + 7D41E86E0DEA2DE800118EA0 /* Gnome-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */; }; + 7D41E86F0DEA2DE800118EA0 /* Human-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */; }; + 7D41E8700DEA2DE800118EA0 /* Human-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */; }; + 7D41E8710DEA2DE800118EA0 /* NightElf-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */; }; + 7D41E8720DEA2DE800118EA0 /* NightElf-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */; }; + 7D41E8730DEA2DE800118EA0 /* Orc-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */; }; + 7D41E8740DEA2DE800118EA0 /* Orc-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */; }; + 7D41E8750DEA2DE800118EA0 /* Tauren-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */; }; + 7D41E8760DEA2DE800118EA0 /* Tauren-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */; }; + 7D41E8770DEA2DE800118EA0 /* Troll-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */; }; + 7D41E8780DEA2DE800118EA0 /* Troll-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */; }; + 7D41E8790DEA2DE800118EA0 /* Undead-Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */; }; + 7D41E87A0DEA2DE800118EA0 /* Undead-Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */; }; + 7D41E8870DEA2DFA00118EA0 /* Druid.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E87E0DEA2DFA00118EA0 /* Druid.png */; }; + 7D41E8880DEA2DFA00118EA0 /* Hunter.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */; }; + 7D41E8890DEA2DFA00118EA0 /* Mage.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8800DEA2DFA00118EA0 /* Mage.png */; }; + 7D41E88A0DEA2DFA00118EA0 /* Paladin.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8810DEA2DFA00118EA0 /* Paladin.png */; }; + 7D41E88B0DEA2DFA00118EA0 /* Priest.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8820DEA2DFA00118EA0 /* Priest.png */; }; + 7D41E88C0DEA2DFA00118EA0 /* Rogue.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8830DEA2DFA00118EA0 /* Rogue.png */; }; + 7D41E88D0DEA2DFA00118EA0 /* Shaman.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8840DEA2DFA00118EA0 /* Shaman.png */; }; + 7D41E88E0DEA2DFA00118EA0 /* Warlock.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8850DEA2DFA00118EA0 /* Warlock.png */; }; + 7D41E88F0DEA2DFA00118EA0 /* Warrior.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8860DEA2DFA00118EA0 /* Warrior.png */; }; + 7D41E8B80DEA31DD00118EA0 /* ImageAndTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */; }; + 7D41E9010DEA379300118EA0 /* Priest_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */; }; + 7D41E9020DEA379300118EA0 /* Shaman_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */; }; + 7D41E9030DEA379300118EA0 /* Paladin_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */; }; + 7D41E9040DEA379300118EA0 /* Warlock_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */; }; + 7D41E9050DEA379300118EA0 /* Mage_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */; }; + 7D41E9060DEA379300118EA0 /* Warrior_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */; }; + 7D41E9070DEA379300118EA0 /* Hunter_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */; }; + 7D41E9080DEA379300118EA0 /* Druid_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */; }; + 7D41E9090DEA379300118EA0 /* Rogue_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */; }; + 7D41E9260DEA38A500118EA0 /* Male.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9240DEA38A500118EA0 /* Male.png */; }; + 7D41E9270DEA38A500118EA0 /* Female.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9250DEA38A500118EA0 /* Female.png */; }; + 7D41E9AA0DEA734200118EA0 /* Keybindings.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A70DEA734200118EA0 /* Keybindings.png */; }; + 7D41E9AB0DEA734200118EA0 /* InterfaceBars.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */; }; + 7D41E9AC0DEA734200118EA0 /* Result.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9A90DEA734200118EA0 /* Result.png */; }; + 7D41E9AF0DEB467500118EA0 /* HotkeyFinished.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */; }; + 7D41E9B00DEB467500118EA0 /* TypeShortcut.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */; }; + 7D41EA110DEB554100118EA0 /* Unit.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D41EA100DEB554100118EA0 /* Unit.m */; }; + 7D41EE7C0DECD45100118EA0 /* UnknownSmall.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */; }; + 7D41EEE00DECD7C600118EA0 /* Orc-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */; }; + 7D41EEE10DECD7C600118EA0 /* Gnome-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */; }; + 7D41EEE20DECD7C600118EA0 /* BloodElf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */; }; + 7D41EEE30DECD7C600118EA0 /* Orc-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */; }; + 7D41EEE40DECD7C600118EA0 /* Troll-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */; }; + 7D41EEE50DECD7C600118EA0 /* Undead-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */; }; + 7D41EEE60DECD7C600118EA0 /* Human-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */; }; + 7D41EEE70DECD7C600118EA0 /* BloodElf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */; }; + 7D41EEE80DECD7C600118EA0 /* Draenei-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */; }; + 7D41EEE90DECD7C600118EA0 /* Tauren-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */; }; + 7D41EEEA0DECD7C600118EA0 /* Draenei-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */; }; + 7D41EEEB0DECD7C600118EA0 /* Dwarf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */; }; + 7D41EEEC0DECD7C600118EA0 /* Undead-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */; }; + 7D41EEED0DECD7C600118EA0 /* Gnome-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */; }; + 7D41EEEE0DECD7C600118EA0 /* Human-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */; }; + 7D41EEEF0DECD7C600118EA0 /* Dwarf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */; }; + 7D41EEF00DECD7C600118EA0 /* Tauren-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */; }; + 7D41EEF10DECD7C600118EA0 /* Troll-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */; }; + 7D41EEFD0DECD85000118EA0 /* NightElf-Male_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */; }; + 7D41EEFE0DECD85000118EA0 /* NightElf-Female_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */; }; + 7D45A6CC0E4461DE008A3601 /* NSData+SockAddr.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */; }; + 7D4AFB340D9EDBF100A33CE1 /* bad.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7D4AFB320D9EDBF100A33CE1 /* bad.tif */; }; + 7D4AFB350D9EDBF100A33CE1 /* good.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7D4AFB330D9EDBF100A33CE1 /* good.tif */; }; + 7D53C0E90E5E2199007B3AA6 /* UKMainThreadProxy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */; }; + 7D53C0EA0E5E2199007B3AA6 /* UKFileWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */; }; + 7D53C0EB0E5E2199007B3AA6 /* UKKQueue.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */; }; + 7D53C0EC0E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */; }; + 7D5496430E1AA073004AA3E9 /* AuraStackConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */; }; + 7D5496460E1AA0F5004AA3E9 /* AuraStackCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */; }; + 7D5498910F0222DC00DD46F8 /* INV_Fishingpole_03.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */; }; + 7D5498960F02232500DD46F8 /* FishController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5498950F02232500DD46F8 /* FishController.m */; }; + 7D5A384A0D14B52900E491CD /* NSNumberToHexString.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */; }; + 7D60430C0D5FC2DF001501AF /* mixed.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D60430B0D5FC2DF001501AF /* mixed.png */; }; + 7D65C8F90D2EE14500C50DF7 /* Rule.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C8F80D2EE14500C50DF7 /* Rule.m */; }; + 7D65C8FC0D2EE16B00C50DF7 /* Condition.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */; }; + 7D65C9DB0D2EF93100C50DF7 /* ProcedureController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */; }; + 7D65CA480D2F04D200C50DF7 /* Procedure.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65CA470D2F04D200C50DF7 /* Procedure.m */; }; + 7D65CC1D0D2F69BB00C50DF7 /* Behavior.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */; }; + 7D6BE9700F87ED8B00ED364A /* ChatLog.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */; }; + 7D6BE9990F87F6FB00ED364A /* Trade_Engraving.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */; }; + 7D6BEC8D0F8844F600ED364A /* Growl Registration Ticket.growlRegDict in Resources */ = {isa = PBXBuildFile; fileRef = 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */; }; + 7D70E7E20DC65372006B8826 /* ChatController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D70E7E10DC65372006B8826 /* ChatController.m */; }; + 7D7245420D1511F40094665C /* Mob.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7245410D1511F40094665C /* Mob.m */; }; + 7D7A695D0D26F04F0008C3FF /* NodeController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7A695C0D26F04F0008C3FF /* NodeController.m */; }; + 7D7A6A490D270F130008C3FF /* WoWObject.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7A6A480D270F130008C3FF /* WoWObject.m */; }; + 7D7C66A30E58E74D002A6C96 /* TargetType.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C66A20E58E74D002A6C96 /* TargetType.xib */; }; + 7D7C66AE0E58E8B0002A6C96 /* CombatCount.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */; }; + 7D7C66BC0E58E92F002A6C96 /* TargetTypeConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */; }; + 7D7C66DD0E58E97D002A6C96 /* CombatCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */; }; + 7D7C670A0E58EB37002A6C96 /* ProximityCount.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */; }; + 7D7C670E0E58EC50002A6C96 /* TargetClass.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */; }; + 7D7C67160E58EC79002A6C96 /* ProximityCountConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */; }; + 7D7C67190E58EC85002A6C96 /* TargetClassConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */; }; + 7D80B4750DE75795004D00F6 /* Friendly.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4720DE75795004D00F6 /* Friendly.png */; }; + 7D80B4760DE75795004D00F6 /* Hostile.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4730DE75795004D00F6 /* Hostile.png */; }; + 7D80B4770DE75795004D00F6 /* Combat.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4740DE75795004D00F6 /* Combat.png */; }; + 7D80B48D0DE75905004D00F6 /* Dead.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B48C0DE75905004D00F6 /* Dead.png */; }; + 7D80B4B10DE76098004D00F6 /* Neutral.png in Resources */ = {isa = PBXBuildFile; fileRef = 7D80B4B00DE76098004D00F6 /* Neutral.png */; }; + 7D8343FB0D17231300853E32 /* Position.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D8343FA0D17231300853E32 /* Position.m */; }; + 7D9712960D248DA0005E3BD1 /* Item.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9712950D248DA0005E3BD1 /* Item.m */; }; + 7D9712990D248ED4005E3BD1 /* InventoryController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9712980D248ED4005E3BD1 /* InventoryController.m */; }; + 7D9713C90D24D339005E3BD1 /* Node.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9713C80D24D339005E3BD1 /* Node.m */; }; + 7D9770C10D2D84D700E6D8F9 /* HealthConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */; }; + 7D9771150D2D8C0E00E6D8F9 /* ConditionCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */; }; + 7D9771180D2D8F6000E6D8F9 /* ConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */; }; + 7D9771780D2D951900E6D8F9 /* BetterSegmentedControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */; }; + 7D9772050D2DA23D00E6D8F9 /* StatusConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */; }; + 7D9772750D2DA97A00E6D8F9 /* AuraConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */; }; + 7D9772A90D2DB2B300E6D8F9 /* BetterTableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */; }; + 7D97730F0D2DBF5400E6D8F9 /* RuleEditor.m in Sources */ = {isa = PBXBuildFile; fileRef = 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */; }; + 7DA7B8C30D1DF92B00F81519 /* Spell.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DA7B8C20D1DF92B00F81519 /* Spell.m */; }; + 7DA95E340E2302C400AC85E2 /* BannerNeutral.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */; }; + 7DA95E350E2302C400AC85E2 /* BannerHorde.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E320E2302C400AC85E2 /* BannerHorde.png */; }; + 7DA95E360E2302C400AC85E2 /* BannerAlliance.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */; }; + 7DA95ECE0E23537A00AC85E2 /* alarm.mp3 in Resources */ = {isa = PBXBuildFile; fileRef = 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */; }; + 7DAAE71A0D148972003F1E3C /* Controller.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7190D148972003F1E3C /* Controller.m */; }; + 7DAAE7220D14897D003F1E3C /* MemoryAccess.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */; }; + 7DAAE7630D148995003F1E3C /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DAAE7620D148995003F1E3C /* Security.framework */; }; + 7DAAE7690D14917E003F1E3C /* PlayerDataController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */; }; + 7DAB645E0E22A85900B84C0E /* Ability_DualWieldSpecialization.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */; }; + 7DAB64610E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */; }; + 7DAB64630E22AAB300B84C0E /* Ability_Warrior_Challange.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */; }; + 7DAD11660E117BF000B0F7BD /* Macro.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DAD11650E117BF000B0F7BD /* Macro.m */; }; + 7DB0ABC90EABED7F00B81BC1 /* FactionTemplate.plist in Resources */ = {isa = PBXBuildFile; fileRef = 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */; }; + 7DB0ADE50EB02F0C00B81BC1 /* Aura.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */; }; + 7DB260D50DB30922007DB867 /* libz.1.2.3.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */; }; + 7DB2C44A0D3BFE4100100B4D /* BotController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB2C4490D3BFE4100100B4D /* BotController.m */; }; + 7DB8222A0E33382900661394 /* TempEnchantCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DB822290E33382900661394 /* TempEnchantCondition.xib */; }; + 7DB8222F0E33384300661394 /* TempEnchantConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */; }; + 7DBA60600D51D28600FD6A5F /* Spell_Holy_MindVision.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */; }; + 7DBA60620D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */; }; + 7DBA60630D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */; }; + 7DBA60640D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */; }; + 7DBA60660D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */; }; + 7DBA60690D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */; }; + 7DBA606B0D51D38B00FD6A5F /* inv_misc_bag_14.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */; }; + 7DBA606D0D51D52600FD6A5F /* INV_Misc_Orb_05.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */; }; + 7DBA607B0D51D68000FD6A5F /* INV_Misc_Gear_01.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */; }; + 7DBA60810D51D75C00FD6A5F /* Ability_Warrior_Revenge.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */; }; + 7DBA60A20D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */; }; + 7DBC34540DB57665000C9BCF /* SRRemoveShortcut.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */; }; + 7DBC34550DB57665000C9BCF /* SRRemoveShortcutPressed.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */; }; + 7DBC34560DB57665000C9BCF /* SRRemoveShortcutRollover.tif in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */; }; + 7DBC34570DB57665000C9BCF /* SRSnapback.tiff in Resources */ = {isa = PBXBuildFile; fileRef = 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */; }; + 7DBDA6770E0DAE5D0021E180 /* NoAccessApplication.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */; }; + 7DBEC7DB0E4512D800994A7A /* GrabWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */; }; + 7DBF31C60E94679500A592BD /* Growl.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7DBF31C50E94679500A592BD /* Growl.framework */; }; + 7DBF31CE0E94679900A592BD /* Growl.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 7DBF31C50E94679500A592BD /* Growl.framework */; }; + 7DC3FF190D57C76D00BEB58B /* BetterAuthorizationSampleLib.c in Sources */ = {isa = PBXBuildFile; fileRef = 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */; }; + 7DC3FF2A0D57C7CE00BEB58B /* ToolCommon.c in Sources */ = {isa = PBXBuildFile; fileRef = 7DC3FF280D57C79400BEB58B /* ToolCommon.c */; }; + 7DC419EF0DEDFD0300F3B083 /* ActiveQuestIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */; }; + 7DC419F00DEDFD0300F3B083 /* AvailableQuestIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */; }; + 7DC419F10DEDFD0300F3B083 /* BankerGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */; }; + 7DC419F20DEDFD0300F3B083 /* BinderGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */; }; + 7DC419F30DEDFD0300F3B083 /* GossipGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */; }; + 7DC419F40DEDFD0300F3B083 /* PetitionGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */; }; + 7DC419F50DEDFD0300F3B083 /* Scroll.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EA0DEDFD0300F3B083 /* Scroll.png */; }; + 7DC419F60DEDFD0300F3B083 /* TabardGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */; }; + 7DC419F70DEDFD0300F3B083 /* TaxiGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */; }; + 7DC419F80DEDFD0300F3B083 /* TrainerGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */; }; + 7DC419F90DEDFD0300F3B083 /* VendorGossipIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */; }; + 7DC419FC0DEDFDD000F3B083 /* MinimapGuideFlag.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */; }; + 7DC419FD0DEDFDD000F3B083 /* WarnTriangle.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */; }; + 7DC41A220DEDFED400F3B083 /* ResourceBlip.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */; }; + 7DC41A570DEE020B00F3B083 /* Repair.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A560DEE020B00F3B083 /* Repair.png */; }; + 7DC41A700DEE041400F3B083 /* Skull.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41A6F0DEE041400F3B083 /* Skull.png */; }; + 7DC41AD60DEE0CA100F3B083 /* Stable.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AD50DEE0CA100F3B083 /* Stable.png */; }; + 7DC41ADC0DEE0D9100F3B083 /* Innkeeper.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */; }; + 7DC41AE50DEE111600F3B083 /* Chicken.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AE40DEE111600F3B083 /* Chicken.png */; }; + 7DC41AFE0DEE156800F3B083 /* NeutralCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */; }; + 7DC41AFF0DEE156800F3B083 /* HordeCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */; }; + 7DC41B000DEE156800F3B083 /* AllianceCrest.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */; }; + 7DC7A9580DFB70CA00F6FA63 /* pgRoute.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */; }; + 7DC7A9860DFC85C700F6FA63 /* pgBehavior.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */; }; + 7DC7A9A60DFC869400F6FA63 /* gnome2.icns in Resources */ = {isa = PBXBuildFile; fileRef = 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */; }; + 7DC8B44D0D4147CB00B25B45 /* DistanceConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */; }; + 7DC8B4610D4152EC00B25B45 /* InventoryConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */; }; + 7DCB5A400D540647001678BC /* Memory.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCB5A3F0D540647001678BC /* Memory.xib */; }; + 7DCE50660E12EF9100C5DF01 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */; }; + 7DCE50750E12F05E00C5DF01 /* AuraCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */; }; + 7DCE50760E12F05E00C5DF01 /* StatusCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */; }; + 7DCE50770E12F05E00C5DF01 /* DistanceCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */; }; + 7DCE50780E12F05E00C5DF01 /* HealthCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */; }; + 7DCE50790E12F05E00C5DF01 /* InventoryCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */; }; + 7DD03DE20D160075000CC1A6 /* MemoryViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */; }; + 7DD03F0C0D163F44000CC1A6 /* WaypointController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */; }; + 7DD03F350D163F9A000CC1A6 /* Route.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F340D163F9A000CC1A6 /* Route.m */; }; + 7DD03F380D163FF8000CC1A6 /* Waypoint.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD03F370D163FF8000CC1A6 /* Waypoint.m */; }; + 7DD1D14F0DD241F60069CB07 /* ComboPointConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */; }; + 7DD1D1560DD242A70069CB07 /* ComboPointCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */; }; + 7DD3D40B0D1B2FEB0023D097 /* SpellController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */; }; + 7DD64AF60D5D10FA00773CAB /* RouteVisualizationView.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */; }; + 7DD64B210D5D192500773CAB /* off.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD64B1F0D5D192500773CAB /* off.png */; }; + 7DD64B220D5D192500773CAB /* on.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD64B200D5D192500773CAB /* on.png */; }; + 7DD8037D0D514E62005C2F01 /* Player.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD8037C0D514E62005C2F01 /* Player.xib */; }; + 7DD803980D515142005C2F01 /* Spells.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803970D515142005C2F01 /* Spells.xib */; }; + 7DD803A20D5151CA005C2F01 /* Routes.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803A10D5151CA005C2F01 /* Routes.xib */; }; + 7DD803A40D5153E5005C2F01 /* Behaviors.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DD803A30D5153E5005C2F01 /* Behaviors.xib */; }; + 7DD8910B0F2BE875007E9FE4 /* DeathKnight.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */; }; + 7DD891240F2BE92A007E9FE4 /* DeathKnight_Small.gif in Resources */ = {isa = PBXBuildFile; fileRef = 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */; }; + 7DDCC4860F9EE3BE0085A88E /* InteractWithTarget.png in Resources */ = {isa = PBXBuildFile; fileRef = 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */; }; + 7DE53DDB0E32B84C00C59033 /* IgnoreEntry.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */; }; + 7DE59CE00E09CABB003C6559 /* NSString+URLEncode.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */; }; + 7DE983820E2B2BA800F41293 /* NSString+Extras.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DE983810E2B2BA800F41293 /* NSString+Extras.m */; }; + 7DF445530E241ABA0075B96B /* TotemConditionController.m in Sources */ = {isa = PBXBuildFile; fileRef = 7DF445520E241ABA0075B96B /* TotemConditionController.m */; }; + 7DF445550E241AE30075B96B /* TotemCondition.xib in Resources */ = {isa = PBXBuildFile; fileRef = 7DF445540E241AE30075B96B /* TotemCondition.xib */; }; + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; + 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; + D02F3C561182C37E000F4037 /* DatabaseManager.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C551182C37E000F4037 /* DatabaseManager.m */; }; + D02F3C5D1182C497000F4037 /* MailActionProfile.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C5C1182C497000F4037 /* MailActionProfile.m */; }; + D02F3C601182C5AC000F4037 /* ProfileController.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C5F1182C5AC000F4037 /* ProfileController.m */; }; + D02F3C871182C975000F4037 /* Profile.m in Sources */ = {isa = PBXBuildFile; fileRef = D02F3C861182C975000F4037 /* Profile.m */; }; +/* End PBXBuildFile section */ + +/* Begin PBXBuildRule section */ + 7D1B3A500F8987B1005CA0CD /* PBXBuildRule */ = { + isa = PBXBuildRule; + compilerSpec = com.apple.compilers.proxy.script; + filePatterns = "*.app"; + fileType = pattern.proxy; + isEditable = 1; + outputFiles = ( + "$(DERIVED_FILES_DIR)/$(INPUT_FILE_BASE).h", + ); + script = "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`"; + }; +/* End PBXBuildRule section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 7DC8B60C0D419BF500B25B45 /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + 03981DA6112AECA80081835F /* Sparkle.framework in CopyFiles */, + 03C280CD1089178600A76249 /* ShortcutRecorder.framework in CopyFiles */, + 7DBF31CE0E94679900A592BD /* Growl.framework in CopyFiles */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 030604B61088140000C57D77 /* ShortcutRecorder.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = ShortcutRecorder.framework; sourceTree = ""; }; + 030604F11088162100C57D77 /* OffsetController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = OffsetController.h; sourceTree = ""; }; + 030604F21088162100C57D77 /* OffsetController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = OffsetController.m; sourceTree = ""; }; + 0306057A10881CAE00C57D77 /* MacroController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroController.h; sourceTree = ""; }; + 0306057B10881CAE00C57D77 /* MacroController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MacroController.m; sourceTree = ""; }; + 030C2E4B0FDC09B300E80F7E /* LootController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LootController.h; sourceTree = ""; }; + 030C2E4C0FDC09B300E80F7E /* LootController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LootController.m; sourceTree = ""; }; + 0313B4D610BAEA0B009E74E4 /* EventController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventController.h; sourceTree = ""; }; + 0313B4D710BAEA0B009E74E4 /* EventController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = EventController.m; sourceTree = ""; }; + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaypointActionEditor.h; sourceTree = ""; }; + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WaypointActionEditor.m; sourceTree = ""; }; + 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = WaypointActionEditor.xib; sourceTree = ""; }; + 03168DC610FE8BA900EF241B /* DurabilityConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DurabilityConditionController.h; sourceTree = ""; }; + 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DurabilityConditionController.m; sourceTree = ""; }; + 03168DD610FE90B600EF241B /* DurabilityCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DurabilityCondition.xib; sourceTree = ""; }; + 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InventoryFreeCondition.xib; sourceTree = ""; }; + 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlayerLevelCondition.xib; sourceTree = ""; }; + 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PlayerZoneCondition.xib; sourceTree = ""; }; + 03168DDA10FE90B600EF241B /* QuestCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestCondition.xib; sourceTree = ""; }; + 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RouteRunCountCondition.xib; sourceTree = ""; }; + 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RouteRunTimeCondition.xib; sourceTree = ""; }; + 03168E1910FE972300EF241B /* PlayerLevelConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerLevelConditionController.h; sourceTree = ""; }; + 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerLevelConditionController.m; sourceTree = ""; }; + 03168E1C10FE972B00EF241B /* PlayerZoneConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerZoneConditionController.h; sourceTree = ""; }; + 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerZoneConditionController.m; sourceTree = ""; }; + 03168E1F10FE973900EF241B /* QuestConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestConditionController.h; sourceTree = ""; }; + 03168E2010FE973900EF241B /* QuestConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestConditionController.m; sourceTree = ""; }; + 03168E2210FE974800EF241B /* RouteRunCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteRunCountConditionController.h; sourceTree = ""; }; + 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteRunCountConditionController.m; sourceTree = ""; }; + 03168E2510FE975300EF241B /* RouteRunTimeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteRunTimeConditionController.h; sourceTree = ""; }; + 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteRunTimeConditionController.m; sourceTree = ""; }; + 03168E2810FE975E00EF241B /* InventoryFreeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryFreeConditionController.h; sourceTree = ""; }; + 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryFreeConditionController.m; sourceTree = ""; }; + 03168EDC10FF70C600EF241B /* RepairAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RepairAction.xib; sourceTree = ""; }; + 03168EE210FF713000EF241B /* ActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionController.h; sourceTree = ""; }; + 03168EE310FF713000EF241B /* ActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ActionController.m; sourceTree = ""; }; + 03168EFC10FF72DF00EF241B /* RepairActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RepairActionController.h; sourceTree = ""; }; + 03168EFD10FF72DF00EF241B /* RepairActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RepairActionController.m; sourceTree = ""; }; + 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SwitchRouteAction.xib; sourceTree = ""; }; + 0316904510FF89FC00EF241B /* SwitchRouteActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SwitchRouteActionController.h; sourceTree = ""; }; + 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SwitchRouteActionController.m; sourceTree = ""; }; + 031694CB110103C000EF241B /* SpellActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellActionController.h; sourceTree = ""; }; + 031694CC110103C000EF241B /* SpellActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellActionController.m; sourceTree = ""; }; + 031694CE110103CC00EF241B /* ItemActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ItemActionController.h; sourceTree = ""; }; + 031694CF110103CC00EF241B /* ItemActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ItemActionController.m; sourceTree = ""; }; + 031694D1110103DA00EF241B /* MacroActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MacroActionController.h; sourceTree = ""; }; + 031694D2110103DA00EF241B /* MacroActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MacroActionController.m; sourceTree = ""; }; + 031694D4110103E000EF241B /* DelayActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DelayActionController.h; sourceTree = ""; }; + 031694D5110103E000EF241B /* DelayActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DelayActionController.m; sourceTree = ""; }; + 031694D7110103E900EF241B /* JumpActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JumpActionController.h; sourceTree = ""; }; + 031694D8110103E900EF241B /* JumpActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JumpActionController.m; sourceTree = ""; }; + 031695161101314B00EF241B /* ItemAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ItemAction.xib; sourceTree = ""; }; + 031695171101314B00EF241B /* MacroAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MacroAction.xib; sourceTree = ""; }; + 031695181101314B00EF241B /* SpellAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SpellAction.xib; sourceTree = ""; }; + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatProfileActionController.h; sourceTree = ""; }; + 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatProfileActionController.m; sourceTree = ""; }; + 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatProfileAction.xib; sourceTree = ""; }; + 0322D72E110744D500EF3EEF /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = System/Library/Frameworks/CoreData.framework; sourceTree = SDKROOT; }; + 032B8C030FDEE37900807DD0 /* Errors.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Errors.h; sourceTree = ""; }; + 0331619511AAF1B900467490 /* appcast.xml */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = appcast.xml; sourceTree = ""; }; + 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = buildnumber.xcconfig; sourceTree = ""; }; + 034126BF1135706E00BE6819 /* PvPController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PvPController.h; sourceTree = ""; }; + 034126C01135706E00BE6819 /* PvPController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PvPController.m; sourceTree = ""; }; + 034126C3113570E100BE6819 /* PvP.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PvP.xib; sourceTree = ""; }; + 034126E41135774100BE6819 /* Battleground.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Battleground.h; sourceTree = ""; }; + 034126E51135774100BE6819 /* Battleground.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Battleground.m; sourceTree = ""; }; + 034126E71135774A00BE6819 /* PvPBehavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PvPBehavior.h; sourceTree = ""; }; + 034126E81135774A00BE6819 /* PvPBehavior.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PvPBehavior.m; sourceTree = ""; }; + 0341DD5F111B0F6B00074CED /* Objects.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Objects.xib; sourceTree = ""; }; + 0341DD64111B0FBE00074CED /* ObjectsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectsController.h; sourceTree = ""; }; + 0341DD65111B0FBE00074CED /* ObjectsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjectsController.m; sourceTree = ""; }; + 0341DDD8111B21D700074CED /* ObjectController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectController.h; sourceTree = ""; }; + 0341DDD9111B21D700074CED /* ObjectController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ObjectController.m; sourceTree = ""; }; + 034429B60FAA3E1800E9DE03 /* Quest.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Quest.h; sourceTree = ""; }; + 034429B70FAA3E1800E9DE03 /* Quest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Quest.m; sourceTree = ""; }; + 034429BB0FAA3E3800E9DE03 /* QuestItem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestItem.h; sourceTree = ""; }; + 034429BC0FAA3E3800E9DE03 /* QuestItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestItem.m; sourceTree = ""; }; + 034429BE0FAA3E5600E9DE03 /* QuestController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestController.h; sourceTree = ""; }; + 034429BF0FAA3E5600E9DE03 /* QuestController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestController.m; sourceTree = ""; }; + 0344CB211267D0E700B4A9C7 /* LuaController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LuaController.h; sourceTree = ""; }; + 0344CB221267D0E700B4A9C7 /* LuaController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LuaController.m; sourceTree = ""; }; + 03503FF0125A9A0300E511C8 /* Objects_Enum.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Objects_Enum.h; sourceTree = ""; }; + 0350738310CDBA460004636E /* SpellCooldown.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SpellCooldown.xib; sourceTree = ""; }; + 0350738710CDBA640004636E /* SpellCooldownConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellCooldownConditionController.h; sourceTree = ""; }; + 0350738810CDBA640004636E /* SpellCooldownConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellCooldownConditionController.m; sourceTree = ""; }; + 0352F46511376DA5005B28D6 /* PVP.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = PVP.png; sourceTree = ""; }; + 03567AAB10DDAB52001ACE43 /* CombatController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatController.h; sourceTree = ""; }; + 03567AAC10DDAB52001ACE43 /* CombatController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatController.m; sourceTree = ""; }; + 0362CDDC11A99CED00EA65B2 /* CombatProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatProfile.h; sourceTree = ""; }; + 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatProfile.m; sourceTree = ""; }; + 03685DC5110266FC001CE552 /* DelayAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DelayAction.xib; sourceTree = ""; }; + 03685DD911026831001CE552 /* JumpAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JumpAction.xib; sourceTree = ""; }; + 03685FA61103D73B001CE552 /* QuestGrabAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestGrabAction.xib; sourceTree = ""; }; + 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = QuestTurnInAction.xib; sourceTree = ""; }; + 03685FAB1103D768001CE552 /* QuestGrabActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestGrabActionController.h; sourceTree = ""; }; + 03685FAC1103D768001CE552 /* QuestGrabActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestGrabActionController.m; sourceTree = ""; }; + 03685FAE1103D77A001CE552 /* QuestTurnInActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QuestTurnInActionController.h; sourceTree = ""; }; + 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QuestTurnInActionController.m; sourceTree = ""; }; + 038709B810D576E100DF5B90 /* BlacklistController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BlacklistController.h; sourceTree = ""; }; + 038709B910D576E100DF5B90 /* BlacklistController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BlacklistController.m; sourceTree = ""; }; + 038769131124532000B2C571 /* RouteCollection.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteCollection.h; sourceTree = ""; }; + 038769141124532000B2C571 /* RouteCollection.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteCollection.m; sourceTree = ""; }; + 038A4B4510E9656D00577D8F /* LastSpellCast.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LastSpellCast.xib; sourceTree = ""; }; + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LastSpellCastConditionController.h; sourceTree = ""; }; + 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LastSpellCastConditionController.m; sourceTree = ""; }; + 0393F412110A205800296CF8 /* libcrypto.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libcrypto.dylib; path = usr/lib/libcrypto.dylib; sourceTree = SDKROOT; }; + 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ReverseRouteAction.xib; sourceTree = ""; }; + 0393F52C110A558200296CF8 /* VendorAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = VendorAction.xib; sourceTree = ""; }; + 0393F52F110A558F00296CF8 /* MailAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MailAction.xib; sourceTree = ""; }; + 0393F531110A55DB00296CF8 /* MailActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailActionController.h; sourceTree = ""; }; + 0393F532110A55DB00296CF8 /* MailActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MailActionController.m; sourceTree = ""; }; + 0393F534110A55E300296CF8 /* VendorActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = VendorActionController.h; sourceTree = ""; }; + 0393F535110A55E300296CF8 /* VendorActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = VendorActionController.m; sourceTree = ""; }; + 0393F537110A55EF00296CF8 /* ReverseRouteActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ReverseRouteActionController.h; sourceTree = ""; }; + 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ReverseRouteActionController.m; sourceTree = ""; }; + 03981D8D112AEC860081835F /* Sparkle.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Sparkle.framework; sourceTree = ""; }; + 03981DE8112B22E90081835F /* dsa_pub.pem */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = dsa_pub.pem; sourceTree = ""; }; + 03981E76112B898E0081835F /* MovementController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MovementController.h; sourceTree = ""; }; + 03981E77112B898E0081835F /* MovementController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MovementController.m; sourceTree = ""; }; + 03981F36112C819E0081835F /* LogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LogController.h; sourceTree = ""; }; + 03981F37112C819E0081835F /* LogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LogController.m; sourceTree = ""; }; + 03A01B0B109A2A9600E6098E /* StatisticsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatisticsController.h; sourceTree = ""; }; + 03A01B0C109A2A9600E6098E /* StatisticsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatisticsController.m; sourceTree = ""; }; + 03A01B39109A2CFF00E6098E /* Statistics.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Statistics.xib; sourceTree = ""; }; + 03A320D3114E88A9000D23EE /* JumpToWaypointActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JumpToWaypointActionController.h; sourceTree = ""; }; + 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = JumpToWaypointActionController.m; sourceTree = ""; }; + 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = JumpToWaypointAction.xib; sourceTree = ""; }; + 03A4047B0FE148C60087BC0D /* mbobbleicon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mbobbleicon.png; sourceTree = ""; }; + 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = RuneCondition.xib; sourceTree = ""; }; + 03B6D26010F626EA00EC6EFF /* RuneConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuneConditionController.h; sourceTree = ""; }; + 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RuneConditionController.m; sourceTree = ""; }; + 03BB2218112258A00048DE7B /* GateConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GateConditionController.h; sourceTree = ""; }; + 03BB2219112258A00048DE7B /* GateConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GateConditionController.m; sourceTree = ""; }; + 03BB222911225E410048DE7B /* GateCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GateCondition.xib; sourceTree = ""; }; + 03BB227A1122F1160048DE7B /* StrandStatus.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StrandStatus.xib; sourceTree = ""; }; + 03BB227C1122F1240048DE7B /* StrandStatusConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StrandStatusConditionController.h; sourceTree = ""; }; + 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StrandStatusConditionController.m; sourceTree = ""; }; + 03BD330C11120A7A00941971 /* BindingsController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BindingsController.h; sourceTree = ""; }; + 03BD330D11120A7A00941971 /* BindingsController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BindingsController.m; sourceTree = ""; }; + 03BE961811828343004DBFBF /* FileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileController.h; sourceTree = ""; }; + 03BE961911828343004DBFBF /* FileController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileController.m; sourceTree = ""; }; + 03C42CC91096839E0085E888 /* Macros.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Macros.plist; sourceTree = ""; }; + 03CD6A67118359B100CCABFE /* Defines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Defines.h; sourceTree = ""; }; + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ClientDbDefines.h; sourceTree = ""; }; + 03CD6AC31183D5AC00CCABFE /* Profiles.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Profiles.xib; sourceTree = ""; }; + 03CEF7840FCCD93100B47336 /* Corpse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Corpse.h; sourceTree = ""; }; + 03CEF7850FCCD93100B47336 /* Corpse.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Corpse.m; sourceTree = ""; }; + 03CEF7860FCCD93100B47336 /* CorpseController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CorpseController.h; sourceTree = ""; }; + 03CEF7870FCCD93100B47336 /* CorpseController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CorpseController.m; sourceTree = ""; }; + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = OffsetSignatures.plist; sourceTree = ""; }; + 03E1D7B6110F62CD003180E4 /* FileObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FileObject.h; sourceTree = ""; }; + 03E1D7B7110F62CD003180E4 /* FileObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FileObject.m; sourceTree = ""; }; + 03FE91AD125FB5DB00A40445 /* lapi.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lapi.c; path = "lua-5.1.4/src/lapi.c"; sourceTree = ""; }; + 03FE91AE125FB5DB00A40445 /* lapi.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lapi.h; path = "lua-5.1.4/src/lapi.h"; sourceTree = ""; }; + 03FE91AF125FB5DB00A40445 /* lauxlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lauxlib.c; path = "lua-5.1.4/src/lauxlib.c"; sourceTree = ""; }; + 03FE91B0125FB5DB00A40445 /* lauxlib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lauxlib.h; path = "lua-5.1.4/src/lauxlib.h"; sourceTree = ""; }; + 03FE91B1125FB5DB00A40445 /* lbaselib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lbaselib.c; path = "lua-5.1.4/src/lbaselib.c"; sourceTree = ""; }; + 03FE91B2125FB5DB00A40445 /* lcode.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lcode.c; path = "lua-5.1.4/src/lcode.c"; sourceTree = ""; }; + 03FE91B3125FB5DB00A40445 /* lcode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lcode.h; path = "lua-5.1.4/src/lcode.h"; sourceTree = ""; }; + 03FE91B4125FB5DB00A40445 /* ldblib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldblib.c; path = "lua-5.1.4/src/ldblib.c"; sourceTree = ""; }; + 03FE91B5125FB5DB00A40445 /* ldebug.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldebug.c; path = "lua-5.1.4/src/ldebug.c"; sourceTree = ""; }; + 03FE91B6125FB5DB00A40445 /* ldebug.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ldebug.h; path = "lua-5.1.4/src/ldebug.h"; sourceTree = ""; }; + 03FE91B7125FB5DB00A40445 /* ldo.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldo.c; path = "lua-5.1.4/src/ldo.c"; sourceTree = ""; }; + 03FE91B8125FB5DB00A40445 /* ldo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ldo.h; path = "lua-5.1.4/src/ldo.h"; sourceTree = ""; }; + 03FE91B9125FB5DB00A40445 /* ldump.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ldump.c; path = "lua-5.1.4/src/ldump.c"; sourceTree = ""; }; + 03FE91BA125FB5DB00A40445 /* lfunc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lfunc.c; path = "lua-5.1.4/src/lfunc.c"; sourceTree = ""; }; + 03FE91BB125FB5DB00A40445 /* lfunc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lfunc.h; path = "lua-5.1.4/src/lfunc.h"; sourceTree = ""; }; + 03FE91BC125FB5DB00A40445 /* lgc.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lgc.c; path = "lua-5.1.4/src/lgc.c"; sourceTree = ""; }; + 03FE91BD125FB5DB00A40445 /* lgc.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lgc.h; path = "lua-5.1.4/src/lgc.h"; sourceTree = ""; }; + 03FE91BE125FB5DB00A40445 /* linit.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = linit.c; path = "lua-5.1.4/src/linit.c"; sourceTree = ""; }; + 03FE91BF125FB5DB00A40445 /* liolib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = liolib.c; path = "lua-5.1.4/src/liolib.c"; sourceTree = ""; }; + 03FE91C0125FB5DB00A40445 /* llex.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = llex.c; path = "lua-5.1.4/src/llex.c"; sourceTree = ""; }; + 03FE91C1125FB5DB00A40445 /* llex.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = llex.h; path = "lua-5.1.4/src/llex.h"; sourceTree = ""; }; + 03FE91C2125FB5DB00A40445 /* llimits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = llimits.h; path = "lua-5.1.4/src/llimits.h"; sourceTree = ""; }; + 03FE91C3125FB5DB00A40445 /* lmathlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lmathlib.c; path = "lua-5.1.4/src/lmathlib.c"; sourceTree = ""; }; + 03FE91C4125FB5DB00A40445 /* lmem.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lmem.c; path = "lua-5.1.4/src/lmem.c"; sourceTree = ""; }; + 03FE91C5125FB5DB00A40445 /* lmem.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lmem.h; path = "lua-5.1.4/src/lmem.h"; sourceTree = ""; }; + 03FE91C6125FB5DB00A40445 /* loadlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = loadlib.c; path = "lua-5.1.4/src/loadlib.c"; sourceTree = ""; }; + 03FE91C7125FB5DB00A40445 /* lobject.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lobject.c; path = "lua-5.1.4/src/lobject.c"; sourceTree = ""; }; + 03FE91C8125FB5DB00A40445 /* lobject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lobject.h; path = "lua-5.1.4/src/lobject.h"; sourceTree = ""; }; + 03FE91C9125FB5DB00A40445 /* lopcodes.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lopcodes.c; path = "lua-5.1.4/src/lopcodes.c"; sourceTree = ""; }; + 03FE91CA125FB5DB00A40445 /* lopcodes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lopcodes.h; path = "lua-5.1.4/src/lopcodes.h"; sourceTree = ""; }; + 03FE91CB125FB5DB00A40445 /* loslib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = loslib.c; path = "lua-5.1.4/src/loslib.c"; sourceTree = ""; }; + 03FE91CC125FB5DB00A40445 /* lparser.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lparser.c; path = "lua-5.1.4/src/lparser.c"; sourceTree = ""; }; + 03FE91CD125FB5DB00A40445 /* lparser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lparser.h; path = "lua-5.1.4/src/lparser.h"; sourceTree = ""; }; + 03FE91CE125FB5DB00A40445 /* lstate.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lstate.c; path = "lua-5.1.4/src/lstate.c"; sourceTree = ""; }; + 03FE91CF125FB5DB00A40445 /* lstate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lstate.h; path = "lua-5.1.4/src/lstate.h"; sourceTree = ""; }; + 03FE91D0125FB5DB00A40445 /* lstring.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lstring.c; path = "lua-5.1.4/src/lstring.c"; sourceTree = ""; }; + 03FE91D1125FB5DB00A40445 /* lstring.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lstring.h; path = "lua-5.1.4/src/lstring.h"; sourceTree = ""; }; + 03FE91D2125FB5DB00A40445 /* lstrlib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lstrlib.c; path = "lua-5.1.4/src/lstrlib.c"; sourceTree = ""; }; + 03FE91D3125FB5DB00A40445 /* ltable.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ltable.c; path = "lua-5.1.4/src/ltable.c"; sourceTree = ""; }; + 03FE91D4125FB5DB00A40445 /* ltable.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ltable.h; path = "lua-5.1.4/src/ltable.h"; sourceTree = ""; }; + 03FE91D5125FB5DB00A40445 /* ltablib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ltablib.c; path = "lua-5.1.4/src/ltablib.c"; sourceTree = ""; }; + 03FE91D6125FB5DB00A40445 /* ltm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = ltm.c; path = "lua-5.1.4/src/ltm.c"; sourceTree = ""; }; + 03FE91D7125FB5DB00A40445 /* ltm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ltm.h; path = "lua-5.1.4/src/ltm.h"; sourceTree = ""; }; + 03FE91D8125FB5DB00A40445 /* lua.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lua.h; path = "lua-5.1.4/src/lua.h"; sourceTree = ""; }; + 03FE91D9125FB5DB00A40445 /* luaconf.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = luaconf.h; path = "lua-5.1.4/src/luaconf.h"; sourceTree = ""; }; + 03FE91DA125FB5DB00A40445 /* lualib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lualib.h; path = "lua-5.1.4/src/lualib.h"; sourceTree = ""; }; + 03FE91DB125FB5DB00A40445 /* lundump.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lundump.c; path = "lua-5.1.4/src/lundump.c"; sourceTree = ""; }; + 03FE91DC125FB5DB00A40445 /* lundump.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lundump.h; path = "lua-5.1.4/src/lundump.h"; sourceTree = ""; }; + 03FE91DD125FB5DB00A40445 /* lvm.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lvm.c; path = "lua-5.1.4/src/lvm.c"; sourceTree = ""; }; + 03FE91DE125FB5DB00A40445 /* lvm.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lvm.h; path = "lua-5.1.4/src/lvm.h"; sourceTree = ""; }; + 03FE91DF125FB5DB00A40445 /* lzio.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = lzio.c; path = "lua-5.1.4/src/lzio.c"; sourceTree = ""; }; + 03FE91E0125FB5DB00A40445 /* lzio.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = lzio.h; path = "lua-5.1.4/src/lzio.h"; sourceTree = ""; }; + 03FE91E1125FB5DB00A40445 /* print.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; name = print.c; path = "lua-5.1.4/src/print.c"; sourceTree = ""; }; + 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MobsKilledCondition.xib; sourceTree = ""; }; + 03FFD46C110B930F0046AEDF /* MobsKilledConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MobsKilledConditionController.h; sourceTree = ""; }; + 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MobsKilledConditionController.m; sourceTree = ""; }; + 03FFD592110CB5440046AEDF /* InteractNPCActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InteractNPCActionController.h; sourceTree = ""; }; + 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InteractNPCActionController.m; sourceTree = ""; }; + 03FFD594110CB5440046AEDF /* InteractObjectActionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InteractObjectActionController.h; sourceTree = ""; }; + 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InteractObjectActionController.m; sourceTree = ""; }; + 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InteractNPCAction.xib; sourceTree = ""; }; + 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InteractObjectAction.xib; sourceTree = ""; }; + 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 10; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; + 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; + 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; + 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; + 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PocketGnome_Prefix.pch; sourceTree = ""; }; + 614CD7891106182100BA1B2F /* Bot.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Bot.xib; sourceTree = ""; }; + 7D06F0400D23058B00DA4E99 /* AuraController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraController.h; sourceTree = ""; }; + 7D06F0410D23058B00DA4E99 /* AuraController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraController.m; sourceTree = ""; }; + 7D0C43CF0DF2089E005F3940 /* ScanGridView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ScanGridView.h; sourceTree = ""; }; + 7D0C43D00DF2089E005F3940 /* ScanGridView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ScanGridView.m; sourceTree = ""; }; + 7D0C43F60DF20B0D005F3940 /* TransparentWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TransparentWindow.h; sourceTree = ""; }; + 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TransparentWindow.m; sourceTree = ""; }; + 7D1659890D455F6500BDF5CA /* RouteSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteSet.h; sourceTree = ""; }; + 7D16598A0D455F6500BDF5CA /* RouteSet.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteSet.m; sourceTree = ""; }; + 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = CGKeyCodeMap.plist; sourceTree = ""; }; + 7D1B39400F896A96005CA0CD /* ChatAction.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatAction.h; sourceTree = ""; }; + 7D1B39410F896A96005CA0CD /* ChatAction.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatAction.m; sourceTree = ""; }; + 7D1B39C40F897721005CA0CD /* Message.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Message.framework; path = /System/Library/Frameworks/Message.framework; sourceTree = ""; }; + 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = ScriptingBridge.framework; path = /System/Library/Frameworks/ScriptingBridge.framework; sourceTree = ""; }; + 7D1B3A560F89885D005CA0CD /* Mail.app */ = {isa = PBXFileReference; lastKnownFileType = wrapper.application; name = Mail.app; path = /Applications/Mail.app; sourceTree = ""; }; + 7D1B3A940F898D89005CA0CD /* iChat.app */ = {isa = PBXFileReference; lastKnownFileType = wrapper.application; name = iChat.app; path = /Applications/iChat.app; sourceTree = ""; }; + 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Mail.png; sourceTree = ""; }; + 7D1B3B8E0F89AD22005CA0CD /* iChat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = iChat.png; sourceTree = ""; }; + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatLogController.h; sourceTree = ""; }; + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatLogController.m; sourceTree = ""; }; + 7D1BEE510F8733A400DF5FBF /* ChatLogEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatLogEntry.h; sourceTree = ""; }; + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatLogEntry.m; sourceTree = ""; }; + 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyBroadcaster.m; sourceTree = ""; }; + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTHotKeyCenter.m; sourceTree = ""; }; + 7D2167760DC456A400D5A815 /* PTKeyBroadcaster.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyBroadcaster.h; sourceTree = ""; }; + 7D2167770DC456A400D5A815 /* PTHotKey.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHotKey.h; sourceTree = ""; }; + 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyCodeTranslator.m; sourceTree = ""; }; + 7D2167790DC456A400D5A815 /* PTHotKeyCenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHotKeyCenter.h; sourceTree = ""; }; + 7D21677A0DC456A400D5A815 /* PTHotKey.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTHotKey.m; sourceTree = ""; }; + 7D21677B0DC456A400D5A815 /* PTKeyCodeTranslator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyCodeTranslator.h; sourceTree = ""; }; + 7D21677C0DC456A400D5A815 /* PTKeyCombo.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTKeyCombo.h; sourceTree = ""; }; + 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PTKeyCombo.m; sourceTree = ""; }; + 7D2167840DC456D100D5A815 /* PTHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PTHeader.h; sourceTree = ""; }; + 7D2167F30DC4581700D5A815 /* Carbon.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Carbon.framework; path = /System/Library/Frameworks/Carbon.framework; sourceTree = ""; }; + 7D220F130D1691E90026DF75 /* MobController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MobController.h; sourceTree = ""; }; + 7D220F140D1691E90026DF75 /* MobController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MobController.m; sourceTree = ""; }; + 7D3108E20EFDBCCB00ECFABE /* Bobber.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Bobber.png; sourceTree = ""; }; + 7D3109430EFDCBA700ECFABE /* splash.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = splash.mp3; sourceTree = ""; }; + 7D370B0B0E7350DD002FE3A4 /* Action.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Action.h; sourceTree = ""; }; + 7D370B0C0E7350DD002FE3A4 /* Action.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Action.m; sourceTree = ""; }; + 7D370C050E7366DC002FE3A4 /* ActionMenusController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ActionMenusController.h; sourceTree = ""; }; + 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ActionMenusController.m; sourceTree = ""; }; + 7D3C91EC0E47C8EA00EDF3B3 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = French; path = French.lproj/Gathering.plist; sourceTree = ""; }; + 7D41E5930DE9FE8800118EA0 /* PlayersController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayersController.h; sourceTree = ""; }; + 7D41E5940DE9FE8800118EA0 /* PlayersController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayersController.m; sourceTree = ""; }; + 7D41E5960DEA00A500118EA0 /* Player.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Player.h; sourceTree = ""; }; + 7D41E5970DEA00A500118EA0 /* Player.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Player.m; sourceTree = ""; }; + 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Holy_PrayerofSpirit.png; sourceTree = ""; }; + 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "BloodElf-Female.png"; sourceTree = ""; }; + 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "BloodElf-Male.png"; sourceTree = ""; }; + 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Draenei-Female.png"; sourceTree = ""; }; + 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Draenei-Male.png"; sourceTree = ""; }; + 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Dwarf-Female.png"; sourceTree = ""; }; + 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Dwarf-Male.png"; sourceTree = ""; }; + 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Gnome-Female.png"; sourceTree = ""; }; + 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Gnome-Male.png"; sourceTree = ""; }; + 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Human-Female.png"; sourceTree = ""; }; + 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Human-Male.png"; sourceTree = ""; }; + 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "NightElf-Female.png"; sourceTree = ""; }; + 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "NightElf-Male.png"; sourceTree = ""; }; + 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Orc-Female.png"; sourceTree = ""; }; + 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Orc-Male.png"; sourceTree = ""; }; + 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Tauren-Female.png"; sourceTree = ""; }; + 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Tauren-Male.png"; sourceTree = ""; }; + 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Troll-Female.png"; sourceTree = ""; }; + 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Troll-Male.png"; sourceTree = ""; }; + 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Undead-Female.png"; sourceTree = ""; }; + 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Undead-Male.png"; sourceTree = ""; }; + 7D41E87E0DEA2DFA00118EA0 /* Druid.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Druid.png; sourceTree = ""; }; + 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Hunter.png; sourceTree = ""; }; + 7D41E8800DEA2DFA00118EA0 /* Mage.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Mage.png; sourceTree = ""; }; + 7D41E8810DEA2DFA00118EA0 /* Paladin.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Paladin.png; sourceTree = ""; }; + 7D41E8820DEA2DFA00118EA0 /* Priest.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Priest.png; sourceTree = ""; }; + 7D41E8830DEA2DFA00118EA0 /* Rogue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Rogue.png; sourceTree = ""; }; + 7D41E8840DEA2DFA00118EA0 /* Shaman.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Shaman.png; sourceTree = ""; }; + 7D41E8850DEA2DFA00118EA0 /* Warlock.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Warlock.png; sourceTree = ""; }; + 7D41E8860DEA2DFA00118EA0 /* Warrior.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Warrior.png; sourceTree = ""; }; + 7D41E8B60DEA31DD00118EA0 /* ImageAndTextCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ImageAndTextCell.h; sourceTree = ""; }; + 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ImageAndTextCell.m; sourceTree = ""; }; + 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Priest_Small.gif; sourceTree = ""; }; + 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Shaman_Small.gif; sourceTree = ""; }; + 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Paladin_Small.gif; sourceTree = ""; }; + 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Warlock_Small.gif; sourceTree = ""; }; + 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Mage_Small.gif; sourceTree = ""; }; + 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Warrior_Small.gif; sourceTree = ""; }; + 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Hunter_Small.gif; sourceTree = ""; }; + 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Druid_Small.gif; sourceTree = ""; }; + 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = Rogue_Small.gif; sourceTree = ""; }; + 7D41E9240DEA38A500118EA0 /* Male.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Male.png; sourceTree = ""; }; + 7D41E9250DEA38A500118EA0 /* Female.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Female.png; sourceTree = ""; }; + 7D41E9A70DEA734200118EA0 /* Keybindings.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Keybindings.png; sourceTree = ""; }; + 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InterfaceBars.png; sourceTree = ""; }; + 7D41E9A90DEA734200118EA0 /* Result.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Result.png; sourceTree = ""; }; + 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = HotkeyFinished.png; sourceTree = ""; }; + 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TypeShortcut.png; sourceTree = ""; }; + 7D41EA0F0DEB554100118EA0 /* Unit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Unit.h; sourceTree = ""; }; + 7D41EA100DEB554100118EA0 /* Unit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Unit.m; sourceTree = ""; }; + 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = UnknownSmall.png; sourceTree = ""; }; + 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Orc-Female_Small.gif"; sourceTree = ""; }; + 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Gnome-Female_Small.gif"; sourceTree = ""; }; + 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "BloodElf-Female_Small.gif"; sourceTree = ""; }; + 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Orc-Male_Small.gif"; sourceTree = ""; }; + 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Troll-Female_Small.gif"; sourceTree = ""; }; + 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Undead-Male_Small.gif"; sourceTree = ""; }; + 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Human-Male_Small.gif"; sourceTree = ""; }; + 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "BloodElf-Male_Small.gif"; sourceTree = ""; }; + 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Draenei-Female_Small.gif"; sourceTree = ""; }; + 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Tauren-Male_Small.gif"; sourceTree = ""; }; + 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Draenei-Male_Small.gif"; sourceTree = ""; }; + 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Dwarf-Male_Small.gif"; sourceTree = ""; }; + 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Undead-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Gnome-Male_Small.gif"; sourceTree = ""; }; + 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Human-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Dwarf-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Tauren-Female_Small.gif"; sourceTree = ""; }; + 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "Troll-Male_Small.gif"; sourceTree = ""; }; + 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "NightElf-Male_Small.gif"; sourceTree = ""; }; + 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = "NightElf-Female_Small.gif"; sourceTree = ""; }; + 7D45A6CA0E4461DE008A3601 /* NSData+SockAddr.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+SockAddr.h"; sourceTree = ""; }; + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+SockAddr.m"; sourceTree = ""; }; + 7D4AFB320D9EDBF100A33CE1 /* bad.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = bad.tif; sourceTree = ""; }; + 7D4AFB330D9EDBF100A33CE1 /* good.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = good.tif; sourceTree = ""; }; + 7D53C0E10E5E2199007B3AA6 /* UKFileWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKFileWatcher.h; sourceTree = ""; }; + 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKMainThreadProxy.m; sourceTree = ""; }; + 7D53C0E30E5E2199007B3AA6 /* UKMainThreadProxy.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKMainThreadProxy.h; sourceTree = ""; }; + 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKFileWatcher.m; sourceTree = ""; }; + 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKKQueue.m; sourceTree = ""; }; + 7D53C0E60E5E2199007B3AA6 /* UKKQueue.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKKQueue.h; sourceTree = ""; }; + 7D53C0E70E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UKFNSubscribeFileWatcher.h; sourceTree = ""; }; + 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = UKFNSubscribeFileWatcher.m; sourceTree = ""; }; + 7D5496410E1AA073004AA3E9 /* AuraStackConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraStackConditionController.h; sourceTree = ""; }; + 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraStackConditionController.m; sourceTree = ""; }; + 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AuraStackCondition.xib; sourceTree = ""; }; + 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Fishingpole_03.png; sourceTree = ""; }; + 7D5498940F02232500DD46F8 /* FishController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = FishController.h; sourceTree = ""; }; + 7D5498950F02232500DD46F8 /* FishController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = FishController.m; sourceTree = ""; }; + 7D5A38480D14B52900E491CD /* NSNumberToHexString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NSNumberToHexString.h; sourceTree = ""; }; + 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NSNumberToHexString.m; sourceTree = ""; }; + 7D5B92960D9F179D00423FC6 /* gnome.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = gnome.icns; sourceTree = ""; }; + 7D60430B0D5FC2DF001501AF /* mixed.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mixed.png; sourceTree = ""; }; + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ObjectConstants.h; sourceTree = ""; }; + 7D65C8F70D2EE14500C50DF7 /* Rule.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Rule.h; sourceTree = ""; }; + 7D65C8F80D2EE14500C50DF7 /* Rule.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Rule.m; sourceTree = ""; }; + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Condition.h; sourceTree = ""; }; + 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Condition.m; sourceTree = ""; }; + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProcedureController.h; sourceTree = ""; }; + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProcedureController.m; sourceTree = ""; }; + 7D65CA460D2F04D200C50DF7 /* Procedure.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Procedure.h; sourceTree = ""; }; + 7D65CA470D2F04D200C50DF7 /* Procedure.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Procedure.m; sourceTree = ""; }; + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Behavior.h; sourceTree = ""; }; + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Behavior.m; sourceTree = ""; }; + 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ChatLog.xib; sourceTree = ""; }; + 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Trade_Engraving.png; sourceTree = ""; }; + 7D70E7E00DC65372006B8826 /* ChatController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ChatController.h; sourceTree = ""; }; + 7D70E7E10DC65372006B8826 /* ChatController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ChatController.m; sourceTree = ""; }; + 7D7245400D1511F40094665C /* Mob.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Mob.h; sourceTree = ""; }; + 7D7245410D1511F40094665C /* Mob.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Mob.m; sourceTree = ""; }; + 7D7A695B0D26F04F0008C3FF /* NodeController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NodeController.h; sourceTree = ""; }; + 7D7A695C0D26F04F0008C3FF /* NodeController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NodeController.m; sourceTree = ""; }; + 7D7A6A470D270F130008C3FF /* WoWObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WoWObject.h; sourceTree = ""; }; + 7D7A6A480D270F130008C3FF /* WoWObject.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WoWObject.m; sourceTree = ""; }; + 7D7C66A20E58E74D002A6C96 /* TargetType.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TargetType.xib; sourceTree = ""; }; + 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CombatCount.xib; sourceTree = ""; }; + 7D7C66BA0E58E92F002A6C96 /* TargetTypeConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetTypeConditionController.h; sourceTree = ""; }; + 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TargetTypeConditionController.m; sourceTree = ""; }; + 7D7C66DB0E58E97D002A6C96 /* CombatCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CombatCountConditionController.h; sourceTree = ""; }; + 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CombatCountConditionController.m; sourceTree = ""; }; + 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ProximityCount.xib; sourceTree = ""; }; + 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TargetClass.xib; sourceTree = ""; }; + 7D7C67140E58EC79002A6C96 /* ProximityCountConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProximityCountConditionController.h; sourceTree = ""; }; + 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProximityCountConditionController.m; sourceTree = ""; }; + 7D7C67170E58EC85002A6C96 /* TargetClassConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TargetClassConditionController.h; sourceTree = ""; }; + 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TargetClassConditionController.m; sourceTree = ""; }; + 7D80B4720DE75795004D00F6 /* Friendly.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Friendly.png; sourceTree = ""; }; + 7D80B4730DE75795004D00F6 /* Hostile.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Hostile.png; sourceTree = ""; }; + 7D80B4740DE75795004D00F6 /* Combat.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Combat.png; sourceTree = ""; }; + 7D80B48C0DE75905004D00F6 /* Dead.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Dead.png; sourceTree = ""; }; + 7D80B4B00DE76098004D00F6 /* Neutral.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Neutral.png; sourceTree = ""; }; + 7D8343F90D17231300853E32 /* Position.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Position.h; sourceTree = ""; }; + 7D8343FA0D17231300853E32 /* Position.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Position.m; sourceTree = ""; }; + 7D9712940D248DA0005E3BD1 /* Item.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Item.h; sourceTree = ""; }; + 7D9712950D248DA0005E3BD1 /* Item.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Item.m; sourceTree = ""; }; + 7D9712970D248ED4005E3BD1 /* InventoryController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryController.h; sourceTree = ""; }; + 7D9712980D248ED4005E3BD1 /* InventoryController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryController.m; sourceTree = ""; }; + 7D9713C70D24D339005E3BD1 /* Node.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Node.h; sourceTree = ""; }; + 7D9713C80D24D339005E3BD1 /* Node.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Node.m; sourceTree = ""; }; + 7D9714760D24F16C005E3BD1 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = English; path = English.lproj/Gathering.plist; sourceTree = ""; }; + 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HealthConditionController.m; sourceTree = ""; }; + 7D9770C00D2D84D700E6D8F9 /* HealthConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HealthConditionController.h; sourceTree = ""; }; + 7D9771130D2D8C0E00E6D8F9 /* ConditionCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConditionCell.h; sourceTree = ""; }; + 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConditionCell.m; sourceTree = ""; }; + 7D9771160D2D8F6000E6D8F9 /* ConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ConditionController.h; sourceTree = ""; }; + 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ConditionController.m; sourceTree = ""; }; + 7D9771760D2D951900E6D8F9 /* BetterSegmentedControl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterSegmentedControl.h; sourceTree = ""; }; + 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BetterSegmentedControl.m; sourceTree = ""; }; + 7D9772030D2DA23D00E6D8F9 /* StatusConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StatusConditionController.h; sourceTree = ""; }; + 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = StatusConditionController.m; sourceTree = ""; }; + 7D9772730D2DA97A00E6D8F9 /* AuraConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AuraConditionController.h; sourceTree = ""; }; + 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AuraConditionController.m; sourceTree = ""; }; + 7D9772A70D2DB2B300E6D8F9 /* BetterTableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterTableView.h; sourceTree = ""; }; + 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BetterTableView.m; sourceTree = ""; }; + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RuleEditor.h; sourceTree = ""; }; + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RuleEditor.m; sourceTree = ""; }; + 7DA7B8C10D1DF92B00F81519 /* Spell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Spell.h; sourceTree = ""; }; + 7DA7B8C20D1DF92B00F81519 /* Spell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Spell.m; sourceTree = ""; }; + 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerNeutral.png; sourceTree = ""; }; + 7DA95E320E2302C400AC85E2 /* BannerHorde.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerHorde.png; sourceTree = ""; }; + 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BannerAlliance.png; sourceTree = ""; }; + 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */ = {isa = PBXFileReference; lastKnownFileType = audio.mp3; path = alarm.mp3; sourceTree = ""; }; + 7DAA07F60D5579ED00A6D06A /* CoreFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreFoundation.framework; path = /System/Library/Frameworks/CoreFoundation.framework; sourceTree = ""; }; + 7DAA08010D557A7600A6D06A /* CoreServices.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreServices.framework; path = /System/Library/Frameworks/CoreServices.framework; sourceTree = ""; }; + 7DAA09A90D55988F00A6D06A /* Globals.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Globals.h; sourceTree = ""; }; + 7DAAE7180D148972003F1E3C /* Controller.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Controller.h; sourceTree = ""; }; + 7DAAE7190D148972003F1E3C /* Controller.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Controller.m; sourceTree = ""; }; + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryAccess.h; sourceTree = ""; }; + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MemoryAccess.m; sourceTree = ""; }; + 7DAAE7620D148995003F1E3C /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = /System/Library/Frameworks/Security.framework; sourceTree = ""; }; + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlayerDataController.h; sourceTree = ""; }; + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PlayerDataController.m; sourceTree = ""; }; + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Offsets.h; sourceTree = ""; }; + 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_DualWieldSpecialization.png; sourceTree = ""; }; + 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_ImprovedDisciplines.png; sourceTree = ""; }; + 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_Challange.png; sourceTree = ""; }; + 7DAD11640E117BF000B0F7BD /* Macro.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Macro.h; sourceTree = ""; }; + 7DAD11650E117BF000B0F7BD /* Macro.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Macro.m; sourceTree = ""; }; + 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = FactionTemplate.plist; sourceTree = ""; }; + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Aura.h; sourceTree = ""; }; + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Aura.m; sourceTree = ""; }; + 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.1.2.3.dylib; path = /usr/lib/libz.1.2.3.dylib; sourceTree = ""; }; + 7DB2C4480D3BFE4100100B4D /* BotController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BotController.h; sourceTree = ""; }; + 7DB2C4490D3BFE4100100B4D /* BotController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BotController.m; sourceTree = ""; }; + 7DB822290E33382900661394 /* TempEnchantCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TempEnchantCondition.xib; sourceTree = ""; }; + 7DB8222D0E33384300661394 /* TempEnchantConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TempEnchantConditionController.h; sourceTree = ""; }; + 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TempEnchantConditionController.m; sourceTree = ""; }; + 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Holy_MindVision.png; sourceTree = ""; }; + 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_FireResistanceTotem_01.png; sourceTree = ""; }; + 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Head_Dragon_Bronze.png; sourceTree = ""; }; + 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Gem_Bloodstone_01.png; sourceTree = ""; }; + 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Spell_Nature_PoisonCleansingTotem.png; sourceTree = ""; }; + 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Head_Dragon_Blue.png; sourceTree = ""; }; + 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = inv_misc_bag_14.png; sourceTree = ""; }; + 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Orb_05.png; sourceTree = ""; }; + 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = INV_Misc_Gear_01.png; sourceTree = ""; }; + 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Warrior_Revenge.png; sourceTree = ""; }; + 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Ability_Rogue_Sprint.png; sourceTree = ""; }; + 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcut.tif; sourceTree = ""; }; + 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcutPressed.tif; sourceTree = ""; }; + 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRRemoveShortcutRollover.tif; sourceTree = ""; }; + 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = SRSnapback.tiff; sourceTree = ""; }; + 7DBDA6750E0DAE5D0021E180 /* NoAccessApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = NoAccessApplication.h; sourceTree = ""; }; + 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = NoAccessApplication.m; sourceTree = ""; }; + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GrabWindow.h; sourceTree = ""; }; + 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GrabWindow.m; sourceTree = ""; }; + 7DBF31C50E94679500A592BD /* Growl.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = Growl.framework; sourceTree = ""; }; + 7DC3FF150D57C75100BEB58B /* BetterAuthorizationSampleLibInstallTool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BetterAuthorizationSampleLibInstallTool.c; sourceTree = ""; }; + 7DC3FF160D57C75100BEB58B /* BetterAuthorizationSampleLib.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = BetterAuthorizationSampleLib.h; sourceTree = ""; }; + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = BetterAuthorizationSampleLib.c; sourceTree = ""; }; + 7DC3FF260D57C79400BEB58B /* MemoryAccessTool.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = MemoryAccessTool.c; sourceTree = ""; }; + 7DC3FF270D57C79400BEB58B /* ToolCommon.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ToolCommon.h; sourceTree = ""; }; + 7DC3FF280D57C79400BEB58B /* ToolCommon.c */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.c; path = ToolCommon.c; sourceTree = ""; }; + 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ActiveQuestIcon.png; sourceTree = ""; }; + 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = AvailableQuestIcon.png; sourceTree = ""; }; + 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BankerGossipIcon.png; sourceTree = ""; }; + 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = BinderGossipIcon.png; sourceTree = ""; }; + 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = GossipGossipIcon.png; sourceTree = ""; }; + 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = PetitionGossipIcon.png; sourceTree = ""; }; + 7DC419EA0DEDFD0300F3B083 /* Scroll.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Scroll.png; sourceTree = ""; }; + 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TabardGossipIcon.png; sourceTree = ""; }; + 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TaxiGossipIcon.png; sourceTree = ""; }; + 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = TrainerGossipIcon.png; sourceTree = ""; }; + 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = VendorGossipIcon.png; sourceTree = ""; }; + 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = MinimapGuideFlag.png; sourceTree = ""; }; + 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = WarnTriangle.png; sourceTree = ""; }; + 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = ResourceBlip.png; sourceTree = ""; }; + 7DC41A560DEE020B00F3B083 /* Repair.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Repair.png; sourceTree = ""; }; + 7DC41A6F0DEE041400F3B083 /* Skull.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Skull.png; sourceTree = ""; }; + 7DC41AD50DEE0CA100F3B083 /* Stable.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Stable.png; sourceTree = ""; }; + 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Innkeeper.png; sourceTree = ""; }; + 7DC41AE40DEE111600F3B083 /* Chicken.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = Chicken.png; sourceTree = ""; }; + 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = NeutralCrest.gif; sourceTree = ""; }; + 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = HordeCrest.gif; sourceTree = ""; }; + 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = AllianceCrest.gif; sourceTree = ""; }; + 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = pgRoute.icns; sourceTree = ""; }; + 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = pgBehavior.icns; sourceTree = ""; }; + 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = gnome2.icns; sourceTree = ""; }; + 7DC8B44B0D4147CB00B25B45 /* DistanceConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DistanceConditionController.h; sourceTree = ""; }; + 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DistanceConditionController.m; sourceTree = ""; }; + 7DC8B45F0D4152EC00B25B45 /* InventoryConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InventoryConditionController.h; sourceTree = ""; }; + 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = InventoryConditionController.m; sourceTree = ""; }; + 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = "Growl Registration Ticket.growlRegDict"; sourceTree = ""; }; + 7DCB5A3F0D540647001678BC /* Memory.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Memory.xib; sourceTree = ""; }; + 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = MainMenu.xib; sourceTree = ""; }; + 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = AuraCondition.xib; sourceTree = ""; }; + 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StatusCondition.xib; sourceTree = ""; }; + 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = DistanceCondition.xib; sourceTree = ""; }; + 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HealthCondition.xib; sourceTree = ""; }; + 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = InventoryCondition.xib; sourceTree = ""; }; + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MemoryViewController.h; sourceTree = ""; }; + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MemoryViewController.m; sourceTree = ""; }; + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WaypointController.h; sourceTree = ""; }; + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = WaypointController.m; sourceTree = ""; }; + 7DD03F330D163F9A000CC1A6 /* Route.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Route.h; sourceTree = ""; }; + 7DD03F340D163F9A000CC1A6 /* Route.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Route.m; sourceTree = ""; }; + 7DD03F360D163FF8000CC1A6 /* Waypoint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Waypoint.h; sourceTree = ""; }; + 7DD03F370D163FF8000CC1A6 /* Waypoint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Waypoint.m; sourceTree = ""; }; + 7DD1D14D0DD241F60069CB07 /* ComboPointConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ComboPointConditionController.h; sourceTree = ""; }; + 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ComboPointConditionController.m; sourceTree = ""; }; + 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = ComboPointCondition.xib; sourceTree = ""; }; + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpellController.h; sourceTree = ""; }; + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SpellController.m; sourceTree = ""; }; + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CGSPrivate.h; sourceTree = ""; }; + 7DD64AF40D5D10FA00773CAB /* RouteVisualizationView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = RouteVisualizationView.h; sourceTree = ""; }; + 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = RouteVisualizationView.m; sourceTree = ""; }; + 7DD64B1F0D5D192500773CAB /* off.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = off.png; sourceTree = ""; }; + 7DD64B200D5D192500773CAB /* on.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = on.png; sourceTree = ""; }; + 7DD8037C0D514E62005C2F01 /* Player.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Player.xib; sourceTree = ""; }; + 7DD803970D515142005C2F01 /* Spells.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Spells.xib; sourceTree = ""; }; + 7DD803A10D5151CA005C2F01 /* Routes.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Routes.xib; sourceTree = ""; }; + 7DD803A30D5153E5005C2F01 /* Behaviors.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Behaviors.xib; sourceTree = ""; }; + 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = DeathKnight.png; sourceTree = ""; }; + 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */ = {isa = PBXFileReference; lastKnownFileType = image.gif; path = DeathKnight_Small.gif; sourceTree = ""; }; + 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = InteractWithTarget.png; sourceTree = ""; }; + 7DE53DD90E32B84C00C59033 /* IgnoreEntry.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = IgnoreEntry.h; sourceTree = ""; }; + 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = IgnoreEntry.m; sourceTree = ""; }; + 7DE59CDE0E09CABB003C6559 /* NSString+URLEncode.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+URLEncode.h"; sourceTree = ""; }; + 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+URLEncode.m"; sourceTree = ""; }; + 7DE983800E2B2BA800F41293 /* NSString+Extras.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+Extras.h"; sourceTree = ""; }; + 7DE983810E2B2BA800F41293 /* NSString+Extras.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+Extras.m"; sourceTree = ""; }; + 7DF445510E241ABA0075B96B /* TotemConditionController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TotemConditionController.h; sourceTree = ""; }; + 7DF445520E241ABA0075B96B /* TotemConditionController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TotemConditionController.m; sourceTree = ""; }; + 7DF445540E241AE30075B96B /* TotemCondition.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TotemCondition.xib; sourceTree = ""; }; + 8D1107310486CEB800E47090 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 8D1107320486CEB800E47090 /* Pocket Gnome.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Pocket Gnome.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + D02F3C541182C37E000F4037 /* DatabaseManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DatabaseManager.h; sourceTree = ""; }; + D02F3C551182C37E000F4037 /* DatabaseManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = DatabaseManager.m; sourceTree = ""; }; + D02F3C5B1182C497000F4037 /* MailActionProfile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MailActionProfile.h; sourceTree = ""; }; + D02F3C5C1182C497000F4037 /* MailActionProfile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MailActionProfile.m; sourceTree = ""; }; + D02F3C5E1182C5AC000F4037 /* ProfileController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProfileController.h; sourceTree = ""; }; + D02F3C5F1182C5AC000F4037 /* ProfileController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProfileController.m; sourceTree = ""; }; + D02F3C851182C975000F4037 /* Profile.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Profile.h; sourceTree = ""; }; + D02F3C861182C975000F4037 /* Profile.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Profile.m; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 8D11072E0486CEB800E47090 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, + 7DAAE7630D148995003F1E3C /* Security.framework in Frameworks */, + 7DB260D50DB30922007DB867 /* libz.1.2.3.dylib in Frameworks */, + 7D2167F40DC4581700D5A815 /* Carbon.framework in Frameworks */, + 7DBF31C60E94679500A592BD /* Growl.framework in Frameworks */, + 7D1B39C50F897721005CA0CD /* Message.framework in Frameworks */, + 7D1B3A220F89860D005CA0CD /* ScriptingBridge.framework in Frameworks */, + 030604B71088140000C57D77 /* ShortcutRecorder.framework in Frameworks */, + 0322D72F110744D500EF3EEF /* CoreData.framework in Frameworks */, + 0393F413110A205800296CF8 /* libcrypto.dylib in Frameworks */, + 03981D8E112AEC870081835F /* Sparkle.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 03168DCA10FE8D0B00EF241B /* Waypoint Actions */ = { + isa = PBXGroup; + children = ( + 03BB227A1122F1160048DE7B /* StrandStatus.xib */, + 03BB222911225E410048DE7B /* GateCondition.xib */, + 0393F52F110A558F00296CF8 /* MailAction.xib */, + 0393F52B110A558200296CF8 /* ReverseRouteAction.xib */, + 0393F52C110A558200296CF8 /* VendorAction.xib */, + 03168DD610FE90B600EF241B /* DurabilityCondition.xib */, + 03168DD710FE90B600EF241B /* InventoryFreeCondition.xib */, + 03168DD810FE90B600EF241B /* PlayerLevelCondition.xib */, + 03168DD910FE90B600EF241B /* PlayerZoneCondition.xib */, + 03168DDA10FE90B600EF241B /* QuestCondition.xib */, + 03168DDB10FE90B600EF241B /* RouteRunCountCondition.xib */, + 03FFD45A110B922D0046AEDF /* MobsKilledCondition.xib */, + 03168DDC10FE90B600EF241B /* RouteRunTimeCondition.xib */, + ); + name = "Waypoint Actions"; + sourceTree = ""; + }; + 03168ED410FF705A00EF241B /* Waypoint Action NIBs */ = { + isa = PBXGroup; + children = ( + 03A3211A114E9AC2000D23EE /* JumpToWaypointAction.xib */, + 0322D6E111065D8900EF3EEF /* CombatProfileAction.xib */, + 03685FA61103D73B001CE552 /* QuestGrabAction.xib */, + 03685FA71103D73B001CE552 /* QuestTurnInAction.xib */, + 03685DD911026831001CE552 /* JumpAction.xib */, + 03685DC5110266FC001CE552 /* DelayAction.xib */, + 031695161101314B00EF241B /* ItemAction.xib */, + 031695171101314B00EF241B /* MacroAction.xib */, + 031695181101314B00EF241B /* SpellAction.xib */, + 0316900F10FF84AB00EF241B /* SwitchRouteAction.xib */, + 03168EDC10FF70C600EF241B /* RepairAction.xib */, + 03FFD598110CB55A0046AEDF /* InteractNPCAction.xib */, + 03FFD599110CB55A0046AEDF /* InteractObjectAction.xib */, + ); + name = "Waypoint Action NIBs"; + sourceTree = ""; + }; + 03168EE110FF70E900EF241B /* WaypointActions */ = { + isa = PBXGroup; + children = ( + 7D370B0B0E7350DD002FE3A4 /* Action.h */, + 7D370B0C0E7350DD002FE3A4 /* Action.m */, + 03168EE210FF713000EF241B /* ActionController.h */, + 03168EE310FF713000EF241B /* ActionController.m */, + 03168EFC10FF72DF00EF241B /* RepairActionController.h */, + 03168EFD10FF72DF00EF241B /* RepairActionController.m */, + 0316904510FF89FC00EF241B /* SwitchRouteActionController.h */, + 0316904610FF89FC00EF241B /* SwitchRouteActionController.m */, + 031694CB110103C000EF241B /* SpellActionController.h */, + 031694CC110103C000EF241B /* SpellActionController.m */, + 031694CE110103CC00EF241B /* ItemActionController.h */, + 031694CF110103CC00EF241B /* ItemActionController.m */, + 031694D1110103DA00EF241B /* MacroActionController.h */, + 031694D2110103DA00EF241B /* MacroActionController.m */, + 031694D4110103E000EF241B /* DelayActionController.h */, + 031694D5110103E000EF241B /* DelayActionController.m */, + 031694D7110103E900EF241B /* JumpActionController.h */, + 031694D8110103E900EF241B /* JumpActionController.m */, + 03685FAB1103D768001CE552 /* QuestGrabActionController.h */, + 03685FAC1103D768001CE552 /* QuestGrabActionController.m */, + 03685FAE1103D77A001CE552 /* QuestTurnInActionController.h */, + 03685FAF1103D77A001CE552 /* QuestTurnInActionController.m */, + 0322D6D811065D0700EF3EEF /* CombatProfileActionController.h */, + 0322D6D911065D0700EF3EEF /* CombatProfileActionController.m */, + 0393F531110A55DB00296CF8 /* MailActionController.h */, + 0393F532110A55DB00296CF8 /* MailActionController.m */, + 0393F534110A55E300296CF8 /* VendorActionController.h */, + 0393F535110A55E300296CF8 /* VendorActionController.m */, + 0393F537110A55EF00296CF8 /* ReverseRouteActionController.h */, + 0393F538110A55EF00296CF8 /* ReverseRouteActionController.m */, + 03FFD592110CB5440046AEDF /* InteractNPCActionController.h */, + 03FFD593110CB5440046AEDF /* InteractNPCActionController.m */, + 03FFD594110CB5440046AEDF /* InteractObjectActionController.h */, + 03FFD595110CB5440046AEDF /* InteractObjectActionController.m */, + 03A320D3114E88A9000D23EE /* JumpToWaypointActionController.h */, + 03A320D4114E88A9000D23EE /* JumpToWaypointActionController.m */, + ); + name = WaypointActions; + sourceTree = ""; + }; + 034126E21135773900BE6819 /* PvP */ = { + isa = PBXGroup; + children = ( + 034126E41135774100BE6819 /* Battleground.h */, + 034126E51135774100BE6819 /* Battleground.m */, + 034126E71135774A00BE6819 /* PvPBehavior.h */, + 034126E81135774A00BE6819 /* PvPBehavior.m */, + ); + name = PvP; + sourceTree = ""; + }; + 0341DD68111B104100074CED /* Object Controllers */ = { + isa = PBXGroup; + children = ( + 0341DDD8111B21D700074CED /* ObjectController.h */, + 0341DDD9111B21D700074CED /* ObjectController.m */, + 7D220F130D1691E90026DF75 /* MobController.h */, + 7D220F140D1691E90026DF75 /* MobController.m */, + 7D41E5930DE9FE8800118EA0 /* PlayersController.h */, + 7D41E5940DE9FE8800118EA0 /* PlayersController.m */, + 7D7A695B0D26F04F0008C3FF /* NodeController.h */, + 7D7A695C0D26F04F0008C3FF /* NodeController.m */, + 7D9712970D248ED4005E3BD1 /* InventoryController.h */, + 7D9712980D248ED4005E3BD1 /* InventoryController.m */, + ); + name = "Object Controllers"; + sourceTree = ""; + }; + 03BE9607118282E4004DBFBF /* File Management */ = { + isa = PBXGroup; + children = ( + 03E1D7B6110F62CD003180E4 /* FileObject.h */, + 03E1D7B7110F62CD003180E4 /* FileObject.m */, + 03BE961811828343004DBFBF /* FileController.h */, + 03BE961911828343004DBFBF /* FileController.m */, + ); + name = "File Management"; + sourceTree = ""; + }; + 03CD6A651183596A00CCABFE /* Reversed */ = { + isa = PBXGroup; + children = ( + 03CD6A67118359B100CCABFE /* Defines.h */, + 03CD6A68118359BB00CCABFE /* ClientDbDefines.h */, + 03CD6A661183597C00CCABFE /* WoWDb */, + ); + name = Reversed; + sourceTree = ""; + }; + 03CD6A661183597C00CCABFE /* WoWDb */ = { + isa = PBXGroup; + children = ( + D02F3C541182C37E000F4037 /* DatabaseManager.h */, + D02F3C551182C37E000F4037 /* DatabaseManager.m */, + ); + name = WoWDb; + sourceTree = ""; + }; + 03FE91AB125FB5C700A40445 /* Lua */ = { + isa = PBXGroup; + children = ( + 03FE91AD125FB5DB00A40445 /* lapi.c */, + 03FE91AE125FB5DB00A40445 /* lapi.h */, + 03FE91AF125FB5DB00A40445 /* lauxlib.c */, + 03FE91B0125FB5DB00A40445 /* lauxlib.h */, + 03FE91B1125FB5DB00A40445 /* lbaselib.c */, + 03FE91B2125FB5DB00A40445 /* lcode.c */, + 03FE91B3125FB5DB00A40445 /* lcode.h */, + 03FE91B4125FB5DB00A40445 /* ldblib.c */, + 03FE91B5125FB5DB00A40445 /* ldebug.c */, + 03FE91B6125FB5DB00A40445 /* ldebug.h */, + 03FE91B7125FB5DB00A40445 /* ldo.c */, + 03FE91B8125FB5DB00A40445 /* ldo.h */, + 03FE91B9125FB5DB00A40445 /* ldump.c */, + 03FE91BA125FB5DB00A40445 /* lfunc.c */, + 03FE91BB125FB5DB00A40445 /* lfunc.h */, + 03FE91BC125FB5DB00A40445 /* lgc.c */, + 03FE91BD125FB5DB00A40445 /* lgc.h */, + 03FE91BE125FB5DB00A40445 /* linit.c */, + 03FE91BF125FB5DB00A40445 /* liolib.c */, + 03FE91C0125FB5DB00A40445 /* llex.c */, + 03FE91C1125FB5DB00A40445 /* llex.h */, + 03FE91C2125FB5DB00A40445 /* llimits.h */, + 03FE91C3125FB5DB00A40445 /* lmathlib.c */, + 03FE91C4125FB5DB00A40445 /* lmem.c */, + 03FE91C5125FB5DB00A40445 /* lmem.h */, + 03FE91C6125FB5DB00A40445 /* loadlib.c */, + 03FE91C7125FB5DB00A40445 /* lobject.c */, + 03FE91C8125FB5DB00A40445 /* lobject.h */, + 03FE91C9125FB5DB00A40445 /* lopcodes.c */, + 03FE91CA125FB5DB00A40445 /* lopcodes.h */, + 03FE91CB125FB5DB00A40445 /* loslib.c */, + 03FE91CC125FB5DB00A40445 /* lparser.c */, + 03FE91CD125FB5DB00A40445 /* lparser.h */, + 03FE91CE125FB5DB00A40445 /* lstate.c */, + 03FE91CF125FB5DB00A40445 /* lstate.h */, + 03FE91D0125FB5DB00A40445 /* lstring.c */, + 03FE91D1125FB5DB00A40445 /* lstring.h */, + 03FE91D2125FB5DB00A40445 /* lstrlib.c */, + 03FE91D3125FB5DB00A40445 /* ltable.c */, + 03FE91D4125FB5DB00A40445 /* ltable.h */, + 03FE91D5125FB5DB00A40445 /* ltablib.c */, + 03FE91D6125FB5DB00A40445 /* ltm.c */, + 03FE91D7125FB5DB00A40445 /* ltm.h */, + 03FE91D8125FB5DB00A40445 /* lua.h */, + 03FE91D9125FB5DB00A40445 /* luaconf.h */, + 03FE91DA125FB5DB00A40445 /* lualib.h */, + 03FE91DB125FB5DB00A40445 /* lundump.c */, + 03FE91DC125FB5DB00A40445 /* lundump.h */, + 03FE91DD125FB5DB00A40445 /* lvm.c */, + 03FE91DE125FB5DB00A40445 /* lvm.h */, + 03FE91DF125FB5DB00A40445 /* lzio.c */, + 03FE91E0125FB5DB00A40445 /* lzio.h */, + 03FE91E1125FB5DB00A40445 /* print.c */, + ); + name = Lua; + sourceTree = ""; + }; + 080E96DDFE201D6D7F000001 /* Classes */ = { + isa = PBXGroup; + children = ( + 0341DD68111B104100074CED /* Object Controllers */, + 7DAAE7180D148972003F1E3C /* Controller.h */, + 7DAAE7190D148972003F1E3C /* Controller.m */, + 7DB2C4480D3BFE4100100B4D /* BotController.h */, + 7DB2C4490D3BFE4100100B4D /* BotController.m */, + 7D5498940F02232500DD46F8 /* FishController.h */, + 7D5498950F02232500DD46F8 /* FishController.m */, + 7D70E7E00DC65372006B8826 /* ChatController.h */, + 7D70E7E10DC65372006B8826 /* ChatController.m */, + 7D1BEDEE0F8717CF00DF5FBF /* ChatLogController.h */, + 7D1BEDEF0F8717CF00DF5FBF /* ChatLogController.m */, + 7DAAE7670D14917E003F1E3C /* PlayerDataController.h */, + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */, + 7DD3D4090D1B2FEB0023D097 /* SpellController.h */, + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */, + 03567AAB10DDAB52001ACE43 /* CombatController.h */, + 03567AAC10DDAB52001ACE43 /* CombatController.m */, + 03981E76112B898E0081835F /* MovementController.h */, + 03981E77112B898E0081835F /* MovementController.m */, + 7D06F0400D23058B00DA4E99 /* AuraController.h */, + 7D06F0410D23058B00DA4E99 /* AuraController.m */, + 7D370C050E7366DC002FE3A4 /* ActionMenusController.h */, + 7D370C060E7366DC002FE3A4 /* ActionMenusController.m */, + 034429BE0FAA3E5600E9DE03 /* QuestController.h */, + 034429BF0FAA3E5600E9DE03 /* QuestController.m */, + 03CEF7860FCCD93100B47336 /* CorpseController.h */, + 03CEF7870FCCD93100B47336 /* CorpseController.m */, + 030C2E4B0FDC09B300E80F7E /* LootController.h */, + 030C2E4C0FDC09B300E80F7E /* LootController.m */, + 030604F11088162100C57D77 /* OffsetController.h */, + 030604F21088162100C57D77 /* OffsetController.m */, + 0306057A10881CAE00C57D77 /* MacroController.h */, + 0306057B10881CAE00C57D77 /* MacroController.m */, + 03A01B0B109A2A9600E6098E /* StatisticsController.h */, + 03A01B0C109A2A9600E6098E /* StatisticsController.m */, + 0313B4D610BAEA0B009E74E4 /* EventController.h */, + 0313B4D710BAEA0B009E74E4 /* EventController.m */, + 038709B810D576E100DF5B90 /* BlacklistController.h */, + 038709B910D576E100DF5B90 /* BlacklistController.m */, + 03BD330C11120A7A00941971 /* BindingsController.h */, + 03BD330D11120A7A00941971 /* BindingsController.m */, + 03981F36112C819E0081835F /* LogController.h */, + 03981F37112C819E0081835F /* LogController.m */, + 0344CB211267D0E700B4A9C7 /* LuaController.h */, + 0344CB221267D0E700B4A9C7 /* LuaController.m */, + ); + name = Classes; + sourceTree = ""; + }; + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { + isa = PBXGroup; + children = ( + 03981D8D112AEC860081835F /* Sparkle.framework */, + 0393F412110A205800296CF8 /* libcrypto.dylib */, + 0322D72E110744D500EF3EEF /* CoreData.framework */, + 7D1B3A210F89860D005CA0CD /* ScriptingBridge.framework */, + 7D1B39C40F897721005CA0CD /* Message.framework */, + 7D2167F30DC4581700D5A815 /* Carbon.framework */, + 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, + 7DAA08010D557A7600A6D06A /* CoreServices.framework */, + 7DAA07F60D5579ED00A6D06A /* CoreFoundation.framework */, + 29B97325FDCFA39411CA2CEA /* Foundation.framework */, + 29B97324FDCFA39411CA2CEA /* AppKit.framework */, + 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */, + 7DAAE7620D148995003F1E3C /* Security.framework */, + ); + name = "Linked Frameworks"; + sourceTree = ""; + }; + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { + isa = PBXGroup; + children = ( + 030604B61088140000C57D77 /* ShortcutRecorder.framework */, + 7DBF31C50E94679500A592BD /* Growl.framework */, + 7DB260D40DB30922007DB867 /* libz.1.2.3.dylib */, + ); + name = "Other Frameworks"; + sourceTree = ""; + }; + 19C28FACFE9D520D11CA2CBB /* Products */ = { + isa = PBXGroup; + children = ( + 8D1107320486CEB800E47090 /* Pocket Gnome.app */, + ); + name = Products; + sourceTree = ""; + }; + 29B97314FDCFA39411CA2CEA /* WoWWaypoint */ = { + isa = PBXGroup; + children = ( + 033C3F3D126CA54C0050DBDC /* buildnumber.xcconfig */, + 080E96DDFE201D6D7F000001 /* Classes */, + 7D97730C0D2DBF2800E6D8F9 /* GUI Controllers */, + 7D65C8F60D2EE0B100C50DF7 /* GUI Subclasses */, + 7D9770BA0D2D84C400E6D8F9 /* Rules & Procedures */, + 7D65CA9F0D2F095F00C50DF7 /* Waypoints & Routes */, + 034126E21135773900BE6819 /* PvP */, + 7D72453E0D1511E20094665C /* Units */, + 03CD6A651183596A00CCABFE /* Reversed */, + 03BE9607118282E4004DBFBF /* File Management */, + 29B97315FDCFA39411CA2CEA /* Other Sources */, + 29B97317FDCFA39411CA2CEA /* Resources */, + 7D1B3A560F89885D005CA0CD /* Mail.app */, + 7D1B3A940F898D89005CA0CD /* iChat.app */, + 29B97323FDCFA39411CA2CEA /* Frameworks */, + 19C28FACFE9D520D11CA2CBB /* Products */, + ); + name = WoWWaypoint; + sourceTree = ""; + }; + 29B97315FDCFA39411CA2CEA /* Other Sources */ = { + isa = PBXGroup; + children = ( + 03FE91AB125FB5C700A40445 /* Lua */, + 7D41E8B60DEA31DD00118EA0 /* ImageAndTextCell.h */, + 7D41E8B70DEA31DD00118EA0 /* ImageAndTextCell.m */, + 7D2167440DC4566600D5A815 /* PTKeyCode */, + 7D53C0DF0E5E2182007B3AA6 /* UKKQueue */, + 7DC3FF240D57C78700BEB58B /* Helper Tools */, + 7DBDA6750E0DAE5D0021E180 /* NoAccessApplication.h */, + 7DBDA6760E0DAE5D0021E180 /* NoAccessApplication.m */, + 7DAA09A90D55988F00A6D06A /* Globals.h */, + 7D62BD380DE3790C000D0B6D /* ObjectConstants.h */, + 7DAAE76A0D1494F0003F1E3C /* Offsets.h */, + 32CA4F630368D1EE00C91783 /* PocketGnome_Prefix.pch */, + 29B97316FDCFA39411CA2CEA /* main.m */, + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */, + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */, + 7D5A38480D14B52900E491CD /* NSNumberToHexString.h */, + 7D5A38490D14B52900E491CD /* NSNumberToHexString.m */, + 7DE59CDE0E09CABB003C6559 /* NSString+URLEncode.h */, + 7DE59CDF0E09CABB003C6559 /* NSString+URLEncode.m */, + 7DE983800E2B2BA800F41293 /* NSString+Extras.h */, + 7DE983810E2B2BA800F41293 /* NSString+Extras.m */, + 7D45A6CA0E4461DE008A3601 /* NSData+SockAddr.h */, + 7D45A6CB0E4461DE008A3601 /* NSData+SockAddr.m */, + 7DD3D68C0D1BBD1F0023D097 /* CGSPrivate.h */, + 7DBEC7D90E4512D800994A7A /* GrabWindow.h */, + 7DBEC7DA0E4512D800994A7A /* GrabWindow.m */, + 032B8C030FDEE37900807DD0 /* Errors.h */, + ); + name = "Other Sources"; + sourceTree = ""; + }; + 29B97317FDCFA39411CA2CEA /* Resources */ = { + isa = PBXGroup; + children = ( + 0331619511AAF1B900467490 /* appcast.xml */, + 03981DE8112B22E90081835F /* dsa_pub.pem */, + 7DA95ECD0E23537A00AC85E2 /* alarm.mp3 */, + 7D3109430EFDCBA700ECFABE /* splash.mp3 */, + 7D3108E20EFDBCCB00ECFABE /* Bobber.png */, + 7D41E99A0DEA731E00118EA0 /* Hotkey Help */, + 7D5B92960D9F179D00423FC6 /* gnome.icns */, + 7DC7A9A50DFC869400F6FA63 /* gnome2.icns */, + 7DC7A9570DFB70CA00F6FA63 /* pgRoute.icns */, + 7DC7A9850DFC85C700F6FA63 /* pgBehavior.icns */, + 7DBC344F0DB57665000C9BCF /* SRImages */, + 7DD64B090D5D191B00773CAB /* Images */, + 7DBA60570D51D27100FD6A5F /* WoW Icons */, + 614CD7891106182100BA1B2F /* Bot.xib */, + 034126C3113570E100BE6819 /* PvP.xib */, + 03A01B39109A2CFF00E6098E /* Statistics.xib */, + 7DD8037C0D514E62005C2F01 /* Player.xib */, + 7DD803970D515142005C2F01 /* Spells.xib */, + 03CD6AC31183D5AC00CCABFE /* Profiles.xib */, + 03168C8B10FE6D2000EF241B /* WaypointActionEditor.xib */, + 0341DD5F111B0F6B00074CED /* Objects.xib */, + 7DD803A10D5151CA005C2F01 /* Routes.xib */, + 7DD803A30D5153E5005C2F01 /* Behaviors.xib */, + 7DCB5A3F0D540647001678BC /* Memory.xib */, + 7D6BE96F0F87ED8B00ED364A /* ChatLog.xib */, + 7DCE50650E12EF9100C5DF01 /* MainMenu.xib */, + 7DC8B60F0D419C3200B25B45 /* Growl Registration Ticket.growlRegDict */, + 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */, + 7D165A950D45761B00BDF5CA /* CGKeyCodeMap.plist */, + 7DB0ABC80EABED7F00B81BC1 /* FactionTemplate.plist */, + 8D1107310486CEB800E47090 /* Info.plist */, + 03C42CC91096839E0085E888 /* Macros.plist */, + 03D65A581090EC0D00537E9C /* OffsetSignatures.plist */, + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, + 03168ED410FF705A00EF241B /* Waypoint Action NIBs */, + 7D54DCB80E08449F00E1B463 /* Condition NIBs */, + ); + name = Resources; + sourceTree = ""; + }; + 29B97323FDCFA39411CA2CEA /* Frameworks */ = { + isa = PBXGroup; + children = ( + 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, + 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, + ); + name = Frameworks; + sourceTree = ""; + }; + 7D2167440DC4566600D5A815 /* PTKeyCode */ = { + isa = PBXGroup; + children = ( + 7D2167840DC456D100D5A815 /* PTHeader.h */, + 7D2167770DC456A400D5A815 /* PTHotKey.h */, + 7D21677A0DC456A400D5A815 /* PTHotKey.m */, + 7D21677C0DC456A400D5A815 /* PTKeyCombo.h */, + 7D21677D0DC456A400D5A815 /* PTKeyCombo.m */, + 7D2167790DC456A400D5A815 /* PTHotKeyCenter.h */, + 7D2167750DC456A400D5A815 /* PTHotKeyCenter.m */, + 7D2167760DC456A400D5A815 /* PTKeyBroadcaster.h */, + 7D2167740DC456A400D5A815 /* PTKeyBroadcaster.m */, + 7D21677B0DC456A400D5A815 /* PTKeyCodeTranslator.h */, + 7D2167780DC456A400D5A815 /* PTKeyCodeTranslator.m */, + ); + name = PTKeyCode; + sourceTree = ""; + }; + 7D41E8330DEA2DC900118EA0 /* Toolbar */ = { + isa = PBXGroup; + children = ( + 03A4047B0FE148C60087BC0D /* mbobbleicon.png */, + 7DBA60590D51D28600FD6A5F /* Spell_Holy_MindVision.png */, + 7D5498900F0222DC00DD46F8 /* INV_Fishingpole_03.png */, + 7DBA60800D51D75C00FD6A5F /* Ability_Warrior_Revenge.png */, + 7DBA605B0D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png */, + 7DBA605C0D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png */, + 7DBA605D0D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png */, + 7DBA605F0D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png */, + 7DBA606A0D51D38B00FD6A5F /* inv_misc_bag_14.png */, + 7DBA60A10D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png */, + 7DBA607A0D51D68000FD6A5F /* INV_Misc_Gear_01.png */, + 7DBA606C0D51D52600FD6A5F /* INV_Misc_Orb_05.png */, + 7D41E8120DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png */, + 7D6BE9980F87F6FB00ED364A /* Trade_Engraving.png */, + 7DBA606F0D51D54E00FD6A5F /* Unused */, + ); + name = Toolbar; + sourceTree = ""; + }; + 7D41E8520DEA2DDE00118EA0 /* Race */ = { + isa = PBXGroup; + children = ( + 7D41EEC20DECD7BA00118EA0 /* Small */, + 7D41E8530DEA2DE800118EA0 /* BloodElf-Female.png */, + 7D41E8540DEA2DE800118EA0 /* BloodElf-Male.png */, + 7D41E8550DEA2DE800118EA0 /* Draenei-Female.png */, + 7D41E8560DEA2DE800118EA0 /* Draenei-Male.png */, + 7D41E8570DEA2DE800118EA0 /* Dwarf-Female.png */, + 7D41E8580DEA2DE800118EA0 /* Dwarf-Male.png */, + 7D41E8590DEA2DE800118EA0 /* Gnome-Female.png */, + 7D41E85A0DEA2DE800118EA0 /* Gnome-Male.png */, + 7D41E85B0DEA2DE800118EA0 /* Human-Female.png */, + 7D41E85C0DEA2DE800118EA0 /* Human-Male.png */, + 7D41E85D0DEA2DE800118EA0 /* NightElf-Female.png */, + 7D41E85E0DEA2DE800118EA0 /* NightElf-Male.png */, + 7D41E85F0DEA2DE800118EA0 /* Orc-Female.png */, + 7D41E8600DEA2DE800118EA0 /* Orc-Male.png */, + 7D41E8610DEA2DE800118EA0 /* Tauren-Female.png */, + 7D41E8620DEA2DE800118EA0 /* Tauren-Male.png */, + 7D41E8630DEA2DE800118EA0 /* Troll-Female.png */, + 7D41E8640DEA2DE800118EA0 /* Troll-Male.png */, + 7D41E8650DEA2DE800118EA0 /* Undead-Female.png */, + 7D41E8660DEA2DE800118EA0 /* Undead-Male.png */, + ); + name = Race; + sourceTree = ""; + }; + 7D41E87B0DEA2DEC00118EA0 /* Class */ = { + isa = PBXGroup; + children = ( + 7D41E8F50DEA378B00118EA0 /* Small */, + 7D41E87E0DEA2DFA00118EA0 /* Druid.png */, + 7D41E87F0DEA2DFA00118EA0 /* Hunter.png */, + 7D41E8800DEA2DFA00118EA0 /* Mage.png */, + 7D41E8810DEA2DFA00118EA0 /* Paladin.png */, + 7D41E8820DEA2DFA00118EA0 /* Priest.png */, + 7D41E8830DEA2DFA00118EA0 /* Rogue.png */, + 7D41E8840DEA2DFA00118EA0 /* Shaman.png */, + 7D41E8850DEA2DFA00118EA0 /* Warlock.png */, + 7D41E8860DEA2DFA00118EA0 /* Warrior.png */, + 7DD8910A0F2BE875007E9FE4 /* DeathKnight.png */, + ); + name = Class; + sourceTree = ""; + }; + 7D41E8F50DEA378B00118EA0 /* Small */ = { + isa = PBXGroup; + children = ( + 7D41E8F80DEA379300118EA0 /* Priest_Small.gif */, + 7D41E8F90DEA379300118EA0 /* Shaman_Small.gif */, + 7D41E8FA0DEA379300118EA0 /* Paladin_Small.gif */, + 7D41E8FB0DEA379300118EA0 /* Warlock_Small.gif */, + 7D41E8FC0DEA379300118EA0 /* Mage_Small.gif */, + 7D41E8FD0DEA379300118EA0 /* Warrior_Small.gif */, + 7D41E8FE0DEA379300118EA0 /* Hunter_Small.gif */, + 7D41E8FF0DEA379300118EA0 /* Druid_Small.gif */, + 7D41E9000DEA379300118EA0 /* Rogue_Small.gif */, + 7DD891230F2BE92A007E9FE4 /* DeathKnight_Small.gif */, + ); + name = Small; + sourceTree = ""; + }; + 7D41E9210DEA389800118EA0 /* Gender */ = { + isa = PBXGroup; + children = ( + 7D41E9240DEA38A500118EA0 /* Male.png */, + 7D41E9250DEA38A500118EA0 /* Female.png */, + ); + name = Gender; + sourceTree = ""; + }; + 7D41E99A0DEA731E00118EA0 /* Hotkey Help */ = { + isa = PBXGroup; + children = ( + 7D41E9A70DEA734200118EA0 /* Keybindings.png */, + 7D41E9A80DEA734200118EA0 /* InterfaceBars.png */, + 7D41E9A90DEA734200118EA0 /* Result.png */, + 7D41E9AD0DEB467500118EA0 /* HotkeyFinished.png */, + 7D41E9AE0DEB467500118EA0 /* TypeShortcut.png */, + 7DDCC4850F9EE3BE0085A88E /* InteractWithTarget.png */, + ); + name = "Hotkey Help"; + sourceTree = ""; + }; + 7D41EEC20DECD7BA00118EA0 /* Small */ = { + isa = PBXGroup; + children = ( + 7D41EEFB0DECD85000118EA0 /* NightElf-Male_Small.gif */, + 7D41EEFC0DECD85000118EA0 /* NightElf-Female_Small.gif */, + 7D41EECE0DECD7C600118EA0 /* Orc-Female_Small.gif */, + 7D41EECF0DECD7C600118EA0 /* Gnome-Female_Small.gif */, + 7D41EED00DECD7C600118EA0 /* BloodElf-Female_Small.gif */, + 7D41EED10DECD7C600118EA0 /* Orc-Male_Small.gif */, + 7D41EED20DECD7C600118EA0 /* Troll-Female_Small.gif */, + 7D41EED30DECD7C600118EA0 /* Undead-Male_Small.gif */, + 7D41EED40DECD7C600118EA0 /* Human-Male_Small.gif */, + 7D41EED50DECD7C600118EA0 /* BloodElf-Male_Small.gif */, + 7D41EED60DECD7C600118EA0 /* Draenei-Female_Small.gif */, + 7D41EED70DECD7C600118EA0 /* Tauren-Male_Small.gif */, + 7D41EED80DECD7C600118EA0 /* Draenei-Male_Small.gif */, + 7D41EED90DECD7C600118EA0 /* Dwarf-Male_Small.gif */, + 7D41EEDA0DECD7C600118EA0 /* Undead-Female_Small.gif */, + 7D41EEDB0DECD7C600118EA0 /* Gnome-Male_Small.gif */, + 7D41EEDC0DECD7C600118EA0 /* Human-Female_Small.gif */, + 7D41EEDD0DECD7C600118EA0 /* Dwarf-Female_Small.gif */, + 7D41EEDE0DECD7C600118EA0 /* Tauren-Female_Small.gif */, + 7D41EEDF0DECD7C600118EA0 /* Troll-Male_Small.gif */, + ); + name = Small; + sourceTree = ""; + }; + 7D53C0DF0E5E2182007B3AA6 /* UKKQueue */ = { + isa = PBXGroup; + children = ( + 7D53C0E10E5E2199007B3AA6 /* UKFileWatcher.h */, + 7D53C0E30E5E2199007B3AA6 /* UKMainThreadProxy.h */, + 7D53C0E20E5E2199007B3AA6 /* UKMainThreadProxy.m */, + 7D53C0E40E5E2199007B3AA6 /* UKFileWatcher.m */, + 7D53C0E60E5E2199007B3AA6 /* UKKQueue.h */, + 7D53C0E50E5E2199007B3AA6 /* UKKQueue.m */, + 7D53C0E70E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.h */, + 7D53C0E80E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m */, + ); + name = UKKQueue; + sourceTree = ""; + }; + 7D54DCB80E08449F00E1B463 /* Condition NIBs */ = { + isa = PBXGroup; + children = ( + 03168DCA10FE8D0B00EF241B /* Waypoint Actions */, + 03B6D25D10F626C500EC6EFF /* RuneCondition.xib */, + 038A4B4510E9656D00577D8F /* LastSpellCast.xib */, + 0350738310CDBA460004636E /* SpellCooldown.xib */, + 7DCE50700E12F05E00C5DF01 /* AuraCondition.xib */, + 7D5496450E1AA0F5004AA3E9 /* AuraStackCondition.xib */, + 7DCE50710E12F05E00C5DF01 /* StatusCondition.xib */, + 7DCE50720E12F05E00C5DF01 /* DistanceCondition.xib */, + 7DCE50730E12F05E00C5DF01 /* HealthCondition.xib */, + 7DCE50740E12F05E00C5DF01 /* InventoryCondition.xib */, + 7DD1D1550DD242A70069CB07 /* ComboPointCondition.xib */, + 7DF445540E241AE30075B96B /* TotemCondition.xib */, + 7DB822290E33382900661394 /* TempEnchantCondition.xib */, + 7D7C66A20E58E74D002A6C96 /* TargetType.xib */, + 7D7C670D0E58EC50002A6C96 /* TargetClass.xib */, + 7D7C66AD0E58E8B0002A6C96 /* CombatCount.xib */, + 7D7C67090E58EB37002A6C96 /* ProximityCount.xib */, + ); + name = "Condition NIBs"; + sourceTree = ""; + }; + 7D65C8F50D2EE06200C50DF7 /* Conditions */ = { + isa = PBXGroup; + children = ( + 7D65C8FA0D2EE16B00C50DF7 /* Condition.h */, + 7D65C8FB0D2EE16B00C50DF7 /* Condition.m */, + 7D9771130D2D8C0E00E6D8F9 /* ConditionCell.h */, + 7D9771140D2D8C0E00E6D8F9 /* ConditionCell.m */, + 7D9771160D2D8F6000E6D8F9 /* ConditionController.h */, + 7D9771170D2D8F6000E6D8F9 /* ConditionController.m */, + 7D9770C00D2D84D700E6D8F9 /* HealthConditionController.h */, + 7D9770BF0D2D84D700E6D8F9 /* HealthConditionController.m */, + 7D9772030D2DA23D00E6D8F9 /* StatusConditionController.h */, + 7D9772040D2DA23D00E6D8F9 /* StatusConditionController.m */, + 7D9772730D2DA97A00E6D8F9 /* AuraConditionController.h */, + 7D9772740D2DA97A00E6D8F9 /* AuraConditionController.m */, + 7D5496410E1AA073004AA3E9 /* AuraStackConditionController.h */, + 7D5496420E1AA073004AA3E9 /* AuraStackConditionController.m */, + 7DC8B44B0D4147CB00B25B45 /* DistanceConditionController.h */, + 7DC8B44C0D4147CB00B25B45 /* DistanceConditionController.m */, + 7DC8B45F0D4152EC00B25B45 /* InventoryConditionController.h */, + 7DC8B4600D4152EC00B25B45 /* InventoryConditionController.m */, + 7DD1D14D0DD241F60069CB07 /* ComboPointConditionController.h */, + 7DD1D14E0DD241F60069CB07 /* ComboPointConditionController.m */, + 7DF445510E241ABA0075B96B /* TotemConditionController.h */, + 7DF445520E241ABA0075B96B /* TotemConditionController.m */, + 7DB8222D0E33384300661394 /* TempEnchantConditionController.h */, + 7DB8222E0E33384300661394 /* TempEnchantConditionController.m */, + 7D7C66BA0E58E92F002A6C96 /* TargetTypeConditionController.h */, + 7D7C66BB0E58E92F002A6C96 /* TargetTypeConditionController.m */, + 7D7C67170E58EC85002A6C96 /* TargetClassConditionController.h */, + 7D7C67180E58EC85002A6C96 /* TargetClassConditionController.m */, + 7D7C66DB0E58E97D002A6C96 /* CombatCountConditionController.h */, + 7D7C66DC0E58E97D002A6C96 /* CombatCountConditionController.m */, + 7D7C67140E58EC79002A6C96 /* ProximityCountConditionController.h */, + 7D7C67150E58EC79002A6C96 /* ProximityCountConditionController.m */, + 0350738710CDBA640004636E /* SpellCooldownConditionController.h */, + 0350738810CDBA640004636E /* SpellCooldownConditionController.m */, + 038A4B4710E9657900577D8F /* LastSpellCastConditionController.h */, + 038A4B4810E9657900577D8F /* LastSpellCastConditionController.m */, + 03B6D26010F626EA00EC6EFF /* RuneConditionController.h */, + 03B6D26110F626EA00EC6EFF /* RuneConditionController.m */, + 03168DC610FE8BA900EF241B /* DurabilityConditionController.h */, + 03168DC710FE8BA900EF241B /* DurabilityConditionController.m */, + 03168E1910FE972300EF241B /* PlayerLevelConditionController.h */, + 03168E1A10FE972300EF241B /* PlayerLevelConditionController.m */, + 03168E1C10FE972B00EF241B /* PlayerZoneConditionController.h */, + 03168E1D10FE972B00EF241B /* PlayerZoneConditionController.m */, + 03168E1F10FE973900EF241B /* QuestConditionController.h */, + 03168E2010FE973900EF241B /* QuestConditionController.m */, + 03168E2210FE974800EF241B /* RouteRunCountConditionController.h */, + 03168E2310FE974800EF241B /* RouteRunCountConditionController.m */, + 03168E2510FE975300EF241B /* RouteRunTimeConditionController.h */, + 03168E2610FE975300EF241B /* RouteRunTimeConditionController.m */, + 03168E2810FE975E00EF241B /* InventoryFreeConditionController.h */, + 03168E2910FE975E00EF241B /* InventoryFreeConditionController.m */, + 03FFD46C110B930F0046AEDF /* MobsKilledConditionController.h */, + 03FFD46D110B930F0046AEDF /* MobsKilledConditionController.m */, + 03BB2218112258A00048DE7B /* GateConditionController.h */, + 03BB2219112258A00048DE7B /* GateConditionController.m */, + 03BB227C1122F1240048DE7B /* StrandStatusConditionController.h */, + 03BB227D1122F1240048DE7B /* StrandStatusConditionController.m */, + ); + name = Conditions; + sourceTree = ""; + }; + 7D65C8F60D2EE0B100C50DF7 /* GUI Subclasses */ = { + isa = PBXGroup; + children = ( + 7D9772A70D2DB2B300E6D8F9 /* BetterTableView.h */, + 7D9772A80D2DB2B300E6D8F9 /* BetterTableView.m */, + 7D9771760D2D951900E6D8F9 /* BetterSegmentedControl.h */, + 7D9771770D2D951900E6D8F9 /* BetterSegmentedControl.m */, + 7DD64AF40D5D10FA00773CAB /* RouteVisualizationView.h */, + 7DD64AF50D5D10FA00773CAB /* RouteVisualizationView.m */, + 7D0C43CF0DF2089E005F3940 /* ScanGridView.h */, + 7D0C43D00DF2089E005F3940 /* ScanGridView.m */, + 7D0C43F60DF20B0D005F3940 /* TransparentWindow.h */, + 7D0C43F70DF20B0D005F3940 /* TransparentWindow.m */, + ); + name = "GUI Subclasses"; + sourceTree = ""; + }; + 7D65CA9F0D2F095F00C50DF7 /* Waypoints & Routes */ = { + isa = PBXGroup; + children = ( + 7DD03F330D163F9A000CC1A6 /* Route.h */, + 7DD03F340D163F9A000CC1A6 /* Route.m */, + 7DD03F360D163FF8000CC1A6 /* Waypoint.h */, + 7DD03F370D163FF8000CC1A6 /* Waypoint.m */, + 7D1659890D455F6500BDF5CA /* RouteSet.h */, + 7D16598A0D455F6500BDF5CA /* RouteSet.m */, + 038769131124532000B2C571 /* RouteCollection.h */, + 038769141124532000B2C571 /* RouteCollection.m */, + ); + name = "Waypoints & Routes"; + sourceTree = ""; + }; + 7D72453E0D1511E20094665C /* Units */ = { + isa = PBXGroup; + children = ( + 03503FF0125A9A0300E511C8 /* Objects_Enum.h */, + 7DB0ADE30EB02F0C00B81BC1 /* Aura.h */, + 7DB0ADE40EB02F0C00B81BC1 /* Aura.m */, + 7D7A6A470D270F130008C3FF /* WoWObject.h */, + 7D7A6A480D270F130008C3FF /* WoWObject.m */, + 7D41EA0F0DEB554100118EA0 /* Unit.h */, + 7D41EA100DEB554100118EA0 /* Unit.m */, + 7D7245400D1511F40094665C /* Mob.h */, + 7D7245410D1511F40094665C /* Mob.m */, + 7D41E5960DEA00A500118EA0 /* Player.h */, + 7D41E5970DEA00A500118EA0 /* Player.m */, + 7D9712940D248DA0005E3BD1 /* Item.h */, + 7D9712950D248DA0005E3BD1 /* Item.m */, + 7D9713C70D24D339005E3BD1 /* Node.h */, + 7D9713C80D24D339005E3BD1 /* Node.m */, + 7DA7B8C10D1DF92B00F81519 /* Spell.h */, + 7DA7B8C20D1DF92B00F81519 /* Spell.m */, + 7D8343F90D17231300853E32 /* Position.h */, + 7D8343FA0D17231300853E32 /* Position.m */, + 7DAD11640E117BF000B0F7BD /* Macro.h */, + 7DAD11650E117BF000B0F7BD /* Macro.m */, + 7D1BEE510F8733A400DF5FBF /* ChatLogEntry.h */, + 7D1BEE520F8733A400DF5FBF /* ChatLogEntry.m */, + 03CEF7840FCCD93100B47336 /* Corpse.h */, + 03CEF7850FCCD93100B47336 /* Corpse.m */, + 034429B60FAA3E1800E9DE03 /* Quest.h */, + 034429B70FAA3E1800E9DE03 /* Quest.m */, + 034429BB0FAA3E3800E9DE03 /* QuestItem.h */, + 034429BC0FAA3E3800E9DE03 /* QuestItem.m */, + ); + name = Units; + sourceTree = ""; + }; + 7D80B4710DE7578C004D00F6 /* Status Icons */ = { + isa = PBXGroup; + children = ( + 7D80B48C0DE75905004D00F6 /* Dead.png */, + 7D80B4720DE75795004D00F6 /* Friendly.png */, + 7D80B4B00DE76098004D00F6 /* Neutral.png */, + 7D80B4730DE75795004D00F6 /* Hostile.png */, + 7D80B4740DE75795004D00F6 /* Combat.png */, + 7DC41A6F0DEE041400F3B083 /* Skull.png */, + ); + name = "Status Icons"; + sourceTree = ""; + }; + 7D9770BA0D2D84C400E6D8F9 /* Rules & Procedures */ = { + isa = PBXGroup; + children = ( + 0362CDDC11A99CED00EA65B2 /* CombatProfile.h */, + 0362CDDD11A99CED00EA65B2 /* CombatProfile.m */, + D02F3C5B1182C497000F4037 /* MailActionProfile.h */, + D02F3C5C1182C497000F4037 /* MailActionProfile.m */, + 7D65CC1B0D2F69BB00C50DF7 /* Behavior.h */, + 7D65CC1C0D2F69BB00C50DF7 /* Behavior.m */, + D02F3C851182C975000F4037 /* Profile.h */, + D02F3C861182C975000F4037 /* Profile.m */, + 03168EE110FF70E900EF241B /* WaypointActions */, + 7D65C8F70D2EE14500C50DF7 /* Rule.h */, + 7D65C8F80D2EE14500C50DF7 /* Rule.m */, + 7D65CA460D2F04D200C50DF7 /* Procedure.h */, + 7D65CA470D2F04D200C50DF7 /* Procedure.m */, + 7D65C8F50D2EE06200C50DF7 /* Conditions */, + 7DE53DD90E32B84C00C59033 /* IgnoreEntry.h */, + 7DE53DDA0E32B84C00C59033 /* IgnoreEntry.m */, + 7D1B39400F896A96005CA0CD /* ChatAction.h */, + 7D1B39410F896A96005CA0CD /* ChatAction.m */, + ); + name = "Rules & Procedures"; + sourceTree = ""; + }; + 7D97730C0D2DBF2800E6D8F9 /* GUI Controllers */ = { + isa = PBXGroup; + children = ( + 034126BF1135706E00BE6819 /* PvPController.h */, + 034126C01135706E00BE6819 /* PvPController.m */, + 0341DD64111B0FBE00074CED /* ObjectsController.h */, + 0341DD65111B0FBE00074CED /* ObjectsController.m */, + 7D97730D0D2DBF5400E6D8F9 /* RuleEditor.h */, + 7D97730E0D2DBF5400E6D8F9 /* RuleEditor.m */, + 7D65C9D90D2EF93100C50DF7 /* ProcedureController.h */, + 7D65C9DA0D2EF93100C50DF7 /* ProcedureController.m */, + 7DD03F0A0D163F44000CC1A6 /* WaypointController.h */, + 7DD03F0B0D163F44000CC1A6 /* WaypointController.m */, + 03168C6F10FE6CCD00EF241B /* WaypointActionEditor.h */, + 03168C7010FE6CCD00EF241B /* WaypointActionEditor.m */, + 7DD03DE00D160075000CC1A6 /* MemoryViewController.h */, + 7DD03DE10D160075000CC1A6 /* MemoryViewController.m */, + D02F3C5E1182C5AC000F4037 /* ProfileController.h */, + D02F3C5F1182C5AC000F4037 /* ProfileController.m */, + ); + name = "GUI Controllers"; + sourceTree = ""; + }; + 7DA95E190E2302BD00AC85E2 /* Banners */ = { + isa = PBXGroup; + children = ( + 7DA95E310E2302C400AC85E2 /* BannerNeutral.png */, + 7DA95E320E2302C400AC85E2 /* BannerHorde.png */, + 7DA95E330E2302C400AC85E2 /* BannerAlliance.png */, + ); + name = Banners; + sourceTree = ""; + }; + 7DAA05710D55656200A6D06A /* Authentication Library */ = { + isa = PBXGroup; + children = ( + 7DC3FF160D57C75100BEB58B /* BetterAuthorizationSampleLib.h */, + 7DC3FF170D57C75100BEB58B /* BetterAuthorizationSampleLib.c */, + 7DC3FF150D57C75100BEB58B /* BetterAuthorizationSampleLibInstallTool.c */, + ); + name = "Authentication Library"; + sourceTree = ""; + }; + 7DAB64580E22A84A00B84C0E /* Ability Icons */ = { + isa = PBXGroup; + children = ( + 0352F46511376DA5005B28D6 /* PVP.png */, + 7DAB64600E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png */, + 7DAB645C0E22A85900B84C0E /* Ability_DualWieldSpecialization.png */, + 7DAB64620E22AAB300B84C0E /* Ability_Warrior_Challange.png */, + ); + name = "Ability Icons"; + sourceTree = ""; + }; + 7DBA60570D51D27100FD6A5F /* WoW Icons */ = { + isa = PBXGroup; + children = ( + 7DA95E190E2302BD00AC85E2 /* Banners */, + 7DAB64580E22A84A00B84C0E /* Ability Icons */, + 7D41EE7B0DECD45100118EA0 /* UnknownSmall.png */, + 7DC41AFB0DEE156800F3B083 /* NeutralCrest.gif */, + 7DC41AFC0DEE156800F3B083 /* HordeCrest.gif */, + 7DC41AFD0DEE156800F3B083 /* AllianceCrest.gif */, + 7DC419E30DEDFD0300F3B083 /* Nodes */, + 7D41E87B0DEA2DEC00118EA0 /* Class */, + 7D41E8520DEA2DDE00118EA0 /* Race */, + 7D41E9210DEA389800118EA0 /* Gender */, + 7D80B4710DE7578C004D00F6 /* Status Icons */, + 7D41E8330DEA2DC900118EA0 /* Toolbar */, + ); + name = "WoW Icons"; + sourceTree = ""; + }; + 7DBA606F0D51D54E00FD6A5F /* Unused */ = { + isa = PBXGroup; + children = ( + 7DBA60680D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png */, + ); + name = Unused; + sourceTree = ""; + }; + 7DBC344F0DB57665000C9BCF /* SRImages */ = { + isa = PBXGroup; + children = ( + 7DBC34500DB57665000C9BCF /* SRRemoveShortcut.tif */, + 7DBC34510DB57665000C9BCF /* SRRemoveShortcutPressed.tif */, + 7DBC34520DB57665000C9BCF /* SRRemoveShortcutRollover.tif */, + 7DBC34530DB57665000C9BCF /* SRSnapback.tiff */, + ); + name = SRImages; + path = Images; + sourceTree = ""; + }; + 7DC3FF240D57C78700BEB58B /* Helper Tools */ = { + isa = PBXGroup; + children = ( + 7DC3FF270D57C79400BEB58B /* ToolCommon.h */, + 7DC3FF280D57C79400BEB58B /* ToolCommon.c */, + 7DC3FF260D57C79400BEB58B /* MemoryAccessTool.c */, + 7DAA05710D55656200A6D06A /* Authentication Library */, + ); + name = "Helper Tools"; + sourceTree = ""; + }; + 7DC419E30DEDFD0300F3B083 /* Nodes */ = { + isa = PBXGroup; + children = ( + 7DC41AE40DEE111600F3B083 /* Chicken.png */, + 7DC41ADB0DEE0D9100F3B083 /* Innkeeper.png */, + 7DC41AD50DEE0CA100F3B083 /* Stable.png */, + 7DC41A560DEE020B00F3B083 /* Repair.png */, + 7DC41A210DEDFED400F3B083 /* ResourceBlip.png */, + 7DC419FA0DEDFDD000F3B083 /* MinimapGuideFlag.png */, + 7DC419FB0DEDFDD000F3B083 /* WarnTriangle.png */, + 7DC419E40DEDFD0300F3B083 /* ActiveQuestIcon.png */, + 7DC419E50DEDFD0300F3B083 /* AvailableQuestIcon.png */, + 7DC419E60DEDFD0300F3B083 /* BankerGossipIcon.png */, + 7DC419E70DEDFD0300F3B083 /* BinderGossipIcon.png */, + 7DC419E80DEDFD0300F3B083 /* GossipGossipIcon.png */, + 7DC419E90DEDFD0300F3B083 /* PetitionGossipIcon.png */, + 7DC419EA0DEDFD0300F3B083 /* Scroll.png */, + 7DC419EB0DEDFD0300F3B083 /* TabardGossipIcon.png */, + 7DC419EC0DEDFD0300F3B083 /* TaxiGossipIcon.png */, + 7DC419ED0DEDFD0300F3B083 /* TrainerGossipIcon.png */, + 7DC419EE0DEDFD0300F3B083 /* VendorGossipIcon.png */, + ); + path = Nodes; + sourceTree = ""; + }; + 7DD64B090D5D191B00773CAB /* Images */ = { + isa = PBXGroup; + children = ( + 7DD64B1F0D5D192500773CAB /* off.png */, + 7D60430B0D5FC2DF001501AF /* mixed.png */, + 7DD64B200D5D192500773CAB /* on.png */, + 7D4AFB320D9EDBF100A33CE1 /* bad.tif */, + 7D4AFB330D9EDBF100A33CE1 /* good.tif */, + 7D1B3B8C0F89ACE9005CA0CD /* Mail.png */, + 7D1B3B8E0F89AD22005CA0CD /* iChat.png */, + ); + name = Images; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 8D1107260486CEB800E47090 /* Pocket Gnome */ = { + isa = PBXNativeTarget; + buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Pocket Gnome" */; + buildPhases = ( + 83A9BBD61178B706003E3683 /* Get SVN Revision */, + 8D1107290486CEB800E47090 /* Resources */, + 8D11072C0486CEB800E47090 /* Sources */, + 8D11072E0486CEB800E47090 /* Frameworks */, + 7DC8B60C0D419BF500B25B45 /* CopyFiles */, + ); + buildRules = ( + 7D1B3A500F8987B1005CA0CD /* PBXBuildRule */, + ); + dependencies = ( + ); + name = "Pocket Gnome"; + productInstallPath = "$(HOME)/Applications"; + productName = WoWWaypoint; + productReference = 8D1107320486CEB800E47090 /* Pocket Gnome.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + isa = PBXProject; + attributes = { + ORGANIZATIONNAME = "Savory Software, LLC\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010\U0010"; + }; + buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pocket Gnome" */; + compatibilityVersion = "Xcode 3.0"; + hasScannedForEncodings = 1; + knownRegions = ( + English, + Japanese, + French, + German, + en, + ); + mainGroup = 29B97314FDCFA39411CA2CEA /* WoWWaypoint */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 8D1107260486CEB800E47090 /* Pocket Gnome */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 8D1107290486CEB800E47090 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7D6BEC8D0F8844F600ED364A /* Growl Registration Ticket.growlRegDict in Resources */, + 7DB0ABC90EABED7F00B81BC1 /* FactionTemplate.plist in Resources */, + 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, + 7D3C91EB0E47C8C700EDF3B3 /* Gathering.plist in Resources */, + 7DD8037D0D514E62005C2F01 /* Player.xib in Resources */, + 7DD803980D515142005C2F01 /* Spells.xib in Resources */, + 7DD803A20D5151CA005C2F01 /* Routes.xib in Resources */, + 7DD803A40D5153E5005C2F01 /* Behaviors.xib in Resources */, + 7DBA60600D51D28600FD6A5F /* Spell_Holy_MindVision.png in Resources */, + 7DBA60620D51D28600FD6A5F /* Spell_FireResistanceTotem_01.png in Resources */, + 7DBA60630D51D28600FD6A5F /* INV_Misc_Head_Dragon_Bronze.png in Resources */, + 7DBA60640D51D28600FD6A5F /* INV_Misc_Gem_Bloodstone_01.png in Resources */, + 7DBA60660D51D28600FD6A5F /* Spell_Nature_PoisonCleansingTotem.png in Resources */, + 7DBA60690D51D33B00FD6A5F /* INV_Misc_Head_Dragon_Blue.png in Resources */, + 7DBA606B0D51D38B00FD6A5F /* inv_misc_bag_14.png in Resources */, + 7DBA606D0D51D52600FD6A5F /* INV_Misc_Orb_05.png in Resources */, + 7DBA607B0D51D68000FD6A5F /* INV_Misc_Gear_01.png in Resources */, + 7DBA60810D51D75C00FD6A5F /* Ability_Warrior_Revenge.png in Resources */, + 7DBA60A20D51D8DF00FD6A5F /* Ability_Rogue_Sprint.png in Resources */, + 7DCB5A400D540647001678BC /* Memory.xib in Resources */, + 7DD64B210D5D192500773CAB /* off.png in Resources */, + 7DD64B220D5D192500773CAB /* on.png in Resources */, + 7D60430C0D5FC2DF001501AF /* mixed.png in Resources */, + 7D4AFB340D9EDBF100A33CE1 /* bad.tif in Resources */, + 7D4AFB350D9EDBF100A33CE1 /* good.tif in Resources */, + 7DBC34540DB57665000C9BCF /* SRRemoveShortcut.tif in Resources */, + 7DBC34550DB57665000C9BCF /* SRRemoveShortcutPressed.tif in Resources */, + 7DBC34560DB57665000C9BCF /* SRRemoveShortcutRollover.tif in Resources */, + 7DBC34570DB57665000C9BCF /* SRSnapback.tiff in Resources */, + 7DD1D1560DD242A70069CB07 /* ComboPointCondition.xib in Resources */, + 7D80B4750DE75795004D00F6 /* Friendly.png in Resources */, + 7D80B4760DE75795004D00F6 /* Hostile.png in Resources */, + 7D80B4770DE75795004D00F6 /* Combat.png in Resources */, + 7D80B48D0DE75905004D00F6 /* Dead.png in Resources */, + 7D80B4B10DE76098004D00F6 /* Neutral.png in Resources */, + 7D41E8130DEA28FE00118EA0 /* Spell_Holy_PrayerofSpirit.png in Resources */, + 7D41E8670DEA2DE800118EA0 /* BloodElf-Female.png in Resources */, + 7D41E8680DEA2DE800118EA0 /* BloodElf-Male.png in Resources */, + 7D41E8690DEA2DE800118EA0 /* Draenei-Female.png in Resources */, + 7D41E86A0DEA2DE800118EA0 /* Draenei-Male.png in Resources */, + 7D41E86B0DEA2DE800118EA0 /* Dwarf-Female.png in Resources */, + 7D41E86C0DEA2DE800118EA0 /* Dwarf-Male.png in Resources */, + 7D41E86D0DEA2DE800118EA0 /* Gnome-Female.png in Resources */, + 7D41E86E0DEA2DE800118EA0 /* Gnome-Male.png in Resources */, + 7D41E86F0DEA2DE800118EA0 /* Human-Female.png in Resources */, + 7D41E8700DEA2DE800118EA0 /* Human-Male.png in Resources */, + 7D41E8710DEA2DE800118EA0 /* NightElf-Female.png in Resources */, + 7D41E8720DEA2DE800118EA0 /* NightElf-Male.png in Resources */, + 7D41E8730DEA2DE800118EA0 /* Orc-Female.png in Resources */, + 7D41E8740DEA2DE800118EA0 /* Orc-Male.png in Resources */, + 7D41E8750DEA2DE800118EA0 /* Tauren-Female.png in Resources */, + 7D41E8760DEA2DE800118EA0 /* Tauren-Male.png in Resources */, + 7D41E8770DEA2DE800118EA0 /* Troll-Female.png in Resources */, + 7D41E8780DEA2DE800118EA0 /* Troll-Male.png in Resources */, + 7D41E8790DEA2DE800118EA0 /* Undead-Female.png in Resources */, + 7D41E87A0DEA2DE800118EA0 /* Undead-Male.png in Resources */, + 7D41E8870DEA2DFA00118EA0 /* Druid.png in Resources */, + 7D41E8880DEA2DFA00118EA0 /* Hunter.png in Resources */, + 7D41E8890DEA2DFA00118EA0 /* Mage.png in Resources */, + 7D41E88A0DEA2DFA00118EA0 /* Paladin.png in Resources */, + 7D41E88B0DEA2DFA00118EA0 /* Priest.png in Resources */, + 7D41E88C0DEA2DFA00118EA0 /* Rogue.png in Resources */, + 7D41E88D0DEA2DFA00118EA0 /* Shaman.png in Resources */, + 7D41E88E0DEA2DFA00118EA0 /* Warlock.png in Resources */, + 7D41E88F0DEA2DFA00118EA0 /* Warrior.png in Resources */, + 7D41E9010DEA379300118EA0 /* Priest_Small.gif in Resources */, + 7D41E9020DEA379300118EA0 /* Shaman_Small.gif in Resources */, + 7D41E9030DEA379300118EA0 /* Paladin_Small.gif in Resources */, + 7D41E9040DEA379300118EA0 /* Warlock_Small.gif in Resources */, + 7D41E9050DEA379300118EA0 /* Mage_Small.gif in Resources */, + 7D41E9060DEA379300118EA0 /* Warrior_Small.gif in Resources */, + 7D41E9070DEA379300118EA0 /* Hunter_Small.gif in Resources */, + 7D41E9080DEA379300118EA0 /* Druid_Small.gif in Resources */, + 7D41E9090DEA379300118EA0 /* Rogue_Small.gif in Resources */, + 7D41E9260DEA38A500118EA0 /* Male.png in Resources */, + 7D41E9270DEA38A500118EA0 /* Female.png in Resources */, + 7D41E9AA0DEA734200118EA0 /* Keybindings.png in Resources */, + 7D41E9AB0DEA734200118EA0 /* InterfaceBars.png in Resources */, + 7D41E9AC0DEA734200118EA0 /* Result.png in Resources */, + 7D41E9AF0DEB467500118EA0 /* HotkeyFinished.png in Resources */, + 7D41E9B00DEB467500118EA0 /* TypeShortcut.png in Resources */, + 7D41EE7C0DECD45100118EA0 /* UnknownSmall.png in Resources */, + 7D41EEE00DECD7C600118EA0 /* Orc-Female_Small.gif in Resources */, + 7D41EEE10DECD7C600118EA0 /* Gnome-Female_Small.gif in Resources */, + 7D41EEE20DECD7C600118EA0 /* BloodElf-Female_Small.gif in Resources */, + 7D41EEE30DECD7C600118EA0 /* Orc-Male_Small.gif in Resources */, + 7D41EEE40DECD7C600118EA0 /* Troll-Female_Small.gif in Resources */, + 7D41EEE50DECD7C600118EA0 /* Undead-Male_Small.gif in Resources */, + 7D41EEE60DECD7C600118EA0 /* Human-Male_Small.gif in Resources */, + 7D41EEE70DECD7C600118EA0 /* BloodElf-Male_Small.gif in Resources */, + 7D41EEE80DECD7C600118EA0 /* Draenei-Female_Small.gif in Resources */, + 7D41EEE90DECD7C600118EA0 /* Tauren-Male_Small.gif in Resources */, + 7D41EEEA0DECD7C600118EA0 /* Draenei-Male_Small.gif in Resources */, + 7D41EEEB0DECD7C600118EA0 /* Dwarf-Male_Small.gif in Resources */, + 7D41EEEC0DECD7C600118EA0 /* Undead-Female_Small.gif in Resources */, + 7D41EEED0DECD7C600118EA0 /* Gnome-Male_Small.gif in Resources */, + 7D41EEEE0DECD7C600118EA0 /* Human-Female_Small.gif in Resources */, + 7D41EEEF0DECD7C600118EA0 /* Dwarf-Female_Small.gif in Resources */, + 7D41EEF00DECD7C600118EA0 /* Tauren-Female_Small.gif in Resources */, + 7D41EEF10DECD7C600118EA0 /* Troll-Male_Small.gif in Resources */, + 7D41EEFD0DECD85000118EA0 /* NightElf-Male_Small.gif in Resources */, + 7D41EEFE0DECD85000118EA0 /* NightElf-Female_Small.gif in Resources */, + 7DC419EF0DEDFD0300F3B083 /* ActiveQuestIcon.png in Resources */, + 7DC419F00DEDFD0300F3B083 /* AvailableQuestIcon.png in Resources */, + 7DC419F10DEDFD0300F3B083 /* BankerGossipIcon.png in Resources */, + 7DC419F20DEDFD0300F3B083 /* BinderGossipIcon.png in Resources */, + 7DC419F30DEDFD0300F3B083 /* GossipGossipIcon.png in Resources */, + 7DC419F40DEDFD0300F3B083 /* PetitionGossipIcon.png in Resources */, + 7DC419F50DEDFD0300F3B083 /* Scroll.png in Resources */, + 7DC419F60DEDFD0300F3B083 /* TabardGossipIcon.png in Resources */, + 7DC419F70DEDFD0300F3B083 /* TaxiGossipIcon.png in Resources */, + 7DC419F80DEDFD0300F3B083 /* TrainerGossipIcon.png in Resources */, + 7DC419F90DEDFD0300F3B083 /* VendorGossipIcon.png in Resources */, + 7DC419FC0DEDFDD000F3B083 /* MinimapGuideFlag.png in Resources */, + 7DC419FD0DEDFDD000F3B083 /* WarnTriangle.png in Resources */, + 7DC41A220DEDFED400F3B083 /* ResourceBlip.png in Resources */, + 7DC41A570DEE020B00F3B083 /* Repair.png in Resources */, + 7DC41A700DEE041400F3B083 /* Skull.png in Resources */, + 7DC41AD60DEE0CA100F3B083 /* Stable.png in Resources */, + 7DC41ADC0DEE0D9100F3B083 /* Innkeeper.png in Resources */, + 7DC41AE50DEE111600F3B083 /* Chicken.png in Resources */, + 7DC41AFE0DEE156800F3B083 /* NeutralCrest.gif in Resources */, + 7DC41AFF0DEE156800F3B083 /* HordeCrest.gif in Resources */, + 7DC41B000DEE156800F3B083 /* AllianceCrest.gif in Resources */, + 7DC7A9580DFB70CA00F6FA63 /* pgRoute.icns in Resources */, + 7DC7A9860DFC85C700F6FA63 /* pgBehavior.icns in Resources */, + 7DC7A9A60DFC869400F6FA63 /* gnome2.icns in Resources */, + 7DCE50660E12EF9100C5DF01 /* MainMenu.xib in Resources */, + 7DCE50750E12F05E00C5DF01 /* AuraCondition.xib in Resources */, + 7DCE50760E12F05E00C5DF01 /* StatusCondition.xib in Resources */, + 7DCE50770E12F05E00C5DF01 /* DistanceCondition.xib in Resources */, + 7DCE50780E12F05E00C5DF01 /* HealthCondition.xib in Resources */, + 7DCE50790E12F05E00C5DF01 /* InventoryCondition.xib in Resources */, + 7D5496460E1AA0F5004AA3E9 /* AuraStackCondition.xib in Resources */, + 7DAB645E0E22A85900B84C0E /* Ability_DualWieldSpecialization.png in Resources */, + 7DAB64610E22AA4200B84C0E /* Ability_Warrior_ImprovedDisciplines.png in Resources */, + 7DAB64630E22AAB300B84C0E /* Ability_Warrior_Challange.png in Resources */, + 7DA95E340E2302C400AC85E2 /* BannerNeutral.png in Resources */, + 7DA95E350E2302C400AC85E2 /* BannerHorde.png in Resources */, + 7DA95E360E2302C400AC85E2 /* BannerAlliance.png in Resources */, + 7DA95ECE0E23537A00AC85E2 /* alarm.mp3 in Resources */, + 7DF445550E241AE30075B96B /* TotemCondition.xib in Resources */, + 7DB8222A0E33382900661394 /* TempEnchantCondition.xib in Resources */, + 7D7C66A30E58E74D002A6C96 /* TargetType.xib in Resources */, + 7D7C66AE0E58E8B0002A6C96 /* CombatCount.xib in Resources */, + 7D7C670A0E58EB37002A6C96 /* ProximityCount.xib in Resources */, + 7D7C670E0E58EC50002A6C96 /* TargetClass.xib in Resources */, + 7D3108E30EFDBCCB00ECFABE /* Bobber.png in Resources */, + 7D3109440EFDCBA700ECFABE /* splash.mp3 in Resources */, + 7D5498910F0222DC00DD46F8 /* INV_Fishingpole_03.png in Resources */, + 7DD8910B0F2BE875007E9FE4 /* DeathKnight.png in Resources */, + 7DD891240F2BE92A007E9FE4 /* DeathKnight_Small.gif in Resources */, + 7D6BE9700F87ED8B00ED364A /* ChatLog.xib in Resources */, + 7D6BE9990F87F6FB00ED364A /* Trade_Engraving.png in Resources */, + 7D1B3B8D0F89ACE9005CA0CD /* Mail.png in Resources */, + 7D1B3B8F0F89AD22005CA0CD /* iChat.png in Resources */, + 7DDCC4860F9EE3BE0085A88E /* InteractWithTarget.png in Resources */, + 03A4047C0FE148C60087BC0D /* mbobbleicon.png in Resources */, + 03D65A591090EC0D00537E9C /* OffsetSignatures.plist in Resources */, + 03C42CCA1096839E0085E888 /* Macros.plist in Resources */, + 03A01B3A109A2CFF00E6098E /* Statistics.xib in Resources */, + 0350738410CDBA460004636E /* SpellCooldown.xib in Resources */, + 038A4B4610E9656D00577D8F /* LastSpellCast.xib in Resources */, + 03B6D25E10F626C500EC6EFF /* RuneCondition.xib in Resources */, + 03168C8C10FE6D2000EF241B /* WaypointActionEditor.xib in Resources */, + 03168DDD10FE90B600EF241B /* DurabilityCondition.xib in Resources */, + 03168DDE10FE90B600EF241B /* InventoryFreeCondition.xib in Resources */, + 03168DDF10FE90B600EF241B /* PlayerLevelCondition.xib in Resources */, + 03168DE010FE90B600EF241B /* PlayerZoneCondition.xib in Resources */, + 03168DE110FE90B600EF241B /* QuestCondition.xib in Resources */, + 03168DE210FE90B600EF241B /* RouteRunCountCondition.xib in Resources */, + 03168DE310FE90B600EF241B /* RouteRunTimeCondition.xib in Resources */, + 03168EDE10FF70C600EF241B /* RepairAction.xib in Resources */, + 0316901010FF84AB00EF241B /* SwitchRouteAction.xib in Resources */, + 031695191101314B00EF241B /* ItemAction.xib in Resources */, + 0316951A1101314B00EF241B /* MacroAction.xib in Resources */, + 0316951B1101314B00EF241B /* SpellAction.xib in Resources */, + 03685DC6110266FC001CE552 /* DelayAction.xib in Resources */, + 03685DDA11026831001CE552 /* JumpAction.xib in Resources */, + 03685FA81103D73B001CE552 /* QuestGrabAction.xib in Resources */, + 03685FA91103D73B001CE552 /* QuestTurnInAction.xib in Resources */, + 614CD78A1106182100BA1B2F /* Bot.xib in Resources */, + 0322D6E211065D8900EF3EEF /* CombatProfileAction.xib in Resources */, + 0393F52D110A558200296CF8 /* ReverseRouteAction.xib in Resources */, + 0393F52E110A558300296CF8 /* VendorAction.xib in Resources */, + 0393F530110A558F00296CF8 /* MailAction.xib in Resources */, + 03FFD45B110B922D0046AEDF /* MobsKilledCondition.xib in Resources */, + 03FFD59A110CB55A0046AEDF /* InteractNPCAction.xib in Resources */, + 03FFD59B110CB55A0046AEDF /* InteractObjectAction.xib in Resources */, + 0341DD60111B0F6B00074CED /* Objects.xib in Resources */, + 03BB222A11225E410048DE7B /* GateCondition.xib in Resources */, + 03BB227B1122F1160048DE7B /* StrandStatus.xib in Resources */, + 03981DE9112B22E90081835F /* dsa_pub.pem in Resources */, + 034126C4113570E100BE6819 /* PvP.xib in Resources */, + 0352F46611376DA5005B28D6 /* PVP.png in Resources */, + 03A3211B114E9AC2000D23EE /* JumpToWaypointAction.xib in Resources */, + 03CD6AC41183D5AC00CCABFE /* Profiles.xib in Resources */, + 0331619611AAF1B900467490 /* appcast.xml in Resources */, + 033C3F3E126CA54C0050DBDC /* buildnumber.xcconfig in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 83A9BBD61178B706003E3683 /* Get SVN Revision */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + comments = foo; + files = ( + ); + inputPaths = ( + ); + name = "Get SVN Revision"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "REV=`/usr/bin/svnversion -nc ${PROJECT_DIR} | /usr/bin/sed -e 's/^[^:]*://;s/[A-Za-z]//'`;echo \"BUILD_NUMBER = $REV\" > ${PROJECT_DIR}/buildnumber.xcconfig\n"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 8D11072C0486CEB800E47090 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 7D1B3A960F898D90005CA0CD /* iChat.app in Sources */, + 7D1B3A5C0F898887005CA0CD /* Mail.app in Sources */, + 8D11072D0486CEB800E47090 /* main.m in Sources */, + 7DAAE71A0D148972003F1E3C /* Controller.m in Sources */, + 7DAAE7220D14897D003F1E3C /* MemoryAccess.m in Sources */, + 7DAAE7690D14917E003F1E3C /* PlayerDataController.m in Sources */, + 7D5A384A0D14B52900E491CD /* NSNumberToHexString.m in Sources */, + 7D7245420D1511F40094665C /* Mob.m in Sources */, + 7DD03DE20D160075000CC1A6 /* MemoryViewController.m in Sources */, + 7DD03F0C0D163F44000CC1A6 /* WaypointController.m in Sources */, + 7DD03F350D163F9A000CC1A6 /* Route.m in Sources */, + 7DD03F380D163FF8000CC1A6 /* Waypoint.m in Sources */, + 7D220F150D1691E90026DF75 /* MobController.m in Sources */, + 7D8343FB0D17231300853E32 /* Position.m in Sources */, + 7DD3D40B0D1B2FEB0023D097 /* SpellController.m in Sources */, + 7DA7B8C30D1DF92B00F81519 /* Spell.m in Sources */, + 7D06F0420D23058B00DA4E99 /* AuraController.m in Sources */, + 7D9712960D248DA0005E3BD1 /* Item.m in Sources */, + 7D9712990D248ED4005E3BD1 /* InventoryController.m in Sources */, + 7D9713C90D24D339005E3BD1 /* Node.m in Sources */, + 7D7A695D0D26F04F0008C3FF /* NodeController.m in Sources */, + 7D7A6A490D270F130008C3FF /* WoWObject.m in Sources */, + 7D9770C10D2D84D700E6D8F9 /* HealthConditionController.m in Sources */, + 7D9771150D2D8C0E00E6D8F9 /* ConditionCell.m in Sources */, + 7D9771180D2D8F6000E6D8F9 /* ConditionController.m in Sources */, + 7D9771780D2D951900E6D8F9 /* BetterSegmentedControl.m in Sources */, + 7D9772050D2DA23D00E6D8F9 /* StatusConditionController.m in Sources */, + 7D9772750D2DA97A00E6D8F9 /* AuraConditionController.m in Sources */, + 7D9772A90D2DB2B300E6D8F9 /* BetterTableView.m in Sources */, + 7D97730F0D2DBF5400E6D8F9 /* RuleEditor.m in Sources */, + 7D65C8F90D2EE14500C50DF7 /* Rule.m in Sources */, + 7D65C8FC0D2EE16B00C50DF7 /* Condition.m in Sources */, + 7D65C9DB0D2EF93100C50DF7 /* ProcedureController.m in Sources */, + 7D65CA480D2F04D200C50DF7 /* Procedure.m in Sources */, + 7D65CC1D0D2F69BB00C50DF7 /* Behavior.m in Sources */, + 7DB2C44A0D3BFE4100100B4D /* BotController.m in Sources */, + 7DC8B44D0D4147CB00B25B45 /* DistanceConditionController.m in Sources */, + 7DC8B4610D4152EC00B25B45 /* InventoryConditionController.m in Sources */, + 7D16598B0D455F6500BDF5CA /* RouteSet.m in Sources */, + 7DC3FF190D57C76D00BEB58B /* BetterAuthorizationSampleLib.c in Sources */, + 7DC3FF2A0D57C7CE00BEB58B /* ToolCommon.c in Sources */, + 7DD64AF60D5D10FA00773CAB /* RouteVisualizationView.m in Sources */, + 7D21677E0DC456A400D5A815 /* PTKeyBroadcaster.m in Sources */, + 7D21677F0DC456A400D5A815 /* PTHotKeyCenter.m in Sources */, + 7D2167800DC456A400D5A815 /* PTKeyCodeTranslator.m in Sources */, + 7D2167810DC456A400D5A815 /* PTHotKey.m in Sources */, + 7D2167820DC456A400D5A815 /* PTKeyCombo.m in Sources */, + 7D70E7E20DC65372006B8826 /* ChatController.m in Sources */, + 7DD1D14F0DD241F60069CB07 /* ComboPointConditionController.m in Sources */, + 7D41E5950DE9FE8800118EA0 /* PlayersController.m in Sources */, + 7D41E5980DEA00A500118EA0 /* Player.m in Sources */, + 7D41E8B80DEA31DD00118EA0 /* ImageAndTextCell.m in Sources */, + 7D41EA110DEB554100118EA0 /* Unit.m in Sources */, + 7D0C43D10DF2089E005F3940 /* ScanGridView.m in Sources */, + 7D0C43F80DF20B0D005F3940 /* TransparentWindow.m in Sources */, + 7DE59CE00E09CABB003C6559 /* NSString+URLEncode.m in Sources */, + 7DBDA6770E0DAE5D0021E180 /* NoAccessApplication.m in Sources */, + 7DAD11660E117BF000B0F7BD /* Macro.m in Sources */, + 7D5496430E1AA073004AA3E9 /* AuraStackConditionController.m in Sources */, + 7DF445530E241ABA0075B96B /* TotemConditionController.m in Sources */, + 7DE983820E2B2BA800F41293 /* NSString+Extras.m in Sources */, + 7DE53DDB0E32B84C00C59033 /* IgnoreEntry.m in Sources */, + 7DB8222F0E33384300661394 /* TempEnchantConditionController.m in Sources */, + 7D45A6CC0E4461DE008A3601 /* NSData+SockAddr.m in Sources */, + 7DBEC7DB0E4512D800994A7A /* GrabWindow.m in Sources */, + 7D7C66BC0E58E92F002A6C96 /* TargetTypeConditionController.m in Sources */, + 7D7C66DD0E58E97D002A6C96 /* CombatCountConditionController.m in Sources */, + 7D7C67160E58EC79002A6C96 /* ProximityCountConditionController.m in Sources */, + 7D7C67190E58EC85002A6C96 /* TargetClassConditionController.m in Sources */, + 7D53C0E90E5E2199007B3AA6 /* UKMainThreadProxy.m in Sources */, + 7D53C0EA0E5E2199007B3AA6 /* UKFileWatcher.m in Sources */, + 7D53C0EB0E5E2199007B3AA6 /* UKKQueue.m in Sources */, + 7D53C0EC0E5E2199007B3AA6 /* UKFNSubscribeFileWatcher.m in Sources */, + 7D370B0D0E7350DD002FE3A4 /* Action.m in Sources */, + 7D370C070E7366DC002FE3A4 /* ActionMenusController.m in Sources */, + 7DB0ADE50EB02F0C00B81BC1 /* Aura.m in Sources */, + 7D5498960F02232500DD46F8 /* FishController.m in Sources */, + 7D1BEDF00F8717CF00DF5FBF /* ChatLogController.m in Sources */, + 7D1BEE530F8733A400DF5FBF /* ChatLogEntry.m in Sources */, + 7D1B39420F896A96005CA0CD /* ChatAction.m in Sources */, + 034429B80FAA3E1800E9DE03 /* Quest.m in Sources */, + 034429BD0FAA3E3800E9DE03 /* QuestItem.m in Sources */, + 034429C00FAA3E5600E9DE03 /* QuestController.m in Sources */, + 03CEF7880FCCD93100B47336 /* Corpse.m in Sources */, + 03CEF7890FCCD93100B47336 /* CorpseController.m in Sources */, + 030C2E4D0FDC09B300E80F7E /* LootController.m in Sources */, + 030604F31088162100C57D77 /* OffsetController.m in Sources */, + 0306057C10881CAE00C57D77 /* MacroController.m in Sources */, + 03A01B0D109A2A9600E6098E /* StatisticsController.m in Sources */, + 0313B4D810BAEA0B009E74E4 /* EventController.m in Sources */, + 0350738910CDBA640004636E /* SpellCooldownConditionController.m in Sources */, + 038709BA10D576E100DF5B90 /* BlacklistController.m in Sources */, + 03567AAD10DDAB52001ACE43 /* CombatController.m in Sources */, + 038A4B4910E9657900577D8F /* LastSpellCastConditionController.m in Sources */, + 03B6D26210F626EA00EC6EFF /* RuneConditionController.m in Sources */, + 03168C7110FE6CCD00EF241B /* WaypointActionEditor.m in Sources */, + 03168DC810FE8BA900EF241B /* DurabilityConditionController.m in Sources */, + 03168E1B10FE972300EF241B /* PlayerLevelConditionController.m in Sources */, + 03168E1E10FE972B00EF241B /* PlayerZoneConditionController.m in Sources */, + 03168E2110FE973900EF241B /* QuestConditionController.m in Sources */, + 03168E2410FE974800EF241B /* RouteRunCountConditionController.m in Sources */, + 03168E2710FE975300EF241B /* RouteRunTimeConditionController.m in Sources */, + 03168E2A10FE975E00EF241B /* InventoryFreeConditionController.m in Sources */, + 03168EE410FF713000EF241B /* ActionController.m in Sources */, + 03168EFE10FF72DF00EF241B /* RepairActionController.m in Sources */, + 0316904710FF89FC00EF241B /* SwitchRouteActionController.m in Sources */, + 031694CD110103C000EF241B /* SpellActionController.m in Sources */, + 031694D0110103CC00EF241B /* ItemActionController.m in Sources */, + 031694D3110103DA00EF241B /* MacroActionController.m in Sources */, + 031694D6110103E000EF241B /* DelayActionController.m in Sources */, + 031694D9110103E900EF241B /* JumpActionController.m in Sources */, + 03685FAD1103D768001CE552 /* QuestGrabActionController.m in Sources */, + 03685FB01103D77A001CE552 /* QuestTurnInActionController.m in Sources */, + 0322D6DA11065D0800EF3EEF /* CombatProfileActionController.m in Sources */, + 0393F533110A55DB00296CF8 /* MailActionController.m in Sources */, + 0393F536110A55E300296CF8 /* VendorActionController.m in Sources */, + 0393F539110A55EF00296CF8 /* ReverseRouteActionController.m in Sources */, + 03FFD46E110B930F0046AEDF /* MobsKilledConditionController.m in Sources */, + 03FFD596110CB5440046AEDF /* InteractNPCActionController.m in Sources */, + 03FFD597110CB5440046AEDF /* InteractObjectActionController.m in Sources */, + 03E1D7B8110F62CD003180E4 /* FileObject.m in Sources */, + 03BD330E11120A7A00941971 /* BindingsController.m in Sources */, + 0341DD66111B0FBE00074CED /* ObjectsController.m in Sources */, + 0341DDDA111B21D700074CED /* ObjectController.m in Sources */, + 03BB221A112258A00048DE7B /* GateConditionController.m in Sources */, + 03BB227E1122F1240048DE7B /* StrandStatusConditionController.m in Sources */, + 038769151124532000B2C571 /* RouteCollection.m in Sources */, + 03981E78112B898E0081835F /* MovementController.m in Sources */, + 03981F38112C819E0081835F /* LogController.m in Sources */, + 034126C11135706E00BE6819 /* PvPController.m in Sources */, + 034126E61135774100BE6819 /* Battleground.m in Sources */, + 034126E91135774A00BE6819 /* PvPBehavior.m in Sources */, + 03A320D5114E88A9000D23EE /* JumpToWaypointActionController.m in Sources */, + 03BE961A11828343004DBFBF /* FileController.m in Sources */, + D02F3C561182C37E000F4037 /* DatabaseManager.m in Sources */, + D02F3C5D1182C497000F4037 /* MailActionProfile.m in Sources */, + D02F3C601182C5AC000F4037 /* ProfileController.m in Sources */, + D02F3C871182C975000F4037 /* Profile.m in Sources */, + 0362CDDE11A99CED00EA65B2 /* CombatProfile.m in Sources */, + 03FE91E2125FB5DB00A40445 /* lapi.c in Sources */, + 03FE91E3125FB5DB00A40445 /* lauxlib.c in Sources */, + 03FE91E4125FB5DB00A40445 /* lbaselib.c in Sources */, + 03FE91E5125FB5DB00A40445 /* lcode.c in Sources */, + 03FE91E6125FB5DB00A40445 /* ldblib.c in Sources */, + 03FE91E7125FB5DB00A40445 /* ldebug.c in Sources */, + 03FE91E8125FB5DB00A40445 /* ldo.c in Sources */, + 03FE91E9125FB5DB00A40445 /* ldump.c in Sources */, + 03FE91EA125FB5DB00A40445 /* lfunc.c in Sources */, + 03FE91EB125FB5DB00A40445 /* lgc.c in Sources */, + 03FE91EC125FB5DB00A40445 /* linit.c in Sources */, + 03FE91ED125FB5DB00A40445 /* liolib.c in Sources */, + 03FE91EE125FB5DB00A40445 /* llex.c in Sources */, + 03FE91EF125FB5DB00A40445 /* lmathlib.c in Sources */, + 03FE91F0125FB5DB00A40445 /* lmem.c in Sources */, + 03FE91F1125FB5DB00A40445 /* loadlib.c in Sources */, + 03FE91F2125FB5DB00A40445 /* lobject.c in Sources */, + 03FE91F3125FB5DB00A40445 /* lopcodes.c in Sources */, + 03FE91F4125FB5DB00A40445 /* loslib.c in Sources */, + 03FE91F5125FB5DB00A40445 /* lparser.c in Sources */, + 03FE91F6125FB5DB00A40445 /* lstate.c in Sources */, + 03FE91F7125FB5DB00A40445 /* lstring.c in Sources */, + 03FE91F8125FB5DB00A40445 /* lstrlib.c in Sources */, + 03FE91F9125FB5DB00A40445 /* ltable.c in Sources */, + 03FE91FA125FB5DB00A40445 /* ltablib.c in Sources */, + 03FE91FB125FB5DB00A40445 /* ltm.c in Sources */, + 03FE91FC125FB5DB00A40445 /* lundump.c in Sources */, + 03FE91FD125FB5DB00A40445 /* lvm.c in Sources */, + 03FE91FE125FB5DB00A40445 /* lzio.c in Sources */, + 03FE91FF125FB5DB00A40445 /* print.c in Sources */, + 0344CB231267D0E700B4A9C7 /* LuaController.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { + isa = PBXVariantGroup; + children = ( + 089C165DFE840E0CC02AAC07 /* English */, + ); + name = InfoPlist.strings; + sourceTree = ""; + }; + 7D3C91EA0E47C8C700EDF3B3 /* Gathering.plist */ = { + isa = PBXVariantGroup; + children = ( + 7D9714760D24F16C005E3BD1 /* English */, + 7D3C91EC0E47C8EA00EDF3B3 /* French */, + ); + name = Gathering.plist; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + C01FCF4B08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + COPY_PHASE_STRIP = NO; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)\"", + ); + GCC_DYNAMIC_NO_PIC = NO; + GCC_ENABLE_FIX_AND_CONTINUE = YES; + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = 1; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = PocketGnome_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = PGLOGGING; + GCC_PREPROCESSOR_DEFINITIONS_NOT_USED_IN_PRECOMPS = ""; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = NO; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = ggteabag; + VALID_ARCHS = "ppc i386"; + WRAPPER_EXTENSION = app; + ZERO_LINK = YES; + }; + name = Debug; + }; + C01FCF4C08A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ARCHS = "$(ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_BIT_PRE_XCODE_3_1 = "ppc i386"; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + FRAMEWORK_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)\"", + ); + GCC_MODEL_TUNING = G5; + GCC_OPTIMIZATION_LEVEL = s; + GCC_PRECOMPILE_PREFIX_HEADER = YES; + GCC_PREFIX_HEADER = PocketGnome_Prefix.pch; + GCC_PREPROCESSOR_DEFINITIONS = NDEBUG; + GCC_WARN_64_TO_32_BIT_CONVERSION = NO; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = NO; + GCC_WARN_UNUSED_PARAMETER = NO; + INFOPLIST_FILE = Info.plist; + INSTALL_PATH = "$(HOME)/Applications"; + PRODUCT_NAME = "Pocket Gnome"; + VALID_ARCHS = "ppc i386"; + WARNING_CFLAGS = ""; + WRAPPER_EXTENSION = app; + }; + name = Release; + }; + C01FCF4F08A954540054247B /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALTERNATE_GROUP = "$(INSTALL_GROUP)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = "PGLOGGING=1"; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + }; + name = Debug; + }; + C01FCF5008A954540054247B /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALTERNATE_GROUP = "$(INSTALL_GROUP)"; + ARCHS = "$(ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1)"; + ARCHS_STANDARD_32_64_BIT_PRE_XCODE_3_1 = "x86_64 i386 ppc"; + GCC_DYNAMIC_NO_PIC = YES; + GCC_VERSION = com.apple.compilers.llvm.clang.1_0; + GCC_WARN_ABOUT_RETURN_TYPE = YES; + GCC_WARN_CHECK_SWITCH_STATEMENTS = YES; + GCC_WARN_MISSING_PARENTHESES = YES; + GCC_WARN_SHADOW = NO; + GCC_WARN_SIGN_COMPARE = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_LABEL = YES; + GCC_WARN_UNUSED_PARAMETER = YES; + GCC_WARN_UNUSED_VALUE = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.5; + PREBINDING = NO; + SDKROOT = "$(DEVELOPER_SDK_DIR)/MacOSX10.5.sdk"; + WARNING_CFLAGS = "-Wall"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Pocket Gnome" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4B08A954540054247B /* Debug */, + C01FCF4C08A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Pocket Gnome" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + C01FCF4F08A954540054247B /* Debug */, + C01FCF5008A954540054247B /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; +} diff --git a/Pocket Gnome.xcodeproj/root.mode1v3 b/Pocket Gnome.xcodeproj/root.mode1v3 new file mode 100644 index 0000000..026cf48 --- /dev/null +++ b/Pocket Gnome.xcodeproj/root.mode1v3 @@ -0,0 +1,1408 @@ + + + + + ActivePerspectiveName + Project + AllowedModules + + + BundleLoadPath + + MaxInstances + n + Module + PBXSmartGroupTreeModule + Name + Groups and Files Outline View + + + BundleLoadPath + + MaxInstances + n + Module + PBXNavigatorGroup + Name + Editor + + + BundleLoadPath + + MaxInstances + n + Module + XCTaskListModule + Name + Task List + + + BundleLoadPath + + MaxInstances + n + Module + XCDetailModule + Name + File and Smart Group Detail Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXBuildResultsModule + Name + Detailed Build Results Viewer + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXProjectFindModule + Name + Project Batch Find Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCProjectFormatConflictsModule + Name + Project Format Conflicts List + + + BundleLoadPath + + MaxInstances + n + Module + PBXBookmarksModule + Name + Bookmarks Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXClassBrowserModule + Name + Class Browser + + + BundleLoadPath + + MaxInstances + n + Module + PBXCVSModule + Name + Source Code Control Tool + + + BundleLoadPath + + MaxInstances + n + Module + PBXDebugBreakpointsModule + Name + Debug Breakpoints Tool + + + BundleLoadPath + + MaxInstances + n + Module + XCDockableInspector + Name + Inspector + + + BundleLoadPath + + MaxInstances + n + Module + PBXOpenQuicklyModule + Name + Open Quickly Tool + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugSessionModule + Name + Debugger + + + BundleLoadPath + + MaxInstances + 1 + Module + PBXDebugCLIModule + Name + Debug Console + + + BundleLoadPath + + MaxInstances + n + Module + XCSnapshotModule + Name + Snapshots Tool + + + BundlePath + /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources + Description + DefaultDescriptionKey + DockingSystemVisible + + Extension + mode1v3 + FavBarConfig + + PBXProjectModuleGUID + 61BC61CA1267AAC7003921B0 + XCBarModuleItemNames + + XCBarModuleItems + + + FirstTimeWindowDisplayed + + Identifier + com.apple.perspectives.project.mode1v3 + MajorVersion + 33 + MinorVersion + 0 + Name + Default + Notifications + + OpenEditors + + PerspectiveWidths + + -1 + -1 + + Perspectives + + + ChosenToolbarItems + + active-combo-popup + action + NSToolbarFlexibleSpaceItem + debugger-enable-breakpoints + build-and-go + com.apple.ide.PBXToolbarStopButton + get-info + NSToolbarFlexibleSpaceItem + com.apple.pbx.toolbar.searchfield + + ControllerClassBaseName + + IconName + WindowOfProjectWithEditor + Identifier + perspective.project + IsVertical + + Layout + + + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 232 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 29B97314FDCFA39411CA2CEA + 080E96DDFE201D6D7F000001 + 29B97315FDCFA39411CA2CEA + 29B97317FDCFA39411CA2CEA + 1C37FABC05509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 105 + 83 + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 1317}, {232, 706}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + + XCSharingToken + com.apple.Xcode.GFSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {249, 724}} + GroupTreeTableConfiguration + + MainColumn + 232 + + RubberWindowFrame + 362 392 1241 765 0 0 1920 1178 + + Module + PBXSmartGroupTreeModule + Proportion + 249pt + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + 1CE0B20306471E060097A5F4 + PBXProjectModuleLabel + SpellController.m + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CE0B20406471E060097A5F4 + PBXProjectModuleLabel + SpellController.m + _historyCapacity + 0 + bookmark + 61BC621F1267AED1003921B0 + history + + 61BC62071267AD4B003921B0 + 61BC621D1267AED1003921B0 + 61BC621E1267AED1003921B0 + + + SplitCount + 1 + + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {987, 538}} + RubberWindowFrame + 362 392 1241 765 0 0 1920 1178 + + Module + PBXNavigatorGroup + Proportion + 538pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CE0B20506471E060097A5F4 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{0, 543}, {987, 181}} + RubberWindowFrame + 362 392 1241 765 0 0 1920 1178 + + Module + XCDetailModule + Proportion + 181pt + + + Proportion + 987pt + + + Name + Project + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + XCModuleDock + PBXNavigatorGroup + XCDetailModule + + TableOfContents + + 61BC61C81267AAC7003921B0 + 1CE0B1FE06471DED0097A5F4 + 61BC61C91267AAC7003921B0 + 1CE0B20306471E060097A5F4 + 1CE0B20506471E060097A5F4 + + ToolbarConfigUserDefaultsMinorVersion + 2 + ToolbarConfiguration + xcode.toolbar.config.defaultV3 + + + ControllerClassBaseName + + IconName + WindowOfProject + Identifier + perspective.morph + IsVertical + 0 + Layout + + + BecomeActive + 1 + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C37FBAC04509CD000000102 + 1C37FAAC04509CD000000102 + 1C08E77C0454961000C914BD + 1C37FABC05509CD000000102 + 1C37FABC05539CD112110102 + E2644B35053B69B200211256 + 1C37FABC04509CD000100104 + 1CC0EA4004350EF90044410B + 1CC0EA4004350EF90041110B + + PBXProjectModuleGUID + 11E0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + yes + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 186 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 29B97314FDCFA39411CA2CEA + 1C37FABC05509CD000000102 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {186, 337}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + 1 + XCSharingToken + com.apple.Xcode.GFSharingToken + + GeometryConfiguration + + Frame + {{0, 0}, {203, 355}} + GroupTreeTableConfiguration + + MainColumn + 186 + + RubberWindowFrame + 373 269 690 397 0 0 1440 878 + + Module + PBXSmartGroupTreeModule + Proportion + 100% + + + Name + Morph + PreferredWidth + 300 + ServiceClasses + + XCModuleDock + PBXSmartGroupTreeModule + + TableOfContents + + 11E0B1FE06471DED0097A5F4 + + ToolbarConfiguration + xcode.toolbar.config.default.shortV3 + + + PerspectivesBarVisible + + ShelfIsVisible + + SourceDescription + file at '/Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec' + StatusbarIsVisible + + TimeStamp + 0.0 + ToolbarConfigUserDefaultsMinorVersion + 2 + ToolbarDisplayMode + 1 + ToolbarIsVisible + + ToolbarSizeMode + 1 + Type + Perspectives + UpdateMessage + The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? + WindowJustification + 5 + WindowOrderList + + 61BC61EC1267AC21003921B0 + 61BC61EE1267AC21003921B0 + 61BC61EF1267AC21003921B0 + 1C78EAAD065D492600B07095 + 1CD10A99069EF8BA00B06720 + 61BC61CB1267AAC7003921B0 + /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj + + WindowString + 362 392 1241 765 0 0 1920 1178 + WindowToolsV3 + + + FirstTimeWindowDisplayed + + Identifier + windowTool.build + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528F0623707200166675 + PBXProjectModuleLabel + + StatusBarVisibility + + + GeometryConfiguration + + Frame + {{0, 0}, {1074, 203}} + RubberWindowFrame + 565 515 1074 485 0 0 1920 1178 + + Module + PBXNavigatorGroup + Proportion + 203pt + + + BecomeActive + + ContentConfiguration + + PBXProjectModuleGUID + XCMainBuildResultsModuleGUID + PBXProjectModuleLabel + Build Results + XCBuildResultsTrigger_Collapse + 1021 + XCBuildResultsTrigger_Open + 1011 + + GeometryConfiguration + + Frame + {{0, 208}, {1074, 236}} + RubberWindowFrame + 565 515 1074 485 0 0 1920 1178 + + Module + PBXBuildResultsModule + Proportion + 236pt + + + Proportion + 444pt + + + Name + Build Results + ServiceClasses + + PBXBuildResultsModule + + StatusbarIsVisible + + TableOfContents + + 61BC61CB1267AAC7003921B0 + 61BC61CC1267AAC7003921B0 + 1CD0528F0623707200166675 + XCMainBuildResultsModuleGUID + + ToolbarConfiguration + xcode.toolbar.config.buildV3 + WindowContentMinSize + 486 300 + WindowString + 565 515 1074 485 0 0 1920 1178 + WindowToolGUID + 61BC61CB1267AAC7003921B0 + WindowToolIsVisible + + + + FirstTimeWindowDisplayed + + Identifier + windowTool.debugger + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + Debugger + + HorizontalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {556, 335}} + {{556, 0}, {665, 335}} + + + VerticalSplitView + + _collapsingFrameDimension + 0.0 + _indexOfCollapsedView + 0 + _percentageOfCollapsedView + 0.0 + isCollapsed + yes + sizes + + {{0, 0}, {1221, 335}} + {{0, 335}, {1221, 354}} + + + + LauncherConfigVersion + 8 + PBXProjectModuleGUID + 1C162984064C10D400B95A72 + PBXProjectModuleLabel + Debug - GLUTExamples (Underwater) + + GeometryConfiguration + + DebugConsoleVisible + None + DebugConsoleWindowFrame + {{200, 200}, {500, 300}} + DebugSTDIOWindowFrame + {{200, 200}, {500, 300}} + Frame + {{0, 0}, {1221, 689}} + PBXDebugSessionStackFrameViewKey + + DebugVariablesTableConfiguration + + Name + 120 + Value + 85 + Summary + 435 + + Frame + {{556, 0}, {665, 335}} + RubberWindowFrame + 207 425 1221 730 0 0 1920 1178 + + RubberWindowFrame + 207 425 1221 730 0 0 1920 1178 + + Module + PBXDebugSessionModule + Proportion + 689pt + + + Proportion + 689pt + + + Name + Debugger + ServiceClasses + + PBXDebugSessionModule + + StatusbarIsVisible + + TableOfContents + + 1CD10A99069EF8BA00B06720 + 61BC61E51267AC21003921B0 + 1C162984064C10D400B95A72 + 61BC61E61267AC21003921B0 + 61BC61E71267AC21003921B0 + 61BC61E81267AC21003921B0 + 61BC61E91267AC21003921B0 + 61BC61EA1267AC21003921B0 + + ToolbarConfiguration + xcode.toolbar.config.debugV3 + WindowString + 207 425 1221 730 0 0 1920 1178 + WindowToolGUID + 1CD10A99069EF8BA00B06720 + WindowToolIsVisible + + + + Identifier + windowTool.find + Layout + + + Dock + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1CDD528C0622207200134675 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1CD0528D0623707200166675 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {781, 167}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXNavigatorGroup + Proportion + 781pt + + + Proportion + 50% + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD0528E0623707200166675 + PBXProjectModuleLabel + Project Find + + GeometryConfiguration + + Frame + {{8, 0}, {773, 254}} + RubberWindowFrame + 62 385 781 470 0 0 1440 878 + + Module + PBXProjectFindModule + Proportion + 50% + + + Proportion + 428pt + + + Name + Project Find + ServiceClasses + + PBXProjectFindModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C530D57069F1CE1000CFCEE + 1C530D58069F1CE1000CFCEE + 1C530D59069F1CE1000CFCEE + 1CDD528C0622207200134675 + 1C530D5A069F1CE1000CFCEE + 1CE0B1FE06471DED0097A5F4 + 1CD0528E0623707200166675 + + WindowString + 62 385 781 470 0 0 1440 878 + WindowToolGUID + 1C530D57069F1CE1000CFCEE + WindowToolIsVisible + 0 + + + Identifier + MENUSEPARATOR + + + FirstTimeWindowDisplayed + + Identifier + windowTool.debuggerConsole + IsVertical + + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAAC065D492600B07095 + PBXProjectModuleLabel + Debugger Console + + GeometryConfiguration + + Frame + {{0, 0}, {650, 209}} + RubberWindowFrame + 356 894 650 250 0 0 1920 1178 + + Module + PBXDebugCLIModule + Proportion + 209pt + + + Proportion + 209pt + + + Name + Debugger Console + ServiceClasses + + PBXDebugCLIModule + + StatusbarIsVisible + + TableOfContents + + 1C78EAAD065D492600B07095 + 61BC61EB1267AC21003921B0 + 1C78EAAC065D492600B07095 + + ToolbarConfiguration + xcode.toolbar.config.consoleV3 + WindowString + 356 894 650 250 0 0 1920 1178 + WindowToolGUID + 1C78EAAD065D492600B07095 + WindowToolIsVisible + + + + Identifier + windowTool.snapshots + Layout + + + Dock + + + Module + XCSnapshotModule + Proportion + 100% + + + Proportion + 100% + + + Name + Snapshots + ServiceClasses + + XCSnapshotModule + + StatusbarIsVisible + Yes + ToolbarConfiguration + xcode.toolbar.config.snapshots + WindowString + 315 824 300 550 0 0 1440 878 + WindowToolIsVisible + Yes + + + Identifier + windowTool.scm + Layout + + + Dock + + + ContentConfiguration + + PBXProjectModuleGUID + 1C78EAB2065D492600B07095 + PBXProjectModuleLabel + <No Editor> + PBXSplitModuleInNavigatorKey + + Split0 + + PBXProjectModuleGUID + 1C78EAB3065D492600B07095 + + SplitCount + 1 + + StatusBarVisibility + 1 + + GeometryConfiguration + + Frame + {{0, 0}, {452, 0}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + + Module + PBXNavigatorGroup + Proportion + 0pt + + + BecomeActive + 1 + ContentConfiguration + + PBXProjectModuleGUID + 1CD052920623707200166675 + PBXProjectModuleLabel + SCM + + GeometryConfiguration + + ConsoleFrame + {{0, 259}, {452, 0}} + Frame + {{0, 7}, {452, 259}} + RubberWindowFrame + 743 379 452 308 0 0 1280 1002 + TableConfiguration + + Status + 30 + FileName + 199 + Path + 197.0950012207031 + + TableFrame + {{0, 0}, {452, 250}} + + Module + PBXCVSModule + Proportion + 262pt + + + Proportion + 266pt + + + Name + SCM + ServiceClasses + + PBXCVSModule + + StatusbarIsVisible + 1 + TableOfContents + + 1C78EAB4065D492600B07095 + 1C78EAB5065D492600B07095 + 1C78EAB2065D492600B07095 + 1CD052920623707200166675 + + ToolbarConfiguration + xcode.toolbar.config.scm + WindowString + 743 379 452 308 0 0 1280 1002 + + + FirstTimeWindowDisplayed + + Identifier + windowTool.breakpoints + IsVertical + + Layout + + + Dock + + + BecomeActive + + ContentConfiguration + + PBXBottomSmartGroupGIDs + + 1C77FABC04509CD000000102 + + PBXProjectModuleGUID + 1CE0B1FE06471DED0097A5F4 + PBXProjectModuleLabel + Files + PBXProjectStructureProvided + no + PBXSmartGroupTreeModuleColumnData + + PBXSmartGroupTreeModuleColumnWidthsKey + + 168 + + PBXSmartGroupTreeModuleColumnsKey_v4 + + MainColumn + + + PBXSmartGroupTreeModuleOutlineStateKey_v7 + + PBXSmartGroupTreeModuleOutlineStateExpansionKey + + 1C77FABC04509CD000000102 + 1C3E0DCA080725EA00A55177 + 1C3E0DCC080725EA11A45113 + + PBXSmartGroupTreeModuleOutlineStateSelectionKey + + + 4 + 0 + + + PBXSmartGroupTreeModuleOutlineStateVisibleRectKey + {{0, 0}, {168, 350}} + + PBXTopSmartGroupGIDs + + XCIncludePerspectivesSwitch + + + GeometryConfiguration + + Frame + {{0, 0}, {185, 368}} + GroupTreeTableConfiguration + + MainColumn + 168 + + RubberWindowFrame + 228 723 744 409 0 0 1920 1178 + + Module + PBXSmartGroupTreeModule + Proportion + 185pt + + + ContentConfiguration + + PBXProjectModuleGUID + 1CA1AED706398EBD00589147 + PBXProjectModuleLabel + Detail + + GeometryConfiguration + + Frame + {{190, 0}, {554, 368}} + RubberWindowFrame + 228 723 744 409 0 0 1920 1178 + + Module + XCDetailModule + Proportion + 554pt + + + Proportion + 368pt + + + MajorVersion + 3 + MinorVersion + 0 + Name + Breakpoints + ServiceClasses + + PBXSmartGroupTreeModule + XCDetailModule + + StatusbarIsVisible + + TableOfContents + + 61BC61EC1267AC21003921B0 + 61BC61ED1267AC21003921B0 + 1CE0B1FE06471DED0097A5F4 + 1CA1AED706398EBD00589147 + + ToolbarConfiguration + xcode.toolbar.config.breakpointsV3 + WindowString + 228 723 744 409 0 0 1920 1178 + WindowToolGUID + 61BC61EC1267AC21003921B0 + WindowToolIsVisible + + + + Identifier + windowTool.debugAnimator + Layout + + + Dock + + + Module + PBXNavigatorGroup + Proportion + 100% + + + Proportion + 100% + + + Name + Debug Visualizer + ServiceClasses + + PBXNavigatorGroup + + StatusbarIsVisible + 1 + ToolbarConfiguration + xcode.toolbar.config.debugAnimatorV3 + WindowString + 100 100 700 500 0 0 1280 1002 + + + Identifier + windowTool.bookmarks + Layout + + + Dock + + + Module + PBXBookmarksModule + Proportion + 100% + + + Proportion + 100% + + + Name + Bookmarks + ServiceClasses + + PBXBookmarksModule + + StatusbarIsVisible + 0 + WindowString + 538 42 401 187 0 0 1280 1002 + + + Identifier + windowTool.projectFormatConflicts + Layout + + + Dock + + + Module + XCProjectFormatConflictsModule + Proportion + 100% + + + Proportion + 100% + + + Name + Project Format Conflicts + ServiceClasses + + XCProjectFormatConflictsModule + + StatusbarIsVisible + 0 + WindowContentMinSize + 450 300 + WindowString + 50 850 472 307 0 0 1440 877 + + + Identifier + windowTool.classBrowser + Layout + + + Dock + + + BecomeActive + 1 + ContentConfiguration + + OptionsSetName + Hierarchy, all classes + PBXProjectModuleGUID + 1CA6456E063B45B4001379D8 + PBXProjectModuleLabel + Class Browser - NSObject + + GeometryConfiguration + + ClassesFrame + {{0, 0}, {374, 96}} + ClassesTreeTableConfiguration + + PBXClassNameColumnIdentifier + 208 + PBXClassBookColumnIdentifier + 22 + + Frame + {{0, 0}, {630, 331}} + MembersFrame + {{0, 105}, {374, 395}} + MembersTreeTableConfiguration + + PBXMemberTypeIconColumnIdentifier + 22 + PBXMemberNameColumnIdentifier + 216 + PBXMemberTypeColumnIdentifier + 97 + PBXMemberBookColumnIdentifier + 22 + + PBXModuleWindowStatusBarHidden2 + 1 + RubberWindowFrame + 385 179 630 352 0 0 1440 878 + + Module + PBXClassBrowserModule + Proportion + 332pt + + + Proportion + 332pt + + + Name + Class Browser + ServiceClasses + + PBXClassBrowserModule + + StatusbarIsVisible + 0 + TableOfContents + + 1C0AD2AF069F1E9B00FABCE6 + 1C0AD2B0069F1E9B00FABCE6 + 1CA6456E063B45B4001379D8 + + ToolbarConfiguration + xcode.toolbar.config.classbrowser + WindowString + 385 179 630 352 0 0 1440 878 + WindowToolGUID + 1C0AD2AF069F1E9B00FABCE6 + WindowToolIsVisible + 0 + + + Identifier + windowTool.refactoring + IncludeInToolsMenu + 0 + Layout + + + Dock + + + BecomeActive + 1 + GeometryConfiguration + + Frame + {0, 0}, {500, 335} + RubberWindowFrame + {0, 0}, {500, 335} + + Module + XCRefactoringModule + Proportion + 100% + + + Proportion + 100% + + + Name + Refactoring + ServiceClasses + + XCRefactoringModule + + WindowString + 200 200 500 356 0 0 1920 1200 + + + + diff --git a/Pocket Gnome.xcodeproj/root.pbxuser b/Pocket Gnome.xcodeproj/root.pbxuser new file mode 100644 index 0000000..3b33a05 --- /dev/null +++ b/Pocket Gnome.xcodeproj/root.pbxuser @@ -0,0 +1,244 @@ +// !$*UTF8*$! +{ + 29B97313FDCFA39411CA2CEA /* Project object */ = { + activeBuildConfigurationName = Debug; + activeExecutable = 61BC61A41267AAAA003921B0 /* Pocket Gnome */; + activeTarget = 8D1107260486CEB800E47090 /* Pocket Gnome */; + breakpoints = ( + 61BC61F51267ACAB003921B0 /* objc_exception_throw */, + 61BC620E1267AD7B003921B0 /* CGErrorBreakpoint */, + ); + codeSenseManager = 61BC61CE1267AAC7003921B0 /* Code sense */; + executables = ( + 61BC61A41267AAAA003921B0 /* Pocket Gnome */, + ); + perUserDictionary = { + "PBXConfiguration.PBXBreakpointsDataSource.v1:1CA1AED706398EBD00589147" = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXBreakpointsDataSource_BreakpointID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 20, + 198, + 20, + 99, + 99, + 29, + 20, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXBreakpointsDataSource_ActionID, + PBXBreakpointsDataSource_TypeID, + PBXBreakpointsDataSource_BreakpointID, + PBXBreakpointsDataSource_UseID, + PBXBreakpointsDataSource_LocationID, + PBXBreakpointsDataSource_ConditionID, + PBXBreakpointsDataSource_IgnoreCountID, + PBXBreakpointsDataSource_ContinueID, + ); + }; + PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { + PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; + PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; + PBXFileTableDataSourceColumnWidthsKey = ( + 20, + 748, + 20, + 48.16259765625, + 43, + 43, + 20, + ); + PBXFileTableDataSourceColumnsKey = ( + PBXFileDataSource_FiletypeID, + PBXFileDataSource_Filename_ColumnID, + PBXFileDataSource_Built_ColumnID, + PBXFileDataSource_ObjectSize_ColumnID, + PBXFileDataSource_Errors_ColumnID, + PBXFileDataSource_Warnings_ColumnID, + PBXFileDataSource_Target_ColumnID, + ); + }; + PBXPerProjectTemplateStateSaveDate = 308783787; + PBXWorkspaceStateSaveDate = 308783787; + }; + perUserProjectItems = { + 61BC62071267AD4B003921B0 /* PBXTextBookmark */ = 61BC62071267AD4B003921B0 /* PBXTextBookmark */; + 61BC621D1267AED1003921B0 /* PBXTextBookmark */ = 61BC621D1267AED1003921B0 /* PBXTextBookmark */; + 61BC621E1267AED1003921B0 /* PBXTextBookmark */ = 61BC621E1267AED1003921B0 /* PBXTextBookmark */; + 61BC621F1267AED1003921B0 /* PBXTextBookmark */ = 61BC621F1267AED1003921B0 /* PBXTextBookmark */; + }; + sourceControlManager = 61BC61CD1267AAC7003921B0 /* Source Control */; + userBuildSettings = { + }; + }; + 61BC61A41267AAAA003921B0 /* Pocket Gnome */ = { + isa = PBXExecutable; + activeArgIndices = ( + ); + argumentStrings = ( + ); + autoAttachOnCrash = 1; + breakpointsEnabled = 1; + configStateDict = { + }; + customDataFormattersEnabled = 1; + dataTipCustomDataFormattersEnabled = 1; + dataTipShowTypeColumn = 1; + dataTipSortType = 0; + debuggerPlugin = GDBDebugging; + disassemblyDisplayState = 0; + dylibVariantSuffix = ""; + enableDebugStr = 1; + environmentEntries = ( + ); + executableSystemSymbolLevel = 0; + executableUserSymbolLevel = 0; + libgmallocEnabled = 0; + name = "Pocket Gnome"; + savedGlobals = { + }; + showTypeColumn = 0; + sourceDirectories = ( + ); + }; + 61BC61CD1267AAC7003921B0 /* Source Control */ = { + isa = PBXSourceControlManager; + fallbackIsa = XCSourceControlManager; + isSCMEnabled = 0; + scmConfiguration = { + repositoryNamesForRoots = { + "" = ""; + }; + }; + }; + 61BC61CE1267AAC7003921B0 /* Code sense */ = { + isa = PBXCodeSenseManager; + indexTemplatePath = ""; + }; + 61BC61F51267ACAB003921B0 /* objc_exception_throw */ = { + isa = PBXSymbolicBreakpoint; + actions = ( + ); + breakpointStyle = 1; + continueAfterActions = 0; + countType = 0; + delayBeforeContinue = 0; + hitCount = 1; + ignoreCount = 0; + location = libobjc.A.dylib; + modificationTime = 308784408.171695; + originalNumberOfMultipleMatches = 1; + state = 1; + symbolName = objc_exception_throw; + }; + 61BC62071267AD4B003921B0 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */; + name = "MemoryAccess.h: 1"; + rLen = 0; + rLoc = 0; + rType = 0; + vrLen = 1389; + vrLoc = 0; + }; + 61BC620E1267AD7B003921B0 /* CGErrorBreakpoint */ = { + isa = PBXSymbolicBreakpoint; + breakpointStyle = 1; + continueAfterActions = 0; + countType = 0; + delayBeforeContinue = 0; + hitCount = 0; + ignoreCount = 0; + modificationTime = 308784507.6338; + originalNumberOfMultipleMatches = 0; + state = 0; + symbolName = CGErrorBreakpoint; + }; + 61BC621D1267AED1003921B0 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */; + name = "MemoryAccess.m: 183"; + rLen = 0; + rLoc = 5729; + rType = 0; + vrLen = 1260; + vrLoc = 5157; + }; + 61BC621E1267AED1003921B0 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */; + name = "SpellController.m: 173"; + rLen = 0; + rLoc = 5187; + rType = 0; + vrLen = 1791; + vrLoc = 4258; + }; + 61BC621F1267AED1003921B0 /* PBXTextBookmark */ = { + isa = PBXTextBookmark; + fRef = 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */; + name = "SpellController.m: 171"; + rLen = 0; + rLoc = 5159; + rType = 0; + vrLen = 1610; + vrLoc = 4722; + }; + 7D220F140D1691E90026DF75 /* MobController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1160, 9230}}"; + sepNavSelRange = "{14452, 0}"; + sepNavVisRange = "{14066, 629}"; + }; + }; + 7D9712980D248ED4005E3BD1 /* InventoryController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1160, 10868}}"; + sepNavSelRange = "{22816, 0}"; + sepNavVisRange = "{22145, 584}"; + }; + }; + 7DAAE7190D148972003F1E3C /* Controller.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1629, 27079}}"; + sepNavSelRange = "{23622, 0}"; + sepNavVisRange = "{18541, 892}"; + }; + }; + 7DAAE71F0D14897D003F1E3C /* MemoryAccess.h */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {926, 1092}}"; + sepNavSelRange = "{0, 0}"; + sepNavVisRange = "{0, 1389}"; + }; + }; + 7DAAE7200D14897D003F1E3C /* MemoryAccess.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1069, 4056}}"; + sepNavSelRange = "{5729, 0}"; + sepNavVisRange = "{5157, 1260}"; + sepNavWindowFrame = "{{15, 615}, {750, 558}}"; + }; + }; + 7DAAE7680D14917E003F1E3C /* PlayerDataController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1384, 18603}}"; + sepNavSelRange = "{12540, 0}"; + sepNavVisRange = "{8021, 1240}"; + }; + }; + 7DD3D40A0D1B2FEB0023D097 /* SpellController.m */ = { + uiCtxt = { + sepNavIntBoundsRect = "{{0, 0}, {1160, 13910}}"; + sepNavSelRange = "{5187, 0}"; + sepNavVisRange = "{4580, 1250}"; + }; + }; + 8D1107260486CEB800E47090 /* Pocket Gnome */ = { + activeExec = 0; + executables = ( + 61BC61A41267AAAA003921B0 /* Pocket Gnome */, + ); + }; +} diff --git a/PocketGnome_Prefix.pch b/PocketGnome_Prefix.pch new file mode 100644 index 0000000..00c4a36 --- /dev/null +++ b/PocketGnome_Prefix.pch @@ -0,0 +1,28 @@ +// +// Prefix header for all source files of the 'Pocket Gnome' target in the 'Pocket Gnome' project +// + +#ifdef __OBJC__ + #import + #import "LogController.h" + #import "Globals.h" + + typedef UInt64 GUID; + + #define IS_X86 (CFByteOrderGetCurrent() == CFByteOrderLittleEndian) + #define IS_PPC (CFByteOrderGetCurrent() == CFByteOrderBigEndian) + + + #ifdef PGLOGGING + # define PGLog(...) if(true) { NSLog(@"%s:%i %s: %@", [[[NSString stringWithCString:__FILE__ encoding:NSUTF8StringEncoding] lastPathComponent] UTF8String], __LINE__, __PRETTY_FUNCTION__, [NSString stringWithFormat:__VA_ARGS__]); } + #else + # define PGLog(...) if(true) { NSLog(__VA_ARGS__); } + #endif + + #define TRUE_FALSE(x) (x ? @"TRUE" : @"FALSE") + #define YES_NO(x) (x ? @"YES" : @"NO") + +#endif + +//(void)fprintf(stderr, "%s:%i %s: %s\n", __FILE__, __LINE__, __PRETTY_FUNCTION__, [[NSString stringWithFormat:__VA_ARGS__] UTF8String]) +//(void)fprintf(stderr, "%s", [[NSString stringWithFormat:__VA_ARGS__] UTF8String]) \ No newline at end of file diff --git a/Position.h b/Position.h new file mode 100644 index 0000000..7e452cc --- /dev/null +++ b/Position.h @@ -0,0 +1,41 @@ +// +// Position.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import + +@interface Position : NSObject { + float _xPosition; + float _yPosition; + float _zPosition; +} + +- (id)initWithX: (float)xLoc Y: (float)yLoc Z: (float)zLoc; ++ (id)positionWithX: (float)xLoc Y: (float)yLoc Z: (float)zLoc; + +@property (readwrite, assign) float xPosition; +@property (readwrite, assign) float yPosition; +@property (readwrite, assign) float zPosition; + +- (Position*)positionAtDistance:(float)distance withDestination:(Position*)playerPosition; +- (float)angleTo: (Position*)position; +- (float)verticalAngleTo: (Position*)position; +- (float)distanceToPosition: (Position*)position; +- (float)distanceToPosition2D: (Position*)position; +- (float)verticalDistanceToPosition: (Position*)position; + +// Add some matrix methods crap +- (float)dotProduct: (Position*)position; +- (Position*)difference: (Position*)position; + +- (BOOL)isEqual:(id)other; +@end + +@protocol UnitPosition +- (Position*)position; +@end + diff --git a/Position.m b/Position.m new file mode 100644 index 0000000..5043951 --- /dev/null +++ b/Position.m @@ -0,0 +1,224 @@ +// +// Position.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Position.h" + + +@implementation Position + ++ (void)initialize { + [self exposeBinding: @"xPosition"]; + [self exposeBinding: @"yPosition"]; + [self exposeBinding: @"zPosition"]; +} + +- (id) init +{ + return [self initWithX: -1 Y: -1 Z: -1]; +} + +- (id)initWithX: (float)xLoc Y: (float)yLoc Z: (float)zLoc { + self = [super init]; + if (self != nil) { + self.xPosition = xLoc; + self.yPosition = yLoc; + self.zPosition = zLoc; + } + return self; +} + ++ (id)positionWithX: (float)xLoc Y: (float)yLoc Z: (float)zLoc { + Position *position = [[Position alloc] initWithX: xLoc Y: yLoc Z: zLoc]; + + return [position autorelease]; +} + + +@synthesize xPosition = _xPosition; +@synthesize yPosition = _yPosition; +@synthesize zPosition = _zPosition; + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [super init]; + if(self) { + self.xPosition = [[decoder decodeObjectForKey: @"xPosition"] floatValue]; + self.yPosition = [[decoder decodeObjectForKey: @"yPosition"] floatValue]; + self.zPosition = [[decoder decodeObjectForKey: @"zPosition"] floatValue]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: [NSNumber numberWithFloat: self.xPosition] forKey: @"xPosition"]; + [coder encodeObject: [NSNumber numberWithFloat: self.yPosition] forKey: @"yPosition"]; + [coder encodeObject: [NSNumber numberWithFloat: self.zPosition] forKey: @"zPosition"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Position *copy = [[[self class] allocWithZone: zone] initWithX: self.xPosition Y: self.yPosition Z: self.zPosition]; + + return copy; +} + +- (void) dealloc +{ + [super dealloc]; +} + + +- (NSString*)description { + return [NSString stringWithFormat: @"", [self xPosition], [self yPosition], [self zPosition]]; +} + +#pragma mark - + +- (Position*)positionAtDistance:(float)distance withDestination:(Position*)playerPosition { + + // this is where we want to face! + float direction = [playerPosition angleTo:self]; + float x, y; + + // negative x + if ( [self xPosition] < 0.0f ){ + x = -1.0f * (cosf(direction) * distance); + } + // positive x + else{ + x = -1.0f * (cosf(direction) * distance); + } + + // negative y + if ( [self yPosition] < 0.0f ){ + y = -1.0f * (sinf(direction) * distance); + } + // positive y + else{ + y = -1.0f * (sinf(direction) * distance); + } + + Position *newPos = [[Position alloc] initWithX:([self xPosition] + x) Y:([self yPosition] + y) Z:[self zPosition]]; + return [[newPos retain] autorelease]; +} + + +- (float)angleTo: (Position*)position { + + // create unit vector in direction of the mob + float xDiff = [position xPosition] - [self xPosition]; + float yDiff = [position yPosition] - [self yPosition]; + float distance = [self distanceToPosition2D: position]; + NSPoint mobUnitVector = NSMakePoint(xDiff/distance, yDiff/distance); + // log(LOG_GENERAL, @"Unit Vector to Mob: %@", NSStringFromPoint(mobUnitVector)); + + // create unit vector of player facing angle + //float angle = [playerDataController playerDirection]; + //NSPoint playerUnitVector = NSMakePoint(cosf(angle), sinf(angle)); + NSPoint northUnitVector = NSMakePoint(1, 0); + + // determine the angle between the Mob and North + float angleBetween = mobUnitVector.x*northUnitVector.x + mobUnitVector.y*northUnitVector.y; + float angleOffset = acosf(angleBetween); + // log(LOG_GENERAL, @"Cosine of angle between: %f", angleBetween); + // log(LOG_GENERAL, @"Angle (rad) between: %f", angleOffset); + + if(mobUnitVector.y > 0) // mob is in N-->W-->S half of the compass + return angleOffset; + else // mob is in N-->E-->S half of the compass + return ((6.2831853f) - angleOffset); +} + + +- (float)verticalAngleTo: (Position*)position { + + // create unit vector in direction of the mob + float xDiff = [position xPosition] - [self xPosition]; + float yDiff = [position yPosition] - [self yPosition]; + float zDiff = [position zPosition] - [self zPosition]; + float distance = [self distanceToPosition: position]; + + float mobUVx = xDiff/distance; + float mobUVy = yDiff/distance; + float mobUVz = zDiff/distance; + + // create unit vector toward mob at current elevation + float distance2D = [self distanceToPosition2D: position]; + + float levelUVx = xDiff/distance2D; + float levelUVy = yDiff/distance2D; + float levelUVz = 0.0f; + + // cosine of the angle between them is: (A x B) / |A||B| (but since magnitudes are 1...) + float cosine = mobUVx*levelUVx + mobUVy*levelUVy + mobUVz*levelUVz; + if(cosine > 1.0f) cosine = 1.0f; // values over 1.0 are invalid for acosf(). + float angleBetween = acosf(cosine); + + // now, adjust the sign + if(zDiff < 0.0f) { + angleBetween = 0.0f - angleBetween; + } + + //log(LOG_GENERAL, @"Got vertical angle between: %f; cosine: %f", angleBetween, cosine); + return angleBetween; +} + +- (float)distanceToPosition2D: (Position*)position { + + float distance; + if([self xPosition] != INFINITY && [self yPosition] != INFINITY) { + float xDiff = [position xPosition] - [self xPosition]; + float yDiff = [position yPosition] - [self yPosition]; + distance = sqrt(xDiff*xDiff + yDiff*yDiff); + } else { + distance = INFINITY; + } + return distance; +} + +- (float)distanceToPosition: (Position*)position { + + float distance = INFINITY; + if(position && ([self xPosition] != INFINITY && [self yPosition] != INFINITY && [self zPosition] != INFINITY)) { + float xDiff = [position xPosition] - [self xPosition]; + float yDiff = [position yPosition] - [self yPosition]; + float zDiff = [position zPosition] - [self zPosition]; + distance = sqrt(xDiff*xDiff + yDiff*yDiff + zDiff*zDiff); + } + return distance; +} + +- (float)verticalDistanceToPosition: (Position*)position { + return fabsf([position zPosition] - [self zPosition]); +} + +- (float)dotProduct: (Position*)position { + return [self xPosition]*[position xPosition] + [self yPosition]*[position yPosition] + [self zPosition]*[position zPosition]; +} + +- (Position*)difference: (Position*)position { + Position *diff = [[Position alloc] initWithX:[self xPosition] - [position xPosition] + Y:[self yPosition] - [position yPosition] + Z:[self zPosition] - [position zPosition]]; + return diff; +} + +- (BOOL)isEqual:(Position*)other { + + if ( other == self ){ + return YES; + } + if ( self.xPosition == other.xPosition && self.yPosition == other.yPosition && self.zPosition == other.zPosition ){ + return YES; + } + + return NO; +} + +@end diff --git a/Priest.png b/Priest.png new file mode 100644 index 0000000..8a982d3 Binary files /dev/null and b/Priest.png differ diff --git a/Priest_Small.gif b/Priest_Small.gif new file mode 100644 index 0000000..1298e49 Binary files /dev/null and b/Priest_Small.gif differ diff --git a/Procedure.h b/Procedure.h new file mode 100644 index 0000000..e1f7417 --- /dev/null +++ b/Procedure.h @@ -0,0 +1,31 @@ +// +// Procedure.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "Rule.h" + +@interface Procedure : NSObject { + NSString *_name; + NSMutableArray *_rules; +} + ++ (id)procedureWithName: (NSString*)name; + +@property (readwrite, copy) NSString *name; +@property (readonly, retain) NSArray *rules; + +- (unsigned)ruleCount; +- (Rule*)ruleAtIndex: (unsigned)index; + +- (void)addRule: (Rule*)rule; +- (void)insertRule: (Rule*)rule atIndex: (unsigned)index; +- (void)replaceRuleAtIndex: (int)index withRule: (Rule*)rule; +- (void)removeRule: (Rule*)rule; +- (void)removeRuleAtIndex: (unsigned)index; + +@end diff --git a/Procedure.m b/Procedure.m new file mode 100644 index 0000000..a97d664 --- /dev/null +++ b/Procedure.m @@ -0,0 +1,138 @@ +// +// Procedure.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Procedure.h" +#import "FileObject.h" + +@interface Procedure () +@property (readwrite, retain) NSArray *rules; +@end + +@implementation Procedure + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.name = nil; + self.rules = [NSArray array]; + } + return self; +} + +- (id)initWithName: (NSString*)name { + self = [self init]; + if (self != nil) { + self.name = name; + } + return self; +} + ++ (id)procedureWithName: (NSString*)name { + return [[[[self class] alloc] initWithName: name] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if(self) { + self.rules = [decoder decodeObjectForKey: @"Rules"] ? [decoder decodeObjectForKey: @"Rules"] : [NSArray array]; + self.name = [decoder decodeObjectForKey: @"Name"]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.name forKey: @"Name"]; + [coder encodeObject: self.rules forKey: @"Rules"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Procedure *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.rules = self.rules; + + return copy; +} + +- (void) dealloc { + self.name = nil; + self.rules = nil; + [super dealloc]; +} + +#pragma mark - + +- (NSString*)description { + return [NSString stringWithFormat: @"", [self name], [self ruleCount]]; +} + +@synthesize name = _name; +@synthesize rules = _rules; + +- (void)setRules: (NSArray*)rules { + [_rules autorelease]; + if(rules) { + _rules = [[NSMutableArray alloc] initWithArray: rules copyItems: YES]; + } else { + _rules = nil; + } +} + +- (unsigned)ruleCount { + return [self.rules count]; +} + +- (Rule*)ruleAtIndex: (unsigned)index { + if(index >= 0 && index < [self ruleCount]) + return [[[_rules objectAtIndex: index] retain] autorelease]; + return nil; +} + +- (void)addRule: (Rule*)rule { + if(rule != nil){ + [_rules addObject: rule]; + } + else{ + log(LOG_GENERAL, @"addRule: failed; rule is nil"); + } +} + +- (void)insertRule: (Rule*)rule atIndex: (unsigned)index { + if(rule != nil && index >= 0 && index <= [_rules count]){ + [_rules insertObject: rule atIndex: index]; + } + else{ + log(LOG_GENERAL, @"insertRule:atIndex: failed; rule %@ index %d is out of bounds", rule, index); + } +} + +- (void)replaceRuleAtIndex: (int)index withRule: (Rule*)rule { + + if((rule != nil) && (index >= 0) && (index < [self ruleCount])) { + [_rules replaceObjectAtIndex: index withObject: rule]; + } + else{ + log(LOG_GENERAL, @"replaceRule:atIndex: failed; either rule is nil or index is out of bounds"); + } +} + +- (void)removeRule: (Rule*)rule { + if(rule == nil) return; + [_rules removeObject: rule]; +} + +- (void)removeRuleAtIndex: (unsigned)index { + if(index >= 0 && index < [self ruleCount]){ + [_rules removeObjectAtIndex: index]; + } +} + +@end diff --git a/ProcedureController.h b/ProcedureController.h new file mode 100644 index 0000000..2f23370 --- /dev/null +++ b/ProcedureController.h @@ -0,0 +1,69 @@ +// +// ProcedureController.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import +#import "Behavior.h" +#import "Procedure.h" + +@class FileController; + +@interface ProcedureController : NSObject { + IBOutlet id ruleEditor; + IBOutlet id spellController; + IBOutlet id itemController; + IBOutlet FileController *fileController; + + IBOutlet NSView *view; + IBOutlet id procedureEventSegment; + IBOutlet NSTableView *ruleTable; + IBOutlet NSMenu *actionMenu; + IBOutlet NSPanel *renamePanel; + + IBOutlet NSTextField *combatPriorityTextField; + + Behavior *_behavior; + NSMutableArray *_behaviors; + BOOL validSelection; + NSString *_nameBeforeRename; + + NSSize minSectionSize, maxSectionSize; +} + +@property BOOL validSelection; +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; + +- (NSArray*)behaviors; +- (Behavior*)currentBehavior; +- (void)setCurrentBehavior: (Behavior*)protocol; +- (Procedure*)currentProcedure; + +- (IBAction)tableRowDoubleClicked: (id)sender; + +// import/export +- (void)importBehaviorAtPath: (NSString*)path; +- (IBAction)importBehavior: (id)sender; +- (IBAction)exportBehavior: (id)sender; + +// behavior actions +- (IBAction)createBehavior: (id)sender; +- (IBAction)loadBehavior: (id)sender; +- (IBAction)removeBehavior: (id)sender; +- (IBAction)renameBehavior: (id)sender; +- (IBAction)duplicateBehavior: (id)sender; +- (IBAction)closeRename: (id)sender; +- (IBAction)setBehaviorEvent: (id)sender; +- (IBAction)showInFinder: (id)sender; + +// rule actions +- (IBAction)addRule: (id)sender; +- (IBAction)deleteRule: (id)sender; + +@end diff --git a/ProcedureController.m b/ProcedureController.m new file mode 100644 index 0000000..864b384 --- /dev/null +++ b/ProcedureController.m @@ -0,0 +1,621 @@ +// +// ProcedureController.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "ProcedureController.h" +#import "SpellController.h" +#import "InventoryController.h" +#import "RuleEditor.h" +#import "Rule.h" +#import "FileController.h" + +#import "FileObject.h" + +#import "BetterSegmentedControl.h" + +@implementation ProcedureController + +- (id) init +{ + self = [super init]; + if (self != nil) { + + _behaviors = [[NSMutableArray array] retain]; + + if ( fileController == nil ){ + fileController = [[FileController sharedFileController] retain]; + } + + // get behaviors + NSArray *behaviors = [fileController getObjectsWithClass:[Behavior class]]; + [_behaviors addObjectsFromArray:behaviors]; + + _behavior = nil; + _nameBeforeRename = nil; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(applicationWillTerminate:) name: NSApplicationWillTerminateNotification object: nil]; + + [NSBundle loadNibNamed: @"Behaviors" owner: self]; + } + return self; +} + +- (void)awakeFromNib { + + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; + + [ruleTable registerForDraggedTypes: [NSArray arrayWithObjects: @"RuleIndexesType", @"RuleArrayType", nil]]; + + [ruleTable setDoubleAction: @selector(tableRowDoubleClicked:)]; + [ruleTable setTarget: self]; + + if( !_behavior && [_behaviors count]) { + [self setCurrentBehavior: [_behaviors objectAtIndex: 0]]; + [ruleTable reloadData]; + } +} + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; + +- (NSString*)sectionTitle { + return @"Behaviors & Procedures"; +} + +- (void)applicationWillTerminate: (NSNotification*)notification { + NSMutableArray *objectsToSave = [NSMutableArray array]; + for ( FileObject *obj in _behaviors ){ + if ( [obj changed] ){ + [objectsToSave addObject:obj]; + } + } + + [fileController saveObjects:objectsToSave]; + + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"Behaviors"]; + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +#pragma mark - + +@synthesize validSelection; + +- (void)validateBindings { + [self willChangeValueForKey: @"currentProcedure"]; + [self didChangeValueForKey: @"currentProcedure"]; + + self.validSelection = [ruleTable numberOfSelectedRows] ? YES : NO; +} + +- (NSString*)currentProcedureKey { + if( [procedureEventSegment selectedTag] == 1 ) + return PreCombatProcedure; + if( [procedureEventSegment selectedTag] == 2 ) + return CombatProcedure; + if( [procedureEventSegment selectedTag] == 3 ) + return PostCombatProcedure; + if( [procedureEventSegment selectedTag] == 4 ) + return RegenProcedure; + if( [procedureEventSegment selectedTag] == 5 ) + return PatrollingProcedure; + return @""; +} + +- (NSArray*)behaviors { + return [[_behaviors retain] autorelease]; +} + +- (Behavior*)currentBehavior { + return [[_behavior retain] autorelease]; +} + +- (Procedure*)currentProcedure { + return [[self currentBehavior] procedureForKey: [self currentProcedureKey]]; +} + +- (void)setCurrentBehavior: (Behavior*)behavior { + + [_behavior autorelease]; + _behavior = [behavior retain]; + // Let's just leave this at what ever was previously selected +// [procedureEventSegment selectSegmentWithTag: 1]; + [self validateBindings]; +} + +#pragma mark Protocol Actions + +- (void)addBehavior: (Behavior*)behavior { + + int num = 2; + BOOL done = NO; + if(![behavior isKindOfClass: [Behavior class]]) return; + if(![[behavior name] length]) return; + + // check to see if a route exists with this name + NSString *originalName = [behavior name]; + while(!done) { + BOOL conflict = NO; + for(Behavior *oldBehavior in self.behaviors) { + if( [[oldBehavior name] isEqualToString: [behavior name]]) { + [behavior setName: [NSString stringWithFormat: @"%@ %d", originalName, num++]]; + conflict = YES; + break; + } + } + if(!conflict) done = YES; + } + + // save this route into our array + [self willChangeValueForKey: @"behaviors"]; + [_behaviors addObject: behavior]; + [self didChangeValueForKey: @"behaviors"]; + + // save our new behavior + [fileController saveObject: behavior]; + + // update the current procedure + [self setCurrentBehavior: behavior]; + + [ruleTable reloadData]; + + //log(LOG_GENERAL, @"Added behavior: %@", [behavior name]); +} + +- (IBAction)createBehavior: (id)sender { + // make sure we have a valid name + NSString *behaviorName = [sender stringValue]; + if( [behaviorName length] == 0) { + NSBeep(); + return; + } + + // create a new behavior + [self addBehavior: [Behavior behaviorWithName: behaviorName]]; + [sender setStringValue: @""]; +} + +- (IBAction)loadBehavior: (id)sender { + [self validateBindings]; + [ruleTable reloadData]; +} + +- (IBAction)setBehaviorEvent: (id)sender { + [self validateBindings]; + [ruleTable reloadData]; + + // combat tab selected + if ( [procedureEventSegment selectedTag] == 2 ){ + [combatPriorityTextField setHidden:NO]; + } + else{ + [combatPriorityTextField setHidden:YES]; + } +} + +- (IBAction)removeBehavior: (id)sender { + if([self currentBehavior]) { + int ret = NSRunAlertPanel(@"Delete Behavior?", [NSString stringWithFormat: @"Are you sure you want to delete the behavior \"%@\"?", [[self currentBehavior] name]], @"Delete", @"Cancel", NULL); + if(ret == NSAlertDefaultReturn) { + [self willChangeValueForKey: @"behaviors"]; + + // delete the object + [fileController deleteObject:[self currentBehavior]]; + + // remove frm the list + [_behaviors removeObject: [self currentBehavior]]; + + if([self.behaviors count]) + [self setCurrentBehavior: [self.behaviors objectAtIndex: 0]]; + else + [self setCurrentBehavior: nil]; + + [self didChangeValueForKey: @"behaviors"]; + [ruleTable reloadData]; + } + } +} + +- (IBAction)duplicateBehavior: (id)sender { + [self addBehavior: [self.currentBehavior copy]]; +} + +- (IBAction)renameBehavior: (id)sender { + + _nameBeforeRename = [[[self currentBehavior] name] copy]; + + [NSApp beginSheet: renamePanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil //@selector(sheetDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (IBAction)closeRename: (id)sender { + [[sender window] makeFirstResponder: [[sender window] contentView]]; + [NSApp endSheet: renamePanel returnCode: 1]; + [renamePanel orderOut: nil]; + + // did the name change? + if ( ![_nameBeforeRename isEqualToString:[[self currentBehavior] name]] ){ + + // delete the old behavior + [fileController deleteObjectWithFilename:[NSString stringWithFormat:@"%@.behavior", _nameBeforeRename]]; + + // save the new one + [fileController saveObject:[self currentBehavior]]; + } +} + +#pragma mark Rule Actions + +- (void)sheetDidEnd:(NSWindow *)sheet returnCode:(int)returnCode contextInfo:(void *)contextInfo { + + if ( returnCode == RuleEditorSaveRule ) { + Rule *rule = [ruleEditor rule]; + + if( (Rule*)contextInfo ) { + // we are editing (replacing) a rule + //log(LOG_GENERAL, @"Replacing with rule: %@", rule); + [[self currentProcedure] replaceRuleAtIndex: [ruleTable selectedRow] withRule: rule]; + } else { + // we are adding a rule + //log(LOG_GENERAL, @"Adding new rule: %@", rule); + [[self currentProcedure] addRule: rule]; + } + + [ruleTable reloadData]; + + // mark this behavior as changed! + [[self currentBehavior] setChanged:YES]; + } +} + +- (IBAction)addRule: (id)sender { + if( ![self currentProcedure]) return; + + [ruleEditor initiateEditorForRule: nil]; + + [NSApp beginSheet: [ruleEditor window] + modalForWindow: [ruleTable window] + modalDelegate: self + didEndSelector: @selector(sheetDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (IBAction)deleteRule: (id)sender { + int row = [ruleTable selectedRow]; + if( row == -1 || ![self currentProcedure]) return; + + [[self currentProcedure] removeRuleAtIndex: row]; + [ruleTable reloadData]; + [[self currentBehavior] setChanged:YES]; +} + +- (IBAction)showInFinder: (id)sender{ + [fileController showInFinder:[self currentBehavior]]; +} + +#pragma mark - +#pragma mark Import & Export + +- (BOOL)behaviorsContainMacros: (NSArray*)behaviors { + // search for macros + for(Behavior *behavior in behaviors) { + for(Rule *rule in [[behavior procedureForKey: PreCombatProcedure] rules]) { + if( [rule resultType] == ActionType_Macro ) { + return YES; + } + } + for(Rule *rule in [[behavior procedureForKey: CombatProcedure] rules]) { + if( [rule resultType] == ActionType_Macro ) { + return YES; + } + } + for(Rule *rule in [[behavior procedureForKey: PostCombatProcedure] rules]) { + if( [rule resultType] == ActionType_Macro ) { + return YES; + } + } + for(Rule *rule in [[behavior procedureForKey: RegenProcedure] rules]) { + if( [rule resultType] == ActionType_Macro ) { + return YES; + } + } + for(Rule *rule in [[behavior procedureForKey: PatrollingProcedure] rules]) { + if( [rule resultType] == ActionType_Macro ) { + return YES; + } + } + } + return NO; +} + +- (void)importBehaviorAtPath: (NSString*)path { + id importedBehavior; + NS_DURING { + importedBehavior = [NSKeyedUnarchiver unarchiveObjectWithFile: path]; + } NS_HANDLER { + importedBehavior = nil; + } NS_ENDHANDLER + + if(importedBehavior) { + BOOL containsMacros = NO; + if([importedBehavior isKindOfClass: [Behavior class]]) { + containsMacros = [self behaviorsContainMacros: [NSArray arrayWithObject: importedBehavior]]; + } else if([importedBehavior isKindOfClass: [NSArray class]]) { + containsMacros = [self behaviorsContainMacros: importedBehavior]; + } else { + importedBehavior = nil; + } + + if(importedBehavior) { + // let the user know if there are macros + int ret = NSAlertDefaultReturn; + if(containsMacros) { + NSBeep(); + ret = NSRunCriticalAlertPanel(@"Warning: Macros Detected", [NSString stringWithFormat: @"The behavior file \"%@\" contains one or more rules that utilize WoW macros. Since these macros are specific to each copy of WoW, this behavior will most likely not function unless you manually fix each of the affected rules. Do you still want to import this file?", [path lastPathComponent]], @"Import", @"Cancel", NULL); + } + + if(ret == NSAlertDefaultReturn) { + if([importedBehavior isKindOfClass: [Behavior class]]) { + [self addBehavior: importedBehavior]; + } else if([importedBehavior isKindOfClass: [NSArray class]]) { + for(Behavior *behavior in importedBehavior) { + [self addBehavior: behavior]; + } + } + } + } + } + + if(!importedBehavior) { + NSRunAlertPanel(@"Behavior not Valid", [NSString stringWithFormat: @"The file at %@ cannot be imported because it does not contain a valid behavior or behavior set.", path], @"Okay", NULL, NULL); + } +} + +- (IBAction)importBehavior: (id)sender { + NSOpenPanel *openPanel = [NSOpenPanel openPanel]; + + [openPanel setCanChooseDirectories: NO]; + [openPanel setCanCreateDirectories: NO]; + [openPanel setPrompt: @"Import Behavior"]; + [openPanel setCanChooseFiles: YES]; + [openPanel setAllowsMultipleSelection: YES]; + + int ret = [openPanel runModalForTypes: [NSArray arrayWithObjects: @"behavior", @"behaviorset", nil]]; + + if(ret == NSFileHandlingPanelOKButton) { + for(NSString *behaviorPath in [openPanel filenames]) { + [self importBehaviorAtPath: behaviorPath]; + } + } +} + +- (IBAction)exportBehavior: (id)sender { + if(![self currentBehavior]) return; + + // let the user know if this behavior contains macros + if([self behaviorsContainMacros: [NSArray arrayWithObject: [self currentBehavior]]]) { + NSBeep(); + NSRunCriticalAlertPanel(@"Warning: Behavior Contains Macros", @"The behavior you are exporting contains one or more rules that utilize macros. Macros are contained within your local copy of Warcraft, and will not be exported with this behavior -- these rules will not work on anybody else's computer!", @"Okay", NULL, NULL); + } + + NSSavePanel *savePanel = [NSSavePanel savePanel]; + [savePanel setCanCreateDirectories: YES]; + [savePanel setTitle: @"Export Behavior"]; + [savePanel setMessage: @"Please choose a destination for this behavior."]; + int ret = [savePanel runModalForDirectory: @"~/Desktop" file: [[[self currentBehavior] name] stringByAppendingPathExtension: @"behavior"]]; + + if(ret == NSFileHandlingPanelOKButton) { + NSString *saveLocation = [savePanel filename]; + NSData *data = [NSKeyedArchiver archivedDataWithRootObject: [self currentBehavior]]; + [data writeToFile: saveLocation atomically: YES]; + } +} + +#pragma mark - +#pragma mark NSTableView Delesource + +- (IBAction)tableRowDoubleClicked: (id)sender { + + int row = [ruleTable selectedRow]; + if( row == -1 || ![self currentProcedure]) return; + + Rule *ruleToEdit = [[self currentProcedure] ruleAtIndex: row]; + [ruleEditor initiateEditorForRule: ruleToEdit]; + + [NSApp beginSheet: [ruleEditor window] + modalForWindow: [ruleTable window] + modalDelegate: self + didEndSelector: @selector(sheetDidEnd: returnCode: contextInfo:) + contextInfo: ruleToEdit]; +} + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + return [[self currentProcedure] ruleCount]; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if(rowIndex == -1) return nil; + + if( [[aTableColumn identifier] isEqualToString: @"Order"] ) { + return [NSNumber numberWithInt: rowIndex+1]; + } + if( [[aTableColumn identifier] isEqualToString: @"Name"] ) { + Rule *rule = [[self currentProcedure] ruleAtIndex: rowIndex]; + return [rule name]; + } + if( [[aTableColumn identifier] isEqualToString: @"Action"] ) { + Rule *rule = [[self currentProcedure] ruleAtIndex: rowIndex]; + if([rule actionID]) { + NSNumber *actionID = [NSNumber numberWithInt: [rule actionID]]; + if([rule resultType] == ActionType_Spell) { + if([[spellController spellForID: actionID] fullName]) + return [NSString stringWithFormat: @"Ability: %@", [[spellController spellForID: actionID] fullName]]; + else + return [NSString stringWithFormat: @"Ability: %@", actionID]; + } + if([rule resultType] == ActionType_Item) + return [NSString stringWithFormat: @"Item: %@", [itemController nameForID: actionID]]; + if([rule resultType] == ActionType_Macro) + return [NSString stringWithFormat: @"Macro: %d", [rule actionID]]; + } + return @"No action"; + } + + return nil; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (void)tableView: (NSTableView*)tableView deleteKeyPressedOnRowIndexes: (NSIndexSet*)rowIndexes { + [self deleteRule: nil]; +} + +- (void)tableViewSelectionDidChange:(NSNotification *)aNotification { + [self validateBindings]; +} + + +- (BOOL)tableViewCopy: (NSTableView*)tableView { + NSIndexSet *selectedRows = [tableView selectedRowIndexes]; + + if([selectedRows count] == 0) { + return NO; + } + + NSMutableArray *rulesToCopy = [NSMutableArray array]; + NSMutableString *rulesDescription = [NSMutableString string]; + int row = [selectedRows firstIndex]; + while(row != NSNotFound) { + if([[self currentProcedure] ruleAtIndex: row]) { + Rule *rule = [[self currentProcedure] ruleAtIndex: row]; + // log(LOG_GENERAL, @"Copy rule: %@, (0x%X)", rule, &rule); + [rulesToCopy addObject: rule]; + if(row == [selectedRows lastIndex]) [rulesDescription appendString: [rule description]]; + else [rulesDescription appendFormat: @"%@\n", [rule description]]; + } + row = [selectedRows indexGreaterThanIndex: row]; + } + + if( [rulesToCopy count]) { + NSData *data = [NSKeyedArchiver archivedDataWithRootObject: rulesToCopy]; + if(data) { + NSPasteboard *ruleBoard = [NSPasteboard generalPasteboard]; + [ruleBoard declareTypes: [NSArray arrayWithObjects: NSStringPboardType, @"RuleArrayType", nil] owner: self]; + [ruleBoard setData: data forType: @"RuleArrayType"]; + [ruleBoard setString: rulesDescription forType: NSStringPboardType]; + return YES; + } + } + + return NO; +} + +- (BOOL)tableViewPaste: (NSTableView*)tableView { + + NSPasteboard *ruleBoard = [NSPasteboard generalPasteboard]; + NSData *data = [ruleBoard dataForType: @"RuleArrayType"]; + if(data) { + NSArray *copiedRules = [NSKeyedUnarchiver unarchiveObjectWithData: data]; + if( [copiedRules count] && [self currentProcedure] ) { + // determine which row to paste + int pasteRow = [tableView selectedRow]; + if(pasteRow < 0) pasteRow = [[self currentProcedure] ruleCount]; + else pasteRow++; + + for(Rule *rule in copiedRules) { + // log(LOG_GENERAL, @"Pasting rule: %@ (0x%X)", rule, &rule); + [[self currentProcedure] insertRule: rule atIndex: pasteRow]; + } + + [tableView reloadData]; + [tableView selectRowIndexes: [NSIndexSet indexSetWithIndexesInRange: NSMakeRange(pasteRow, [copiedRules count])] byExtendingSelection: NO]; + + [[self currentBehavior] setChanged:YES]; + return YES; + } + } + return NO; +} + +- (BOOL)tableViewCut: (NSTableView*)tableView { + if( [self tableViewCopy: tableView] ) { + [self deleteRule: nil]; + [[self currentBehavior] setChanged:YES]; + return YES; + } + return NO; +} + +#pragma mark Table Drag & Drop + +// begin drag operation, save row index +- (BOOL)tableView:(NSTableView *)tv writeRowsWithIndexes:(NSIndexSet *)rowIndexes toPasteboard:(NSPasteboard*)pboard { + // Copy the row numbers to the pasteboard. + NSData *data = [NSKeyedArchiver archivedDataWithRootObject:rowIndexes]; + [pboard declareTypes: [NSArray arrayWithObjects: @"RuleIndexesType", nil] owner: self]; + [pboard setData: data forType: @"RuleIndexesType"]; + return YES; +} + +// validate drag operation +- (NSDragOperation) tableView: (NSTableView*) tableView + validateDrop: (id ) info + proposedRow: (int) row + proposedDropOperation: (NSTableViewDropOperation) op +{ + int result = NSDragOperationNone; + + if (op == NSTableViewDropAbove) { + result = NSDragOperationMove; + + NSPasteboard* pboard = [info draggingPasteboard]; + NSData* rowData = [pboard dataForType: @"RuleIndexesType"]; + NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData:rowData]; + int dragRow = [rowIndexes firstIndex]; + + if(dragRow == row || dragRow == row-1) { + result = NSDragOperationNone; + } + } + + return (result); + +} + +// accept the drop +- (BOOL)tableView: (NSTableView *)aTableView + acceptDrop: (id )info + row: (int)row + dropOperation: (NSTableViewDropOperation)operation { + + NSPasteboard* pboard = [info draggingPasteboard]; + NSData* rowData = [pboard dataForType: @"RuleIndexesType"]; + NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData:rowData]; + int dragRow = [rowIndexes firstIndex]; + + if(dragRow < row) row--; + //log(LOG_GENERAL, @"Got drag for row %d to row %d", dragRow, row); + + // Move the specified row to its new location... + Rule *dragRule = [[self currentProcedure] ruleAtIndex: dragRow]; + [[self currentProcedure] removeRuleAtIndex: dragRow]; + [[self currentProcedure] insertRule: dragRule atIndex: row]; + + [aTableView reloadData]; + + [[self currentBehavior] setChanged:YES]; + + return YES; +} + +@end diff --git a/Profile.h b/Profile.h new file mode 100644 index 0000000..3057064 --- /dev/null +++ b/Profile.h @@ -0,0 +1,36 @@ + +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: Profile.h 315 2010-04-17 04:12:45Z Tanaris4 $ + * + */ + +#import +#import "FileObject.h" + +@interface Profile : FileObject { + +} + ++ (id)profileWithName: (NSString*)name; + +@end \ No newline at end of file diff --git a/Profile.m b/Profile.m new file mode 100644 index 0000000..f63fee9 --- /dev/null +++ b/Profile.m @@ -0,0 +1,76 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: Profile.m 315 2010-04-17 04:12:45Z Tanaris4 $ + * + */ + +#import "Profile.h" +#import "FileObject.h" + +@implementation Profile + +- (id) init +{ + self = [super init]; + if (self != nil) { + _name = @""; + } + return self; +} + +- (id)initWithName: (NSString*)name { + self = [self init]; + + _name = [[name copy] retain]; + + return self; +} + ++ (id)profileWithName: (NSString*)name { + return [[[Profile alloc] initWithName: name] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder{ + if ( !self ){ + self = [self init]; + } + + if ( self ) { + [super initWithCoder:decoder]; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)coder{ + [super encodeWithCoder:coder]; +} + +- (id)copyWithZone:(NSZone *)zone{ + Profile *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + return copy; +} + +- (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context{ + self.changed = YES; +} + +@end \ No newline at end of file diff --git a/ProfileController.h b/ProfileController.h new file mode 100644 index 0000000..a5c04bf --- /dev/null +++ b/ProfileController.h @@ -0,0 +1,112 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: ProfileController.h 315 2010-04-17 04:12:45Z Tanaris4 $ + * + */ + +#import + +#define ProfilesLoaded @"ProfilesLoaded" + +@class FileController; +@class Controller; +@class PlayersController; +@class MobController; + +@class Profile; +@class CombatProfile; +@class MailActionProfile; + +typedef enum SelectedTab{ + TabCombat = 1, + TabMail = 2, + TabTotal, +} SelectedTab; + +@interface ProfileController : NSObject { + IBOutlet FileController *fileController; + IBOutlet Controller *controller; + IBOutlet PlayersController *playersController; + IBOutlet MobController *mobController; + + IBOutlet NSPopUpButton *profileTypePopUp; + IBOutlet NSTabView *profileTabView; + IBOutlet NSOutlineView *profileOutlineView; + IBOutlet NSTextField *profileTitle; + + // combat profile only + IBOutlet NSPopUpButton *assistPopUpButton; + IBOutlet NSPopUpButton *tankPopUpButton; + IBOutlet NSPopUpButton *followPopUpButton; + IBOutlet NSTableView *ignoreTable; + + IBOutlet NSView *view; + NSSize minSectionSize, maxSectionSize; + + CombatProfile *_currentCombatProfile; + MailActionProfile *_currentMailActionProfile; + + SelectedTab _selectedTab; + + NSMutableArray *_profiles; +} + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; + +@property (readwrite, retain) CombatProfile *currentCombatProfile; +@property (readwrite, retain) MailActionProfile *currentMailActionProfile; + +- (void)importProfileAtPath: (NSString*)path; + +// profile actions +- (IBAction)createProfile: (id)sender; +- (IBAction)renameProfile: (id)sender; +- (IBAction)duplicateProfile: (id)sender; +- (IBAction)importProfile: (id)sender; +- (IBAction)exportProfile: (id)sender; +- (IBAction)deleteProfile: (id)sender; +- (IBAction)showInFinder: (id)sender; + +// combat profile only +- (IBAction)addIgnoreEntry: (id)sender; +- (IBAction)addIgnoreFromTarget: (id)sender; +- (IBAction)deleteIgnoreEntry: (id)sender; + +- (NSArray*)profilesOfClass:(Class)objectClass; + +- (void)addProfile:(Profile*)profile; +- (BOOL)removeProfile:(Profile*)profile; + +- (void)populatePlayerLists; + +- (Profile*)profileForUUID:(NSString*)uuid; + +// for bindings +- (NSArray*)combatProfiles; + +- (void)openEditor:(SelectedTab)tab; +- (void)setProfile:(Profile *)profile; + +@end \ No newline at end of file diff --git a/ProfileController.m b/ProfileController.m new file mode 100644 index 0000000..7d56dc5 --- /dev/null +++ b/ProfileController.m @@ -0,0 +1,807 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: ProfileController.m 315 2010-04-17 04:12:45Z Tanaris4 $ + * + */ + +#import "ProfileController.h" +#import "Profile.h" +#import "MailActionProfile.h" +#import "CombatProfile.h" +#import "Player.h" +#import "Mob.h" + +#import "FileController.h" +#import "Controller.h" +#import "PlayersController.h" +#import "MobController.h" + +@interface ProfileController (Internal) +- (void)setProfile:(Profile *)profile; +- (void)updateTitle; +@end + +#define CombatProfileName @"Combat" +#define MailActionName @"Mail Action" + +@implementation ProfileController + +- (id) init +{ + self = [super init]; + if (self != nil) { + _profiles = [[NSMutableArray array] retain]; + + _currentCombatProfile = nil; + _currentMailActionProfile = nil; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(applicationWillTerminate:) name: NSApplicationWillTerminateNotification object: nil]; + + if ( fileController == nil ){ + fileController = [[FileController sharedFileController] retain]; + } + + // get mail action profiles + NSArray *mailActionProfiles = [fileController getObjectsWithClass:[MailActionProfile class]]; + [_profiles addObjectsFromArray:mailActionProfiles]; + + // get combat profiles + NSArray *combatProfiles = [fileController getObjectsWithClass:[CombatProfile class]]; + [_profiles addObjectsFromArray:combatProfiles]; + + [[NSNotificationCenter defaultCenter] postNotificationName: ProfilesLoaded object: self]; + + [NSBundle loadNibNamed: @"Profiles" owner: self]; + } + return self; +} + +- (void)awakeFromNib { + + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; + + // select the first tab + [profileTabView selectFirstTabViewItem:nil]; + + [self updateTitle]; +} + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; + +@synthesize currentCombatProfile = _currentCombatProfile; +@synthesize currentMailActionProfile = _currentMailActionProfile; + +- (NSString*)sectionTitle { + return @"Profiles"; +} + +- (void)dealloc{ + [_profiles release]; _profiles = nil; + [super dealloc]; +} + +// pass a class, and receive ALL the objects of that type! ezmode! +- (NSArray*)profilesOfClass:(Class)objectClass{ + + NSMutableArray *objects = [NSMutableArray array]; + + for ( id profile in _profiles ){ + if ( [profile isKindOfClass:objectClass] ){ + [objects addObject:profile]; + } + } + + return [[objects retain] autorelease]; +} + +- (Profile*)profileForUUID:(NSString*)uuid{ + for ( Profile *profile in _profiles ){ + if ( [[profile UUID] isEqualToString:uuid] ){ + return [[profile retain] autorelease]; + } + } + return nil; +} + +// add a profile +- (void)addProfile:(Profile*)profile{ + + int num = 2; + BOOL done = NO; + if( ![[profile name] length] ) return; + + // check to see if a route exists with this name + NSString *originalName = [profile name]; + while( !done ) { + BOOL conflict = NO; + for ( id existingProfile in _profiles ) { + + // UUID's match? + if ( [[existingProfile UUID] isEqualToString:[profile UUID]] ){ + [profile updateUUUID]; + } + + // same profile type + same name! o noes! + if ( [existingProfile isKindOfClass:[profile class]] && [[existingProfile name] isEqualToString: [profile name]] ){ + [profile setName: [NSString stringWithFormat: @"%@ %d", originalName, num++]]; + conflict = YES; + break; + } + } + if( !conflict ) done = YES; + } + + // add it to our list of profiles! + [_profiles addObject:profile]; + + // save it (in case we crash?) + [fileController saveObject:profile]; + + profile.changed = YES; + + // error here on observers :( + [self setProfile:profile]; +} + +- (BOOL)removeProfile:(Profile*)prof{ + + Profile *profToDelete = nil; + for ( Profile *profile in _profiles ){ + + if ( [profile isKindOfClass:[prof class]] && [[profile name] isEqualToString:[prof name]] ){ + profToDelete = profile; + break; + } + } + + [fileController deleteObject:profToDelete]; + [_profiles removeObject:profToDelete]; + [profileOutlineView reloadData]; + + if ( profToDelete ) + return YES; + + return NO; +} + +// just return a list of profiles by class +- (NSArray*)profilesByClass{ + + NSMutableArray *list = [NSMutableArray array]; + + // form a list of the unique classes + NSMutableArray *classList = [NSMutableArray array]; + for ( id profile in _profiles ){ + if ( ![classList containsObject:[profile class]] ){ + [classList addObject:[profile class]]; + } + } + + // woohoo lets set up arrays by class! + for ( id class in classList ){ + NSMutableArray *profiles = [NSMutableArray array]; + for ( Profile *profile in _profiles ){ + if ( [profile class] == class ){ + [profiles addObject:profile]; + } + } + [list addObject:profiles]; + } + + return list; +} + +- (Profile*)selectedProfile{ + + // make sure only 1 item is selected! + if ( [profileOutlineView numberOfSelectedRows] == 1 ){ + id selectedObject = [profileOutlineView itemAtRow:[profileOutlineView selectedRow]]; + + if ( [[selectedObject className] isEqualToString:@"NSCFString"] || [selectedObject isKindOfClass:[NSString class]] ){ + return nil; + } + + return selectedObject; + } + + return nil; +} + +- (void)importProfileAtPath: (NSString*)path { + id importedProfile; + NS_DURING { + importedProfile = [NSKeyedUnarchiver unarchiveObjectWithFile: path]; + } NS_HANDLER { + importedProfile = nil; + } NS_ENDHANDLER + + id oldImportedProfile = importedProfile; + + if ( importedProfile ) { + + // combat profile + if ( [importedProfile isKindOfClass: [CombatProfile class]] ) { + [self addProfile: importedProfile]; + } + // mail action profile + else if ( [importedProfile isKindOfClass:[MailActionProfile class]] ){ + [self addProfile: importedProfile]; + } + else { + importedProfile = nil; + } + } + + if ( !importedProfile ) { + NSRunAlertPanel(@"Profile not Valid", [NSString stringWithFormat: @"The file at %@ <%@> cannot be imported because it does not contain a valid profile", path, oldImportedProfile], @"Okay", NULL, NULL); + } +} + +- (BOOL)isValidProfile:(id)obj{ + + if ( [obj isKindOfClass:[CombatProfile class]] ){ + return YES; + } + else if ( [obj isKindOfClass:[MailActionProfile class]] ){ + return YES; + } + + return NO; +} + +- (void)openEditor:(SelectedTab)tab{ + + if ( tab == TabCombat ){ + [profileOutlineView expandItem:CombatProfileName]; + } + else if ( tab == TabMail ){ + [profileOutlineView expandItem:MailActionName]; + } + + [profileTabView selectTabViewItemWithIdentifier:[NSString stringWithFormat:@"%d", tab]]; +} + +- (void)updateTitle{ + + if ( self.currentCombatProfile ){ + [profileTitle setStringValue:[NSString stringWithFormat:@"Combat Profile - %@", [self.currentCombatProfile name]]]; + } + else if ( self.currentMailActionProfile ){ + [profileTitle setStringValue:[NSString stringWithFormat:@"Mail Action Profile - %@", [self.currentMailActionProfile name]]]; + } + else{ + [profileTitle setStringValue:@"Select or create a new profile to start!"]; + } +} + +#pragma mark Getters/Setters + +- (void)setProfile:(Profile *)profile{ + + if ( profile == nil ){ + _currentCombatProfile = nil; + _currentMailActionProfile = nil; + [profileTabView selectFirstTabViewItem:nil]; + [self updateTitle]; + return; + } + + // expand our parent if we need to + if ( [profile isKindOfClass:[CombatProfile class]] ){ + self.currentCombatProfile = (CombatProfile*)profile; + self.currentMailActionProfile = nil; + [profileOutlineView expandItem:CombatProfileName]; + [profileTypePopUp selectItemWithTag:TabCombat]; + } + else if ( [profile isKindOfClass:[MailActionProfile class]] ){ + self.currentMailActionProfile = (MailActionProfile*)profile; + self.currentCombatProfile = nil; + [profileOutlineView expandItem:MailActionName]; + [profileTypePopUp selectItemWithTag:TabMail]; + } + + // update our table + [profileOutlineView reloadData]; + + // select the item + NSIndexSet *index = [NSIndexSet indexSetWithIndex:[profileOutlineView rowForItem:profile]]; + [profileOutlineView selectRowIndexes:index byExtendingSelection:NO]; + [profileOutlineView scrollRowToVisible:[index firstIndex]]; + + // select the correct tab + if ( [profile isKindOfClass:[CombatProfile class]] ){ + [profileTabView selectTabViewItemWithIdentifier:[NSString stringWithFormat:@"%d", TabCombat]]; + } + else if ( [profile isKindOfClass:[MailActionProfile class]] ){ + [profileTabView selectTabViewItemWithIdentifier:[NSString stringWithFormat:@"%d", TabMail]]; + } + [self populatePlayerLists]; + [self updateTitle]; +} + +#pragma mark Notifications + +- (void)applicationWillTerminate: (NSNotification*)notification { + + NSMutableArray *objectsToSave = [NSMutableArray array]; + for ( FileObject *obj in _profiles ){ + if ( [obj changed] ){ + [objectsToSave addObject:obj]; + } + } + + [fileController saveObjects:objectsToSave]; + + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"CombatProfiles"]; + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +#pragma mark Bindings + +- (NSArray*)combatProfiles{ + return [self profilesOfClass:[CombatProfile class]]; +} + +#pragma mark UI + +- (IBAction)createProfile: (id)sender{ + + // make sure we have a valid name + NSString *profileName = [sender stringValue]; + if ( [profileName length] == 0 ) { + NSBeep(); + return; + } + + // create the profile + id profile = nil; + if ( [profileTypePopUp selectedTag] == TabCombat ){ + profile = [CombatProfile combatProfileWithName:profileName]; + } + else if ( [profileTypePopUp selectedTag] == TabMail ){ + profile = [MailActionProfile mailActionProfileWithName:profileName]; + } + + // create a new profile + [sender setStringValue: @""]; + [self addProfile: profile]; +} + +- (IBAction)renameProfile: (id)sender{ + id object = [profileOutlineView itemAtRow:[profileOutlineView clickedRow]]; + if ( [self isValidProfile:object] ){ + + // select the item + NSIndexSet *index = [NSIndexSet indexSetWithIndex:[profileOutlineView rowForItem:object]]; + [profileOutlineView selectRowIndexes:index byExtendingSelection:NO]; + [profileOutlineView scrollRowToVisible:[index firstIndex]]; + + // edit the new item! + [profileOutlineView editColumn:0 row:[index firstIndex] withEvent:nil select:YES]; + } +} + +- (IBAction)duplicateProfile: (id)sender{ + id object = [profileOutlineView itemAtRow:[profileOutlineView clickedRow]]; + if ( [self isValidProfile:object] ){ + [self addProfile:[object copy]]; + } +} + +- (IBAction)importProfile: (id)sender{ + NSOpenPanel *openPanel = [NSOpenPanel openPanel]; + + [openPanel setCanChooseDirectories: NO]; + [openPanel setCanCreateDirectories: NO]; + [openPanel setPrompt: @"Import Profile"]; + [openPanel setCanChooseFiles: YES]; + [openPanel setAllowsMultipleSelection: YES]; + [openPanel setDirectory:@"~/Desktop"]; + + int ret = [openPanel runModalForTypes: [NSArray arrayWithObjects: @"combatprofile", @"mailprofile", nil]]; + + if ( ret == NSFileHandlingPanelOKButton ) { + for ( NSString *profilePath in [openPanel filenames] ) { + [self importProfileAtPath: profilePath]; + } + } +} + +- (IBAction)exportProfile: (id)sender{ + // valid object + id object = [profileOutlineView itemAtRow:[profileOutlineView clickedRow]]; + if ( ![self isValidProfile:object] ){ + return; + } + + NSSavePanel *savePanel = [NSSavePanel savePanel]; + [savePanel setCanCreateDirectories: YES]; + [savePanel setTitle: @"Export Profile"]; + [savePanel setMessage: @"Please choose a destination for this profile."]; + + NSString *extension = nil; + if ( [object isKindOfClass:[CombatProfile class]] ){ + extension = @"combatprofile"; + } + else if ( [object isKindOfClass:[MailActionProfile class]] ){ + extension = @"mailprofile"; + } + int ret = [savePanel runModalForDirectory: @"~/Desktop" file: [[object name] stringByAppendingPathExtension: extension]]; + + if ( ret == NSFileHandlingPanelOKButton ) { + NSString *saveLocation = [savePanel filename]; + NSData *data = [NSKeyedArchiver archivedDataWithRootObject: object]; + [data writeToFile: saveLocation atomically: YES]; + } +} + +- (IBAction)deleteProfile: (id)sender{ + + Profile *profile = [self selectedProfile]; + int ret = NSRunAlertPanel(@"Delete?", [NSString stringWithFormat:@"Are you sure you want to delete profile '%@'?", [profile name]], @"No", @"Yes", NULL); + if ( ret == 0 ){ + [self removeProfile:profile]; + } +} + +- (IBAction)showInFinder: (id)sender{ + id object = [profileOutlineView itemAtRow:[profileOutlineView clickedRow]]; + if ( [self isValidProfile:object] ){ + [fileController showInFinder:object]; + } +} + +#pragma mark Outline View + +// let us know how many children this item has +- (NSInteger)outlineView:(NSOutlineView *)outlineView numberOfChildrenOfItem:(id)item{ + + // root + if ( item == nil ){ + return TabTotal - 1; // total tabs + } + // child + else{ + // combat profiles + if ( [item isEqualToString:CombatProfileName] ){ + NSArray *profiles = [self profilesOfClass:[CombatProfile class]]; + return [profiles count]; + } + // mail action profiles + else if ( [item isEqualToString:MailActionName] ){ + NSArray *profiles = [self profilesOfClass:[MailActionProfile class]]; + return [profiles count]; + } + } + + return 0; +} + +// return the child of an item at an index +- (id)outlineView:(NSOutlineView *)outlineView child:(NSInteger)index ofItem:(id)item{ + + // root + if ( item == nil ){ + if ( index == TabCombat - 1 ) { + return CombatProfileName; + } + else if ( index == TabMail - 1 ) { + return MailActionName; + } + } + // child + else{ + + // combat profiles + if ( [item isEqualToString:CombatProfileName] ){ + NSArray *profiles = [self profilesOfClass:[CombatProfile class]]; + if ( index > [profiles count] ) return nil; + return [profiles objectAtIndex:index]; + } + // mail action profiles + else if ( [item isEqualToString:MailActionName] ){ + NSArray *profiles = [self profilesOfClass:[MailActionProfile class]]; + if ( index > [profiles count] ) return nil; + return [profiles objectAtIndex:index]; + } + } + + return nil; +} + +- (BOOL)outlineView:(NSOutlineView *)outlineView isItemExpandable:(id)item{ + + if ( [[item className] isEqualToString:@"NSCFString"] || [item isKindOfClass:[NSString class]] ){ + return YES; + } + + return NO; +} + +// return the item name +- (id)outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTableColumn *)tableColumn byItem:(id)item{ + + // root + if ( [[item className] isEqualToString:@"NSCFString"] || [item isKindOfClass:[NSString class]] ){ + return item; + } + // combat profiles + else if ( [item isKindOfClass:[CombatProfile class]] ){ + return [(Profile*)item name]; + } + // mail action profiles + else if ( [item isKindOfClass:[MailActionProfile class]] ){ + return [(Profile*)item name]; + } + + return nil; +} + +// this allows us to rename +- (void)outlineView:(NSOutlineView *)outlineView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn byItem:(id)item{ + + // in theory should always be + if ( [object isKindOfClass:[NSString class]] ){ + + if ( [self isValidProfile:item] ){ + + // only rename if they are different! + if ( ![object isEqualToString:[(Profile*)item name]] ){ + // delete the old profile + [fileController deleteObject:item]; + + // set the name of our profile + [(Profile*)item setName:object]; + + // save our profile + [fileController saveObject:item]; + + [self updateTitle]; + } + } + } +} + +// called whenever the selection changes! +- (void)outlineViewSelectionDidChange:(NSNotification *)notification{ + id selectedObject = [self selectedProfile]; + [self setProfile:selectedObject]; +} + +// do we allow pasting? +- (BOOL)outlineView:(NSOutlineView *)outlineView writeItems:(NSArray *)items toPasteboard:(NSPasteboard *)pboard{ + return NO; +} + +// is this a valid drop target? +- (NSDragOperation)outlineView:(NSOutlineView *)outlineView validateDrop:(id < NSDraggingInfo >)info proposedItem:(id)item proposedChildIndex:(NSInteger)index{ + + // no moving (for now) + return NSDragOperationNone; +} + +- (BOOL)outlineView:(NSOutlineView *)outlineView acceptDrop:(id < NSDraggingInfo >)info item:(id)item childIndex:(NSInteger)index{ + return NO; +} + +#pragma mark TabView Delgate + +- (BOOL)tabView:(NSTabView *)tabView shouldSelectTabViewItem:(NSTabViewItem *)tabViewItem{ + int identifier = [[tabViewItem identifier] intValue]; + + // trying to click the combat tab with a non-combat profile - NO!!!! + if ( identifier == TabCombat && !self.currentCombatProfile ){ + return NO; + } + // trying to click the mail action tab and no mail action profile + else if ( identifier == TabMail && !self.currentMailActionProfile ){ + return NO; + } + + return YES; +} + +- (void)tabView:(NSTabView *)tabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem{ + _selectedTab = [[tabViewItem identifier] intValue]; +} + +#pragma mark Combat Profile Editor + + +//[self populatePlayerLists]; call this when we display the profile! + +- (void)populatePlayerList: (id)popUpButton withGUID:(UInt64)guid{ + log(LOG_DEV, @"Populating player list."); + + NSMenu *playerMenu = [[[NSMenu alloc] initWithTitle: @"Player List"] autorelease]; + NSMenuItem *item; + + NSArray *friendlyPlayers = [playersController friendlyPlayers]; + + if ( [friendlyPlayers count] > 0 ){ + + [controller traverseNameList]; + + for(Player *player in friendlyPlayers) { + + NSString *name = [playersController playerNameWithGUID:[player GUID]]; + + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ %@", name, player] action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: [NSNumber numberWithUnsignedLongLong:[player GUID]]]; + [item setTag:[player GUID]]; + [playerMenu addItem: item]; + } + } + else{ + + if ( popUpButton == tankPopUpButton && self.currentCombatProfile.tankUnit && self.currentCombatProfile.tankUnitGUID > 0x0 ) { + + NSString *name; + name = [playersController playerNameWithGUID: self.currentCombatProfile.tankUnitGUID]; + + if ( !name || name == @"" ) name = [NSString stringWithFormat: @"Current Tank (0x%qX)", self.currentCombatProfile.tankUnitGUID]; + + item = [[[NSMenuItem alloc] initWithTitle: name action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: [NSNumber numberWithUnsignedLongLong:self.currentCombatProfile.tankUnitGUID]]; + [item setTag: self.currentCombatProfile.tankUnitGUID]; + [playerMenu addItem: item]; + } + + if ( popUpButton == assistPopUpButton && self.currentCombatProfile.assistUnit && self.currentCombatProfile.assistUnitGUID > 0x0 ) { + + NSString *name; + name = [playersController playerNameWithGUID: self.currentCombatProfile.assistUnitGUID]; + + if ( !name || name == @"" ) name = [NSString stringWithFormat: @"Current Assist (0x%qX)", self.currentCombatProfile.assistUnitGUID]; + + item = [[[NSMenuItem alloc] initWithTitle: name action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: [NSNumber numberWithUnsignedLongLong:self.currentCombatProfile.assistUnitGUID]]; + [item setTag: self.currentCombatProfile.assistUnitGUID]; + [playerMenu addItem: item]; + } + + if ( popUpButton == followPopUpButton && self.currentCombatProfile.followUnit && self.currentCombatProfile.followUnitGUID > 0x0 ) { + + NSString *name; + name = [playersController playerNameWithGUID: self.currentCombatProfile.followUnitGUID]; + + if ( !name || name == @"" ) name = [NSString stringWithFormat: @"Current Leader (0x%qX)", self.currentCombatProfile.followUnitGUID]; + + item = [[[NSMenuItem alloc] initWithTitle: name action: nil keyEquivalent: @""] autorelease]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: [NSNumber numberWithUnsignedLongLong:self.currentCombatProfile.followUnitGUID]]; + [item setTag: self.currentCombatProfile.followUnitGUID]; + [playerMenu addItem: item]; + } + + item = [[[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"No Friendly Players Nearby"] action: nil keyEquivalent: @""] autorelease]; + [item setTag: 0]; + [item setIndentationLevel: 1]; + [item setRepresentedObject: nil]; + [playerMenu addItem: item]; + } + + + [(NSPopUpButton*)popUpButton setMenu:playerMenu]; + [(NSPopUpButton*)popUpButton selectItemWithTag:guid]; +} + +// update all 3! +- (void)populatePlayerLists{ + // update the list of names! + [controller traverseNameList]; + + // update all 3 lists! + [self populatePlayerList:tankPopUpButton withGUID:self.currentCombatProfile.tankUnitGUID]; + [self populatePlayerList:assistPopUpButton withGUID:self.currentCombatProfile.assistUnitGUID]; + [self populatePlayerList:followPopUpButton withGUID:self.currentCombatProfile.followUnitGUID]; +} + +#pragma mark - +#pragma mark Ignore Entries + +- (IBAction)addIgnoreEntry: (id)sender { + if(!self.currentCombatProfile) return; + + [self.currentCombatProfile addEntry: [IgnoreEntry entry]]; + [self currentCombatProfile].changed = YES; + [ignoreTable reloadData]; +} + +- (IBAction)addIgnoreFromTarget: (id)sender { + if(!self.currentCombatProfile) return; + + Mob *mob = [mobController playerTarget]; + + if(!mob) { + NSBeep(); + return; + } + + IgnoreEntry *entry = [IgnoreEntry entry]; + entry.ignoreType = [NSNumber numberWithInt: 0]; + entry.ignoreValue = [NSNumber numberWithInt: [mob entryID]]; + [self.currentCombatProfile addEntry: entry]; + [self currentCombatProfile].changed = YES; + [ignoreTable reloadData]; +} + +- (IBAction)deleteIgnoreEntry: (id)sender { + NSIndexSet *rowIndexes = [ignoreTable selectedRowIndexes]; + if([rowIndexes count] == 0 || ![self currentCombatProfile]) return; + + int row = [rowIndexes lastIndex]; + while(row != NSNotFound) { + [[self currentCombatProfile] removeEntryAtIndex: row]; + row = [rowIndexes indexLessThanIndex: row]; + } + + [ignoreTable selectRow: [rowIndexes firstIndex] byExtendingSelection: NO]; + + [ignoreTable reloadData]; + [self currentCombatProfile].changed = YES; +} + +#pragma mark TableView Delegate & Datasource + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + if ( aTableView == ignoreTable ) { + return [self.currentCombatProfile entryCount]; + } + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if(rowIndex == -1) return nil; + if(aTableView == ignoreTable) { + if(rowIndex >= [self.currentCombatProfile entryCount]) return nil; + + if([[aTableColumn identifier] isEqualToString: @"Type"]) + return [[self.currentCombatProfile entryAtIndex: rowIndex] ignoreType]; + + if([[aTableColumn identifier] isEqualToString: @"Value"]) { + return [[self.currentCombatProfile entryAtIndex: rowIndex] ignoreValue]; + } + } + + return nil; +} + + +- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + if([[aTableColumn identifier] isEqualToString: @"Type"]) + [[self.currentCombatProfile entryAtIndex: rowIndex] setIgnoreType: anObject]; + + if([[aTableColumn identifier] isEqualToString: @"Value"]) { + [[self.currentCombatProfile entryAtIndex: rowIndex] setIgnoreValue: anObject]; + } +} + + + +@end \ No newline at end of file diff --git a/Profiles.xib b/Profiles.xib new file mode 100644 index 0000000..69a304a --- /dev/null +++ b/Profiles.xib @@ -0,0 +1,15109 @@ + + + + 1050 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + ProfileController + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 268 + {{17, 20}, {177, 14}} + + + YES + + 68288064 + 138544128 + Right-Click for options + + LucidaGrande + 11 + 3100 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + + YES + + + 2304 + + YES + + + 256 + {169, 415} + + + YES + + + 256 + {169, 17} + + + + + + + -2147483392 + {{159, 0}, {16, 17}} + + + + + YES + + 166 + 16 + 1000 + + 75628096 + 2048 + Profiles + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + + 6 + System + controlBackgroundColor + + + + + 3 + YES + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 17 + -767557632 + + + 4 + 15 + 0 + YES + 0 + + + {{1, 17}, {169, 415}} + + + + + + 4 + + + + -2147483392 + {{159, 17}, {15, 246}} + + + + _doScroller: + 0.94252872467041016 + + + + -2147483392 + {{1, 263}, {173, 15}} + + + 1 + + _doScroller: + 0.93010753393173218 + + + + 2304 + + YES + + + {{1, 0}, {169, 17}} + + + + + + 4 + + + + {{20, 42}, {171, 433}} + + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{12, 8}, {583, 14}} + + + YES + + 68288064 + 272761856 + Select or create a new profile to start! + + + + + + + + {{1, 1}, {1008, 30}} + + + + + {{0, 491}, {1010, 32}} + + + {0, 0} + + 67239424 + 0 + Box + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA + + + 1 + MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA + + + + + 12 + {{192, 10}, {712, 389}} + + + + YES + + 0 + + + 256 + + YES + + + 268 + {{123, 247}, {453, 85}} + + YES + + 67239424 + 272891904 + V2VsY29tZSB0byB0aGUgbmV3IHByb2ZpbGUgZWRpdG9yISBTaW1wbHkgc2VsZWN0IGFuIGV4aXN0aW5n +IHByb2ZpbGUgdG8gdGhlIGxlZnQsIG9yIGNyZWF0ZSBhIG5ldyBvbmUgYWJvdmUgYnkgc2VsZWN0aW5n +IGEgdHlwZSwgZW50ZXJpbmcgYSBuYW1lLCBhbmQgcHJlc3NpbmcgZW50ZXIhCgpFbmpveSE + + LucidaGrande + 13 + 16 + + + + + + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{14, 247}, {104, 96}} + + YES + + 67239424 + 33816576 + + NSImage + Spell_Holy_PrayerofSpirit + + + LucidaGrande + 9 + 3614 + + 0 + 0 + 0 + NO + + YES + + + {{10, 33}, {692, 343}} + + Profiles + + + + + 1 + + + 256 + + YES + + + 18 + {{10, 7}, {672, 334}} + + + + YES + + Item 1 + + + 256 + + YES + + + 268 + {{15, 269}, {138, 18}} + + + YES + + -2080244224 + 0 + Enable Attacking + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 23 + + YES + + + 256 + + YES + + + 268 + {{16, 63}, {132, 18}} + + + YES + + -2080244224 + 0 + Ignore Elite Mobs + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{182, 113}, {47, 22}} + + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 1 + + YES + + YES + NSColor + NSFont + NSOriginalFont + NSParagraphStyle + + + YES + + 6 + System + textColor + + + + + + 4 + 2 + + + + + + . + + , + + + + ## + + + + ## + + + + + + + + + NaN + + YES + + + YES + + + + + + + . + , + NO + YES + YES + + 2 + + YES + 1 + + + + + + + 268 + {{154, 116}, {23, 17}} + + + YES + + 67239488 + 272630784 + to + + + + + 1 + MCAwIDAAA + + + + + + 268 + {{15, 116}, {85, 17}} + + + YES + + 67239488 + 272630784 + Level Range: + + + + + + + + + 268 + {{74, 89}, {82, 18}} + + + YES + + -2080244224 + 0 + Any Level + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{105, 113}, {47, 22}} + + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 1 + + + . + + , + + + + ## + + + + ## + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 1 + + YES + 1 + + + + + + + 268 + {{16, 43}, {115, 18}} + + + YES + + -2080244224 + 0 + Ignore level 1s + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 23}, {190, 18}} + + + YES + + -2080244224 + 0 + Ignore combat while flying + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 207}, {160, 18}} + + + YES + + -2080244224 + 0 + Attack Neutral NPCs + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 167}, {166, 18}} + + + YES + + 67239424 + 0 + Attack Hostile Players + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 187}, {160, 18}} + + + YES + + -2080244224 + 0 + Attack Hostile NPCs + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 147}, {160, 18}} + + + YES + + 67239424 + 0 + Attack Pets + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {305, 242}} + + + + + {{14, 5}, {307, 258}} + + + {0, 0} + + 67239424 + 0 + Combat Options + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{157, 269}, {116, 18}} + + + YES + + -2080244224 + 0 + Enable Healing + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{481, 269}, {164, 18}} + + + YES + + 67239424 + 0 + Attack only if attacked + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 26 + + YES + + + 256 + + YES + + + 268 + {{17, 178}, {97, 17}} + + + YES + + 67239488 + 272630784 + Engage Range: + + + + + + + + + 268 + {{122, 175}, {126, 22}} + + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + NO + + Engage Range + + 1 + + + + + + + 268 + {{253, 178}, {46, 17}} + + + YES + + 67239488 + 272630784 + yards. + + + + + + + + + 268 + {{23, 148}, {91, 17}} + + + YES + + 67239488 + 272630784 + Attack Range: + + + + + + + + + 268 + {{122, 145}, {126, 22}} + + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + NO + + Attack Range + + YES + 1 + + + + + + + 268 + {{253, 148}, {46, 17}} + + + YES + + 67239488 + 272630784 + yards. + + + + + + + + + 268 + {{15, 118}, {99, 17}} + + + YES + + 67239488 + 272630784 + Healing Range: + + + + + + + + + 268 + {{122, 115}, {126, 22}} + + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + NO + + Healing Range + + YES + 1 + + + + + + + 268 + {{253, 118}, {46, 17}} + + + YES + + 67239488 + 272630784 + yards. + + + + + + + + {{1, 1}, {321, 242}} + + + + + {{323, 5}, {323, 258}} + + + {0, 0} + + 67239424 + 0 + Combat Ranges + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {652, 288}} + + + + Combat + + + + + Item 2 + + + 256 + + YES + + + 12 + + YES + + + 256 + + YES + + + 12 + + YES + + + 256 + + YES + + + 268 + {{16, 212}, {238, 18}} + + YES + + -2080244224 + 0 + Queue for Random Battlegrounds + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{174, 184}, {67, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + positiveInfinitySymbol + + + YES + + + + + + -∞ + + +∞ + + + # + # + + + + + + + + NaN + + + + 0 + 0 + YES + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + + 3 + YES + YES + YES + + . + , + NO + NO + YES + + 75000 + + YES + 1 + + + + + + + 268 + {{16, 186}, {153, 18}} + + YES + + -2080244224 + 0 + Stop when you reach + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{246, 188}, {60, 17}} + + YES + + 68288064 + 272630784 + honor + + + + + + + + + 268 + {{16, 160}, {311, 18}} + + YES + + -2080244224 + 0 + Leave battleground if you are flagged Inactive + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 135}, {298, 18}} + + YES + + -2080244224 + 0 + Don't move until Preparation buff has faded + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 110}, {49, 18}} + + YES + + -2080244224 + 0 + Wait + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{71, 108}, {67, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + negativeInfinitySymbol + nilSymbol + numberStyle + positiveFormat + positiveInfinitySymbol + usesGroupingSeparator + + + YES + + + 0.0 + + + . + + , + + + -#,##0.0 + -∞ + + + #,##0.0 + +∞ + + + + #,##0.0 + -#,##0.0 + + + + + + + + NaN + + + + + + . + , + YES + YES + YES + + 10 + + YES + 1 + + + + + + + 268 + {{143, 112}, {260, 17}} + + YES + + 68288064 + 272630784 + seconds before leaving the battleground + + + + + + + + + 268 + {{16, 84}, {144, 18}} + + YES + + 67239424 + 0 + Stay in Wintergrasp + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {606, 245}} + + + + {{15, 10}, {608, 261}} + + {0, 0} + + 67239424 + 0 + PvP and Battleground Options + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{1, 1}, {638, 283}} + + + + {{6, 5}, {640, 285}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {652, 288}} + + PvP + + + + + Item 6 + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{110, 137}, {86, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + Mining Skill + + YES + 1 + + + + + + + 268 + {{110, 110}, {86, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + Herbing Skill + + YES + 1 + + + + + + + 268 + {{8, 138}, {77, 18}} + + YES + + 67239424 + 131072 + Do Mining + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{8, 111}, {96, 18}} + + YES + + 67239424 + 131072 + Do Herbalism + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{451, 111}, {87, 18}} + + YES + + 67239424 + 131072 + Do Skinning + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{549, 110}, {71, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + Skinning Skill + + YES + 1 + + + + + + + 12 + {{451, 138}, {84, 18}} + + YES + + -2080244224 + 131072 + Loot Bodies + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{231, 140}, {99, 14}} + + YES + + 67239488 + 272761856 + Gather Distance: + + + + + + + + + 268 + {{333, 137}, {86, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + ##0 + + + + ##0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + Distance + + YES + 1 + + + + + + + 268 + {{231, 111}, {139, 18}} + + YES + + 67239424 + 131072 + Do Netherwing Eggs + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{451, 84}, {83, 18}} + + YES + + 67239424 + 131072 + Ninja Skin + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{8, 84}, {253, 18}} + + YES + + 67239424 + 131072 + Consolidate crystallized items into eternals + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{8, 59}, {271, 18}} + + YES + + 67239424 + 131072 + Ignore nodes where hostile players are within + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{285, 59}, {54, 19}} + + YES + + -1804468671 + -2008939520 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 200 + + YES + 1 + + + + + + + 268 + {{344, 61}, {116, 14}} + + YES + + 68288064 + 272761856 + yards + + + + + + + + + 268 + {{8, 11}, {266, 18}} + + YES + + 67239424 + 131072 + Ignore nodes where hostile mobs are within + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{285, 10}, {54, 19}} + + YES + + -1804468671 + -2008939520 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 10 + + YES + 1 + + + + + + + 268 + {{344, 13}, {116, 14}} + + YES + + 68288064 + 272761856 + yards + + + + + + + + + 268 + {{8, 35}, {271, 18}} + + YES + + 67239424 + 131072 + Ignore nodes where friendly players are within + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{285, 34}, {54, 19}} + + YES + + -1804468671 + -2008939520 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 50 + + YES + 1 + + + + + + + 268 + {{344, 36}, {116, 14}} + + YES + + 68288064 + 272761856 + yards + + + + + + + + {{1, 1}, {638, 166}} + + + + {{6, 106}, {640, 182}} + + {0, 0} + + 67239424 + 0 + Gathering & Looting + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{15, 54}, {87, 18}} + + YES + + 67239424 + 131072 + Do Fishing + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{386, 55}, {170, 18}} + + YES + + 67239424 + 131072 + Only fish at nearby schools + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{407, 35}, {163, 18}} + + YES + + 67239424 + 131072 + Re-cast if you miss school + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{504, 13}, {54, 19}} + + YES + + -1804468671 + -2008939520 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 15 + + YES + 1 + + + + + + + 268 + {{407, 15}, {92, 14}} + + YES + + 68288064 + 272761856 + School distance: + + + + + + + + + 268 + {{566, 15}, {36, 14}} + + YES + + 68288064 + 272761856 + yards + + + + + + + + + 268 + {{15, 34}, {80, 18}} + + YES + + 67239424 + 131072 + Apply lure: + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 270 + {{98, 31}, {256, 22}} + + YES + + -2076049856 + 133120 + + + 109199615 + 129 + + + 400 + 75 + + + Bright Baubles + + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + 6532 + + + YES + + OtherViews + + YES + + + Aquadynamic Fish Attractor + + 2147483647 + + + _popUpItemAction: + 6533 + + + + + Aquadynamic Fish Lens + + 2147483647 + + + _popUpItemAction: + 6811 + + + + + + Captain Rumsey's Lager + + 2147483647 + + + _popUpItemAction: + 34832 + + + + + Flesh Eating Worm + + 2147483647 + + + _popUpItemAction: + 7307 + + + + + Glow Worm + + 2147483647 + + + _popUpItemAction: + 46006 + + + + + Nightcrawlers + + 2147483647 + + + _popUpItemAction: + 6530 + + + + + Sharpened Fish Hook + + 2147483647 + + + _popUpItemAction: + 34861 + + + + + Shiny Bauble + + 2147483647 + + + _popUpItemAction: + 6529 + + + + + Weather-Beaten Fishing Hat + + 2147483647 + + + _popUpItemAction: + 33820 + + + + + 2 + 1 + YES + YES + 2 + + + + + 268 + {{15, 12}, {221, 18}} + + YES + + 67239424 + 131072 + Use containers (i.e. reinforced crates) + + + 1211912703 + 130 + + + + + 200 + 25 + + + + {{1, 1}, {638, 81}} + + + + {{6, 5}, {640, 97}} + + {0, 0} + + 67239424 + 0 + Fishing + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {652, 288}} + + Gathering and Looting + + + + + Item 3 + + + 256 + + YES + + + 268 + {{146, 271}, {375, 14}} + + YES + + 67239488 + 272761856 + The list only works for NPCs and Nodes. It will not work for Players. + + + + + + + + + 268 + {{146, 257}, {375, 14}} + + YES + + 67239488 + 272761856 + Names will be partially matched (eg, "beAr" matches "Black Bear") + + + + + + + + + 30 + + YES + + + 256 + + YES + + + 274 + + YES + + + 2304 + + YES + + + 4352 + {503, 161} + + YES + + + 256 + {503, 17} + + + + + + -2147483392 + {{-26, 0}, {16, 17}} + + + + YES + + Type + 56 + 40 + 1000 + + 75628096 + 134219776 + Type + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + -2076049856 + 134219776 + + + 103956735 + 2 + + + + 400 + 75 + + + ID + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Name + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + -1 + 3 + YES + YES + 2 + + 3 + YES + YES + + + + Value + 441 + 40 + 1000 + + 75628096 + 2048 + Ignore Value (Mob ID or Name) + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + 1455423488 + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {503, 161}} + + + + + 4 + + + + -2147483392 + {{84, 17}, {15, 67}} + + + _doScroller: + 0.81707322597503662 + + + + -2147483392 + {{1, 108}, {347, 15}} + + 1 + + _doScroller: + 0.97058820724487305 + + + + 2304 + + YES + + + {{1, 0}, {503, 17}} + + + + + 4 + + + + {{18, 39}, {505, 179}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + + 292 + {{18, 12}, {63, 19}} + + YES + + -2080244224 + 134217728 + Add + + LucidaGrande + 12 + 16 + + + -2034482945 + 164 + + NSImage + NSAddTemplate + + + + 400 + 75 + + + + + 292 + {{89, 12}, {102, 19}} + + YES + + -2080244224 + 134217728 + Add Target + + + -2034482945 + 164 + + + + 400 + 75 + + + + + 289 + {{439, 12}, {84, 19}} + + YES + + -2080244224 + 134217728 + Delete + + + -2034482945 + 164 + + NSImage + NSRemoveTemplate + + + + 400 + 75 + + + + {{1, 1}, {541, 228}} + + + + {{62, 5}, {543, 244}} + + {0, 0} + + 67239424 + 0 + NPC and Node Ignore List + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {652, 288}} + + Ignore + + + + + Item 4 + + + 256 + + YES + + + 268 + {{13, 269}, {138, 18}} + + YES + + -2080244224 + 0 + Enable Party Mode + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{16, 228}, {64, 18}} + + YES + + -2080244224 + 67108864 + Tank: + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{83, 223}, {353, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{16, 198}, {64, 18}} + + YES + + -2080244224 + 0 + Assist: + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{83, 193}, {353, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{16, 157}, {176, 18}} + + YES + + -2080244224 + 0 + Do not initiate combat + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 137}, {235, 18}} + + YES + + -2080244224 + 0 + Ignore friendlies not in your party + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 90}, {155, 18}} + + YES + + -2080244224 + 0 + Emotes when idle for + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{177, 88}, {50, 22}} + + YES + + 343014977 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 120 + + YES + 1 + + + + + + + 268 + {{232, 89}, {56, 19}} + + YES + + -2079195584 + 272634880 + seconds + + + + + + + + + 268 + {{47, 58}, {104, 19}} + + YES + + -2079195584 + 4199424 + Wait for at least + + + + + + + + + 268 + {{156, 57}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 100 + + YES + 1 + + + + + + + 268 + {{214, 58}, {179, 19}} + + YES + + -2079195584 + 272634880 + seconds in between emotes + + + + + + + + + 268 + {{16, 16}, {275, 18}} + + YES + + -2080244224 + 0 + Leader wait until all members are within + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{297, 14}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 35 + + YES + 1 + + + + + + + 268 + {{352, 15}, {38, 19}} + + YES + + -2079195584 + 272634880 + yards. + + + + + + + + {{1, 1}, {638, 256}} + + + + {{6, 5}, {640, 258}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {652, 288}} + + Party + + + + + Item 5 + + + 256 + + YES + + + 268 + {{15, 269}, {147, 18}} + + YES + + -2080244224 + 134217728 + Enable Follow Mode + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{16, 15}, {114, 18}} + + YES + + -2080244224 + 0 + Always Follow: + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{133, 10}, {309, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{16, 114}, {193, 18}} + + YES + + -2080244224 + 0 + Mount if leader is mounted + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{15, 230}, {73, 17}} + + YES + + 67239488 + 272630784 + Stay within + + + + + + + + + 268 + {{93, 227}, {50, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + locale + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 10 + + YES + 1 + + + + + + + 268 + {{226, 230}, {126, 17}} + + YES + + 67239488 + 272630784 + yards of the leader + + + + + + + + + 268 + {{170, 227}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + YES + YES + + 15 + + YES + 1 + + + + + + + 268 + {{148, 230}, {17, 17}} + + YES + + 67239488 + 272630784 + to + + + + + + + + + 268 + {{40, 203}, {214, 17}} + + YES + + 67239488 + 272630784 + Move toward leader if distance > + + + + + + + + + 268 + {{259, 200}, {50, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + formatterBehavior + lenient + locale + maximum + minimum + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 20 + + YES + 1 + + + + + + + 268 + {{314, 203}, {38, 17}} + + YES + + 67239488 + 272630784 + yards + + + + + + + + + 12 + {{16, 141}, {263, 18}} + + YES + + -2080244224 + 0 + Stop following if leader is further than + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{285, 139}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 50 + + YES + 1 + + + + + + + 268 + {{340, 137}, {43, 22}} + + YES + + -2079195584 + 272634880 + yards + + + + + + + + + 12 + {{16, 172}, {245, 18}} + + YES + + -2080244224 + 0 + Do not assign leader if further than + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{267, 170}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 50 + + YES + 1 + + + + + + + 268 + {{326, 169}, {43, 22}} + + YES + + -2079195584 + 272634880 + yards + + + + + + + + + 268 + {{16, 79}, {194, 18}} + + YES + + -2080244224 + 0 + Follow friendly flag carriers + + + 1211912703 + 130 + + + + + 200 + 25 + + + + + 268 + {{16, 53}, {188, 18}} + + YES + + -2080244224 + 0 + Follow enemy flag carriers + + + 1211912703 + 130 + + + + + 200 + 25 + + + + {{1, 1}, {630, 258}} + + + + {{14, 5}, {632, 260}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {652, 288}} + + Follow + + + + + Item 6 + + + 256 + + YES + + + 12 + + YES + + + 256 + + YES + + + 268 + {{210, 253}, {182, 18}} + + YES + + -2080244224 + 0 + Disable release on death + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{210, 206}, {183, 18}} + + YES + + -2080244224 + 0 + Check for campers within + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 12 + {{399, 204}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 50 + + 1 + + + + + + + 268 + {{458, 202}, {43, 22}} + + YES + + -2079195584 + 272634880 + yards + + + + + + + + + 268 + {{210, 231}, {194, 18}} + + YES + + -2080244224 + 0 + Resurrect with Spirit Healer + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{210, 184}, {252, 18}} + + YES + + -2080244224 + 0 + Avoid mobs when resurrecting + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{210, 158}, {184, 19}} + + YES + + -2079195584 + 4199424 + Move to corpse when within + + + + + + + + + 12 + {{399, 156}, {50, 22}} + + YES + + -1804468671 + 138413056 + + + + YES + + YES + allowsFloats + formatterBehavior + locale + negativeInfinitySymbol + nilSymbol + numberStyle + positiveInfinitySymbol + + + YES + + + + -∞ + + + +∞ + + + #,##0.### + #,##0.### + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + YES + NO + YES + + 35 + + YES + 1 + + + + + + + 268 + {{458, 155}, {43, 22}} + + YES + + -2079195584 + 272634880 + yards + + + + + + + + {{1, 1}, {638, 281}} + + + + {{6, 5}, {640, 283}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {{10, 33}, {652, 288}} + + Death + + + + + + + 0 + YES + YES + + YES + + + + + {{10, 33}, {692, 343}} + + + + Combat Profile + + + + + 2 + + + 256 + + YES + + + 268 + {{14, 295}, {156, 17}} + + YES + + 68288064 + 272630784 + Mail all items of quality: + + + + + + + + + 268 + {{173, 293}, {51, 18}} + + YES + + 67239424 + 0 + Poor + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{15, 271}, {239, 18}} + + YES + + -2080244224 + 0 + Include items: + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{15, 197}, {114, 18}} + + YES + + -2080244224 + 0 + Exclude items: + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 256 + + YES + + + 2304 + + YES + + + 2322 + {615, 14} + + + + + + * + + + YES + + YES + NSFont + NSParagraphStyle + + + YES + + Helvetica + 12 + 16 + + + 4 + + + + + + + + YES + + + 134 + + + + 615 + 1 + + + 12259 + 0 + + + + YES + + YES + NSBackgroundColor + NSColor + + + YES + + 6 + System + selectedTextBackgroundColor + + + + 6 + System + selectedTextColor + + + + + + + YES + + YES + NSColor + NSCursor + NSUnderline + + + YES + + 1 + MCAwIDEAA + + + {8, -8} + 13 + + + + + + + 6 + {1247, 1e+07} + {223, 0} + + + + {{1, 1}, {615, 42}} + + + + + + {4, -5} + 1 + + 4 + + + + 256 + {{616, 1}, {15, 42}} + + + _doScroller: + 1 + 0.85256409645080566 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + 1 + + _doScroller: + 1 + 0.94565218687057495 + + + {{29, 221}, {632, 44}} + + + 18 + + + + + + + 256 + + YES + + + 2304 + + YES + + + 2322 + {615, 14} + + + + + + Hearthstone, Mining Pick, *Fishing Pole + + + + + + YES + + + 134 + + + + 615 + 1 + + + 12259 + 0 + + + + YES + + YES + NSBackgroundColor + NSColor + + + YES + + + + + + + YES + + YES + NSColor + NSCursor + NSUnderline + + + YES + + + + + + + + 6 + {1247, 1e+07} + {223, 0} + + + + {{1, 1}, {615, 42}} + + + + + + 4 + + + + 256 + {{616, 1}, {15, 42}} + + + _doScroller: + 1 + 0.85256409645080566 + + + + -2147483392 + {{-100, -100}, {87, 18}} + + 1 + + _doScroller: + 1 + 0.94565218687057495 + + + {{29, 147}, {632, 44}} + + + 18 + + + + + + + 268 + {{26, 85}, {638, 54}} + + YES + + 67239424 + 272760832 + Separate items with a comma. You can list item names, item ID numbers, and use wildcards at the start/end such as "Scroll of *". If an item is NOT listed on the "include items", it will not be mailed. Exclusion is really meant only for the quality checks. + + + + + + + + + 268 + {{228, 293}, {80, 18}} + + YES + + -2080244224 + 0 + Common + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{312, 293}, {94, 18}} + + YES + + -2080244224 + 0 + Uncommon + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{410, 293}, {51, 18}} + + YES + + -2080244224 + 0 + Rare + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{465, 293}, {51, 18}} + + YES + + -2080244224 + 0 + Epic + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{520, 293}, {87, 18}} + + YES + + -2080244224 + 0 + Legendary + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{70, 320}, {209, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + + + + + + 268 + {{284, 322}, {263, 17}} + + YES + + 68288064 + 272630784 + Note: Quality is not currently functioning + + + + + 1 + MSAwIDAAA + + + + + + 268 + {{14, 323}, {51, 17}} + + YES + + 68288064 + 272630784 + Mail to: + + + + + + + + {{10, 33}, {692, 343}} + + Mail Action + + + + + + + 0 + YES + YES + + YES + + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{22, 44}, {107, 17}} + + + YES + + 67239488 + 71304192 + Create Profile: + + + + + + + + + 266 + {{134, 42}, {528, 22}} + + + YES + + -1804468671 + 268436480 + + + Enter a name and press return to create a new profile. + + YES + 1 + + + + + + + 268 + {{131, 10}, {534, 26}} + + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Combat Profile + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + 1 + + + YES + + OtherViews + + YES + + + + Mail Action (for Waypoints) + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{15, 15}, {114, 17}} + + + YES + + 67239488 + 71304192 + Type: + + + + + + + + {{1, 1}, {702, 74}} + + + + + {{196, 397}, {704, 90}} + + + {0, 0} + + 67239424 + 0 + Create Profile + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {917, 523} + + + NSView + + + YES + + + + + YES + + + Rename + + 2147483647 + + + + + + Duplicate + + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Delete + + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Import + + 2147483647 + + + + + + Export + + 2147483647 + + + + + + YES + YES + + + 2147483647 + + + + + + Show in Finder + + 2147483647 + + + + + + + + + YES + + + view + + + + 36 + + + + delegate + + + + 1156 + + + + delegate + + + + 1157 + + + + profileTabView + + + + 1158 + + + + dataSource + + + + 1159 + + + + profileOutlineView + + + + 1160 + + + + profileTypePopUp + + + + 1161 + + + + createProfile: + + + + 1169 + + + + menu + + + + 1194 + + + + renameProfile: + + + + 1195 + + + + duplicateProfile: + + + + 1196 + + + + importProfile: + + + + 1197 + + + + exportProfile: + + + + 1198 + + + + deleteProfile: + + + + 1199 + + + + value: currentMailActionProfile.sendTo + + + + + + value: currentMailActionProfile.sendTo + value + currentMailActionProfile.sendTo + 2 + + + 1232 + + + + value: currentMailActionProfile.qualityPoor + + + + + + value: currentMailActionProfile.qualityPoor + value + currentMailActionProfile.qualityPoor + 2 + + + 1233 + + + + value: currentMailActionProfile.qualityCommon + + + + + + value: currentMailActionProfile.qualityCommon + value + currentMailActionProfile.qualityCommon + 2 + + + 1234 + + + + value: currentMailActionProfile.qualityUncommon + + + + + + value: currentMailActionProfile.qualityUncommon + value + currentMailActionProfile.qualityUncommon + 2 + + + 1235 + + + + value: currentMailActionProfile.qualityRare + + + + + + value: currentMailActionProfile.qualityRare + value + currentMailActionProfile.qualityRare + 2 + + + 1236 + + + + value: currentMailActionProfile.qualityEpic + + + + + + value: currentMailActionProfile.qualityEpic + value + currentMailActionProfile.qualityEpic + 2 + + + 1237 + + + + value: currentMailActionProfile.qualityLegendary + + + + + + value: currentMailActionProfile.qualityLegendary + value + currentMailActionProfile.qualityLegendary + 2 + + + 1238 + + + + value: currentMailActionProfile.includeItems + + + + + + value: currentMailActionProfile.includeItems + value + currentMailActionProfile.includeItems + 2 + + + 1239 + + + + value: currentMailActionProfile.itemsToInclude + + + + + + value: currentMailActionProfile.itemsToInclude + value + currentMailActionProfile.itemsToInclude + 2 + + + 1240 + + + + value: values.currentMailActionProfile.excludeItems + + + + + + value: values.currentMailActionProfile.excludeItems + value + values.currentMailActionProfile.excludeItems + 2 + + + 1241 + + + + value: currentMailActionProfile.itemsToExclude + + + + + + value: currentMailActionProfile.itemsToExclude + value + currentMailActionProfile.itemsToExclude + 2 + + + 1242 + + + + profileTitle + + + + 1243 + + + + showInFinder: + + + + 1244 + + + + value: currentCombatProfile.combatEnabled + + + + + + value: currentCombatProfile.combatEnabled + value + currentCombatProfile.combatEnabled + 2 + + + 1454 + + + + value: currentCombatProfile.healingEnabled + + + + + + value: currentCombatProfile.healingEnabled + value + currentCombatProfile.healingEnabled + 2 + + + 1457 + + + + value: currentCombatProfile.onlyRespond + + + + + + value: currentCombatProfile.onlyRespond + value + currentCombatProfile.onlyRespond + 2 + + + 1460 + + + + value: currentCombatProfile.attackNeutralNPCs + + + + + + value: currentCombatProfile.attackNeutralNPCs + value + currentCombatProfile.attackNeutralNPCs + 2 + + + 1462 + + + + value: currentCombatProfile.attackPlayers + + + + + + value: currentCombatProfile.attackPlayers + value + currentCombatProfile.attackPlayers + 2 + + + 1465 + + + + value: currentCombatProfile.attackHostileNPCs + + + + + + value: currentCombatProfile.attackHostileNPCs + value + currentCombatProfile.attackHostileNPCs + 2 + + + 1468 + + + + value: currentCombatProfile.attackPets + + + + + + value: currentCombatProfile.attackPets + value + currentCombatProfile.attackPets + 2 + + + 1470 + + + + value: currentCombatProfile.attackLevelMin + + + + + + value: currentCombatProfile.attackLevelMin + value + currentCombatProfile.attackLevelMin + 2 + + + 1473 + + + + value: currentCombatProfile.attackLevelMax + + + + + + value: currentCombatProfile.attackLevelMax + value + currentCombatProfile.attackLevelMax + 2 + + + 1477 + + + + value: currentCombatProfile.attackAnyLevel + + + + + + value: currentCombatProfile.attackAnyLevel + value + currentCombatProfile.attackAnyLevel + 2 + + + 1480 + + + + value: currentCombatProfile.ignoreElite + + + + + + value: currentCombatProfile.ignoreElite + value + currentCombatProfile.ignoreElite + 2 + + + 1482 + + + + value: currentCombatProfile.ignoreLevelOne + + + + + + value: currentCombatProfile.ignoreLevelOne + value + currentCombatProfile.ignoreLevelOne + 2 + + + 1484 + + + + value: currentCombatProfile.ignoreFlying + + + + + + value: currentCombatProfile.ignoreFlying + value + currentCombatProfile.ignoreFlying + 2 + + + 1487 + + + + ignoreTable + + + + 1497 + + + + dataSource + + + + 1498 + + + + delegate + + + + 1499 + + + + addIgnoreEntry: + + + + 1500 + + + + addIgnoreFromTarget: + + + + 1501 + + + + value: currentCombatProfile.partyEnabled + + + + + + value: currentCombatProfile.partyEnabled + value + currentCombatProfile.partyEnabled + 2 + + + 1505 + + + + value: currentCombatProfile.tankUnit + + + + + + value: currentCombatProfile.tankUnit + value + currentCombatProfile.tankUnit + 2 + + + 1508 + + + + enabled: currentCombatProfile.tankUnit + + + + + + enabled: currentCombatProfile.tankUnit + enabled + currentCombatProfile.tankUnit + 2 + + + 1511 + + + + tankPopUpButton + + + + 1512 + + + + enabled: currentCombatProfile.partyEnabled + + + + + + enabled: currentCombatProfile.partyEnabled + enabled + currentCombatProfile.partyEnabled + 2 + + + 1515 + + + + enabled: currentCombatProfile.partyEnabled + + + + + + enabled: currentCombatProfile.partyEnabled + enabled + currentCombatProfile.partyEnabled + 2 + + + 1518 + + + + enabled: currentCombatProfile.partyEnabled + + + + + + enabled: currentCombatProfile.partyEnabled + enabled + currentCombatProfile.partyEnabled + 2 + + + 1521 + + + + enabled: currentCombatProfile.partyEnabled + + + + + + enabled: currentCombatProfile.partyEnabled + enabled + currentCombatProfile.partyEnabled + 2 + + + 1524 + + + + enabled: currentCombatProfile.partyEnabled + + + + + + enabled: currentCombatProfile.partyEnabled + enabled + currentCombatProfile.partyEnabled + 2 + + + 1527 + + + + enabled: currentCombatProfile.partyEnabled + + + + + + enabled: currentCombatProfile.partyEnabled + enabled + currentCombatProfile.partyEnabled + 2 + + + 1530 + + + + assistPopUpButton + + + + 1531 + + + + enabled2: currentCombatProfile.combatEnabled + + + + + + enabled2: currentCombatProfile.combatEnabled + enabled2 + currentCombatProfile.combatEnabled + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1533 + + + + value: currentCombatProfile.assistUnit + + + + + + value: currentCombatProfile.assistUnit + value + currentCombatProfile.assistUnit + 2 + + + 1535 + + + + value: currentCombatProfile.partyLeaderWait + + + + + + value: currentCombatProfile.partyLeaderWait + value + currentCombatProfile.partyLeaderWait + 2 + + + 1537 + + + + value: currentCombatProfile.partyLeaderWaitRange + + + + + + value: currentCombatProfile.partyLeaderWaitRange + value + currentCombatProfile.partyLeaderWaitRange + 2 + + + 1540 + + + + value: currentCombatProfile.partyEmotes + + + + + + value: currentCombatProfile.partyEmotes + value + currentCombatProfile.partyEmotes + 2 + + + 1544 + + + + enabled: currentCombatProfile.partyEmotes + + + + + + enabled: currentCombatProfile.partyEmotes + enabled + currentCombatProfile.partyEmotes + 2 + + + 1548 + + + + enabled: currentCombatProfile.partyEmotes + + + + + + enabled: currentCombatProfile.partyEmotes + enabled + currentCombatProfile.partyEmotes + 2 + + + 1551 + + + + enabled: currentCombatProfile.partyLeaderWait + + + + + + enabled: currentCombatProfile.partyLeaderWait + enabled + currentCombatProfile.partyLeaderWait + 2 + + + 1553 + + + + value: currentCombatProfile.partyEmotesIdleTime + + + + + + value: currentCombatProfile.partyEmotesIdleTime + value + currentCombatProfile.partyEmotesIdleTime + 2 + + + 1555 + + + + value: currentCombatProfile.partyEmotesInterval + + + + + + value: currentCombatProfile.partyEmotesInterval + value + currentCombatProfile.partyEmotesInterval + 2 + + + 1557 + + + + value: currentCombatProfile.partyIgnoreOtherFriendlies + + + + + + value: currentCombatProfile.partyIgnoreOtherFriendlies + value + currentCombatProfile.partyIgnoreOtherFriendlies + 2 + + + 1559 + + + + value: currentCombatProfile.partyDoNotInitiate + + + + + + value: currentCombatProfile.partyDoNotInitiate + value + currentCombatProfile.partyDoNotInitiate + 2 + + + 1561 + + + + selectedObject: currentCombatProfile.assistUnitGUID + + + + + + selectedObject: currentCombatProfile.assistUnitGUID + selectedObject + currentCombatProfile.assistUnitGUID + 2 + + + 1564 + + + + selectedObject: currentCombatProfile.tankUnitGUID + + + + + + selectedObject: currentCombatProfile.tankUnitGUID + selectedObject + currentCombatProfile.tankUnitGUID + 2 + + + 1566 + + + + enabled: currentCombatProfile.assistUnit + + + + + + enabled: currentCombatProfile.assistUnit + enabled + currentCombatProfile.assistUnit + 2 + + + 1568 + + + + value: currentCombatProfile.followEnabled + + + + + + value: currentCombatProfile.followEnabled + value + currentCombatProfile.followEnabled + 2 + + + 1571 + + + + value: currentCombatProfile.yardsBehindTargetStart + + + + + + value: currentCombatProfile.yardsBehindTargetStart + value + currentCombatProfile.yardsBehindTargetStart + 2 + + + 1574 + + + + value: currentCombatProfile.yardsBehindTargetStop + + + + + + value: currentCombatProfile.yardsBehindTargetStop + value + currentCombatProfile.yardsBehindTargetStop + 2 + + + 1577 + + + + value: currentCombatProfile.followDistanceToMove + + + + + + value: currentCombatProfile.followDistanceToMove + value + currentCombatProfile.followDistanceToMove + 2 + + + 1580 + + + + value: currentCombatProfile.followDoNotAssignLeader + + + + + + value: currentCombatProfile.followDoNotAssignLeader + value + currentCombatProfile.followDoNotAssignLeader + 2 + + + 1583 + + + + value: currentCombatProfile.followDoNotAssignLeaderRange + + + + + + value: currentCombatProfile.followDoNotAssignLeaderRange + value + currentCombatProfile.followDoNotAssignLeaderRange + 2 + + + 1586 + + + + value: currentCombatProfile.followStopFollowingOOR + + + + + + value: currentCombatProfile.followStopFollowingOOR + value + currentCombatProfile.followStopFollowingOOR + 2 + + + 1589 + + + + value: currentCombatProfile.followStopFollowingRange + + + + + + value: currentCombatProfile.followStopFollowingRange + value + currentCombatProfile.followStopFollowingRange + 2 + + + 1592 + + + + value: currentCombatProfile.mountEnabled + + + + + + value: currentCombatProfile.mountEnabled + value + currentCombatProfile.mountEnabled + 2 + + + 1595 + + + + value: currentCombatProfile.followFriendlyFlagCarriers + + + + + + value: currentCombatProfile.followFriendlyFlagCarriers + value + currentCombatProfile.followFriendlyFlagCarriers + 2 + + + 1598 + + + + value: currentCombatProfile.followEnemyFlagCarriers + + + + + + value: currentCombatProfile.followEnemyFlagCarriers + value + currentCombatProfile.followEnemyFlagCarriers + 2 + + + 1601 + + + + value: currentCombatProfile.followUnit + + + + + + value: currentCombatProfile.followUnit + value + currentCombatProfile.followUnit + 2 + + + 1603 + + + + selectedObject: currentCombatProfile.followUnitGUID + + + + + + selectedObject: currentCombatProfile.followUnitGUID + selectedObject + currentCombatProfile.followUnitGUID + 2 + + + 1606 + + + + followPopUpButton + + + + 1607 + + + + enabled: currentCombatProfile.followUnit + + + + + + enabled: currentCombatProfile.followUnit + enabled + currentCombatProfile.followUnit + 2 + + + 1609 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1611 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1613 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1615 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1617 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1619 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1621 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1623 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1625 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1627 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1629 + + + + enabled: currentCombatProfile.followEnabled + + + + + + enabled: currentCombatProfile.followEnabled + enabled + currentCombatProfile.followEnabled + 2 + + + 1631 + + + + enabled2: currentCombatProfile.followDoNotAssignLeader + + + + + + enabled2: currentCombatProfile.followDoNotAssignLeader + enabled2 + currentCombatProfile.followDoNotAssignLeader + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1633 + + + + enabled2: currentCombatProfile.followStopFollowingOOR + + + + + + enabled2: currentCombatProfile.followStopFollowingOOR + enabled2 + currentCombatProfile.followStopFollowingOOR + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1635 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1637 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1639 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1642 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1644 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1647 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1649 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1651 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1654 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1657 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1660 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1663 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1665 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1667 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1670 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1673 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1675 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1677 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1679 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1682 + + + + enabled2: currentCombatProfile.onlyRespond + + + + + + enabled2: currentCombatProfile.onlyRespond + enabled2 + currentCombatProfile.onlyRespond + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1685 + + + + enabled3: currentCombatProfile.attackAnyLevel + + + + + + enabled3: currentCombatProfile.attackAnyLevel + enabled3 + currentCombatProfile.attackAnyLevel + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1688 + + + + enabled3: currentCombatProfile.attackAnyLevel + + + + + + enabled3: currentCombatProfile.attackAnyLevel + enabled3 + currentCombatProfile.attackAnyLevel + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + + 2 + + + 1691 + + + + enabled3: currentCombatProfile.attackAnyLevel + + + + + + enabled3: currentCombatProfile.attackAnyLevel + enabled3 + currentCombatProfile.attackAnyLevel + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1696 + + + + hidden: currentCombatProfile.attackAnyLevel + + + + + + hidden: currentCombatProfile.attackAnyLevel + hidden + currentCombatProfile.attackAnyLevel + + NSValueTransformerName + NSNegateBoolean + + + 2 + + + 1699 + + + + enabled2: currentCombatProfile.partyLeaderWait + + + + + + enabled2: currentCombatProfile.partyLeaderWait + enabled2 + currentCombatProfile.partyLeaderWait + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1705 + + + + enabled2: currentCombatProfile.partyEmotes + + + + + + enabled2: currentCombatProfile.partyEmotes + enabled2 + currentCombatProfile.partyEmotes + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1707 + + + + enabled2: currentCombatProfile.partyEmotes + + + + + + enabled2: currentCombatProfile.partyEmotes + enabled2 + currentCombatProfile.partyEmotes + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 1709 + + + + value: currentCombatProfile.disableRelease + + + + + + value: currentCombatProfile.disableRelease + value + currentCombatProfile.disableRelease + 2 + + + 1712 + + + + value: currentCombatProfile.resurrectWithSpiritHealer + + + + + + value: currentCombatProfile.resurrectWithSpiritHealer + value + currentCombatProfile.resurrectWithSpiritHealer + 2 + + + 1715 + + + + value: currentCombatProfile.checkForCampers + + + + + + value: currentCombatProfile.checkForCampers + value + currentCombatProfile.checkForCampers + 2 + + + 1718 + + + + value: currentCombatProfile.checkForCampersRange + + + + + + value: currentCombatProfile.checkForCampersRange + value + currentCombatProfile.checkForCampersRange + 2 + + + 1721 + + + + enabled: currentCombatProfile.checkForCampers + + + + + + enabled: currentCombatProfile.checkForCampers + enabled + currentCombatProfile.checkForCampers + 2 + + + 1723 + + + + value: currentCombatProfile.avoidMobsWhenResurrecting + + + + + + value: currentCombatProfile.avoidMobsWhenResurrecting + value + currentCombatProfile.avoidMobsWhenResurrecting + 2 + + + 1725 + + + + value: currentCombatProfile.moveToCorpseRange + + + + + + value: currentCombatProfile.moveToCorpseRange + value + currentCombatProfile.moveToCorpseRange + 2 + + + 1728 + + + + deleteIgnoreEntry: + + + + 1729 + + + + enabled: currentCombatProfile.healingEnabled + + + + + + enabled: currentCombatProfile.healingEnabled + enabled + currentCombatProfile.healingEnabled + 2 + + + 1752 + + + + value: currentCombatProfile.engageRange + + + + + + value: currentCombatProfile.engageRange + value + currentCombatProfile.engageRange + 2 + + + 1753 + + + + value: currentCombatProfile.healingRange + + + + + + value: currentCombatProfile.healingRange + value + currentCombatProfile.healingRange + 2 + + + 1754 + + + + value: currentCombatProfile.attackRange + + + + + + value: currentCombatProfile.attackRange + value + currentCombatProfile.attackRange + 2 + + + 1755 + + + + enabled: currentCombatProfile.combatEnabled + + + + + + enabled: currentCombatProfile.combatEnabled + enabled + currentCombatProfile.combatEnabled + 2 + + + 1756 + + + + value: currentCombatProfile.pvpQueueForRandomBattlegrounds + + + + + + value: currentCombatProfile.pvpQueueForRandomBattlegrounds + value + currentCombatProfile.pvpQueueForRandomBattlegrounds + 2 + + + 1800 + + + + value: currentCombatProfile.pvpStopHonor + + + + + + value: currentCombatProfile.pvpStopHonor + value + currentCombatProfile.pvpStopHonor + 2 + + + 1804 + + + + value: currentCombatProfile.pvpStopHonorTotal + + + + + + value: currentCombatProfile.pvpStopHonorTotal + value + currentCombatProfile.pvpStopHonorTotal + 2 + + + 1820 + + + + value: currentCombatProfile.pvpLeaveIfInactive + + + + + + value: currentCombatProfile.pvpLeaveIfInactive + value + currentCombatProfile.pvpLeaveIfInactive + 2 + + + 1821 + + + + value: currentCombatProfile.pvpDontMoveWithPreparation + + + + + + value: currentCombatProfile.pvpDontMoveWithPreparation + value + currentCombatProfile.pvpDontMoveWithPreparation + 2 + + + 1822 + + + + value: currentCombatProfile.pvpWaitToLeave + + + + + + value: currentCombatProfile.pvpWaitToLeave + value + currentCombatProfile.pvpWaitToLeave + 2 + + + 1823 + + + + value: currentCombatProfile.pvpWaitToLeaveTime + + + + + + value: currentCombatProfile.pvpWaitToLeaveTime + value + currentCombatProfile.pvpWaitToLeaveTime + 2 + + + 1824 + + + + value: currentCombatProfile.pvpStayInWintergrasp + + + + + + value: currentCombatProfile.pvpStayInWintergrasp + value + currentCombatProfile.pvpStayInWintergrasp + 2 + + + 1830 + + + + value: currentCombatProfile.DoMining + + + + + + value: currentCombatProfile.DoMining + value + currentCombatProfile.DoMining + 2 + + + 2005 + + + + value: currentCombatProfile.MiningLevel + + + + + + value: currentCombatProfile.MiningLevel + value + currentCombatProfile.MiningLevel + 2 + + + 2006 + + + + value: currentCombatProfile.GatheringDistance + + + + + + value: currentCombatProfile.GatheringDistance + value + currentCombatProfile.GatheringDistance + 2 + + + 2007 + + + + value: currentCombatProfile.ShouldLoot + + + + + + value: currentCombatProfile.ShouldLoot + value + currentCombatProfile.ShouldLoot + 2 + + + 2008 + + + + value: currentCombatProfile.DoHerbalism + + + + + + value: currentCombatProfile.DoHerbalism + value + currentCombatProfile.DoHerbalism + 2 + + + 2009 + + + + value: currentCombatProfile.DoNetherwingEggs + + + + + + value: currentCombatProfile.DoNetherwingEggs + value + currentCombatProfile.DoNetherwingEggs + 2 + + + 2013 + + + + value: currentCombatProfile.DoSkinning + + + + + + value: currentCombatProfile.DoSkinning + value + currentCombatProfile.DoSkinning + 2 + + + 2014 + + + + value: currentCombatProfile.SkinningLevel + + + + + + value: currentCombatProfile.SkinningLevel + value + currentCombatProfile.SkinningLevel + 2 + + + 2015 + + + + value: currentCombatProfile.DoNinjaSkin + + + + + + value: currentCombatProfile.DoNinjaSkin + value + currentCombatProfile.DoNinjaSkin + 2 + + + 2016 + + + + value: currentCombatProfile.GatherUseCrystallized + + + + + + value: currentCombatProfile.GatherUseCrystallized + value + currentCombatProfile.GatherUseCrystallized + 2 + + + 2017 + + + + value: currentCombatProfile.GatherNodesHostilePlayerNear + + + + + + value: currentCombatProfile.GatherNodesHostilePlayerNear + value + currentCombatProfile.GatherNodesHostilePlayerNear + 2 + + + 2018 + + + + value: currentCombatProfile.GatherNodesFriendlyPlayerNear + + + + + + value: currentCombatProfile.GatherNodesFriendlyPlayerNear + value + currentCombatProfile.GatherNodesFriendlyPlayerNear + 2 + + + 2019 + + + + value: currentCombatProfile.GatherNodesMobNear + + + + + + value: currentCombatProfile.GatherNodesMobNear + value + currentCombatProfile.GatherNodesMobNear + 2 + + + 2020 + + + + value: currentCombatProfile.GatherNodesMobNearRange + + + + + + value: currentCombatProfile.GatherNodesMobNearRange + value + currentCombatProfile.GatherNodesMobNearRange + 2 + + + 2021 + + + + value: currentCombatProfile.GatherNodesFriendlyPlayerNearRange + + + + + + value: currentCombatProfile.GatherNodesFriendlyPlayerNearRange + value + currentCombatProfile.GatherNodesFriendlyPlayerNearRange + 2 + + + 2022 + + + + value: currentCombatProfile.GatherNodesHostilePlayerNearRange + + + + + + value: currentCombatProfile.GatherNodesHostilePlayerNearRange + value + currentCombatProfile.GatherNodesHostilePlayerNearRange + 2 + + + 2023 + + + + value: currentCombatProfile.DoFishing + + + + + + value: currentCombatProfile.DoFishing + value + currentCombatProfile.DoFishing + 2 + + + 2024 + + + + value: currentCombatProfile.FishingApplyLure + + + + + + value: currentCombatProfile.FishingApplyLure + value + currentCombatProfile.FishingApplyLure + 2 + + + 2025 + + + + selectedTag: currentCombatProfile.FishingLureID + + + + + + selectedTag: currentCombatProfile.FishingLureID + selectedTag + currentCombatProfile.FishingLureID + 2 + + + 2029 + + + + value: currentCombatProfile.FishingUseContainers + + + + + + value: currentCombatProfile.FishingUseContainers + value + currentCombatProfile.FishingUseContainers + 2 + + + 2030 + + + + value: currentCombatProfile.FishingOnlySchools + + + + + + value: currentCombatProfile.FishingOnlySchools + value + currentCombatProfile.FishingOnlySchools + 2 + + + 2031 + + + + value: currentCombatProfile.FishingRecast + + + + + + value: currentCombatProfile.FishingRecast + value + currentCombatProfile.FishingRecast + 2 + + + 2032 + + + + value: currentCombatProfile.FishingGatherDistance + + + + + + value: currentCombatProfile.FishingGatherDistance + value + currentCombatProfile.FishingGatherDistance + 2 + + + 2033 + + + + value: currentCombatProfile.HerbalismLevel + + + + + + value: currentCombatProfile.HerbalismLevel + value + currentCombatProfile.HerbalismLevel + 2 + + + 2037 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + 1046 + + + YES + + + + + + + + + 1082 + + + YES + + + + + + 1084 + + + YES + + + + + + 1090 + + + + + 1094 + + + + + 1097 + + + YES + + + + + + 1098 + + + YES + + + + + + 1099 + + + YES + + + + + + + 1100 + + + + + 1101 + + + + + 1095 + + + YES + + + + + + 1096 + + + + + 1103 + + + YES + + + + + + + + 1104 + + + YES + + + + + + 1105 + + + YES + + + + + + 1106 + + + YES + + + + + + + + + + + + + + + + + + + + 1107 + + + YES + + + + + + 1152 + + + YES + + + + + + 1153 + + + YES + + + + + + 1154 + + + + + 1143 + + + YES + + + + + + + + + 1147 + + + + + 1146 + + + YES + + + + + + 1145 + + + + + 1144 + + + + + 1148 + + + YES + + + + + + 1151 + + + + + 1121 + + + YES + + + + + + 1126 + + + + + 1120 + + + YES + + + + + + 1127 + + + + + 1114 + + + YES + + + + + + 1133 + + + + + 1113 + + + YES + + + + + + 1134 + + + + + 1112 + + + YES + + + + + + + + 1135 + + + + + 1136 + + + + + 1137 + + + + + 1111 + + + YES + + + + + + + + 1138 + + + + + 1139 + + + + + 1140 + + + + + 1109 + + + YES + + + + + + 1142 + + + + + 1119 + + + YES + + + + + + 1128 + + + + + 1118 + + + YES + + + + + + 1129 + + + + + 1117 + + + YES + + + + + + 1130 + + + + + 1116 + + + YES + + + + + + 1131 + + + + + 1115 + + + YES + + + + + + 1132 + + + + + 1122 + + + YES + + + + + + 1125 + + + + + 1110 + + + YES + + + + + + 1141 + + + + + 1123 + + + YES + + + + + + 1124 + + + + + 1163 + + + YES + + + + + + 1164 + + + YES + + + + + + + 1165 + + + YES + + + + + + 1166 + + + + + 1167 + + + YES + + + + + + 1168 + + + + + 1170 + + + + + 1181 + + + YES + + + + + + 1182 + + + + + 1183 + + + YES + + + + + + + + + + + + + + 1184 + + + + + 1185 + + + + + 1186 + + + + + 1187 + + + + + 1188 + + + + + 1189 + + + + + 1191 + + + + + 1192 + + + + + 1193 + + + + + 1245 + + + YES + + + + + + + + + + + + 1251 + + + YES + + + + + + 1250 + + + YES + + + + + + 1249 + + + YES + + + + + + 1248 + + + YES + + + + + + 1247 + + + YES + + + + + + 1246 + + + YES + + + + + + 1430 + + + YES + + + + + + 1431 + + + YES + + + + + + + + + + + + + + 1440 + + + YES + + + + + + 1439 + + + YES + + + + + + 1438 + + + YES + + + + + + 1437 + + + YES + + + + + + 1436 + + + YES + + + + + + 1435 + + + YES + + + + + + 1434 + + + YES + + + + + + 1433 + + + YES + + + + + + 1432 + + + YES + + + + + + 1451 + + + + + 1450 + + + + + 1449 + + + + + 1448 + + + + + 1446 + + + YES + + + + + + 1447 + + + + + 1445 + + + + + 1443 + + + YES + + + + + + 1444 + + + + + 1442 + + + + + 1441 + + + + + 1379 + + + YES + + + + + + + 1381 + + + YES + + + + + + 1380 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + 1401 + + + YES + + + + + + 1400 + + + YES + + + + + + 1399 + + + YES + + + + + + 1398 + + + YES + + + + + + 1397 + + + YES + + + + + + 1396 + + + YES + + + + + + 1395 + + + YES + + + + + + 1394 + + + YES + + + + + + 1393 + + + YES + + + + + + 1392 + + + YES + + + + + + 1391 + + + YES + + + + + + 1390 + + + YES + + + + + + 1389 + + + YES + + + + + + 1388 + + + YES + + + + + + 1387 + + + YES + + + + + + 1386 + + + YES + + + + + + 1385 + + + YES + + + + + + 1384 + + + YES + + + + + + 1383 + + + YES + + + + + + 1429 + + + + + 1428 + + + + + 1427 + + + + + 1425 + + + YES + + + + + + 1426 + + + + + 1424 + + + + + 1423 + + + + + 1418 + + + YES + + + + + + 1419 + + + YES + + + + + + + + 1422 + + + + + 1421 + + + + + 1420 + + + + + 1417 + + + + + 1415 + + + YES + + + + + + 1416 + + + + + 1414 + + + + + 1413 + + + + + 1412 + + + + + 1410 + + + YES + + + + + + 1411 + + + + + 1409 + + + + + 1408 + + + + + 1406 + + + YES + + + + + + 1407 + + + + + 1405 + + + + + 1403 + + + YES + + + + + + 1404 + + + + + 1402 + + + + + 1382 + + + + + 1334 + + + YES + + + + + + + 1336 + + + YES + + + + + + 1335 + + + YES + + + + + + + + + + + + + + + + + + + + 1352 + + + YES + + + + + + 1351 + + + YES + + + + + + 1350 + + + YES + + + + + + 1349 + + + YES + + + + + + 1348 + + + YES + + + + + + 1347 + + + YES + + + + + + 1346 + + + YES + + + + + + 1345 + + + YES + + + + + + 1344 + + + YES + + + + + + 1343 + + + YES + + + + + + 1342 + + + YES + + + + + + 1341 + + + YES + + + + + + 1340 + + + YES + + + + + + 1339 + + + YES + + + + + + 1338 + + + YES + + + + + + 1374 + + + YES + + + + + + 1375 + + + YES + + + + + + + + 1378 + + + + + 1377 + + + + + 1376 + + + + + 1373 + + + + + 1371 + + + YES + + + + + + 1372 + + + + + 1370 + + + + + 1369 + + + + + 1367 + + + YES + + + + + + 1368 + + + + + 1366 + + + + + 1365 + + + + + 1363 + + + YES + + + + + + 1364 + + + + + 1362 + + + + + 1361 + + + + + 1360 + + + + + 1359 + + + + + 1354 + + + YES + + + + + + 1355 + + + YES + + + + + + + + 1358 + + + + + 1357 + + + + + 1356 + + + + + 1353 + + + + + 1337 + + + + + 1311 + + + YES + + + + + + + + 1313 + + + YES + + + + + + 1312 + + + YES + + + + + + 1333 + + + + + 1332 + + + + + 1275 + + + YES + + + + + + + + + + 1278 + + + YES + + + + + + + + + + + + + + + + + 1277 + + + YES + + + + + + 1276 + + + YES + + + + + + 1310 + + + + + 1309 + + + + + 1291 + + + YES + + + + + + 1290 + + + YES + + + + + + 1289 + + + YES + + + + + + 1288 + + + YES + + + + + + 1287 + + + YES + + + + + + 1286 + + + YES + + + + + + 1285 + + + YES + + + + + + 1284 + + + YES + + + + + + 1283 + + + YES + + + + + + 1282 + + + YES + + + + + + 1280 + + + YES + + + + + + 1279 + + + YES + + + + + + 1308 + + + + + 1307 + + + + + 1306 + + + + + 1304 + + + YES + + + + + + 1305 + + + + + 1303 + + + + + 1302 + + + + + 1301 + + + + + 1299 + + + YES + + + + + + 1300 + + + + + 1298 + + + + + 1297 + + + + + 1296 + + + + + 1295 + + + + + 1252 + + + YES + + + + + + 1253 + + + YES + + + + + + 1292 + + + YES + + + + + + 1294 + + + + + 1730 + + + YES + + + + + + + + + + + + + + 1731 + + + YES + + + + + + 1732 + + + YES + + + + + + 1733 + + + YES + + + + + + 1734 + + + YES + + + + + + 1735 + + + YES + + + + + + 1736 + + + YES + + + + + + 1737 + + + YES + + + + + + 1738 + + + YES + + + + + + 1739 + + + YES + + + + + + 1740 + + + + + 1741 + + + YES + + + + + + 1742 + + + + + 1743 + + + + + 1744 + + + + + 1745 + + + YES + + + + + + 1746 + + + + + 1747 + + + + + 1748 + + + + + 1749 + + + YES + + + + + + 1750 + + + + + 1751 + + + + + 1776 + + + YES + + + + + + + + + + + + + + + 1777 + + + YES + + + + + + 1778 + + + YES + + + + + + 1779 + + + YES + + + + + + 1780 + + + YES + + + + + + 1781 + + + YES + + + + + + 1782 + + + YES + + + + + + 1783 + + + YES + + + + + + 1784 + + + YES + + + + + + 1785 + + + YES + + + + + + 1786 + + + + + 1787 + + + YES + + + + + + 1788 + + + + + 1789 + + + + + 1790 + + + + + 1791 + + + + + 1792 + + + + + 1793 + + + + + 1794 + + + YES + + + + + + 1795 + + + + + 1825 + + + YES + + + + + + + + + 1316 + + + YES + + + + + + + + + 1319 + + + + + 1320 + + + + + 1321 + + + YES + + + + + + + 1322 + + + + + 1323 + + + YES + + + + + + 1324 + + + YES + + + + + + 1325 + + + YES + + + + + + 1326 + + + YES + + + + + + + 1327 + + + + + 1328 + + + + + 1329 + + + + + 1317 + + + YES + + + + + + 1318 + + + + + 1315 + + + YES + + + + + + 1330 + + + + + 1314 + + + YES + + + + + + 1331 + + + + + 1826 + + + YES + + + + + + 1827 + + + + + 1831 + + + + + 1832 + + + YES + + + + + + 1833 + + + YES + + + + + + + 1834 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + + + 1836 + + + YES + + + + + + 1837 + + + YES + + + + + + 1838 + + + YES + + + + + + 1840 + + + YES + + + + + + 1841 + + + YES + + + + + + 1842 + + + YES + + + + + + 1843 + + + YES + + + + + + 1844 + + + YES + + + + + + 1845 + + + YES + + + + + + 1846 + + + YES + + + + + + 1847 + + + YES + + + + + + 1848 + + + + + 1849 + + + YES + + + + + + 1850 + + + + + 1851 + + + + + 1852 + + + YES + + + + + + 1853 + + + + + 1854 + + + + + 1855 + + + + + 1856 + + + + + 1857 + + + YES + + + + + + 1858 + + + + + 1860 + + + + + 1861 + + + YES + + + + + + 1862 + + + + + 1863 + + + + + 1865 + + + YES + + + + + + + + + + + + + + 1839 + + + YES + + + + + + 1859 + + + + + 1866 + + + YES + + + + + + 1888 + + + + + 1867 + + + YES + + + + + + 1887 + + + + + 1872 + + + YES + + + + + + 1879 + + + YES + + + + + + 1880 + + + + + 1873 + + + YES + + + + + + 1878 + + + + + 1869 + + + YES + + + + + + 1885 + + + + + 1870 + + + YES + + + + + + 1883 + + + YES + + + + + + 1884 + + + + + 1875 + + + YES + + + + + + 1876 + + + + + 1868 + + + YES + + + + + + 1886 + + + + + 1871 + + + YES + + + + + + 1881 + + + YES + + + + + + 1882 + + + + + 1874 + + + YES + + + + + + 1877 + + + + + 1932 + + + YES + + + + + + 1933 + + + YES + + + + + + 1934 + + + YES + + + + + + 1935 + + + YES + + + + + + 1936 + + + YES + + + + + + 1937 + + + + + 1938 + + + + + 1939 + + + YES + + + + + + 1940 + + + + + 1941 + + + + + 1942 + + + + + 1917 + + + YES + + + + + + 1931 + + + + + 1918 + + + YES + + + + + + 1919 + + + YES + + + + + + 1920 + + + YES + + + + + + + + + + + + + + + 1921 + + + + + 1922 + + + + + 1923 + + + + + 1924 + + + + + 1925 + + + + + 1926 + + + + + 1927 + + + + + 1928 + + + + + 1929 + + + + + 1930 + + + + + 1943 + + + YES + + + + + + 1944 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 1046.IBPluginDependency + 1082.IBAttributePlaceholdersKey + 1082.IBPluginDependency + 1084.IBPluginDependency + 1090.IBPluginDependency + 1094.IBPluginDependency + 1095.IBPluginDependency + 1096.IBPluginDependency + 1097.IBPluginDependency + 1098.IBPluginDependency + 1099.IBEditorWindowLastContentRect + 1099.IBPluginDependency + 1100.IBPluginDependency + 1101.IBPluginDependency + 1103.IBPluginDependency + 1104.IBPluginDependency + 1105.IBPluginDependency + 1106.IBPluginDependency + 1107.IBPluginDependency + 1109.IBPluginDependency + 1110.IBPluginDependency + 1111.IBPluginDependency + 1112.IBPluginDependency + 1113.IBPluginDependency + 1114.IBPluginDependency + 1115.IBPluginDependency + 1116.IBPluginDependency + 1117.IBPluginDependency + 1118.IBPluginDependency + 1119.IBPluginDependency + 1120.IBPluginDependency + 1121.IBPluginDependency + 1122.IBPluginDependency + 1123.IBPluginDependency + 1124.IBPluginDependency + 1125.IBPluginDependency + 1126.IBPluginDependency + 1127.IBPluginDependency + 1128.IBPluginDependency + 1129.IBPluginDependency + 1130.IBPluginDependency + 1131.IBPluginDependency + 1132.IBPluginDependency + 1133.IBPluginDependency + 1134.IBPluginDependency + 1135.IBPluginDependency + 1136.IBPluginDependency + 1137.IBPluginDependency + 1138.IBPluginDependency + 1139.IBPluginDependency + 1140.IBPluginDependency + 1141.IBPluginDependency + 1142.IBPluginDependency + 1143.IBPluginDependency + 1144.IBPluginDependency + 1145.IBPluginDependency + 1146.IBPluginDependency + 1147.IBPluginDependency + 1148.IBPluginDependency + 1151.IBPluginDependency + 1152.IBPluginDependency + 1153.IBPluginDependency + 1154.IBPluginDependency + 1165.IBPluginDependency + 1166.IBPluginDependency + 1167.IBPluginDependency + 1168.IBPluginDependency + 1181.IBPluginDependency + 1182.IBPluginDependency + 1183.IBEditorWindowLastContentRect + 1183.IBPluginDependency + 1184.IBPluginDependency + 1185.IBPluginDependency + 1186.IBPluginDependency + 1187.IBPluginDependency + 1188.IBPluginDependency + 1189.IBPluginDependency + 1191.IBPluginDependency + 1192.IBPluginDependency + 1193.IBPluginDependency + 1245.IBAttributePlaceholdersKey + 1253.IBPluginDependency + 1276.IBPluginDependency + 1277.IBPluginDependency + 1279.IBPluginDependency + 1280.IBPluginDependency + 1282.IBPluginDependency + 1283.IBPluginDependency + 1284.IBPluginDependency + 1285.IBPluginDependency + 1286.IBPluginDependency + 1287.IBPluginDependency + 1288.IBPluginDependency + 1289.IBPluginDependency + 1290.IBPluginDependency + 1291.IBPluginDependency + 1292.IBPluginDependency + 1294.IBPluginDependency + 1295.IBPluginDependency + 1296.IBPluginDependency + 1297.IBPluginDependency + 1298.IBPluginDependency + 1299.IBPluginDependency + 1300.IBPluginDependency + 1301.IBPluginDependency + 1302.IBPluginDependency + 1303.IBPluginDependency + 1304.IBPluginDependency + 1305.IBPluginDependency + 1306.IBPluginDependency + 1307.IBPluginDependency + 1308.IBPluginDependency + 1309.IBPluginDependency + 1310.IBPluginDependency + 1312.IBPluginDependency + 1313.IBPluginDependency + 1314.IBPluginDependency + 1315.IBPluginDependency + 1316.IBPluginDependency + 1317.IBPluginDependency + 1318.IBPluginDependency + 1319.IBPluginDependency + 1320.IBPluginDependency + 1321.IBPluginDependency + 1322.IBPluginDependency + 1323.IBPluginDependency + 1324.IBPluginDependency + 1325.IBPluginDependency + 1326.IBPluginDependency + 1326.editorWindowContentRectSynchronizationRect + 1327.IBPluginDependency + 1328.IBPluginDependency + 1329.IBPluginDependency + 1330.IBPluginDependency + 1331.IBPluginDependency + 1332.IBPluginDependency + 1333.IBPluginDependency + 1335.IBPluginDependency + 1336.IBPluginDependency + 1337.IBPluginDependency + 1338.IBPluginDependency + 1339.IBPluginDependency + 1340.IBPluginDependency + 1341.IBAttributePlaceholdersKey + 1341.IBPluginDependency + 1342.IBPluginDependency + 1343.IBPluginDependency + 1344.IBPluginDependency + 1345.IBPluginDependency + 1346.IBPluginDependency + 1347.IBAttributePlaceholdersKey + 1347.IBPluginDependency + 1348.IBPluginDependency + 1349.IBAttributePlaceholdersKey + 1349.IBPluginDependency + 1350.IBAttributePlaceholdersKey + 1350.IBPluginDependency + 1351.IBPluginDependency + 1352.IBAttributePlaceholdersKey + 1352.IBPluginDependency + 1353.IBPluginDependency + 1354.IBPluginDependency + 1355.IBEditorWindowLastContentRect + 1355.IBPluginDependency + 1356.IBPluginDependency + 1357.IBPluginDependency + 1358.IBPluginDependency + 1359.IBPluginDependency + 1360.IBPluginDependency + 1361.IBPluginDependency + 1362.IBPluginDependency + 1363.IBPluginDependency + 1364.IBNumberFormatterBehaviorMetadataKey + 1364.IBNumberFormatterLocalizesFormatMetadataKey + 1364.IBPluginDependency + 1365.IBPluginDependency + 1366.IBPluginDependency + 1367.IBPluginDependency + 1368.IBNumberFormatterBehaviorMetadataKey + 1368.IBNumberFormatterLocalizesFormatMetadataKey + 1368.IBPluginDependency + 1369.IBPluginDependency + 1370.IBPluginDependency + 1371.IBPluginDependency + 1372.IBNumberFormatterBehaviorMetadataKey + 1372.IBNumberFormatterLocalizesFormatMetadataKey + 1372.IBPluginDependency + 1373.IBPluginDependency + 1374.IBPluginDependency + 1375.IBPluginDependency + 1376.IBPluginDependency + 1377.IBPluginDependency + 1378.IBPluginDependency + 1380.IBPluginDependency + 1381.IBAttributePlaceholdersKey + 1381.IBPluginDependency + 1382.IBPluginDependency + 1383.IBAttributePlaceholdersKey + 1383.IBPluginDependency + 1384.IBAttributePlaceholdersKey + 1384.IBPluginDependency + 1385.IBPluginDependency + 1386.IBPluginDependency + 1387.IBPluginDependency + 1388.IBPluginDependency + 1389.IBPluginDependency + 1390.IBAttributePlaceholdersKey + 1390.IBPluginDependency + 1391.IBPluginDependency + 1392.IBPluginDependency + 1393.IBAttributePlaceholdersKey + 1393.IBPluginDependency + 1394.IBPluginDependency + 1395.IBPluginDependency + 1396.IBPluginDependency + 1397.IBPluginDependency + 1398.IBPluginDependency + 1399.IBPluginDependency + 1400.IBPluginDependency + 1401.IBPluginDependency + 1402.IBPluginDependency + 1403.IBPluginDependency + 1404.IBNumberFormatterBehaviorMetadataKey + 1404.IBNumberFormatterLocalizesFormatMetadataKey + 1404.IBPluginDependency + 1405.IBPluginDependency + 1406.IBPluginDependency + 1407.IBNumberFormatterBehaviorMetadataKey + 1407.IBNumberFormatterLocalizesFormatMetadataKey + 1407.IBPluginDependency + 1408.IBPluginDependency + 1409.IBPluginDependency + 1410.IBPluginDependency + 1411.IBNumberFormatterBehaviorMetadataKey + 1411.IBNumberFormatterLocalizesFormatMetadataKey + 1411.IBPluginDependency + 1412.IBPluginDependency + 1413.IBPluginDependency + 1414.IBPluginDependency + 1415.IBPluginDependency + 1416.IBNumberFormatterBehaviorMetadataKey + 1416.IBNumberFormatterLocalizesFormatMetadataKey + 1416.IBPluginDependency + 1417.IBPluginDependency + 1418.IBPluginDependency + 1419.IBEditorWindowLastContentRect + 1419.IBPluginDependency + 1420.IBPluginDependency + 1421.IBPluginDependency + 1422.IBPluginDependency + 1423.IBPluginDependency + 1424.IBPluginDependency + 1425.IBPluginDependency + 1426.IBNumberFormatterBehaviorMetadataKey + 1426.IBNumberFormatterLocalizesFormatMetadataKey + 1426.IBPluginDependency + 1427.IBPluginDependency + 1428.IBPluginDependency + 1429.IBPluginDependency + 1431.IBPluginDependency + 1432.IBPluginDependency + 1433.IBPluginDependency + 1434.IBPluginDependency + 1435.IBPluginDependency + 1436.IBPluginDependency + 1437.IBPluginDependency + 1438.IBPluginDependency + 1439.IBAttributePlaceholdersKey + 1439.IBPluginDependency + 1440.IBAttributePlaceholdersKey + 1440.IBPluginDependency + 1441.IBPluginDependency + 1442.IBPluginDependency + 1443.IBPluginDependency + 1444.IBNumberFormatterBehaviorMetadataKey + 1444.IBNumberFormatterLocalizesFormatMetadataKey + 1444.IBPluginDependency + 1445.IBPluginDependency + 1446.IBPluginDependency + 1447.IBNumberFormatterBehaviorMetadataKey + 1447.IBNumberFormatterLocalizesFormatMetadataKey + 1447.IBPluginDependency + 1448.IBPluginDependency + 1449.IBPluginDependency + 1450.IBPluginDependency + 1451.IBPluginDependency + 1730.IBPluginDependency + 1731.IBAttributePlaceholdersKey + 1731.IBPluginDependency + 1732.IBAttributePlaceholdersKey + 1732.IBPluginDependency + 1733.IBPluginDependency + 1734.IBAttributePlaceholdersKey + 1734.IBPluginDependency + 1735.IBAttributePlaceholdersKey + 1735.IBPluginDependency + 1736.IBPluginDependency + 1737.IBAttributePlaceholdersKey + 1737.IBPluginDependency + 1738.IBAttributePlaceholdersKey + 1738.IBPluginDependency + 1739.IBPluginDependency + 1740.IBPluginDependency + 1741.IBPluginDependency + 1742.IBPluginDependency + 1743.IBPluginDependency + 1744.IBPluginDependency + 1745.IBPluginDependency + 1746.IBPluginDependency + 1747.IBPluginDependency + 1748.IBPluginDependency + 1749.IBPluginDependency + 1750.IBPluginDependency + 1751.IBPluginDependency + 1776.IBPluginDependency + 1777.IBPluginDependency + 1778.IBPluginDependency + 1779.IBPluginDependency + 1780.IBPluginDependency + 1781.IBPluginDependency + 1782.IBPluginDependency + 1783.IBPluginDependency + 1784.IBPluginDependency + 1785.IBPluginDependency + 1786.IBPluginDependency + 1787.IBPluginDependency + 1788.IBNumberFormatterBehaviorMetadataKey + 1788.IBNumberFormatterLocalizesFormatMetadataKey + 1788.IBPluginDependency + 1789.IBPluginDependency + 1790.IBPluginDependency + 1791.IBPluginDependency + 1792.IBPluginDependency + 1793.IBPluginDependency + 1794.IBPluginDependency + 1795.IBPluginDependency + 1825.IBPluginDependency + 1826.IBPluginDependency + 1827.IBPluginDependency + 1831.IBNumberFormatterBehaviorMetadataKey + 1831.IBNumberFormatterLocalizesFormatMetadataKey + 1831.IBPluginDependency + 1834.IBPluginDependency + 1836.IBPluginDependency + 1837.IBPluginDependency + 1838.IBPluginDependency + 1839.IBPluginDependency + 1840.IBPluginDependency + 1841.IBPluginDependency + 1842.IBPluginDependency + 1843.IBPluginDependency + 1844.IBPluginDependency + 1845.IBPluginDependency + 1846.IBPluginDependency + 1847.IBPluginDependency + 1848.IBPluginDependency + 1849.IBPluginDependency + 1850.IBPluginDependency + 1851.IBPluginDependency + 1852.IBPluginDependency + 1853.IBPluginDependency + 1854.IBPluginDependency + 1855.IBPluginDependency + 1856.IBPluginDependency + 1857.IBPluginDependency + 1858.IBPluginDependency + 1859.IBPluginDependency + 1860.IBPluginDependency + 1861.IBPluginDependency + 1862.IBPluginDependency + 1863.IBPluginDependency + 1865.IBPluginDependency + 1866.IBPluginDependency + 1867.IBPluginDependency + 1868.IBPluginDependency + 1869.IBPluginDependency + 1870.IBPluginDependency + 1871.IBPluginDependency + 1872.IBPluginDependency + 1873.IBPluginDependency + 1874.IBPluginDependency + 1875.IBPluginDependency + 1876.IBPluginDependency + 1877.IBPluginDependency + 1878.IBPluginDependency + 1879.IBPluginDependency + 1880.IBPluginDependency + 1881.IBPluginDependency + 1882.IBPluginDependency + 1883.IBPluginDependency + 1884.IBPluginDependency + 1885.IBPluginDependency + 1886.IBPluginDependency + 1887.IBPluginDependency + 1888.IBPluginDependency + 1917.IBPluginDependency + 1918.IBPluginDependency + 1919.IBPluginDependency + 1920.IBEditorWindowLastContentRect + 1920.IBPluginDependency + 1921.IBPluginDependency + 1922.IBPluginDependency + 1923.IBPluginDependency + 1924.IBPluginDependency + 1925.IBPluginDependency + 1926.IBPluginDependency + 1927.IBPluginDependency + 1928.IBPluginDependency + 1929.IBPluginDependency + 1930.IBPluginDependency + 1931.IBPluginDependency + 1932.IBPluginDependency + 1933.IBPluginDependency + 1934.IBPluginDependency + 1935.IBPluginDependency + 1936.IBPluginDependency + 1937.IBPluginDependency + 1938.IBPluginDependency + 1939.IBPluginDependency + 1940.IBPluginDependency + 1941.IBPluginDependency + 1942.IBPluginDependency + 1943.IBPluginDependency + 1944.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{100, 461}, {917, 523}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{575, 480}, {600, 335}} + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Type a name and press enter. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{775, 548}, {534, 43}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1084, 593}, {152, 153}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + InitialTabViewItem + + InitialTabViewItem + + + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{688, 413}, {261, 37}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Causes your bot to wait until all party members are done drinking and within range before continuing. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If your bot hasn't been doing anything it will do emotes after this amount of time. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + This is a good option if you're not the tank! + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If this is set then you will only attack units that are targeted by your assist unit or that are attacking you. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + If we're a healer we need to know who this is, if we are DPS then we'll know to check it's target. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{769, 425}, {184, 54}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + This will turn follow on or off. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Your bot will gound mount or air mount. It will also dismount if it's close enough and the leader has dismounted. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Your bot will gound mount or air mount. It will also dismount if it's close enough and the leader has dismounted. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Always follow this unit even if you are currently following another unit. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Your bot will gound mount or air mount. It will also dismount if it's close enough and the leader has dismounted. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{769, 425}, {184, 54}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Checks the area for enemy players before resurrecting. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + When you die your bot will not click the rellease key. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + It's a good idea to use a range that is less than the max range of your opening attack. (20 is a good number). + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + It's a good idea to use a range that is less than the max range of your opening attack. (20 is a good number) + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + This is the MAXIMUM distance for you to be able to attack a unit. (melee should put 30). + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + This is the MAXIMUM distance for you to be able to attack a unit. (melee should put 30). + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Set this to the max distance of your heals. + + + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Set this to the max distance of your heals. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{748, 193}, {256, 173}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 2037 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BindingsController + NSObject + + YES + + YES + botController + chatController + controller + offsetController + + + YES + BotController + ChatController + Controller + OffsetController + + + + IBProjectSource + BindingsController.h + + + + BlacklistController + NSObject + + YES + + YES + mobController + playersController + + + YES + MobController + PlayersController + + + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + closeHotkeyHelp: + closeLootHotkeyHelp: + editBehavior: + editBehaviorPvP: + editProfile: + editProfilePvP: + editRoute: + editRoutePvP: + hotkeyHelp: + login: + lootHotkeyHelp: + maltby: + startBot: + startStopBot: + stopBot: + test2: + test: + testHotkey: + toggleAllChat: + toggleWallWalk: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + Route + allChatButton + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + behaviorPopup + behaviorPvPPopup + bindingsController + blacklistController + chatController + chatLogController + combatController + combatProfilePopup + combatProfilePvPPopup + controller + corpseController + databaseManager + fishController + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootController + lootHotkeyHelpPanel + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + mobController + movementController + nodeController + offsetController + overlayWindow + playerController + playersController + procedureController + profileController + pvpController + questController + routePopup + routePvPPopup + runningTimer + scanGrid + spellController + startStopButton + startstopRecorder + statisticsController + statusText + view + wallWalkButton + waypointController + + + YES + Route + NSButton + NSButton + NSButton + id + AuraController + id + id + BindingsController + BlacklistController + ChatController + ChatLogController + CombatController + id + id + Controller + CorpseController + DatabaseManager + FishController + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + MobController + MovementController + NodeController + OffsetController + NSWindow + PlayerDataController + PlayersController + ProcedureController + ProfileController + PvPController + QuestController + id + id + NSTextField + ScanGridView + SpellController + NSButton + SRRecorderControl + StatisticsController + NSTextField + NSView + NSButton + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + chatController + combatPanel + combatTable + controller + macroController + mobController + movementController + playerData + playersController + + + YES + AuraController + BindingsController + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + Controller + NSObject + + YES + + YES + confirmAppRename: + launchWebsite: + pidSelected: + renameShowHelp: + renameUseExisting: + showAbout: + showSettings: + testFront: + toggleGUIScripting: + toggleSecurePrefs: + toolbarItemSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + newIdentifierField + newNameField + newSignatureField + nodeController + objectsController + objectsToolbarItem + offsetController + playerData + playerToolbarItem + playersController + prefsToolbarItem + profileController + profilesToolbarItem + pvpController + pvpToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSTextField + NSTextField + NSTextField + NodeController + ObjectsController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + ProfileController + NSToolbarItem + PvPController + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + DatabaseManager + NSObject + + YES + + YES + controller + offsetController + + + YES + Controller + OffsetController + + + + IBProjectSource + DatabaseManager.h + + + + FileController + NSObject + + IBProjectSource + FileController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + ObjectController + + YES + + YES + botController + macroController + memoryViewController + nodeController + objectsController + offsetController + + + YES + BotController + MacroController + MemoryViewController + NodeController + ObjectsController + OffsetController + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + macroController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + MacroController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + menuAction: + offsetSelectAction: + openOffsetPanel: + openPointerPanel: + openSearch: + pointerSelectAction: + saveValues: + selectInstance: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + emulatePPCButton + instanceList + itemController + maskTextField + memoryTable + memoryViewWindow + mobController + nodeController + offsetController + offsetScanPanel + operatorPopUpButton + playersController + pointerScanCancelButton + pointerScanFindButton + pointerScanNumTextField + pointerScanPanel + pointerScanProgressIndicator + pointerScanVariationButton + pointerScanVariationTextField + resultsTextView + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + signatureTextField + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + NSButton + NSPopUpButton + InventoryController + NSTextField + id + id + MobController + NodeController + OffsetController + NSPanel + NSPopUpButton + PlayersController + NSButton + NSButton + NSTextField + NSPanel + NSProgressIndicator + NSButton + NSTextField + NSTextView + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSTextField + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + ObjectController + + updateTracking: + id + + + YES + + YES + additionalList + auraController + botController + combatController + memoryViewController + movementController + objectsController + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + + + YES + NSPopUpButton + id + BotController + id + id + id + ObjectsController + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + combatController + controller + itemController + logOutStuckAttemptsTextField + macroController + mobController + movementTypePopUp + offsetController + playerData + profileController + statisticsController + waypointController + + + YES + AuraController + BindingsController + BlacklistController + BotController + CombatController + Controller + InventoryController + NSTextField + MacroController + MobController + NSPopUpButton + OffsetController + PlayerDataController + ProfileController + StatisticsController + WaypointController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + ObjectController + + YES + + YES + botController + memoryViewController + moveToList + movementController + objectsController + + + YES + id + id + NSPopUpButton + id + ObjectsController + + + + IBProjectSource + NodeController.h + + + + ObjectController + NSObject + + tableDoubleClick: + id + + + YES + + YES + controller + playerData + view + + + YES + Controller + PlayerDataController + NSView + + + + IBProjectSource + ObjectController.h + + + + ObjectsController + NSObject + + YES + + YES + faceObject: + filter: + moveToStart: + moveToStop: + refreshData: + reloadNames: + resetObjects: + targetObject: + updateTracking: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + controller + itemController + itemTable + memoryViewController + mobController + mobTable + moveToMobPopUpButton + moveToNodePopUpButton + movementController + nodeController + nodeTable + playerController + playersController + playersTable + tabView + view + + + YES + Controller + InventoryController + NSTableView + MemoryViewController + MobController + NSTableView + NSPopUpButton + NSPopUpButton + MovementController + NodeController + NSTableView + PlayerDataController + PlayersController + NSTableView + NSTabView + NSView + + + + IBProjectSource + ObjectsController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + bindingsController + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BindingsController + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + ObjectController + + updateTracking: + id + + + YES + + YES + memoryViewController + movementController + objectsController + playerColorByLevel + + + YES + MemoryViewController + MovementController + ObjectsController + NSButton + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + showInFinder: + tableRowDoubleClicked: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + fileController + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + FileController + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + ProfileController + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + createProfile: + deleteIgnoreEntry: + deleteProfile: + duplicateProfile: + exportProfile: + importProfile: + renameProfile: + showInFinder: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + assistPopUpButton + controller + fileController + followPopUpButton + ignoreTable + mobController + playersController + profileOutlineView + profileTabView + profileTitle + profileTypePopUp + tankPopUpButton + view + + + YES + NSPopUpButton + Controller + FileController + NSPopUpButton + NSTableView + MobController + PlayersController + NSOutlineView + NSTabView + NSTextField + NSPopUpButton + NSPopUpButton + NSView + + + + IBProjectSource + ProfileController.h + + + + PvPController + NSObject + + YES + + YES + closeRename: + createBehavior: + deleteBehavior: + duplicateBehavior: + exportBehavior: + importBehavior: + renameBehavior: + saveAllObjects: + showInFinder: + test: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + fileController + renamePanel + view + waypointController + + + YES + FileController + NSPanel + NSView + WaypointController + + + + IBProjectSource + PvPController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + Route + NSObject + + IBProjectSource + Route.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + itemController + macroController + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + InventoryController + MacroController + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + WaypointController + NSObject + + YES + + YES + addRouteCollection: + addRouteSet: + addWaypoint: + closeAutomatorPanel: + closeDescription: + closeHelpPanel: + closeVisualize: + closestWaypoint: + deleteRouteButton: + deleteRouteMenu: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + showInFinder: + startStopAutomator: + startingRouteClicked: + stopMovement: + testWaypointSequence: + visualize: + waypointMenuAction: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + descriptionPanel + fileController + helpPanel + mobController + movementController + playerData + routeTypeSegment + routesTable + scrollWithRoute + shortcutRecorder + startingRouteButton + testingMenu + view + visualizePanel + visualizeView + waypointSectionTitle + waypointTabView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + BotController + CombatController + Controller + NSPanel + FileController + NSPanel + MobController + MovementController + PlayerDataController + id + NSOutlineView + NSButton + SRRecorderControl + NSButton + NSMenu + NSView + NSPanel + RouteVisualizationView + NSTextField + NSTabView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSImageCell.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSNumberFormatter + NSFormatter + + IBFrameworkSource + Foundation.framework/Headers/NSNumberFormatter.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSOutlineView + NSTableView + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSScrollView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSScrollView.h + + + + NSScroller + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSScroller.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTabViewItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTabViewItem.h + + + + NSTableColumn + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableColumn.h + + + + NSTableHeaderView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTableHeaderView.h + + + + NSTableView + NSControl + + + + NSText + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSTextView + NSText + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/ProximityCount.xib b/ProximityCount.xib new file mode 100644 index 0000000..96d5906 --- /dev/null +++ b/ProximityCount.xib @@ -0,0 +1,878 @@ + + + + 1050 + 9E17 + 670 + 949.33 + 352.00 + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + ProximityCountConditionController + + + FirstResponder + + + NSApplication + + + + 268 + + YES + + + 268 + {{7, 8}, {20, 19}} + + YES + + 67239424 + 134217728 + + + LucidaGrande + 1.200000e+01 + 16 + + + -1225506561 + 173 + + NSImage + NSStopProgressTemplate + + + + 400 + 75 + + + + + 268 + {{493, 5}, {127, 24}} + + YES + + -2080244224 + 0 + + LucidaGrande + 1.300000e+01 + 1044 + + + + YES + + 6.000000e+01 + Player + 1 + YES + 2 + + + 6.000000e+01 + Target + 2 + 0 + + + 1 + + + + + 268 + {{32, 10}, {64, 17}} + + YES + + 68288064 + 272630784 + There are + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2OQA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 268 + {{99, 5}, {86, 24}} + + YES + + 67239424 + 0 + + + + YES + + 2.600000e+01 + Pg + 1 + 0 + + + 2.600000e+01 + = + 2 + YES + 0 + + + 2.600000e+01 + PA + 3 + 0 + + + 1 + 1 + + + + + 268 + {{191, 7}, {42, 22}} + + YES + + -1804468671 + 138413056 + + + + + YES + + YES + allowsFloats + formatterBehavior + maximumIntegerDigits + minimum + negativeFormat + numberStyle + paddingCharacter + positiveFormat + + + YES + + + + + + + * + # + + + # + + + + + + + + + + + NaN + + YES + + YES + + + YES + + + + + + 0 + 0 + YES + NO + 1 + AAAAAAAAAAAAAAAAAAAAAA + + + 3 + YES + YES + YES + + . + , + NO + YES + NO + + + YES + 1 + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 6 + System + textColor + + + + + + + 268 + {{238, 10}, {125, 17}} + + YES + + 68288064 + 272630784 + valid targets within + + + + + + + + + 268 + {{368, 7}, {62, 22}} + + YES + + -1804468671 + 138413056 + + + + + YES + + YES + allowsFloats + formatterBehavior + maximumFractionDigits + maximumIntegerDigits + minimum + negativeFormat + numberStyle + paddingCharacter + positiveFormat + + + YES + + + + + + + + * + # + + + # + + + + + + + + + + + NaN + + + + + + 3 + YES + YES + YES + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{435, 10}, {55, 17}} + + YES + + 68288064 + 272630784 + yards of + + + + + + + + + 268 + {{623, 10}, {60, 17}} + + YES + + 68288064 + 272630784 + position. + + + + + + + + {687, 36} + + NSView + + + + + YES + + + view + + + + 20 + + + + disableButton + + + + 21 + + + + unitSegment + + + + 22 + + + + comparatorSegment + + + + 23 + + + + countText + + + + 24 + + + + distanceText + + + + 25 + + + + disableCondition: + + + + 26 + + + + validateState: + + + + 27 + + + + validateState: + + + + 28 + + + + validateState: + + + + 29 + + + + validateState: + + + + 30 + + + + + YES + + 0 + + YES + + + + + + -2 + + + RmlsZSdzIE93bmVyA + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + + + + + + 2 + + + YES + + + + + + 3 + + + YES + + + + + + 4 + + + + + 5 + + + + + 6 + + + YES + + + + + + 7 + + + + + 8 + + + YES + + + + + + 9 + + + YES + + + + + + 10 + + + YES + + + + + + 11 + + + + + 12 + + + YES + + + + + + 13 + + + + + 14 + + + + + 15 + + + YES + + + + + + 16 + + + YES + + + + + + 17 + + + + + 18 + + + YES + + + + + + 19 + + + + + 31 + + + YES + + + + + + 32 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 10.IBPluginDependency + 11.IBPluginDependency + 12.IBPluginDependency + 13.IBPluginDependency + 14.IBPluginDependency + 15.IBPluginDependency + 16.IBPluginDependency + 17.IBPluginDependency + 18.IBPluginDependency + 19.IBPluginDependency + 2.IBAttributePlaceholdersKey + 2.IBPluginDependency + 3.CustomClassName + 3.IBPluginDependency + 3.IBSegmentedControlTracker.RoundRobinState + 3.IBSegmentedControlTracker.WasGrowing + 31.IBPluginDependency + 32.IBPluginDependency + 4.IBPluginDependency + 5.IBPluginDependency + 6.IBPluginDependency + 7.IBPluginDependency + 8.CustomClassName + 8.IBPluginDependency + 9.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{186, 495}, {687, 36}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{357, 416}, {480, 272}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Disable this condition. + + + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + BetterSegmentedControl + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + YES + + + YES + + + + + YES + + YES + + + YES + + + + 32 + + + + YES + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBUserSource + + + + + ConditionController + NSObject + + YES + + YES + disableCondition: + validateState: + + + YES + id + id + + + + YES + + YES + _delegate + disableButton + view + + + YES + id + NSButton + NSView + + + + IBProjectSource + ConditionController.h + + + + NSObject + + IBProjectSource + BetterTableView.h + + + + NSObject + + IBProjectSource + Controller.h + + + + ProximityCountConditionController + ConditionController + + YES + + YES + comparatorSegment + countText + distanceText + unitSegment + + + YES + BetterSegmentedControl + NSTextField + NSTextField + BetterSegmentedControl + + + + IBProjectSource + ProximityCountConditionController.h + + + + + 0 + WoWWaypoint.xcodeproj + 3 + + diff --git a/ProximityCountConditionController.h b/ProximityCountConditionController.h new file mode 100644 index 0000000..461009c --- /dev/null +++ b/ProximityCountConditionController.h @@ -0,0 +1,23 @@ +// +// ProximityCountConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import +#import "ConditionController.h" + +@class BetterSegmentedControl; + + +@interface ProximityCountConditionController : ConditionController { + IBOutlet BetterSegmentedControl *unitSegment; + IBOutlet BetterSegmentedControl *comparatorSegment; + + IBOutlet NSTextField *countText; + IBOutlet NSTextField *distanceText; +} + +@end diff --git a/ProximityCountConditionController.m b/ProximityCountConditionController.m new file mode 100644 index 0000000..e4d4120 --- /dev/null +++ b/ProximityCountConditionController.m @@ -0,0 +1,70 @@ +// +// ProximityCountConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "ProximityCountConditionController.h" + + +@implementation ProximityCountConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"ProximityCount" owner: self]) { + log(LOG_GENERAL, @"Error loading ProximityCount.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + if( ([comparatorSegment selectedTag] == CompareLess) && ([countText intValue] == 0)) { + [comparatorSegment selectSegmentWithTag: CompareEqual]; + NSBeep(); + } + + if([countText intValue] < 0) { + [countText setIntValue: 0]; + } + if([distanceText floatValue] < 0.0f) { + [distanceText setFloatValue: 0.0f]; + } +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyProximityCount + unit: [unitSegment selectedTag] + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: [countText intValue] + type: TypeValue + value: [NSNumber numberWithFloat: [distanceText floatValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyProximityCount) return; + + [unitSegment selectSegmentWithTag: [condition unit]]; + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [countText setIntValue: [condition state]]; + [distanceText setObjectValue: [condition value]]; + + [self validateState: nil]; +} + +@end diff --git a/PvP.xib b/PvP.xib new file mode 100644 index 0000000..c68a8b0 --- /dev/null +++ b/PvP.xib @@ -0,0 +1,5529 @@ + + + + 1050 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + + + YES + + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + PvPController + + + FirstResponder + + + NSApplication + + + + 274 + + YES + + + 10 + + YES + + + 256 + + YES + + + 266 + {{12, 8}, {799, 14}} + + YES + + 67239488 + 4326400 + Simply enable the battlegrounds you'd like to run and select a route! (If you don't enable all with random, you will leave non-enabled BGs) + + LucidaGrande + 11 + 3100 + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 1 + MCAwIDAAA + + + + + {{1, 1}, {749, 30}} + + + + {{0, 413}, {751, 32}} + + {0, 0} + + 67239424 + 0 + Box + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 1 + MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA + + + 1 + MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA + + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{593, 37}, {100, 32}} + + YES + + 67239424 + 134217728 + Test Save + + LucidaGrande + 13 + 1044 + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{15, 44}, {345, 22}} + + YES + + -2079195584 + 272630784 + The options have been moved to your Combat Profile! + + + YES + 1 + + + 6 + System + textColor + + 3 + MAA + + + + + + + 268 + {{84, 14}, {276, 22}} + + YES + + -2079195584 + 272630784 + You can find them there under the PvP tab. + + + + + + + + {{1, 1}, {713, 86}} + + + + {{17, 74}, {715, 102}} + + {0, 0} + + 67239424 + 0 + Options + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{145, 73}, {183, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{145, 43}, {183, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{145, 13}, {183, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{509, 73}, {189, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{509, 43}, {189, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{509, 10}, {189, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + + 1 + YES + YES + 2 + + + + + 268 + {{16, 78}, {126, 18}} + + YES + + -2080244224 + 67108864 + Alterac Valley + + + 1210864127 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{16, 48}, {126, 18}} + + YES + + -2080244224 + 67108864 + Arathi Basin + + + 1210864127 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 18}, {126, 18}} + + YES + + -2080244224 + 0 + Eye of the Storm + + + 1210864127 + 2 + + + + + 200 + 25 + + + + + 268 + {{343, 78}, {163, 18}} + + YES + + -2080244224 + 67108864 + Isle of Conquest + + + 1210864127 + 2 + + + + + 200 + 25 + + + + + 268 + {{343, 48}, {163, 18}} + + YES + + -2080244224 + 0 + Strand of the Ancients + + + 1210864127 + 2 + + + + + 200 + 25 + + + + + 268 + {{343, 15}, {163, 18}} + + YES + + -2080244224 + 67108864 + Warsong Gulch + + + 1210864127 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {713, 107}} + + + + {{17, 180}, {715, 123}} + + {0, 0} + + 67239424 + 0 + Battlegrounds + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{15, 44}, {88, 17}} + + YES + + 67239488 + 71304192 + PvP Behavior: + + + + + 6 + System + controlTextColor + + + + + + + 266 + {{105, 10}, {545, 26}} + + YES + + -2076049856 + 2048 + + LucidaGrande + 13 + 16 + + + 109199615 + 1 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 268 + {{36, 16}, {67, 17}} + + YES + + 67239488 + 71304192 + Select: + + + + + + + + + 266 + {{108, 42}, {587, 22}} + + YES + + -1804468671 + 268436480 + + + Enter a name and press return to create a new PvP behavior. + + YES + 1 + + + + + + + 265 + {{655, 10}, {40, 25}} + + YES + + -2076049856 + 134219776 + + + -2038415105 + 163 + + + 400 + 75 + + + YES + + + 2147483647 + + + _popUpItemAction: + + + YES + + + + YES + + + + YES + 1 + YES + YES + 2 + + + + {{1, 1}, {713, 74}} + + + + {{17, 307}, {715, 90}} + + {0, 0} + + 67239424 + 0 + PvP Behaviors + + + + 3 + MCAwLjgwMDAwMDAxAA + + + + 1 + 0 + 2 + NO + + + {749, 445} + + NSView + + + YES + + + + + YES + + + + + 1048576 + 2147483647 + + NSImage + NSActionTemplate + + + + + + + + + + YES + Current Behavior + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Rename Behavior... + + 1048576 + 2147483647 + + + + + + Duplicate Behavior + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Delete Behavior... + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Import Behavior... + + 1048576 + 2147483647 + + + + + + Export Behavior... + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Show in Finder + + 1048576 + 2147483647 + + + + + + Save changed behaviors + + 1048576 + 2147483647 + + + + + YES + + + 23 + 2 + {{196, 448}, {532, 62}} + -1543503872 + Rename + NSPanel + + {1.79769e+308, 1.79769e+308} + + + 256 + + YES + + + 268 + {{17, 25}, {117, 17}} + + YES + + 67239488 + 272630784 + Rename Behavior: + + + + + + + + + 268 + {{139, 20}, {281, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + + + + + + 268 + {{422, 14}, {96, 32}} + + YES + + 67239424 + 134217728 + Done + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + {532, 62} + + {{0, 0}, {1920, 1178}} + {1.79769e+308, 1.79769e+308} + + + + + YES + + + view + + + + 43 + + + + value: currentBehavior.AlteracValley.enabled + + + + + + value: currentBehavior.AlteracValley.enabled + value + currentBehavior.AlteracValley.enabled + 2 + + + 451 + + + + value: currentBehavior.ArathiBasin.enabled + + + + + + value: currentBehavior.ArathiBasin.enabled + value + currentBehavior.ArathiBasin.enabled + 2 + + + 479 + + + + value: currentBehavior.EyeOfTheStorm.enabled + + + + + + value: currentBehavior.EyeOfTheStorm.enabled + value + currentBehavior.EyeOfTheStorm.enabled + 2 + + + 480 + + + + value: currentBehavior.IsleOfConquest.enabled + + + + + + value: currentBehavior.IsleOfConquest.enabled + value + currentBehavior.IsleOfConquest.enabled + 2 + + + 481 + + + + value: currentBehavior.StrandOfTheAncients.enabled + + + + + + value: currentBehavior.StrandOfTheAncients.enabled + value + currentBehavior.StrandOfTheAncients.enabled + 2 + + + 482 + + + + value: currentBehavior.WarsongGulch.enabled + + + + + + value: currentBehavior.WarsongGulch.enabled + value + currentBehavior.WarsongGulch.enabled + 2 + + + 483 + + + + enabled: currentBehavior.WarsongGulch.enabled + + + + + + enabled: currentBehavior.WarsongGulch.enabled + enabled + currentBehavior.WarsongGulch.enabled + 2 + + + 486 + + + + enabled: currentBehavior.StrandOfTheAncients.enabled + + + + + + enabled: currentBehavior.StrandOfTheAncients.enabled + enabled + currentBehavior.StrandOfTheAncients.enabled + 2 + + + 490 + + + + enabled: currentBehavior.IsleOfConquest.enabled + + + + + + enabled: currentBehavior.IsleOfConquest.enabled + enabled + currentBehavior.IsleOfConquest.enabled + 2 + + + 493 + + + + enabled: currentBehavior.EyeOfTheStorm.enabled + + + + + + enabled: currentBehavior.EyeOfTheStorm.enabled + enabled + currentBehavior.EyeOfTheStorm.enabled + 2 + + + 496 + + + + enabled: currentBehavior.ArathiBasin.enabled + + + + + + enabled: currentBehavior.ArathiBasin.enabled + enabled + currentBehavior.ArathiBasin.enabled + 2 + + + 499 + + + + enabled: currentBehavior.AlteracValley.enabled + + + + + + enabled: currentBehavior.AlteracValley.enabled + enabled + currentBehavior.AlteracValley.enabled + 2 + + + 502 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 559 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 561 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 564 + + + + selectedObject: currentBehavior.AlteracValley.routeCollection + + + + + + selectedObject: currentBehavior.AlteracValley.routeCollection + selectedObject + currentBehavior.AlteracValley.routeCollection + + 2 + + + 568 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 572 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 574 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 577 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 581 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 587 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 588 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 591 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 594 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 597 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 601 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 604 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 607 + + + + content: waypointController.routeCollections + + + + + + content: waypointController.routeCollections + content + waypointController.routeCollections + 2 + + + 611 + + + + contentObjects: waypointController.routeCollections + + + + + + contentObjects: waypointController.routeCollections + contentObjects + waypointController.routeCollections + + 2 + + + 614 + + + + contentValues: waypointController.routeCollections.name + + + + + + contentValues: waypointController.routeCollections.name + contentValues + waypointController.routeCollections.name + + 2 + + + 617 + + + + selectedObject: currentBehavior.ArathiBasin.routeCollection + + + + + + selectedObject: currentBehavior.ArathiBasin.routeCollection + selectedObject + currentBehavior.ArathiBasin.routeCollection + + 2 + + + 619 + + + + selectedObject: currentBehavior.EyeOfTheStorm.routeCollection + + + + + + selectedObject: currentBehavior.EyeOfTheStorm.routeCollection + selectedObject + currentBehavior.EyeOfTheStorm.routeCollection + + 2 + + + 621 + + + + selectedObject: currentBehavior.IsleOfConquest.routeCollection + + + + + + selectedObject: currentBehavior.IsleOfConquest.routeCollection + selectedObject + currentBehavior.IsleOfConquest.routeCollection + + 2 + + + 623 + + + + selectedObject: currentBehavior.StrandOfTheAncients.routeCollection + + + + + + selectedObject: currentBehavior.StrandOfTheAncients.routeCollection + selectedObject + currentBehavior.StrandOfTheAncients.routeCollection + + 2 + + + 625 + + + + selectedObject: currentBehavior.WarsongGulch.routeCollection + + + + + + selectedObject: currentBehavior.WarsongGulch.routeCollection + selectedObject + currentBehavior.WarsongGulch.routeCollection + + 2 + + + 628 + + + + createBehavior: + + + + 629 + + + + content: behaviors + + + + + + content: behaviors + content + behaviors + 2 + + + 632 + + + + contentValues: behaviors.name + + + + + + contentValues: behaviors.name + contentValues + behaviors.name + + 2 + + + 635 + + + + selectedObject: currentBehavior + + + + + + selectedObject: currentBehavior + selectedObject + currentBehavior + + 2 + + + 637 + + + + menu + + + + 658 + + + + showInFinder: + + + + 659 + + + + renameBehavior: + + + + 660 + + + + duplicateBehavior: + + + + 661 + + + + importBehavior: + + + + 663 + + + + exportBehavior: + + + + 664 + + + + title: currentBehavior.name + + + + + + title: currentBehavior.name + title + currentBehavior.name + 2 + + + 667 + + + + renamePanel + + + + 676 + + + + value: currentBehavior.name + + + + + + value: currentBehavior.name + value + currentBehavior.name + 2 + + + 679 + + + + closeRename: + + + + 680 + + + + test: + + + + 681 + + + + enabled: validBehavior + + + + + + enabled: validBehavior + enabled + validBehavior + 2 + + + 683 + + + + enabled: validBehavior + + + + + + enabled: validBehavior + enabled + validBehavior + 2 + + + 685 + + + + enabled: validBehavior + + + + + + enabled: validBehavior + enabled + validBehavior + 2 + + + 687 + + + + enabled: validBehavior + + + + + + enabled: validBehavior + enabled + validBehavior + 2 + + + 689 + + + + enabled: validBehavior + + + + + + enabled: validBehavior + enabled + validBehavior + 2 + + + 691 + + + + enabled: validBehavior + + + + + + enabled: validBehavior + enabled + validBehavior + 2 + + + 693 + + + + deleteBehavior: + + + + 706 + + + + saveAllObjects: + + + + 709 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 1 + + + YES + + + + + + + + + 74 + + + YES + + + + + + + + + + 76 + + + YES + + + + + + 78 + + + YES + + + + + + 79 + + + YES + + + + + + 88 + + + + + 89 + + + + + 95 + + + + + 77 + + + YES + + + + + + 90 + + + YES + + + + + + 91 + + + YES + + + + + + + + 94 + + + + + 93 + + + + + 92 + + + + + 333 + + + YES + + + + + + + + + + + + + + + + + 334 + + + YES + + + + + + 335 + + + YES + + + + + + 336 + + + YES + + + + + + + + 337 + + + + + 338 + + + + + 339 + + + + + 364 + + + YES + + + + + + 365 + + + YES + + + + + + 366 + + + YES + + + + + + + + 367 + + + + + 368 + + + + + 369 + + + + + 370 + + + YES + + + + + + 371 + + + YES + + + + + + 372 + + + YES + + + + + + + + 373 + + + + + 374 + + + + + 375 + + + + + 376 + + + YES + + + + + + 377 + + + YES + + + + + + 378 + + + YES + + + + + + + + 379 + + + + + 380 + + + + + 381 + + + + + 382 + + + YES + + + + + + 383 + + + YES + + + + + + 384 + + + YES + + + + + + + + 385 + + + + + 386 + + + + + 387 + + + + + 388 + + + YES + + + + + + 389 + + + YES + + + + + + 390 + + + YES + + + + + + + + 391 + + + + + 392 + + + + + 393 + + + + + 394 + + + + + 402 + + + YES + + + + + + + + 447 + + + YES + + + + + + 448 + + + + + 464 + + + YES + + + + + + 465 + + + + + 467 + + + YES + + + + + + 468 + + + + + 470 + + + YES + + + + + + 471 + + + + + 473 + + + YES + + + + + + 474 + + + + + 476 + + + YES + + + + + + 477 + + + + + 640 + + + YES + + + + + + + + + + + + + + + + + + 641 + + + + + 642 + + + + + 643 + + + + + 644 + + + + + 645 + + + + + 646 + + + + + 647 + + + + + 648 + + + + + 649 + + + + + 650 + + + + + 651 + + + + + 652 + + + + + 653 + + + YES + + + + + + 654 + + + YES + + + + + + 655 + + + YES + + + + + + 656 + + + + + 668 + + + YES + + + + Rename Sheet + + + 669 + + + YES + + + + + + + + 670 + + + YES + + + + + + 671 + + + YES + + + + + + 672 + + + YES + + + + + + 673 + + + + + 674 + + + + + 675 + + + + + 638 + + + YES + + + + + + 639 + + + + + 707 + + + + + 721 + + + YES + + + + + + 722 + + + YES + + + + + + 723 + + + + + 777 + + + YES + + + + + + 778 + + + + + 779 + + + YES + + + + + + 780 + + + + + + + YES + + YES + -1.IBPluginDependency + -2.IBPluginDependency + -3.IBPluginDependency + 1.IBEditorWindowLastContentRect + 1.IBPluginDependency + 1.WindowOrigin + 1.editorWindowContentRectSynchronizationRect + 333.IBPluginDependency + 334.IBPluginDependency + 335.IBPluginDependency + 336.IBEditorWindowLastContentRect + 336.IBPluginDependency + 337.IBPluginDependency + 338.IBPluginDependency + 339.IBPluginDependency + 364.IBPluginDependency + 365.IBPluginDependency + 366.IBPluginDependency + 367.IBPluginDependency + 368.IBPluginDependency + 369.IBPluginDependency + 370.IBPluginDependency + 371.IBPluginDependency + 372.IBPluginDependency + 373.IBPluginDependency + 374.IBPluginDependency + 375.IBPluginDependency + 376.IBPluginDependency + 377.IBPluginDependency + 378.IBPluginDependency + 379.IBPluginDependency + 380.IBPluginDependency + 381.IBPluginDependency + 382.IBPluginDependency + 383.IBPluginDependency + 384.IBPluginDependency + 385.IBPluginDependency + 386.IBPluginDependency + 387.IBPluginDependency + 388.IBPluginDependency + 389.IBPluginDependency + 390.IBPluginDependency + 391.IBPluginDependency + 392.IBPluginDependency + 393.IBPluginDependency + 402.IBPluginDependency + 447.IBPluginDependency + 448.IBPluginDependency + 464.IBPluginDependency + 465.IBPluginDependency + 467.IBPluginDependency + 468.IBPluginDependency + 470.IBPluginDependency + 471.IBPluginDependency + 473.IBPluginDependency + 474.IBPluginDependency + 476.IBPluginDependency + 477.IBPluginDependency + 638.IBPluginDependency + 639.IBPluginDependency + 640.IBEditorWindowLastContentRect + 640.IBPluginDependency + 640.editorWindowContentRectSynchronizationRect + 641.IBPluginDependency + 642.IBPluginDependency + 643.IBPluginDependency + 644.IBPluginDependency + 645.IBPluginDependency + 646.IBPluginDependency + 647.IBPluginDependency + 648.IBPluginDependency + 649.IBPluginDependency + 650.IBPluginDependency + 651.IBPluginDependency + 652.IBPluginDependency + 653.IBPluginDependency + 654.IBPluginDependency + 655.IBEditorWindowLastContentRect + 655.IBPluginDependency + 655.editorWindowContentRectSynchronizationRect + 656.IBPluginDependency + 668.IBEditorWindowLastContentRect + 668.IBPluginDependency + 668.IBWindowTemplateEditedContentRect + 668.NSWindowTemplate.visibleAtLaunch + 668.editorWindowContentRectSynchronizationRect + 669.IBPluginDependency + 670.IBPluginDependency + 671.IBPluginDependency + 672.IBPluginDependency + 673.IBPluginDependency + 674.IBPluginDependency + 675.IBPluginDependency + 707.IBPluginDependency + 721.IBPluginDependency + 722.IBPluginDependency + 723.IBPluginDependency + 74.IBPluginDependency + 76.IBPluginDependency + 77.IBPluginDependency + 777.IBPluginDependency + 778.IBPluginDependency + 779.IBPluginDependency + 78.IBPluginDependency + 780.IBPluginDependency + 79.IBAttributePlaceholdersKey + 79.IBPluginDependency + 88.IBPluginDependency + 89.IBPluginDependency + 90.IBPluginDependency + 91.IBPluginDependency + 92.IBPluginDependency + 93.IBPluginDependency + 94.IBPluginDependency + 95.IBPluginDependency + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{471, 381}, {749, 445}} + com.apple.InterfaceBuilder.CocoaPlugin + {628, 654} + {{353, 328}, {625, 477}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{442, 567}, {301, 54}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{808, 345}, {229, 223}} + com.apple.InterfaceBuilder.CocoaPlugin + {{438, 202}, {199, 173}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + {{1119, 885}, {86, 23}} + com.apple.InterfaceBuilder.CocoaPlugin + {{489, 462}, {113, 63}} + com.apple.InterfaceBuilder.CocoaPlugin + {{459, 810}, {532, 62}} + com.apple.InterfaceBuilder.CocoaPlugin + {{459, 810}, {532, 62}} + + {{353, 378}, {532, 62}} + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + ToolTip + + ToolTip + + Type a name and press enter. + + + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin + + + + YES + + + YES + + + + + YES + + + YES + + + + 780 + + + + YES + + AuraController + NSObject + + YES + + YES + aurasPanel + aurasPanelTable + controller + mobController + playerController + spellController + + + YES + NSPanel + NSTableView + id + id + PlayerDataController + id + + + + IBProjectSource + AuraController.h + + + + BetterSegmentedControl + NSSegmentedControl + + IBProjectSource + BetterSegmentedControl.h + + + + BetterTableView + NSTableView + + IBProjectSource + BetterTableView.h + + + + BindingsController + NSObject + + YES + + YES + botController + chatController + controller + offsetController + + + YES + BotController + ChatController + Controller + OffsetController + + + + IBProjectSource + BindingsController.h + + + + BlacklistController + NSObject + + YES + + YES + mobController + playersController + + + YES + MobController + PlayersController + + + + IBProjectSource + BlacklistController.h + + + + BotController + NSObject + + YES + + YES + closeHotkeyHelp: + closeLootHotkeyHelp: + editBehavior: + editBehaviorPvP: + editProfile: + editProfilePvP: + editRoute: + editRoutePvP: + gatheringLootingOptions: + gatheringLootingSelectAction: + hotkeyHelp: + login: + lootHotkeyHelp: + maltby: + startBot: + startStopBot: + stopBot: + test2: + test: + testHotkey: + toggleAllChat: + toggleWallWalk: + updateStatus: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + Route + allChatButton + antiAFKButton + anyLevelCheckbox + attackWithinText + auraController + autoJoinWG + behaviorPopup + behaviorPvPPopup + bindingsController + blacklistController + chatController + chatLogController + combatController + combatDisableRelease + combatProfilePopup + combatProfilePvPPopup + controller + corpseController + databaseManager + fishController + fishingApplyLureCheckbox + fishingCheckbox + fishingGatherDistanceText + fishingLurePopUpButton + fishingOnlySchoolsCheckbox + fishingRecastCheckbox + fishingUseContainersCheckbox + gatherDistText + gatheringLootingPanel + herbalismCheckbox + herbalismSkillText + hotkeyHelpPanel + itemController + logOutAfterRunningTextField + logOutAfterStuckCheckbox + logOutDurabilityTextField + logOutOnBrokenItemsCheckbox + logOutOnFullInventoryCheckbox + logOutOnTimerExpireCheckbox + logOutUseHearthstoneCheckbox + lootCheckbox + lootController + lootHotkeyHelpPanel + lootUseItemsCheckbox + macroController + maxLevelPopup + maxLevelText + memoryViewController + minLevelPopup + minLevelText + miningCheckbox + miningSkillText + mobController + movementController + netherwingEggCheckbox + ninjaSkinCheckbox + nodeController + nodeIgnoreFriendlyCheckbox + nodeIgnoreFriendlyDistanceText + nodeIgnoreHostileCheckbox + nodeIgnoreHostileDistanceText + nodeIgnoreMobCheckbox + nodeIgnoreMobDistanceText + offsetController + overlayWindow + playerController + playersController + procedureController + profileController + pvpController + questController + routePopup + routePvPPopup + runningTimer + scanGrid + skinningCheckbox + skinningSkillText + spellController + startStopButton + startstopRecorder + statisticsController + statusText + view + wallWalkButton + waypointController + + + YES + Route + NSButton + NSButton + NSButton + id + AuraController + NSButton + id + id + BindingsController + BlacklistController + ChatController + ChatLogController + CombatController + NSButton + id + id + Controller + CorpseController + DatabaseManager + FishController + NSButton + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + id + NSPanel + NSButton + id + NSPanel + InventoryController + NSTextField + NSButton + NSTextField + NSButton + NSButton + NSButton + NSButton + NSButton + LootController + NSPanel + NSButton + MacroController + id + NSTextField + MemoryViewController + id + NSTextField + NSButton + id + MobController + MovementController + NSButton + NSButton + NodeController + NSButton + NSTextField + NSButton + NSTextField + NSButton + NSTextField + OffsetController + NSWindow + PlayerDataController + PlayersController + ProcedureController + ProfileController + PvPController + QuestController + id + id + NSTextField + ScanGridView + NSButton + id + SpellController + NSButton + SRRecorderControl + StatisticsController + NSTextField + NSView + NSButton + WaypointController + + + + IBProjectSource + BotController.h + + + + ChatController + NSObject + + controller + Controller + + + IBProjectSource + ChatController.h + + + + ChatLogController + NSObject + + YES + + YES + closeRelayPanel: + createChatAction: + openRelayPanel: + sendEmail: + something: + + + YES + id + id + id + id + id + + + + YES + + YES + chatActionsController + chatLogTable + controller + enableGrowlNotifications + offsetController + relayPanel + ruleEditor + view + whisperLogTable + + + YES + NSArrayController + NSTableView + Controller + NSButton + OffsetController + NSPanel + NSPredicateEditor + NSView + NSTableView + + + + IBProjectSource + ChatLogController.h + + + + CombatController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + chatController + combatPanel + combatTable + controller + macroController + mobController + movementController + playerData + playersController + + + YES + AuraController + BindingsController + BlacklistController + BotController + ChatController + NSPanel + NSTableView + Controller + MacroController + MobController + MovementController + PlayerDataController + PlayersController + + + + IBProjectSource + CombatController.h + + + + Controller + NSObject + + YES + + YES + confirmAppRename: + launchWebsite: + pidSelected: + renameShowHelp: + renameUseExisting: + showAbout: + showSettings: + testFront: + toggleGUIScripting: + toggleSecurePrefs: + toolbarItemSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + aboutValidImage + aboutView + behaviorController + behavsToolbarItem + botController + botToolbarItem + chatLogController + chatLogToolbarItem + corpseController + currentStatusText + disableGUIScriptCheckbox + itemController + mainBackgroundBox + mainToolbar + mainWindow + matchExistingCheckbox + memoryAccessLight + memoryAccessValidText + memoryToolbarItem + memoryViewController + mobController + newIdentifierField + newNameField + newSignatureField + nodeController + objectsController + objectsToolbarItem + offsetController + playerData + playerToolbarItem + playersController + prefsToolbarItem + profileController + profilesToolbarItem + pvpController + pvpToolbarItem + routeController + routesToolbarItem + settingsView + spellController + spellsToolbarItem + statisticsController + statisticsToolbarItem + versionInfoText + wowInstancePopUpButton + + + YES + NSImageView + NSView + ProcedureController + NSToolbarItem + BotController + NSToolbarItem + ChatLogController + NSToolbarItem + CorpseController + id + NSButton + InventoryController + id + NSToolbar + id + NSButton + id + id + NSToolbarItem + MemoryViewController + MobController + NSTextField + NSTextField + NSTextField + NodeController + ObjectsController + NSToolbarItem + OffsetController + PlayerDataController + NSToolbarItem + PlayersController + NSToolbarItem + ProfileController + NSToolbarItem + PvPController + NSToolbarItem + WaypointController + NSToolbarItem + NSView + SpellController + NSToolbarItem + StatisticsController + NSToolbarItem + NSTextField + NSPopUpButton + + + + IBProjectSource + Controller.h + + + + CorpseController + NSObject + + controller + Controller + + + IBProjectSource + CorpseController.h + + + + DatabaseManager + NSObject + + YES + + YES + controller + offsetController + + + YES + Controller + OffsetController + + + + IBProjectSource + DatabaseManager.h + + + + FileController + NSObject + + IBProjectSource + FileController.h + + + + FishController + NSObject + + YES + + YES + botController + controller + itemController + lootController + movementController + nodeController + playerController + spellController + + + YES + BotController + Controller + InventoryController + LootController + MovementController + NodeController + PlayerDataController + SpellController + + + + IBProjectSource + FishController.h + + + + InventoryController + ObjectController + + YES + + YES + botController + macroController + memoryViewController + nodeController + objectsController + offsetController + + + YES + BotController + MacroController + MemoryViewController + NodeController + ObjectsController + OffsetController + + + + IBProjectSource + InventoryController.h + + + + LootController + NSObject + + YES + + YES + chatController + controller + itemController + macroController + offsetController + playerDataController + + + YES + ChatController + Controller + InventoryController + MacroController + OffsetController + PlayerDataController + + + + IBProjectSource + LootController.h + + + + MacroController + NSObject + + YES + + YES + auraController + botController + chatController + controller + offsetController + playerData + + + YES + AuraController + BotController + ChatController + Controller + OffsetController + PlayerDataController + + + + IBProjectSource + MacroController.h + + + + MemoryViewController + NSView + + YES + + YES + clearSearch: + clearTable: + clearValues: + menuAction: + offsetSelectAction: + openOffsetPanel: + openPointerPanel: + openSearch: + pointerSelectAction: + saveValues: + selectInstance: + setCustomAddress: + snapshotMemory: + startSearch: + typeSelected: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + bitPanel + bitTableView + clearButton + controller + emulatePPCButton + instanceList + itemController + maskTextField + memoryTable + memoryViewWindow + mobController + nodeController + offsetController + offsetScanPanel + operatorPopUpButton + playersController + pointerScanCancelButton + pointerScanFindButton + pointerScanNumTextField + pointerScanPanel + pointerScanProgressIndicator + pointerScanVariationButton + pointerScanVariationTextField + resultsTextView + searchButton + searchPanel + searchTableView + searchText + searchTypePopUpButton + signMatrix + signatureTextField + valueMatrix + view + + + YES + NSPanel + NSTableView + NSButton + Controller + NSButton + NSPopUpButton + InventoryController + NSTextField + id + id + MobController + NodeController + OffsetController + NSPanel + NSPopUpButton + PlayersController + NSButton + NSButton + NSTextField + NSPanel + NSProgressIndicator + NSButton + NSTextField + NSTextView + NSButton + NSPanel + NSTableView + NSTextField + NSPopUpButton + NSMatrix + NSTextField + NSMatrix + NSView + + + + IBProjectSource + MemoryViewController.h + + + + MobController + ObjectController + + updateTracking: + id + + + YES + + YES + additionalList + auraController + botController + combatController + memoryViewController + movementController + objectsController + spellController + trackFriendlyMenuItem + trackHostileMenuItem + trackNeutralMenuItem + + + YES + NSPopUpButton + id + BotController + id + id + id + ObjectsController + id + id + id + id + + + + IBProjectSource + MobController.h + + + + MovementController + NSObject + + YES + + YES + auraController + bindingsController + blacklistController + botController + combatController + controller + itemController + logOutStuckAttemptsTextField + macroController + mobController + movementTypePopUp + offsetController + playerData + profileController + statisticsController + waypointController + + + YES + AuraController + BindingsController + BlacklistController + BotController + CombatController + Controller + InventoryController + NSTextField + MacroController + MobController + NSPopUpButton + OffsetController + PlayerDataController + ProfileController + StatisticsController + WaypointController + + + + IBProjectSource + MovementController.h + + + + NSObject + + + + NSObject + + + + NSObject + + IBProjectSource + UKFileWatcher.h + + + + NSObject + + IBProjectSource + UKKQueue.h + + + + NSObject + + IBProjectSource + UKMainThreadProxy.h + + + + NodeController + ObjectController + + YES + + YES + botController + memoryViewController + moveToList + movementController + objectsController + + + YES + id + id + NSPopUpButton + id + ObjectsController + + + + IBProjectSource + NodeController.h + + + + ObjectController + NSObject + + tableDoubleClick: + id + + + YES + + YES + controller + playerData + view + + + YES + Controller + PlayerDataController + NSView + + + + IBProjectSource + ObjectController.h + + + + ObjectsController + NSObject + + YES + + YES + faceObject: + filter: + moveToStart: + moveToStop: + refreshData: + reloadNames: + resetObjects: + targetObject: + updateTracking: + + + YES + id + id + id + id + id + id + id + id + id + + + + YES + + YES + controller + itemController + itemTable + memoryViewController + mobController + mobTable + moveToMobPopUpButton + moveToNodePopUpButton + movementController + nodeController + nodeTable + playerController + playersController + playersTable + tabView + view + + + YES + Controller + InventoryController + NSTableView + MemoryViewController + MobController + NSTableView + NSPopUpButton + NSPopUpButton + MovementController + NodeController + NSTableView + PlayerDataController + PlayersController + NSTableView + NSTabView + NSView + + + + IBProjectSource + ObjectsController.h + + + + OffsetController + NSObject + + controller + Controller + + + IBProjectSource + OffsetController.h + + + + PlayerDataController + NSObject + + YES + + YES + setPlayerDirectionInMemory: + showAuraWindow: + showCombatWindow: + showCooldownWindow: + showPlayerStructure: + + + YES + id + id + id + id + id + + + + YES + + YES + bindingsController + botController + combatController + combatTable + controller + healingTable + memoryViewController + mobController + movementController + nodeController + offsetController + powerNameText + spellController + view + + + YES + BindingsController + BotController + CombatController + NSTableView + Controller + NSTableView + MemoryViewController + MobController + MovementController + NodeController + OffsetController + NSTextField + SpellController + NSView + + + + IBProjectSource + PlayerDataController.h + + + + PlayersController + ObjectController + + updateTracking: + id + + + YES + + YES + memoryViewController + movementController + objectsController + playerColorByLevel + + + YES + MemoryViewController + MovementController + ObjectsController + NSButton + + + + IBProjectSource + PlayersController.h + + + + ProcedureController + NSObject + + YES + + YES + addRule: + closeRename: + createBehavior: + deleteRule: + duplicateBehavior: + exportBehavior: + importBehavior: + loadBehavior: + removeBehavior: + renameBehavior: + setBehaviorEvent: + showInFinder: + tableRowDoubleClicked: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + combatPriorityTextField + fileController + itemController + procedureEventSegment + renamePanel + ruleEditor + ruleTable + spellController + view + + + YES + NSMenu + NSTextField + FileController + id + id + NSPanel + id + NSTableView + id + NSView + + + + IBProjectSource + ProcedureController.h + + + + ProfileController + NSObject + + YES + + YES + addIgnoreEntry: + addIgnoreFromTarget: + createProfile: + deleteIgnoreEntry: + deleteProfile: + duplicateProfile: + exportProfile: + importProfile: + renameProfile: + showInFinder: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + assistPopUpButton + controller + fileController + followPopUpButton + ignoreTable + mobController + playersController + profileOutlineView + profileTabView + profileTitle + profileTypePopUp + tankPopUpButton + view + + + YES + NSPopUpButton + Controller + FileController + NSPopUpButton + NSTableView + MobController + PlayersController + NSOutlineView + NSTabView + NSTextField + NSPopUpButton + NSPopUpButton + NSView + + + + IBProjectSource + ProfileController.h + + + + PvPController + NSObject + + YES + + YES + closeRename: + createBehavior: + deleteBehavior: + duplicateBehavior: + exportBehavior: + importBehavior: + renameBehavior: + saveAllObjects: + showInFinder: + test: + + + YES + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + fileController + renamePanel + view + waypointController + + + YES + FileController + NSPanel + NSView + WaypointController + + + + IBProjectSource + PvPController.h + + + + QuestController + NSObject + + YES + + YES + controller + playerDataController + + + YES + Controller + PlayerDataController + + + + IBProjectSource + QuestController.h + + + + Route + NSObject + + IBProjectSource + Route.h + + + + RouteVisualizationView + NSView + + IBProjectSource + RouteVisualizationView.h + + + + ScanGridView + NSView + + IBProjectSource + ScanGridView.h + + + + SpellController + NSObject + + YES + + YES + reloadMenu: + spellLoadAllData: + + + YES + id + id + + + + YES + + YES + botController + controller + cooldownPanel + cooldownPanelTable + itemController + macroController + offsetController + playerController + spellDropDown + spellLoadingProgress + view + + + YES + BotController + Controller + NSPanel + NSTableView + InventoryController + MacroController + OffsetController + PlayerDataController + id + id + NSView + + + + IBProjectSource + SpellController.h + + + + StatisticsController + NSObject + + resetStatistics: + id + + + YES + + YES + controller + experienceText + honorGainedText + itemsLootedText + memoryOperationsTable + memoryReadsText + memoryWritesText + mobsKilledText + moneyText + playerController + view + + + YES + Controller + NSTextField + NSTextField + NSTextField + NSTableView + NSTextField + NSTextField + NSTextField + NSTextField + PlayerDataController + NSView + + + + IBProjectSource + StatisticsController.h + + + + WaypointController + NSObject + + YES + + YES + addRouteCollection: + addRouteSet: + addWaypoint: + closeAutomatorPanel: + closeDescription: + closeHelpPanel: + closeVisualize: + closestWaypoint: + deleteRouteButton: + deleteRouteMenu: + duplicateRoute: + editWaypointAction: + exportRoute: + importRoute: + loadRoute: + moveToWaypoint: + openAutomatorPanel: + removeWaypoint: + renameRoute: + resetAllWaypoints: + setRouteType: + showInFinder: + startStopAutomator: + startingRouteClicked: + stopMovement: + testWaypointSequence: + visualize: + waypointMenuAction: + + + YES + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + id + + + + YES + + YES + actionMenu + automatorIntervalValue + automatorPanel + automatorRecorder + automatorSpinner + automatorStartStopButton + automatorVizualizer + botController + combatController + controller + descriptionPanel + fileController + helpPanel + mobController + movementController + playerData + routeTypeSegment + routesTable + scrollWithRoute + shortcutRecorder + startingRouteButton + testingMenu + view + visualizePanel + visualizeView + waypointSectionTitle + waypointTabView + waypointTable + wpActionDelayText + wpActionIDPopUp + wpActionPanel + wpActionTabs + wpActionTypeSegments + + + YES + NSMenu + NSTextField + NSPanel + SRRecorderControl + NSProgressIndicator + NSButton + RouteVisualizationView + BotController + CombatController + Controller + NSPanel + FileController + NSPanel + MobController + MovementController + PlayerDataController + id + NSOutlineView + NSButton + SRRecorderControl + NSButton + NSMenu + NSView + NSPanel + RouteVisualizationView + NSTextField + NSTabView + BetterTableView + NSTextField + NSPopUpButton + NSPanel + NSTabView + BetterSegmentedControl + + + + IBProjectSource + WaypointController.h + + + + + YES + + NSActionCell + NSCell + + IBFrameworkSource + AppKit.framework/Headers/NSActionCell.h + + + + NSApplication + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSApplication.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSApplicationScripting.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSColorPanel.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSHelpManager.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSPageLayout.h + + + + NSApplication + + IBFrameworkSource + AppKit.framework/Headers/NSUserInterfaceItemSearching.h + + + + NSArrayController + NSObjectController + + IBFrameworkSource + AppKit.framework/Headers/NSArrayController.h + + + + NSBox + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSBox.h + + + + NSButton + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSButton.h + + + + NSButtonCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSButtonCell.h + + + + NSCell + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSCell.h + + + + NSControl + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSControl.h + + + + NSController + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSController.h + + + + NSFormatter + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFormatter.h + + + + NSImageView + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSImageView.h + + + + NSManagedObjectContext + NSObject + + IBFrameworkSource + CoreData.framework/Headers/NSManagedObjectContext.h + + + + NSMatrix + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSMatrix.h + + + + NSMenu + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenu.h + + + + NSMenuItem + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItem.h + + + + NSMenuItemCell + NSButtonCell + + IBFrameworkSource + AppKit.framework/Headers/NSMenuItemCell.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSAccessibility.h + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDictionaryController.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSDragging.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontManager.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSFontPanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSKeyValueBinding.h + + + + NSObject + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSNibLoading.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSOutlineView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSPasteboard.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSSavePanel.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSTableView.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbarItem.h + + + + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSView.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSError.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSFileManager.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyValueObserving.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSKeyedArchiver.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObject.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSObjectScripting.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSPortCoder.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSRunLoop.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptClassDescription.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptKeyValueCoding.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptObjectSpecifiers.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSScriptWhoseTests.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSThread.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURL.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLConnection.h + + + + NSObject + + IBFrameworkSource + Foundation.framework/Headers/NSURLDownload.h + + + + NSObject + + IBFrameworkSource + Growl.framework/Headers/GrowlApplicationBridge.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderCell.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRRecorderControl.h + + + + NSObject + + IBFrameworkSource + ShortcutRecorder.framework/Headers/SRValidator.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUAppcast.h + + + + NSObject + + IBFrameworkSource + Sparkle.framework/Headers/SUUpdater.h + + + + NSObjectController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSObjectController.h + + + + NSOutlineView + NSTableView + + + + NSPanel + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSPanel.h + + + + NSPopUpButton + NSButton + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButton.h + + + + NSPopUpButtonCell + NSMenuItemCell + + IBFrameworkSource + AppKit.framework/Headers/NSPopUpButtonCell.h + + + + NSPredicateEditor + NSRuleEditor + + IBFrameworkSource + AppKit.framework/Headers/NSPredicateEditor.h + + + + NSProgressIndicator + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSProgressIndicator.h + + + + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSInterfaceStyle.h + + + + NSResponder + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSResponder.h + + + + NSRuleEditor + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSRuleEditor.h + + + + NSSegmentedControl + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSSegmentedControl.h + + + + NSTabView + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSTabView.h + + + + NSTableView + NSControl + + + + NSText + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSText.h + + + + NSTextField + NSControl + + IBFrameworkSource + AppKit.framework/Headers/NSTextField.h + + + + NSTextFieldCell + NSActionCell + + IBFrameworkSource + AppKit.framework/Headers/NSTextFieldCell.h + + + + NSTextView + NSText + + IBFrameworkSource + AppKit.framework/Headers/NSTextView.h + + + + NSToolbar + NSObject + + IBFrameworkSource + AppKit.framework/Headers/NSToolbar.h + + + + NSToolbarItem + NSObject + + + + NSUserDefaultsController + NSController + + IBFrameworkSource + AppKit.framework/Headers/NSUserDefaultsController.h + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSClipView.h + + + + NSView + + + + NSView + + IBFrameworkSource + AppKit.framework/Headers/NSRulerView.h + + + + NSView + NSResponder + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSDrawer.h + + + + NSWindow + NSResponder + + IBFrameworkSource + AppKit.framework/Headers/NSWindow.h + + + + NSWindow + + IBFrameworkSource + AppKit.framework/Headers/NSWindowScripting.h + + + + SRRecorderControl + NSControl + + delegate + id + + + + + + 0 + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.macosx + + + + com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 + + + YES + Pocket Gnome.xcodeproj + 3 + + diff --git a/PvPBehavior.h b/PvPBehavior.h new file mode 100644 index 0000000..4d776f1 --- /dev/null +++ b/PvPBehavior.h @@ -0,0 +1,80 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: PvPBehavior.h 435 2010-04-23 19:01:10Z ootoaoo $ + * + */ + +#import +#import "FileObject.h" + +#define ZoneAlteracValley 2597 +#define ZoneArathiBasin 3358 +#define ZoneEyeOfTheStorm 3820 +#define ZoneIsleOfConquest 4710 +#define ZoneStrandOfTheAncients 4384 +#define ZoneWarsongGulch 3277 + +@class Battleground; + +@interface PvPBehavior : FileObject { + + // battlegrounds + Battleground *_bgAlteracValley, *_bgArathiBasin, *_bgEyeOfTheStorm, *_bgIsleOfConquest, *_bgStrandOfTheAncients, *_bgWarsongGulch; + + + + // Note that these are all deprecaed (in the comabt profile now), but they've been left here so we dont' screw up the object people already have stored (not sure if it would be bad to remove these?) + // options + BOOL _random; + BOOL _stopHonor; + int _stopHonorTotal; + BOOL _leaveIfInactive; + BOOL _preparationDelay; + BOOL _waitToLeave; + float _waitTime; +} + +@property (readwrite, retain) Battleground *AlteracValley; +@property (readwrite, retain) Battleground *ArathiBasin; +@property (readwrite, retain) Battleground *EyeOfTheStorm; +@property (readwrite, retain) Battleground *IsleOfConquest; +@property (readwrite, retain) Battleground *StrandOfTheAncients; +@property (readwrite, retain) Battleground *WarsongGulch; + +@property (readwrite, assign) BOOL random; +@property (readwrite, assign) BOOL stopHonor; +@property (readwrite, assign) int stopHonorTotal; +@property (readwrite, assign) BOOL leaveIfInactive; +@property (readwrite, assign) BOOL preparationDelay; +@property (readwrite, assign) BOOL waitToLeave; +@property (readwrite, assign) float waitTime; + ++ (id)pvpBehaviorWithName: (NSString*)name; + +- (Battleground*)battlegroundForIndex:(int)index; +- (Battleground*)battlegroundForZone:(UInt32)zone; +- (BOOL)isValid; +- (BOOL)canDoRandom; + +- (NSString*)formattedForJoinMacro; + +@end diff --git a/PvPBehavior.m b/PvPBehavior.m new file mode 100644 index 0000000..bd5c86e --- /dev/null +++ b/PvPBehavior.m @@ -0,0 +1,350 @@ +/* + * Copyright (c) 2007-2010 Savory Software, LLC, http://pg.savorydeviate.com/ + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * $Id: PvPBehavior.m 435 2010-04-23 19:01:10Z ootoaoo $ + * + */ + +#import "PvPBehavior.h" + +#import "Battleground.h" +#import "FileObject.h" + +#define TotalBattlegrounds 6 + +@implementation PvPBehavior + +- (id) init{ + + self = [super init]; + if ( self != nil ){ + + // initiate our BGs + _bgAlteracValley = [[Battleground battlegroundWithName:@"Alterac Valley" andZone:ZoneAlteracValley andQueueID:1] retain]; + _bgArathiBasin = [[Battleground battlegroundWithName:@"Arathi Basin" andZone:ZoneArathiBasin andQueueID:3] retain]; + _bgEyeOfTheStorm = [[Battleground battlegroundWithName:@"Eye of the Storm" andZone:ZoneEyeOfTheStorm andQueueID:7] retain]; + _bgIsleOfConquest = [[Battleground battlegroundWithName:@"Isle of Conquest" andZone:ZoneIsleOfConquest andQueueID:30] retain]; + _bgStrandOfTheAncients = [[Battleground battlegroundWithName:@"Strand of the Ancients" andZone:ZoneStrandOfTheAncients andQueueID:9] retain]; + _bgWarsongGulch = [[Battleground battlegroundWithName:@"Warsong Gulch" andZone:ZoneWarsongGulch andQueueID:2] retain]; + + _random = NO; + _stopHonor = 0; + _stopHonorTotal = 75000; + _preparationDelay = YES; + _leaveIfInactive = YES; + _waitToLeave = YES; + _waitTime = 10.0f; + + _name = [[NSString stringWithFormat:@"Unknown"] retain]; + + _observers = [[NSArray arrayWithObjects: + @"AlteracValley", + @"ArathiBasin", + @"EyeOfTheStorm", + @"IsleOfConquest", + @"StrandOfTheAncients", + @"WarsongGulch", + @"random", + @"stopHonor", + @"stopHonorTotal", + @"leaveIfInactive", + @"preparationDelay", + @"waitToLeave", + @"waitTime", nil] retain]; + + } + return self; +} + +- (void) dealloc{ + [_bgAlteracValley release]; + [_bgArathiBasin release]; + [_bgEyeOfTheStorm release]; + [_bgIsleOfConquest release]; + [_bgStrandOfTheAncients release]; + [_bgWarsongGulch release]; + [_name release]; + + [super dealloc]; +} + +- (id)initWithName:(NSString*)name{ + self = [self init]; + if (self != nil) { + self.name = name; + } + return self; +} + ++ (id)pvpBehaviorWithName: (NSString*)name { + return [[[PvPBehavior alloc] initWithName: name] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder{ + self = [self init]; + if ( self ) { + + self.AlteracValley = [decoder decodeObjectForKey: @"AlteracValley"]; + self.ArathiBasin = [decoder decodeObjectForKey: @"ArathiBasin"]; + self.EyeOfTheStorm = [decoder decodeObjectForKey: @"EyeOfTheStorm"]; + self.IsleOfConquest = [decoder decodeObjectForKey: @"IsleOfConquest"]; + self.StrandOfTheAncients = [decoder decodeObjectForKey: @"StrandOfTheAncients"]; + self.WarsongGulch = [decoder decodeObjectForKey: @"WarsongGulch"]; + + self.random = [[decoder decodeObjectForKey: @"Random"] boolValue]; + self.stopHonor = [[decoder decodeObjectForKey: @"StopHonor"] intValue]; + self.stopHonorTotal = [[decoder decodeObjectForKey: @"StopHonorTotal"] intValue]; + self.preparationDelay = [[decoder decodeObjectForKey: @"PreparationDelay"] boolValue]; + self.waitToLeave = [[decoder decodeObjectForKey: @"WaitToLeave"] boolValue]; + self.waitTime = [[decoder decodeObjectForKey: @"WaitTime"] floatValue]; + + self.name = [decoder decodeObjectForKey:@"Name"]; + } + return self; +} + +- (void)encodeWithCoder:(NSCoder *)coder{ + + [coder encodeObject: self.AlteracValley forKey:@"AlteracValley"]; + [coder encodeObject: self.ArathiBasin forKey:@"ArathiBasin"]; + [coder encodeObject: self.EyeOfTheStorm forKey:@"EyeOfTheStorm"]; + [coder encodeObject: self.IsleOfConquest forKey:@"IsleOfConquest"]; + [coder encodeObject: self.StrandOfTheAncients forKey:@"StrandOfTheAncients"]; + [coder encodeObject: self.WarsongGulch forKey:@"WarsongGulch"]; + + [coder encodeObject: [NSNumber numberWithBool:self.random] forKey:@"Random"]; + [coder encodeObject: [NSNumber numberWithInt: self.stopHonor] forKey:@"StopHonor"]; + [coder encodeObject: [NSNumber numberWithInt: self.stopHonorTotal] forKey:@"StopHonorTotal"]; + [coder encodeObject: [NSNumber numberWithBool:self.preparationDelay] forKey:@"PreparationDelay"]; + [coder encodeObject: [NSNumber numberWithBool:self.waitToLeave] forKey:@"WaitToLeave"]; + [coder encodeObject: [NSNumber numberWithFloat: self.waitTime] forKey:@"WaitTime"]; + + [coder encodeObject: self.name forKey:@"Name"]; +} + +- (id)copyWithZone:(NSZone *)zone{ + PvPBehavior *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.AlteracValley = self.AlteracValley; + copy.ArathiBasin = self.ArathiBasin; + copy.EyeOfTheStorm = self.EyeOfTheStorm; + copy.IsleOfConquest = self.IsleOfConquest; + copy.StrandOfTheAncients = self.StrandOfTheAncients; + copy.WarsongGulch = self.WarsongGulch; + + copy.random = self.random; + copy.stopHonor = self.stopHonor; + copy.stopHonorTotal = self.stopHonorTotal; + copy.preparationDelay = self.preparationDelay; + copy.waitToLeave = self.waitToLeave; + copy.waitTime = self.waitTime; + + return copy; +} + +@synthesize AlteracValley = _bgAlteracValley; +@synthesize ArathiBasin = _bgArathiBasin; +@synthesize EyeOfTheStorm = _bgEyeOfTheStorm; +@synthesize IsleOfConquest = _bgIsleOfConquest; +@synthesize StrandOfTheAncients = _bgStrandOfTheAncients; +@synthesize WarsongGulch = _bgWarsongGulch; + +@synthesize random = _random; +@synthesize stopHonor = _stopHonor; +@synthesize stopHonorTotal = _stopHonorTotal; +@synthesize leaveIfInactive = _leaveIfInactive; +@synthesize preparationDelay = _preparationDelay; +@synthesize waitToLeave = _waitToLeave; +@synthesize waitTime = _waitTime; + +// little helper +- (BOOL)isValid{ + + int totalEnabled = 0; + + if ( self.AlteracValley.enabled && self.AlteracValley.routeCollection != nil ) + totalEnabled++; + if ( self.ArathiBasin.enabled && self.ArathiBasin.routeCollection != nil ) + totalEnabled++; + if ( self.EyeOfTheStorm.enabled && self.EyeOfTheStorm.routeCollection != nil ) + totalEnabled++; + if ( self.IsleOfConquest.enabled && self.IsleOfConquest.routeCollection != nil ) + totalEnabled++; + if ( self.StrandOfTheAncients.enabled && self.StrandOfTheAncients.routeCollection != nil ) + totalEnabled++; + if ( self.WarsongGulch.enabled && self.WarsongGulch.routeCollection != nil ) + totalEnabled++; + + // don't have the total for random! + /*if ( self.random && totalEnabled != TotalBattlegrounds ){ + return NO; + }*/ + // none enabled + if ( totalEnabled == 0 ){ + return NO; + } + + return YES; +} + +// we need a route collection for each BG +- (BOOL)canDoRandom{ + int totalEnabled = 0; + + if ( self.AlteracValley.enabled && self.AlteracValley.routeCollection != nil ) + totalEnabled++; + if ( self.ArathiBasin.enabled && self.ArathiBasin.routeCollection != nil ) + totalEnabled++; + if ( self.EyeOfTheStorm.enabled && self.EyeOfTheStorm.routeCollection != nil ) + totalEnabled++; + if ( self.IsleOfConquest.enabled && self.IsleOfConquest.routeCollection != nil ) + totalEnabled++; + if ( self.StrandOfTheAncients.enabled && self.StrandOfTheAncients.routeCollection != nil ) + totalEnabled++; + if ( self.WarsongGulch.enabled && self.WarsongGulch.routeCollection != nil ) + totalEnabled++; + + if ( totalEnabled == TotalBattlegrounds ){ + return YES; + } + + return NO; +} + +#pragma mark Accessors + +// over-write our default changed! +- (BOOL)changed{ + + if ( _changed ) + return YES; + + // any of the BGs change? + if ( self.AlteracValley.changed ) + return YES; + if ( self.ArathiBasin.changed ) + return YES; + if ( self.EyeOfTheStorm.changed ) + return YES; + if ( self.IsleOfConquest.changed ) + return YES; + if ( self.StrandOfTheAncients.changed ) + return YES; + if ( self.WarsongGulch.changed ) + return YES; + + return NO; +} + +- (void)setChanged:(BOOL)changed{ + _changed = changed; + + // tell the BGs they're not changed! + if ( changed == NO ){ + [self.AlteracValley setChanged:NO]; + [self.ArathiBasin setChanged:NO]; + [self.EyeOfTheStorm setChanged:NO]; + [self.IsleOfConquest setChanged:NO]; + [self.StrandOfTheAncients setChanged:NO]; + [self.WarsongGulch setChanged:NO]; + } +} + +#pragma mark - + +- (NSArray*)validBattlegrounds{ + + NSMutableArray *validBGs = [NSMutableArray array]; + + if ( [self.AlteracValley isValid] ) + [validBGs addObject:self.AlteracValley]; + if ( [self.ArathiBasin isValid] ) + [validBGs addObject:self.ArathiBasin]; + if ( [self.EyeOfTheStorm isValid] ) + [validBGs addObject:self.EyeOfTheStorm]; + if ( [self.IsleOfConquest isValid] ) + [validBGs addObject:self.IsleOfConquest]; + if ( [self.StrandOfTheAncients isValid] ) + [validBGs addObject:self.StrandOfTheAncients]; + if ( [self.WarsongGulch isValid] ) + [validBGs addObject:self.WarsongGulch]; + + return [[validBGs retain] autorelease]; +} + +- (Battleground*)battlegroundForIndex:(int)index{ + + NSArray *validBGs = [self validBattlegrounds]; + + if ( [validBGs count] == 0 || index < 0 || index >= [validBGs count]) { + return nil; + } + + return [validBGs objectAtIndex:index]; +} + +- (Battleground*)battlegroundForZone:(UInt32)zone{ + + if ( zone == [self.AlteracValley zone] && [self.AlteracValley enabled] ){ + return self.AlteracValley; + } + else if ( zone == [self.ArathiBasin zone] && [self.ArathiBasin enabled] ){ + return self.ArathiBasin; + } + else if ( zone == [self.EyeOfTheStorm zone] && [self.EyeOfTheStorm enabled] ){ + return self.EyeOfTheStorm; + } + else if ( zone == [self.IsleOfConquest zone] && [self.IsleOfConquest enabled] ){ + return self.IsleOfConquest; + } + else if ( zone == [self.StrandOfTheAncients zone] && [self.StrandOfTheAncients enabled] ){ + return self.StrandOfTheAncients; + } + else if ( zone == [self.WarsongGulch zone] && [self.WarsongGulch enabled] ){ + return self.WarsongGulch; + } + + return nil; +} + +- (NSString*)formattedForJoinMacro{ + NSMutableString *bgs = [NSMutableString string]; + + if ( self.AlteracValley.enabled && self.AlteracValley.routeCollection != nil ) + [bgs appendString:[NSString stringWithFormat:@"%d,", [self.AlteracValley queueID]]]; + if ( self.ArathiBasin.enabled && self.ArathiBasin.routeCollection != nil ) + [bgs appendString:[NSString stringWithFormat:@"%d,", [self.ArathiBasin queueID]]]; + if ( self.EyeOfTheStorm.enabled && self.EyeOfTheStorm.routeCollection != nil ) + [bgs appendString:[NSString stringWithFormat:@"%d,", [self.EyeOfTheStorm queueID]]]; + if ( self.IsleOfConquest.enabled && self.IsleOfConquest.routeCollection != nil ) + [bgs appendString:[NSString stringWithFormat:@"%d,", [self.IsleOfConquest queueID]]]; + if ( self.StrandOfTheAncients.enabled && self.StrandOfTheAncients.routeCollection != nil ) + [bgs appendString:[NSString stringWithFormat:@"%d,", [self.StrandOfTheAncients queueID]]]; + if ( self.WarsongGulch.enabled && self.WarsongGulch.routeCollection != nil ) + [bgs appendString:[NSString stringWithFormat:@"%d,", [self.WarsongGulch queueID]]]; + + NSRange range = NSMakeRange(0, [bgs length] - 1); + NSString *str = [bgs substringWithRange:range]; + + return [[str retain] autorelease]; +} + +@end diff --git a/PvPController.h b/PvPController.h new file mode 100644 index 0000000..fa13040 --- /dev/null +++ b/PvPController.h @@ -0,0 +1,58 @@ +// +// PvPController.h +// Pocket Gnome +// +// Created by Josh on 2/24/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import + +@class WaypointController; +@class FileController; + +@class PvPBehavior; +@class RouteSet; + +@interface PvPController : NSObject { + + IBOutlet WaypointController *waypointController; + IBOutlet FileController *fileController; + + IBOutlet NSPanel *renamePanel; + IBOutlet NSView *view; + + NSSize minSectionSize, maxSectionSize; + + PvPBehavior *_currentBehavior; + + NSString *_nameBeforeRename; + + NSMutableArray *_behaviors; +} + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; + +@property (readonly) BOOL validBehavior; +@property (readwrite, retain) PvPBehavior *currentBehavior; +@property (readonly, retain) NSArray *behaviors; + +- (void)setCurrentBehavior: (PvPBehavior*)behavior; +- (void)importBehaviorAtPath: (NSString*)path; +- (IBAction)createBehavior: (id)sender; +- (IBAction)renameBehavior: (id)sender; +- (IBAction)closeRename: (id)sender; +- (IBAction)duplicateBehavior: (id)sender; +- (IBAction)deleteBehavior: (id)sender; +- (IBAction)importBehavior: (id)sender; +- (IBAction)exportBehavior: (id)sender; + +- (IBAction)showInFinder: (id)sender; +- (IBAction)saveAllObjects: (id)sender; + +- (IBAction)test: (id)sender; + +@end diff --git a/PvPController.m b/PvPController.m new file mode 100644 index 0000000..ee6a0f6 --- /dev/null +++ b/PvPController.m @@ -0,0 +1,353 @@ +// +// PvPController.h +// Pocket Gnome +// +// Created by Josh on 2/24/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "PvPController.h" +#import "FileController.h" +#import "PvPBehavior.h" +#import "Battleground.h" + +#import "FileObject.h" + +#import "RouteCollection.h" + +#import "WaypointController.h" + +@interface PvPController () +//@property (readwrite, retain) PvPBehavior *currentBehavior; +@end + +@interface PvPController (internal) +- (void)validateBindings; +- (void)loadCorrectRouteCollection: (Battleground*)bg; +@end + +@implementation PvPController + +- (id) init{ + self = [super init]; + if ( self != nil ){ + + _behaviors = [[NSMutableArray array] retain]; + + _currentBehavior = nil; + + _nameBeforeRename = nil; + + if ( fileController == nil ){ + fileController = [[FileController sharedFileController] retain]; + } + + // get behaviors + NSArray *pvpBehaviors = [fileController getObjectsWithClass:[PvPBehavior class]]; + [_behaviors addObjectsFromArray:pvpBehaviors]; + + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(applicationWillTerminate:) name: NSApplicationWillTerminateNotification object: nil]; + + [NSBundle loadNibNamed: @"PvP" owner: self]; + } + return self; +} + +- (void) dealloc{ + [super dealloc]; +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = [self.view frame].size; + + // delay setting our current behavior (as the route objects might not have loaded yet) + [self performSelector:@selector(initCurrentRoute) withObject:nil afterDelay:0.5f]; +} + +- (void)initCurrentRoute{ + if ( [self.behaviors count] > 0 ){ + self.currentBehavior = [self.behaviors objectAtIndex:0]; + } +} + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize currentBehavior = _currentBehavior; +@synthesize behaviors = _behaviors; + +- (NSString*)sectionTitle { + return @"PvP"; +} + +- (void)applicationWillTerminate: (NSNotification*)notification { + + NSMutableArray *objectsToSave = [NSMutableArray array]; + for ( FileObject *obj in _behaviors ){ + if ( [obj changed] ){ + [objectsToSave addObject:obj]; + } + } + + [fileController saveObjects:objectsToSave]; +} + +#pragma mark - + +- (void)setCurrentBehavior: (PvPBehavior*)behavior { + + [_currentBehavior autorelease]; + _currentBehavior = [behavior retain]; + + //[procedureEventSegment selectSegmentWithTag: 1]; + [self validateBindings]; +} + +// this will choose the correct route collection +- (void)validateBindings{ + + //[self willChangeValueForKey: @"currentBehavior"]; + //[self didChangeValueForKey: @"currentBehavior"]; + + // assign default routes so it's not "No Value" + if ( self.currentBehavior.AlteracValley.routeCollection == nil ) + self.currentBehavior.AlteracValley.routeCollection = [[waypointController routeCollections] objectAtIndex:0]; + if ( self.currentBehavior.ArathiBasin.routeCollection == nil ) + self.currentBehavior.ArathiBasin.routeCollection = [[waypointController routeCollections] objectAtIndex:0]; + if ( self.currentBehavior.EyeOfTheStorm.routeCollection == nil ) + self.currentBehavior.EyeOfTheStorm.routeCollection = [[waypointController routeCollections] objectAtIndex:0]; + if ( self.currentBehavior.IsleOfConquest.routeCollection == nil ) + self.currentBehavior.IsleOfConquest.routeCollection = [[waypointController routeCollections] objectAtIndex:0]; + if ( self.currentBehavior.StrandOfTheAncients.routeCollection == nil ) + self.currentBehavior.StrandOfTheAncients.routeCollection = [[waypointController routeCollections] objectAtIndex:0]; + if ( self.currentBehavior.WarsongGulch.routeCollection == nil ) + self.currentBehavior.WarsongGulch.routeCollection = [[waypointController routeCollections] objectAtIndex:0]; + + // select the correct route + [self loadCorrectRouteCollection:self.currentBehavior.AlteracValley]; + [self loadCorrectRouteCollection:self.currentBehavior.ArathiBasin]; + [self loadCorrectRouteCollection:self.currentBehavior.EyeOfTheStorm]; + [self loadCorrectRouteCollection:self.currentBehavior.IsleOfConquest]; + [self loadCorrectRouteCollection:self.currentBehavior.StrandOfTheAncients]; + [self loadCorrectRouteCollection:self.currentBehavior.WarsongGulch]; +} + +- (BOOL)validBehavior{ + if ( _currentBehavior ) + return YES; + return NO; +} + +- (void)loadCorrectRouteCollection: (Battleground*)bg{ + + RouteCollection *newRC = [waypointController routeCollectionForUUID:[bg.routeCollection UUID]]; + + // found a new one + if ( newRC ){ + //log(LOG_GENERAL, @"[PvP] Found route collection for %@, 0x%X vs. 0x%X", bg, bg.routeCollection, newRC); + bg.routeCollection = newRC; + } + else{ + log(LOG_GENERAL, @"[PvP] Didn't find for %@? %@", bg, bg.routeCollection); + bg.routeCollection = nil; + } +} + +#pragma mark Protocol Actions + +- (void)addBehavior: (PvPBehavior*)behavior { + + int num = 2; + BOOL done = NO; + if(![behavior isKindOfClass: [PvPBehavior class]]) return; + if(![[behavior name] length]) return; + + // check to see if a route exists with this name + NSString *originalName = [behavior name]; + while(!done) { + BOOL conflict = NO; + for ( PvPBehavior *oldBehavior in self.behaviors ) { + if( [[oldBehavior name] isEqualToString: [behavior name]]) { + [behavior setName: [NSString stringWithFormat: @"%@ %d", originalName, num++]]; + conflict = YES; + break; + } + } + if ( !conflict ) done = YES; + } + + // save this route into our array + [self willChangeValueForKey: @"behaviors"]; + [self willChangeValueForKey: @"validBehavior"]; + [_behaviors addObject: behavior]; + [self didChangeValueForKey: @"behaviors"]; + [self didChangeValueForKey: @"validBehavior"]; + + // save this behavior + [fileController saveObject:behavior]; + + // update the current procedure + [self setCurrentBehavior: behavior]; + + [self validateBindings]; + + //[ruleTable reloadData]; + + log(LOG_GENERAL, @"Added behavior: %@", [behavior name]); +} + +#pragma mark UI + +- (IBAction)createBehavior: (id)sender{ + + // make sure we have a valid name + NSString *behaviorName = [sender stringValue]; + if ( [behaviorName length] == 0 ) { + NSBeep(); + return; + } + + // create a new route + [self addBehavior: [PvPBehavior pvpBehaviorWithName: behaviorName]]; + [sender setStringValue: @""]; +} + +- (IBAction)renameBehavior: (id)sender{ + + _nameBeforeRename = [[[self currentBehavior] name] copy]; + + [NSApp beginSheet: renamePanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil + contextInfo: nil]; +} + +- (IBAction)closeRename: (id)sender { + [[sender window] makeFirstResponder: [[sender window] contentView]]; + [NSApp endSheet: renamePanel returnCode: 1]; + [renamePanel orderOut: nil]; + + // did the name change? + if ( ![_nameBeforeRename isEqualToString:[[self currentBehavior] name]] ){ + // delete the old object + [fileController deleteObjectWithFilename:[NSString stringWithFormat:@"%@.pvpbehavior", _nameBeforeRename]]; + + // save the new one + [fileController saveObject:[self currentBehavior]]; + } +} + +- (IBAction)duplicateBehavior: (id)sender{ + [self addBehavior: [self.currentBehavior copy]]; +} + +- (IBAction)deleteBehavior: (id)sender{ + + // we have a behavior + if ( [self currentBehavior] ){ + + int ret = NSRunAlertPanel(@"Delete Behavior?", [NSString stringWithFormat: @"Are you sure you want to delete the PvP behavior \"%@\"?", [[self currentBehavior] name]], @"Delete", @"Cancel", NULL); + if ( ret == NSAlertDefaultReturn ){ + [self willChangeValueForKey: @"behaviors"]; + + // delete the object + [fileController deleteObject:[self currentBehavior]]; + + // remove from list + [_behaviors removeObject: [self currentBehavior]]; + + // select a new one + if ( [self.behaviors count] ) + [self setCurrentBehavior: [self.behaviors objectAtIndex: 0]]; + else + [self setCurrentBehavior: nil]; + + [self didChangeValueForKey: @"behaviors"]; + } + } +} + +- (IBAction)showInFinder: (id)sender{ + [fileController showInFinder:[self currentBehavior]]; +} + +- (IBAction)saveAllObjects: (id)sender{ + [fileController saveObjects:_behaviors]; +} + +- (void)importBehaviorAtPath: (NSString*)path{ + id importedBehavior; + NS_DURING { + importedBehavior = [NSKeyedUnarchiver unarchiveObjectWithFile: path]; + } NS_HANDLER { + importedBehavior = nil; + } NS_ENDHANDLER + + // we have a valid behavior! + if ( importedBehavior ){ + if ( [importedBehavior isKindOfClass: [PvPBehavior class]] ){ + [self addBehavior: importedBehavior]; + } + else{ + log(LOG_GENERAL, @"[PvP] Error on importing behavior, object %@", importedBehavior); + } + } + + if(!importedBehavior) { + NSRunAlertPanel(@"Behavior not Valid", [NSString stringWithFormat: @"The file at %@ cannot be imported because it does not contain a valid behavior or behavior set.", path], @"Okay", NULL, NULL); + } +} + +- (IBAction)importBehavior: (id)sender{ + NSOpenPanel *openPanel = [NSOpenPanel openPanel]; + + [openPanel setCanChooseDirectories: NO]; + [openPanel setCanCreateDirectories: NO]; + [openPanel setPrompt: @"Import PvP Behavior"]; + [openPanel setCanChooseFiles: YES]; + [openPanel setAllowsMultipleSelection: YES]; + + int ret = [openPanel runModalForTypes: [NSArray arrayWithObjects: @"pvpbehavior", nil]]; + + if ( ret == NSFileHandlingPanelOKButton ){ + for ( NSString *behaviorPath in [openPanel filenames] ){ + [self importBehaviorAtPath: behaviorPath]; + } + } +} + +- (IBAction)exportBehavior: (id)sender { + if ( ![self currentBehavior] ) return; + + NSSavePanel *savePanel = [NSSavePanel savePanel]; + [savePanel setCanCreateDirectories: YES]; + [savePanel setTitle: @"Export Behavior"]; + [savePanel setMessage: @"Please choose a destination for this PvP behavior."]; + int ret = [savePanel runModalForDirectory: @"~/Desktop" file: [[[self currentBehavior] name] stringByAppendingPathExtension: @"pvpbehavior"]]; + + if ( ret == NSFileHandlingPanelOKButton ) { + NSString *saveLocation = [savePanel filename]; + NSData *data = [NSKeyedArchiver archivedDataWithRootObject: [self currentBehavior]]; + [data writeToFile: saveLocation atomically: YES]; + } +} + +- (IBAction)test: (id)sender{ + + for ( PvPBehavior *behavior in self.behaviors ){ + + log(LOG_GENERAL, @"%@ %d 0x%X", behavior, [behavior changed], behavior); + + if ( behavior.changed ){ + log(LOG_GENERAL, @"[PvP] Saving %@ 0x%X", behavior, behavior); + + [behavior setChanged:NO]; + + //saveObject + } + } +} + +@end diff --git a/Quest.h b/Quest.h new file mode 100644 index 0000000..45de9dd --- /dev/null +++ b/Quest.h @@ -0,0 +1,44 @@ +// +// Quest.h +// Pocket Gnome +// +// Created by Josh on 4/23/09. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import + +#define MaxQuestID 1000000 + +@interface Quest : NSObject { + NSNumber *_questID; + NSString *_name; + + NSMutableArray *_itemRequirements; // List of items that are needed to complete the quest + + NSNumber *_startNPC; + NSNumber *_endNPC; + + NSNumber *_level; + NSNumber *_requiredLevel; + + NSURLConnection *_connection; + NSMutableData *_downloadData; +} + ++ (Quest*)questWithID: (NSNumber*)questID; +- (id)initWithQuestID: (NSNumber*)questID; + +@property (readwrite, retain) NSNumber *questID; +@property (readwrite, retain) NSString *name; +@property (readwrite, retain) NSNumber *level; +@property (readwrite, retain) NSNumber *requiredLevel; +@property (readwrite, retain) NSNumber *startNPC; +@property (readwrite, retain) NSNumber *endNPC; +@property (readwrite, retain) NSMutableArray *itemRequirements; + +- (int)requiredItemTotal; + +- (void)reloadQuestData; + +@end diff --git a/Quest.m b/Quest.m new file mode 100644 index 0000000..8d00264 --- /dev/null +++ b/Quest.m @@ -0,0 +1,333 @@ +// +// Quest.m +// Pocket Gnome +// +// Created by Josh on 4/23/09. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Quest.h" +#import "QuestItem.h" + +@interface Quest (internal) +- (void)loadQuestData; +@end + +@implementation Quest + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.questID = nil; + self.name = nil; + self.level = nil; + self.requiredLevel = nil; + self.startNPC = nil; + self.endNPC = nil; + self.itemRequirements = nil; + } + return self; +} + +- (id)initWithQuestID: (NSNumber*)questID { + self = [self init]; + if(self) { + if( ([questID intValue] <= 0) || ([questID intValue] > MaxQuestID)) { + [self release]; + return nil; + } + self.questID = questID; + + // Lets grab quest data... + //[self reloadQuestData]; + } + return self; +} + ++ (Quest*)questWithID: (NSNumber*)questID { + return [[[Quest alloc] initWithQuestID: questID] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [super init]; + if(self) { + self.questID = [decoder decodeObjectForKey: @"QuestID"]; + self.name = [decoder decodeObjectForKey: @"Name"]; + self.level = [decoder decodeObjectForKey: @"Level"]; + self.requiredLevel = [decoder decodeObjectForKey: @"RequiredLevel"]; + self.startNPC = [decoder decodeObjectForKey: @"StartNPC"]; + self.endNPC = [decoder decodeObjectForKey: @"EndNPC"]; + self.itemRequirements = [decoder decodeObjectForKey: @"ItemRequirements"]; + + if(self.name) { + NSRange range = [self.name rangeOfString: @"html>"]; + if( ([self.name length] == 0) || (range.location != NSNotFound)) { + log(LOG_GENERAL, @"Name for quest %@ is invalid.", self.questID); + self.name = nil; + } + } + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.questID forKey: @"QuestID"]; + [coder encodeObject: self.name forKey: @"Name"]; + [coder encodeObject: self.level forKey: @"Level"]; + [coder encodeObject: self.requiredLevel forKey: @"RequiredLevel"]; + [coder encodeObject: self.startNPC forKey: @"StartNPC"]; + [coder encodeObject: self.endNPC forKey: @"EndNPC"]; + [coder encodeObject: self.itemRequirements forKey: @"ItemRequirements"]; +} + +- (void)dealloc { + self.questID = nil; + self.name = nil; + self.level = nil; + self.requiredLevel = nil; + self.startNPC = nil; + self.endNPC; + self.itemRequirements = nil; + + [_connection release]; + [_downloadData release]; + + [super dealloc]; +} + +@synthesize questID = _questID; +@synthesize name = _name; +@synthesize level = _level; +@synthesize requiredLevel = _requiredLevel; +@synthesize startNPC = _startNPC; +@synthesize endNPC = _endNPC; +@synthesize itemRequirements = _itemRequirements; + +#pragma mark - + +- (int)requiredItemTotal{ + return [self.itemRequirements count]; +} + +#pragma mark - + +//#define NAME_SEPARATOR @"
" +//#define RANGE_SEPARATOR @"Range " +//#define COOLDOWN_SEPARATOR @"
Cooldown" + +#define NAME_SEPARATOR @"" +#define LEVEL_SEPERATOR @"<div>Level: " +#define REQD_LEVEL_SEPRATOR @"<div>Requires level " +#define START_SEPERATOR @"Start: <a href=\"/?npc=" +#define END_SEPERATOR @"End: <a href=\"/?npc=" +#define ITEM_SEPERATOR @"?item=" +#define ITEM_NUM_SEPERATOR @"</a></span> (" +#define REWARDS_SEPERATOR @"<h3>Rewards</h3>" + +#define SCHOOL_SEPARATOR @"School</th><td>" +#define DISPEL_SEPARATOR @"Dispel type</th><td style=\"border-bottom: 0\">" +#define COST_SEPARATOR @"Cost</th><td style=\"border-top: 0\">" +#define RANGE_SEPARATOR @"<th>Range</th><td>" +#define CASTTIME_SEPARATOR @"<th>Cast time</th><td>" +#define COOLDOWN_SEPARATOR @"<th>Cooldown</th><td>" +#define GLOBAL_COOLDOWN_SEPARATOR @"<div style=\"width: 65%; float: right\">Global cooldown: " + + +- (void)reloadQuestData { + + if([[self questID] intValue] < 0 || [[self questID] intValue] > MaxQuestID) + return; + + [_connection cancel]; + [_connection release]; + _connection = [[NSURLConnection alloc] initWithRequest: [NSURLRequest requestWithURL: [NSURL URLWithString: [NSString stringWithFormat: @"http://wowhead.com/?quest=%@", [self questID]]]] delegate: self]; + if(_connection) { + [_downloadData release]; + _downloadData = [[NSMutableData data] retain]; + //[_connection start]; + } +} + +- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response +{ + [_downloadData setLength: 0]; +} + +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data +{ + [_downloadData appendData: data]; +} + +- (void)connection:(NSURLConnection *)connection + didFailWithError:(NSError *)error +{ + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // inform the user + log(LOG_GENERAL, @"Connection failed! Error - %@ %@", + [error localizedDescription], + [[error userInfo] objectForKey:NSErrorFailingURLStringKey]); +} + +- (void)connectionDidFinishLoading:(NSURLConnection *)connection +{ + // get the download as a string + NSString *wowhead = [[[NSString alloc] initWithData: _downloadData encoding: NSUTF8StringEncoding] autorelease]; + + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // parse out the name + if(wowhead && [wowhead length]) { + NSScanner *scanner = [NSScanner scannerWithString: wowhead]; + + // check to see if this is a valid quest + if( ([scanner scanUpToString: @"Error - Wowhead" intoString: nil]) && ![scanner isAtEnd]) { + int questID = [[self questID] intValue]; + switch(questID) { + default: + self.name = @"[Unknown]"; + break; + } + + log(LOG_GENERAL, @"Quest %d does not exist on wowhead.", questID); + return; + } else { + if( [scanner scanUpToString: @"Bad Request" intoString: nil] && ![scanner isAtEnd]) { + int questID = [[self questID] intValue]; + log(LOG_GENERAL, @"Error loading quest %d.", questID); + return; + } else { + [scanner setScanLocation: 0]; + } + } + + // get the quest name + int scanSave = [scanner scanLocation]; + if([scanner scanUpToString: NAME_SEPARATOR intoString: nil] && [scanner scanString: NAME_SEPARATOR intoString: nil]) { + NSString *newName = nil; + if([scanner scanUpToString: @" - Quest" intoString: &newName]) { + if(newName && [newName length]) { + self.name = newName; + + } else { + self.name = @""; + } + } + } + else { + [scanner setScanLocation: scanSave]; + } + + // Get the Level reco + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: LEVEL_SEPERATOR intoString: nil] && [scanner scanString: LEVEL_SEPERATOR intoString: nil]) { + int level = 0; + if([scanner scanInt: &level] && level) { + self.level = [NSNumber numberWithInt: level]; + } else { + self.level = [NSNumber numberWithInt: 0]; + } + } else { + [scanner setScanLocation: scanSave]; + } + + // Get the required level + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: REQD_LEVEL_SEPRATOR intoString: nil] && [scanner scanString: REQD_LEVEL_SEPRATOR intoString: nil]) { + int requiredLevel = 0; + if([scanner scanInt: &requiredLevel] && requiredLevel) { + self.requiredLevel = [NSNumber numberWithInt: requiredLevel]; + } else { + self.requiredLevel = [NSNumber numberWithInt: 0]; + } + } else { + [scanner setScanLocation: scanSave]; + } + + // Where does the quest start! + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: START_SEPERATOR intoString: nil] && [scanner scanString: START_SEPERATOR intoString: nil]) { + int start = 0; + if([scanner scanInt: &start] && start) { + self.startNPC = [NSNumber numberWithInt: start]; + } else { + self.startNPC = [NSNumber numberWithInt: 0]; + } + } else { + [scanner setScanLocation: scanSave]; + } + + // Where does the quest end! + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: END_SEPERATOR intoString: nil] && [scanner scanString: END_SEPERATOR intoString: nil]) { + int endnpc = 0; + if([scanner scanInt: &endnpc] && endnpc) { + self.endNPC = [NSNumber numberWithInt: endnpc]; + } else { + self.endNPC = [NSNumber numberWithInt: 0]; + } + } else { + [scanner setScanLocation: scanSave]; + } + + // Are there any quest items required? + scanSave = [scanner scanLocation]; + + // Lets scan up to the Rewards section.. so any item before that we can assume is required for completion... + NSString *upToRewards = nil; + [scanner scanUpToString: REWARDS_SEPERATOR intoString: &upToRewards]; + [scanner setScanLocation: scanSave]; + + if ( upToRewards ){ + //NSLog(@"//// %@ ^n////", upToRewards ); + // Set up a new scanner for just the above string + NSScanner *scannerUpToRewards = [NSScanner scannerWithString: upToRewards]; + + BOOL searching = true; + NSMutableArray *items = [[NSMutableArray array] retain]; + while(searching){ + if([scannerUpToRewards scanUpToString: ITEM_SEPERATOR intoString: nil] && [scannerUpToRewards scanString: ITEM_SEPERATOR intoString: nil]) { + int itemID = 0; + QuestItem *questItem = [[[QuestItem alloc] init] autorelease]; + if([scannerUpToRewards scanInt: &itemID] && itemID) { + + // At this point we have the item ID #... now lets check to see if there is a quantity associated w/it + int quantity = 1;//_itemRequirements + if([scannerUpToRewards scanUpToString: ITEM_NUM_SEPERATOR intoString: nil] && [scannerUpToRewards scanString: ITEM_NUM_SEPERATOR intoString: nil]) { + [scannerUpToRewards scanInt: &quantity]; + } + questItem.quantity = [NSNumber numberWithInt: quantity]; + + // Set the item ID + questItem.item = [NSNumber numberWithInt: itemID]; + + // Add it to our required items list + [items addObject:questItem]; + //log(LOG_GENERAL, @"%@ %@ %@", self.name, questItem.item, questItem.quantity ); + } + } else { + searching = false; + } + } + + // Make sure we save the items - duh! + self.itemRequirements = items; + } + } + + // Could do some other things + + + + + //log(LOG_GENERAL, @"%@ %@ %@ %@ %@", self.name, self.level, self.requiredlevel, self.startnpc, self.endnpc); +} + +@end diff --git a/QuestCondition.xib b/QuestCondition.xib new file mode 100644 index 0000000..88992e7 --- /dev/null +++ b/QuestCondition.xib @@ -0,0 +1,811 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">QuestConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="1006703156"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 10}, {187, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="110890774"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Still in the works.... :(</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="1006703156"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="814849057"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="316740641"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="814849057"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{640, 36}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">62</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">88</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">90</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="814849057"/> + <reference ref="1006703156"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">83</int> + <reference key="object" ref="814849057"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="316740641"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">86</int> + <reference key="object" ref="316740641"/> + <reference key="parent" ref="814849057"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">92</int> + <reference key="object" ref="1006703156"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="110890774"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">93</int> + <reference key="object" ref="110890774"/> + <reference key="parent" ref="1006703156"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-2.showNotes</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>83.IBAttributePlaceholdersKey</string> + <string>83.IBPluginDependency</string> + <string>86.IBPluginDependency</string> + <string>92.IBPluginDependency</string> + <string>93.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{521, 710}, {640, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{189, 314}, {582, 36}}</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="814849057"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">101</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestConditionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="475210095"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="883970323"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="939911122"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="982946997"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="400220171"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="475210095"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="883970323"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="939911122"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="982946997"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="400220171"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="127450342"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="127450342"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/QuestConditionController.h b/QuestConditionController.h new file mode 100644 index 0000000..0b2955a --- /dev/null +++ b/QuestConditionController.h @@ -0,0 +1,18 @@ +// +// QuestConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface QuestConditionController : ConditionController { + +} + +@end diff --git a/QuestConditionController.m b/QuestConditionController.m new file mode 100644 index 0000000..b9179f8 --- /dev/null +++ b/QuestConditionController.m @@ -0,0 +1,53 @@ +// +// QuestConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "QuestConditionController.h" + + +@implementation QuestConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"QuestCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading QuestCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyQuest + unit: UnitNone + quality: QualityNone + comparator: CompareNone + state: StateNone + type: TypeValue + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyQuest) return; + +} + +@end diff --git a/QuestController.h b/QuestController.h new file mode 100644 index 0000000..9086b4d --- /dev/null +++ b/QuestController.h @@ -0,0 +1,30 @@ +// +// QuestController.h +// Pocket Gnome +// +// Created by Josh on 4/22/09. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@class Controller; +@class PlayerDataController; + +@interface QuestController : NSObject { + IBOutlet Controller *controller; + IBOutlet PlayerDataController *playerDataController; + + NSMutableArray *_playerQuests; +} + +// Holds all of our quest info +- (NSArray*)playerQuests; + +// This populates the playerQuests array with quest data +- (void)reloadPlayerQuests; + +// This dumps the playerQuests array to PGLog +- (void)dumpQuests; + +@end diff --git a/QuestController.m b/QuestController.m new file mode 100644 index 0000000..640ca86 --- /dev/null +++ b/QuestController.m @@ -0,0 +1,173 @@ +// +// QuestController.m +// Pocket Gnome +// +// Created by Josh on 4/22/09. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "QuestController.h" +#import "Controller.h" +#import "MemoryAccess.h" +#import "PlayerDataController.h" +#import "Player.h" +#import "Quest.h" +#import "QuestItem.h" + +// 3.1.1 valid +// #define QUEST_START_STATIC ((IS_X86) ? 0x14125F0 : 0x0) + +// Using QUEST_START_STATIC +/* This quest list is a bit confusing... here is an example: + 0x0 7905 <-- quest id + 0x4 12 <-- unknown (this seems to be a counter... starts at 1 and goes up to the total number of quests) + 0x8 0 <-- unknown + 0xC 0 <-- unknown + 0x10 38 <-- Zone ID + 0x14 0 + 0x18 1 + 0x1C 0 + 0x20 256 <-- quest id + 0x24 9 + 0x28 0 + 0x2C 0 + 0x30 44 <-- Zone ID + 0x34 0 + 0x38 1 + 0x3C 0 + 0x40 125 <-- quest id + 0x44 3 + 0x48 0 + 0x4C 0 + 0x50 145 <-- quest id + 0x54 7 + 0x58 0 + 0x5C 0 + */ + +@implementation QuestController + +- (id) init { + self = [super init]; + if (self != nil) { + _playerQuests = [[NSMutableArray array] retain]; + } + return self; +} + +- (void) dealloc +{ + [_playerQuests release]; + [super dealloc]; +} + + +- (NSArray*)playerQuests { + return [[_playerQuests retain] autorelease]; +} + + +typedef struct QuestInfo { + UInt32 questID; + UInt32 bytes; + UInt32 bytes1; + UInt32 bytes2; +} QuestInfo; + +- (void) reloadPlayerQuests{ + + // Get access to memory + /*MemoryAccess *wowMemory = [controller wowMemoryAccess]; + UInt32 playerAddress = [playerDataController baselineAddress]; + + // Add the player's current quests to the array pls + int i; + for ( i = 0; i < 25; i++ ){ + QuestInfo quest; + if([wowMemory loadDataForObject: self atAddress: (playerAddress + PlayerField_QuestStart) + i*sizeof(quest) Buffer:(Byte*)&quest BufLength: sizeof(quest)]) { + if ( quest.questID > 0 ){ + [_playerQuests addObject: [Quest questWithID: [NSNumber numberWithInt: quest.questID]]]; + } + else{ + break; + } + } + }*/ + + // Get the data for each quest from WoWHead + for(Quest *quest in _playerQuests) { + [quest reloadQuestData]; + } + + /* + // No real point in using the below unless you want to find the Title IDs (faction)... The below bytes simply go from 1 up to the max quest number... (bytes... bytes1 and bytes2 are always 0) + if(wowMemory) { + // Shouldn't be more than 50 (25 quests + 25 potential headings) + for(i = 0; i< 50; i++) + { + UInt32 questStart = QUEST_START_STATIC; + + QuestInfo quest; + if([wowMemory loadDataForObject: self atAddress: (questStart) + i*sizeof(quest) Buffer:(Byte*)&quest BufLength: sizeof(quest)]) { + //log(LOG_GENERAL, @"ID: %d, 1:%d, 2:%d, 3:%d", quest.questID, quest.bytes, quest.bytes1, quest.bytes2); + + if ( quest.questID == 0 ) continue; + + // Check to see if this object exists (if it does then it's not a heading) + NSEnumerator *enumerator = [_playerQuests objectEnumerator]; + Quest *obj; + + while ((obj = [enumerator nextObject]) != nil) + { + // Found a valid quest ID... lets save the extra data + if ( [[obj ID] intValue] == quest.questID ) + { + log(LOG_GENERAL, @"Found quest %d (%d, %d, %D)", quest.questID, quest.bytes, quest.bytes1, quest.bytes2); + + obj._bytes1 = [NSNumber numberWithInt:quest.bytes]; + obj._bytes2 = [NSNumber numberWithInt:quest.bytes1]; + obj._bytes3 = [NSNumber numberWithInt:quest.bytes2]; + + break; + } + } + } + } + }*/ + + /* + // For when i don't have the ability to start wow... + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:19]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:91]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:122]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:125]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:126]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:127]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:128]]]; + [_playerQuests addObject:[[Quest alloc] initWithQuestID:[NSNumber numberWithInt:145]]]; + + + // Get the data for each quest from WoWHead + int k; + for(k = 0; k < [_playerQuests count]; k++ ){ + [[_playerQuests objectAtIndex:k] reloadQuestData]; + }*/ +} + +- (void) dumpQuests{ + if ( !_playerQuests || ![_playerQuests count] ){ + return; + } + + NSLog(@"Total quests: %i", [_playerQuests count] ); + for(Quest *quest in _playerQuests) { + + log(LOG_GENERAL, @"Quest: %@ %@", [quest questID], [quest name]); + + for(QuestItem *questItem in quest.itemRequirements){ + log(LOG_GENERAL, @" Required Item: %@ Quantity: %@", [questItem item], [questItem quantity]); + } + } +} + +@end diff --git a/QuestGrabAction.xib b/QuestGrabAction.xib new file mode 100644 index 0000000..a9123cb --- /dev/null +++ b/QuestGrabAction.xib @@ -0,0 +1,801 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">QuestGrabActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 7}, {217, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Grab all quests from nearby NPCs</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 5}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{266, 33}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">96</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="867616341"/> + <reference ref="652240429"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{696, 629}, {266, 33}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">96</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestGrabActionController</string> + <string key="superclassName">ActionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestGrabActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/QuestGrabActionController.h b/QuestGrabActionController.h new file mode 100644 index 0000000..9d47cb6 --- /dev/null +++ b/QuestGrabActionController.h @@ -0,0 +1,16 @@ +// +// QuestGrabActionController.h +// Pocket Gnome +// +// Created by Josh on 1/17/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ActionController.h" + +@interface QuestGrabActionController : ActionController { + +} + +@end diff --git a/QuestGrabActionController.m b/QuestGrabActionController.m new file mode 100644 index 0000000..4863a16 --- /dev/null +++ b/QuestGrabActionController.m @@ -0,0 +1,42 @@ +// +// QuestGrabActionController.m +// Pocket Gnome +// +// Created by Josh on 1/17/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "QuestGrabActionController.h" +#import "ActionController.h" + +@implementation QuestGrabActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"QuestGrabAction" owner: self]) { + log(LOG_GENERAL, @"Error loading QuestGrabAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_QuestGrab value:nil]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/QuestItem.h b/QuestItem.h new file mode 100644 index 0000000..db723ba --- /dev/null +++ b/QuestItem.h @@ -0,0 +1,20 @@ +// +// QuestItem.h +// Pocket Gnome +// +// Created by Josh on 4/23/09. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + + +@interface QuestItem : NSObject { + NSNumber *_item; + NSNumber *_quantity; +} + +@property (readwrite, retain) NSNumber *item; +@property (readwrite, retain) NSNumber *quantity; + +@end diff --git a/QuestItem.m b/QuestItem.m new file mode 100644 index 0000000..56417b6 --- /dev/null +++ b/QuestItem.m @@ -0,0 +1,50 @@ +// +// QuestItem.m +// Pocket Gnome +// +// Created by Josh on 4/23/09. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "QuestItem.h" + + +@implementation QuestItem + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.item = nil; + self.quantity = nil; + } + return self; +} + +@synthesize item = _item; +@synthesize quantity = _quantity; + +- (void) dealloc { + self.item = nil; + self.quantity = nil; + + [super dealloc]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if(self) { + self.item = [decoder decodeObjectForKey: @"Item"]; + self.quantity = [decoder decodeObjectForKey: @"Quantity"]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.item forKey: @"Item"]; + [coder encodeObject: self.quantity forKey: @"Quantity"]; +} + +@end diff --git a/QuestTurnInAction.xib b/QuestTurnInAction.xib new file mode 100644 index 0000000..2378a18 --- /dev/null +++ b/QuestTurnInAction.xib @@ -0,0 +1,801 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">QuestTurnInActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 7}, {174, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Turn in all available quests</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 5}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{223, 33}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">96</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="867616341"/> + <reference ref="652240429"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{934, 572}, {223, 33}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">96</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestTurnInActionController</string> + <string key="superclassName">ActionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestTurnInActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/QuestTurnInActionController.h b/QuestTurnInActionController.h new file mode 100644 index 0000000..9e3637b --- /dev/null +++ b/QuestTurnInActionController.h @@ -0,0 +1,16 @@ +// +// QuestTurnInActionController.h +// Pocket Gnome +// +// Created by Josh on 1/17/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ActionController.h" + +@interface QuestTurnInActionController : ActionController { + +} + +@end diff --git a/QuestTurnInActionController.m b/QuestTurnInActionController.m new file mode 100644 index 0000000..0b04c09 --- /dev/null +++ b/QuestTurnInActionController.m @@ -0,0 +1,42 @@ +// +// QuestTurnInActionController.m +// Pocket Gnome +// +// Created by Josh on 1/17/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "QuestTurnInActionController.h" +#import "ActionController.h" + +@implementation QuestTurnInActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"QuestTurnInAction" owner: self]) { + log(LOG_GENERAL, @"Error loading QuestTurnInAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_QuestTurnIn value:nil]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/RepairAction.xib b/RepairAction.xib new file mode 100644 index 0000000..956c49c --- /dev/null +++ b/RepairAction.xib @@ -0,0 +1,801 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">RepairActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 7}, {289, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Repair all items (NPC must be within 5 yards)</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 5}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{338, 33}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">96</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="867616341"/> + <reference ref="652240429"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{934, 572}, {338, 33}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">96</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RepairActionController</string> + <string key="superclassName">ActionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RepairActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/RepairActionController.h b/RepairActionController.h new file mode 100644 index 0000000..b014f8c --- /dev/null +++ b/RepairActionController.h @@ -0,0 +1,16 @@ +// +// RepairActionController.h +// Pocket Gnome +// +// Created by Josh on 1/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ActionController.h" + +@interface RepairActionController : ActionController { + +} + +@end diff --git a/RepairActionController.m b/RepairActionController.m new file mode 100644 index 0000000..ff821af --- /dev/null +++ b/RepairActionController.m @@ -0,0 +1,42 @@ +// +// RepairActionController.m +// Pocket Gnome +// +// Created by Josh on 1/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "RepairActionController.h" +#import "ActionController.h" + +@implementation RepairActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"RepairAction" owner: self]) { + log(LOG_GENERAL, @"Error loading RepairAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Repair value:nil]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/Result.png b/Result.png new file mode 100644 index 0000000..734433f Binary files /dev/null and b/Result.png differ diff --git a/ReverseRouteAction.xib b/ReverseRouteAction.xib new file mode 100644 index 0000000..d33b984 --- /dev/null +++ b/ReverseRouteAction.xib @@ -0,0 +1,801 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">ReverseRouteActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 7}, {289, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Coming soon...</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 5}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{338, 33}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">96</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="867616341"/> + <reference ref="652240429"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{742, 572}, {338, 33}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">96</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ReverseRouteActionController</string> + <string key="superclassName">ActionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ReverseRouteActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/ReverseRouteActionController.h b/ReverseRouteActionController.h new file mode 100644 index 0000000..d3b5728 --- /dev/null +++ b/ReverseRouteActionController.h @@ -0,0 +1,16 @@ +// +// ReverseRouteActionController.h +// Pocket Gnome +// +// Created by Josh on 1/22/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ActionController.h" + +@interface ReverseRouteActionController : ActionController { + +} + +@end diff --git a/ReverseRouteActionController.m b/ReverseRouteActionController.m new file mode 100644 index 0000000..4d2fd22 --- /dev/null +++ b/ReverseRouteActionController.m @@ -0,0 +1,42 @@ +// +// ReverseRouteActionController.m +// Pocket Gnome +// +// Created by Josh on 1/22/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "ReverseRouteActionController.h" +#import "ActionController.h" + +@implementation ReverseRouteActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"ReverseRouteAction" owner: self]) { + log(LOG_GENERAL, @"Error loading ReverseRouteAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_ReverseRoute value:nil]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/Rogue.png b/Rogue.png new file mode 100644 index 0000000..16a6594 Binary files /dev/null and b/Rogue.png differ diff --git a/Rogue_Small.gif b/Rogue_Small.gif new file mode 100644 index 0000000..072c561 Binary files /dev/null and b/Rogue_Small.gif differ diff --git a/Route.h b/Route.h new file mode 100644 index 0000000..1fc1bbe --- /dev/null +++ b/Route.h @@ -0,0 +1,30 @@ +// +// Route.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "Waypoint.h" + +@interface Route : NSObject <NSCoding, NSCopying> { + NSMutableArray *_waypoints; +} + ++ (id)route; + +@property (readonly, retain) NSArray *waypoints; + +- (unsigned)waypointCount; +- (Waypoint*)waypointAtIndex: (unsigned)index; +- (Waypoint*)waypointClosestToPosition: (Position*)position; + +- (void)addWaypoint: (Waypoint*)waypoint; +- (void)insertWaypoint: (Waypoint*)waypoint atIndex: (unsigned)index; +- (void)removeWaypoint: (Waypoint*)waypoint; +- (void)removeWaypointAtIndex: (unsigned)index; +- (void)removeAllWaypoints; + +@end diff --git a/Route.m b/Route.m new file mode 100644 index 0000000..82fd235 --- /dev/null +++ b/Route.m @@ -0,0 +1,137 @@ +// +// Route.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Route.h" + +@interface Route () +@property (readwrite, retain) NSArray *waypoints; +@end + +@implementation Route + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.waypoints = [NSArray array]; + } + return self; +} + ++ (id)route { + Route *route = [[Route alloc] init]; + + return [route autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [super init]; + if(self) { + self.waypoints = [decoder decodeObjectForKey: @"Waypoints"] ? [decoder decodeObjectForKey: @"Waypoints"] : [NSArray array]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.waypoints forKey: @"Waypoints"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Route *copy = [[[self class] allocWithZone: zone] init]; + copy.waypoints = self.waypoints; + + // log(LOG_GENERAL, @"Old route: %@", self.waypoints); + // log(LOG_GENERAL, @"New route: %@", copy.waypoints); + + return copy; +} + +- (void) dealloc +{ + self.waypoints = nil; + [super dealloc]; +} + +#pragma mark - + +- (NSString*)description { + return [NSString stringWithFormat: @"<0x%X Route: %d waypoints>", self, [self waypointCount]]; +} + +@synthesize waypoints = _waypoints; + +- (void)setWaypoints: (NSArray*)waypoints { + [_waypoints autorelease]; + if(waypoints) { + _waypoints = [[NSMutableArray alloc] initWithArray: waypoints copyItems: YES]; + } else { + _waypoints = nil; + } +} + +- (unsigned)waypointCount { + return _waypoints ? [_waypoints count] : 0; +} + +- (Waypoint*)waypointAtIndex: (unsigned)index { + if(index >= 0 && index < [_waypoints count]) + return [[[_waypoints objectAtIndex: index] retain] autorelease]; + return nil; +} + +- (Waypoint*)waypointClosestToPosition: (Position*)position { + Waypoint *closestWP = nil; + float minDist = INFINITY, tempDist = 0; + for ( Waypoint *waypoint in [self waypoints] ) { + tempDist = [position distanceToPosition: [waypoint position]]; + //log(LOG_GENERAL, @" %0.2f < %0.2f %@", tempDist, minDist, waypoint); + if ( (tempDist < minDist) && (tempDist >= 0.0f) ) { + minDist = tempDist; + closestWP = waypoint; + } + } + + log(LOG_MOVEMENT, @"Closest WP found at a distance of %0.2f Vertical Distance: %0.2f Total waypoints searched: %d", minDist, [position verticalDistanceToPosition:[closestWP position]], [[self waypoints] count]); + + return [[closestWP retain] autorelease]; +} + +- (void)addWaypoint: (Waypoint*)waypoint { + if(waypoint != nil) { + log(LOG_DEV, @"addWaypoint: adding waypoint"); + [_waypoints addObject: waypoint]; + } else { + log(LOG_GENERAL, @"addWaypoint: failed; waypoint is nil"); + } +} + +- (void)insertWaypoint: (Waypoint*)waypoint atIndex: (unsigned)index { + if(waypoint != nil && index >= 0 && index <= [_waypoints count]) + [_waypoints insertObject: waypoint atIndex: index]; + else + log(LOG_GENERAL, @"insertWaypoint:atIndex: failed; either waypoint is nil or index is out of bounds"); +} + +- (void)removeWaypoint: (Waypoint*)waypoint { + if(waypoint == nil) return; + [_waypoints removeObject: waypoint]; +} + +- (void)removeWaypointAtIndex: (unsigned)index { + if(index >= 0 && index < [_waypoints count]) + [_waypoints removeObjectAtIndex: index]; +} + +- (void)removeAllWaypoints { + [_waypoints removeAllObjects]; +} + +@end diff --git a/RouteCollection.h b/RouteCollection.h new file mode 100644 index 0000000..d631051 --- /dev/null +++ b/RouteCollection.h @@ -0,0 +1,36 @@ +// +// RouteCollection.h +// Pocket Gnome +// +// Created by Josh on 2/11/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "FileObject.h" + +@class RouteSet; + +@interface RouteCollection : FileObject { + NSMutableArray *_routes; + + NSString *_startUUID; + + BOOL _startRouteOnDeath; +} + ++ (id)routeCollectionWithName: (NSString*)name; + +@property (readonly, retain) NSMutableArray *routes; +@property BOOL startRouteOnDeath; + +- (void)moveRouteSet:(RouteSet*)route toLocation:(int)index; +- (void)addRouteSet:(RouteSet*)route; +- (BOOL)removeRouteSet:(RouteSet*)route; +- (BOOL)containsRouteSet:(RouteSet*)route; + +- (RouteSet*)startingRoute; +- (void)setStartRoute:(RouteSet*)route; +- (BOOL)isStartingRoute:(RouteSet*)route; + +@end diff --git a/RouteCollection.m b/RouteCollection.m new file mode 100644 index 0000000..bf88488 --- /dev/null +++ b/RouteCollection.m @@ -0,0 +1,212 @@ +// +// RouteCollection.m +// Pocket Gnome +// +// Created by Josh on 2/11/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "RouteCollection.h" +#import "FileObject.h" + +#import "RouteSet.h" + +@interface RouteCollection () +@property (readwrite, retain) NSMutableArray *routes; +@property (readwrite, copy) NSString *startUUID; +@end + +@implementation RouteCollection + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.routes = [NSMutableArray array]; + self.startUUID = nil; + self.startRouteOnDeath = NO; + + _observers = [[NSArray arrayWithObjects: + @"startRouteOnDeath", + @"routes", nil] retain]; + } + return self; +} + +- (id)initWithName: (NSString*)name { + self = [self init]; + if ( self != nil ){ + [self setName: name]; + } + return self; +} + ++ (id)routeCollectionWithName: (NSString*)name { + RouteCollection *rc = [[[RouteCollection alloc] initWithName: name] autorelease]; + rc.changed = YES; + return rc; +} + +- (id)initWithCoder:(NSCoder *)decoder{ + self = [self init]; + if ( self ) { + self.routes = [decoder decodeObjectForKey: @"Routes"] ? [decoder decodeObjectForKey: @"Routes"] : [NSArray array]; + self.startUUID = [decoder decodeObjectForKey: @"StartUUID"]; + self.startRouteOnDeath = [[decoder decodeObjectForKey: @"StartRouteOnDeath"] boolValue]; + [super initWithCoder:decoder]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder{ + [coder encodeObject: self.routes forKey: @"Routes"]; + [coder encodeObject: self.startUUID forKey: @"StartUUID"]; + [coder encodeObject: [NSNumber numberWithBool:self.startRouteOnDeath] forKey: @"StartRouteOnDeath"]; + + [super encodeWithCoder:coder]; +} + +- (id)copyWithZone:(NSZone *)zone{ + RouteCollection *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.changed = YES; + copy.startUUID = self.startUUID; + copy.startRouteOnDeath = self.startRouteOnDeath; + + // add copies! Not originals! (we want a new UUID) + for ( RouteSet *route in self.routes ){ + [copy addRouteSet:[route copy]]; + } + + return copy; +} + +- (void) dealloc{ + self.name = nil; + self.routes = nil; + self.startUUID = nil; + [super dealloc]; +} + +@synthesize routes = _routes; +@synthesize startUUID = _startUUID; +@synthesize startRouteOnDeath = _startRouteOnDeath; + +#pragma mark - + +- (NSString*)description { + return [NSString stringWithFormat: @"<RouteCollection %@ %@>", [self name], [self UUID]]; +} + +- (void)moveRouteSet:(RouteSet*)route toLocation:(int)index{ + + RouteSet *routeToMove = nil; + for ( RouteSet *tmp in _routes ){ + if ( [[tmp UUID] isEqualToString:[route UUID]] ){ + routeToMove = [tmp retain]; + break; + } + } + + // route found! remove + re insert! + if ( routeToMove ){ + [_routes removeObject:routeToMove]; + [_routes insertObject:routeToMove atIndex:index]; + } +} + +- (void)addRouteSet:(RouteSet*)route{ + + // make sure it doesn't exist already! (in theory this should never happen) + for ( RouteSet *tmp in _routes ){ + if ( [[tmp UUID] isEqualToString:[route UUID]] ){ + return; + } + } + + if ( route && ![_routes containsObject:route] ){ + route.parent = self; + [_routes addObject:route]; + self.changed = YES; + } +} + +- (BOOL)removeRouteSet:(RouteSet*)route{ + + for ( RouteSet *tmp in _routes ){ + if ( [[tmp UUID] isEqualToString:[route UUID]] ){ + [_routes removeObject:tmp]; + self.changed = YES; + return YES; + } + } + + return NO; +} + +- (BOOL)containsRouteSet:(RouteSet*)route{ + return NO; +} + +#pragma mark Starting Route stuff + +- (RouteSet*)startingRoute{ + + for ( RouteSet *route in _routes ) { + if ( [self.startUUID isEqualToString:[route UUID]] ) return route; + } + + return nil; +} + +- (void)setStartRoute:(RouteSet*)route{ + + if ( route ){ + self.startUUID = [route UUID]; + } + else{ + self.startUUID = nil; + } + + self.changed = YES; +} + +- (BOOL)isStartingRoute:(RouteSet*)route{ + + if ( [[route UUID] isEqualToString:_startUUID] ){ + return YES; + } + + return NO; +} + +#pragma mark Accessors + +- (BOOL)changed{ + + if ( _changed ){ + return YES; + } + + for (RouteSet *route in _routes ){ + if ( route.changed ){ + return YES; + } + } + + return NO; +} + +- (void)setChanged:(BOOL)val{ + + // set each route set to not changed! + if ( val == NO ){ + for (RouteSet *route in _routes ){ + [route setChanged:NO]; + } + } + + _changed = val; +} + +@end diff --git a/RouteRunCountCondition.xib b/RouteRunCountCondition.xib new file mode 100644 index 0000000..a5477b0 --- /dev/null +++ b/RouteRunCountCondition.xib @@ -0,0 +1,1100 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">RouteRunCountConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="472482041"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{216, 6}, {86, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="984550528"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="813217147"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="472482041"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel">></string> + <int key="NSSegmentItemTag">1</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel">=</string> + <int key="NSSegmentItemTag">2</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel"><</string> + <int key="NSSegmentItemTag">3</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSelectedSegment">2</int> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSTextField" id="617983235"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{388, 10}, {39, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="635241576"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">times</string> + <reference key="NSSupport" ref="813217147"/> + <reference key="NSControlView" ref="617983235"/> + <object class="NSColor" key="NSBackgroundColor" id="411714969"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="338003060"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor" id="331225035"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSTextField" id="1006703156"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 10}, {181, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="110890774"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Player has run current route</string> + <reference key="NSSupport" ref="813217147"/> + <reference key="NSControlView" ref="1006703156"/> + <reference key="NSBackgroundColor" ref="411714969"/> + <reference key="NSTextColor" ref="338003060"/> + </object> + </object> + <object class="NSTextField" id="98136539"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{308, 7}, {75, 22}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="96108589"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">-2009070592</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="813217147"/> + <object class="NSNumberFormatter" key="NSFormatter" id="212878245"> + <object class="NSMutableDictionary" key="NS.attributes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>allowsFloats</string> + <string>formatterBehavior</string> + <string>lenient</string> + <string>maximum</string> + <string>minimum</string> + <string>negativeInfinitySymbol</string> + <string>nilSymbol</string> + <string>numberStyle</string> + <string>positiveInfinitySymbol</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <boolean value="YES"/> + <integer value="1040"/> + <boolean value="NO"/> + <real value="999"/> + <integer value="0"/> + <string>-∞</string> + <string/> + <integer value="1"/> + <string>+∞</string> + </object> + </object> + <string key="NS.positiveformat">#,##0.###</string> + <string key="NS.negativeformat">#,##0.###</string> + <nil key="NS.positiveattrs"/> + <nil key="NS.negativeattrs"/> + <nil key="NS.zero"/> + <object class="NSAttributedString" key="NS.nil"> + <string key="NSString"/> + </object> + <object class="NSAttributedString" key="NS.nan"> + <string key="NSString">NaN</string> + <object class="NSDictionary" key="NSAttributes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + </object> + <integer value="0" key="NS.min"/> + <real value="999" key="NS.max"/> + <object class="NSDecimalNumberHandler" key="NS.rounding"> + <int key="NS.roundingmode">3</int> + <bool key="NS.raise.overflow">YES</bool> + <bool key="NS.raise.underflow">YES</bool> + <bool key="NS.raise.dividebyzero">YES</bool> + </object> + <string key="NS.decimal">.</string> + <string key="NS.thousand">,</string> + <bool key="NS.hasthousands">YES</bool> + <bool key="NS.localized">YES</bool> + <bool key="NS.allowsfloats">YES</bool> + </object> + <reference key="NSControlView" ref="98136539"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textColor</string> + <reference key="NSColor" ref="331225035"/> + </object> + </object> + </object> + <object class="NSButton" id="814849057"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="316740641"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="814849057"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{444, 36}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">62</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="98136539"/> + </object> + <int key="connectionID">66</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">88</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">90</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="472482041"/> + </object> + <int key="connectionID">104</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">quantityText</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="98136539"/> + </object> + <int key="connectionID">105</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="814849057"/> + <reference ref="1006703156"/> + <reference ref="472482041"/> + <reference ref="98136539"/> + <reference ref="617983235"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">16</int> + <reference key="object" ref="98136539"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="96108589"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">17</int> + <reference key="object" ref="96108589"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="212878245"/> + </object> + <reference key="parent" ref="98136539"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">68</int> + <reference key="object" ref="212878245"/> + <reference key="parent" ref="96108589"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">83</int> + <reference key="object" ref="814849057"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="316740641"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">86</int> + <reference key="object" ref="316740641"/> + <reference key="parent" ref="814849057"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">92</int> + <reference key="object" ref="1006703156"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="110890774"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">93</int> + <reference key="object" ref="110890774"/> + <reference key="parent" ref="1006703156"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">100</int> + <reference key="object" ref="617983235"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="635241576"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">101</int> + <reference key="object" ref="635241576"/> + <reference key="parent" ref="617983235"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">102</int> + <reference key="object" ref="472482041"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="984550528"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">103</int> + <reference key="object" ref="984550528"/> + <reference key="parent" ref="472482041"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-2.showNotes</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>100.IBPluginDependency</string> + <string>101.IBPluginDependency</string> + <string>102.CustomClassName</string> + <string>102.IBPluginDependency</string> + <string>103.IBPluginDependency</string> + <string>103.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>16.IBPluginDependency</string> + <string>17.IBPluginDependency</string> + <string>68.IBNumberFormatterBehaviorMetadataKey</string> + <string>68.IBNumberFormatterLocalizesFormatMetadataKey</string> + <string>68.IBPluginDependency</string> + <string>83.IBAttributePlaceholdersKey</string> + <string>83.IBPluginDependency</string> + <string>86.IBPluginDependency</string> + <string>92.IBPluginDependency</string> + <string>93.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{767, 611}, {444, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{189, 314}, {582, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="2"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="1041"/> + <boolean value="YES"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="814849057"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">105</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RouteRunCountConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorSegment</string> + <string>quantityText</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BetterSegmentedControl</string> + <string>NSTextField</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RouteRunCountConditionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="475210095"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="883970323"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="939911122"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="982946997"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="400220171"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSNumberFormatter</string> + <string key="superclassName">NSFormatter</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSNumberFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="475210095"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="883970323"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="939911122"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="982946997"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="400220171"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="127450342"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="127450342"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/RouteRunCountConditionController.h b/RouteRunCountConditionController.h new file mode 100644 index 0000000..7c95f7a --- /dev/null +++ b/RouteRunCountConditionController.h @@ -0,0 +1,19 @@ +// +// RouteRunCountConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface RouteRunCountConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *quantityText; +} + +@end diff --git a/RouteRunCountConditionController.m b/RouteRunCountConditionController.m new file mode 100644 index 0000000..ee018e3 --- /dev/null +++ b/RouteRunCountConditionController.m @@ -0,0 +1,58 @@ +// +// RouteRunCountConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "RouteRunCountConditionController.h" + + +@implementation RouteRunCountConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"RouteRunCountCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading RouteRunCountCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyRouteRunCount + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeValue + value: [NSNumber numberWithInt:[quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyRouteRunCount) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + + +@end diff --git a/RouteRunTimeCondition.xib b/RouteRunTimeCondition.xib new file mode 100644 index 0000000..de9fc55 --- /dev/null +++ b/RouteRunTimeCondition.xib @@ -0,0 +1,1103 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">RouteRunTimeConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="1046921888"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{238, 5}, {86, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="806179495"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="813217147"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="1046921888"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel">></string> + <int key="NSSegmentItemTag">1</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel">=</string> + <int key="NSSegmentItemTag">2</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel"><</string> + <int key="NSSegmentItemTag">3</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSelectedSegment">2</int> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSTextField" id="617983235"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{410, 10}, {55, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="635241576"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">minutes</string> + <reference key="NSSupport" ref="813217147"/> + <reference key="NSControlView" ref="617983235"/> + <object class="NSColor" key="NSBackgroundColor" id="411714969"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="338003060"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor" id="331225035"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSTextField" id="1006703156"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 10}, {203, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="110890774"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Player has run current route for</string> + <reference key="NSSupport" ref="813217147"/> + <reference key="NSControlView" ref="1006703156"/> + <reference key="NSBackgroundColor" ref="411714969"/> + <reference key="NSTextColor" ref="338003060"/> + </object> + </object> + <object class="NSTextField" id="98136539"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{330, 7}, {75, 22}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="96108589"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">-2009070592</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="813217147"/> + <object class="NSNumberFormatter" key="NSFormatter" id="212878245"> + <object class="NSMutableDictionary" key="NS.attributes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>allowsFloats</string> + <string>formatterBehavior</string> + <string>locale</string> + <string>minimum</string> + <string>negativeFormat</string> + <string>numberStyle</string> + <string>paddingCharacter</string> + <string>positiveFormat</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <integer value="1040"/> + <object class="NSLocale"> + <string key="NS.identifier"/> + </object> + <integer value="0"/> + <string/> + <integer value="1"/> + <string> *</string> + <string>#</string> + </object> + </object> + <string key="NS.positiveformat">#</string> + <string key="NS.negativeformat"/> + <nil key="NS.positiveattrs"/> + <nil key="NS.negativeattrs"/> + <nil key="NS.zero"/> + <nil key="NS.nil"/> + <object class="NSAttributedString" key="NS.nan"> + <string key="NSString">NaN</string> + <object class="NSDictionary" key="NSAttributes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + </object> + <integer value="0" key="NS.min"/> + <object class="NSDecimalNumberPlaceholder" key="NS.max"> + <int key="NS.exponent">0</int> + <int key="NS.length">0</int> + <bool key="NS.negative">YES</bool> + <bool key="NS.compact">NO</bool> + <int key="NS.mantissa.bo">1</int> + <bytes key="NS.mantissa">AAAAAAAAAAAAAAAAAAAAAA</bytes> + </object> + <object class="NSDecimalNumberHandler" key="NS.rounding"> + <int key="NS.roundingmode">3</int> + <bool key="NS.raise.overflow">YES</bool> + <bool key="NS.raise.underflow">YES</bool> + <bool key="NS.raise.dividebyzero">YES</bool> + </object> + <string key="NS.decimal">.</string> + <string key="NS.thousand">,</string> + <bool key="NS.hasthousands">NO</bool> + <bool key="NS.localized">NO</bool> + <bool key="NS.allowsfloats">NO</bool> + </object> + <reference key="NSControlView" ref="98136539"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textColor</string> + <reference key="NSColor" ref="331225035"/> + </object> + </object> + </object> + <object class="NSButton" id="814849057"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="316740641"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="814849057"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{482, 36}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">62</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="98136539"/> + </object> + <int key="connectionID">66</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">88</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">90</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">quantityText</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="98136539"/> + </object> + <int key="connectionID">104</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1046921888"/> + </object> + <int key="connectionID">105</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="814849057"/> + <reference ref="1006703156"/> + <reference ref="1046921888"/> + <reference ref="98136539"/> + <reference ref="617983235"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">16</int> + <reference key="object" ref="98136539"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="96108589"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">17</int> + <reference key="object" ref="96108589"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="212878245"/> + </object> + <reference key="parent" ref="98136539"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">68</int> + <reference key="object" ref="212878245"/> + <reference key="parent" ref="96108589"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">83</int> + <reference key="object" ref="814849057"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="316740641"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">86</int> + <reference key="object" ref="316740641"/> + <reference key="parent" ref="814849057"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">92</int> + <reference key="object" ref="1006703156"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="110890774"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">93</int> + <reference key="object" ref="110890774"/> + <reference key="parent" ref="1006703156"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">100</int> + <reference key="object" ref="617983235"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="635241576"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">101</int> + <reference key="object" ref="635241576"/> + <reference key="parent" ref="617983235"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">102</int> + <reference key="object" ref="1046921888"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="806179495"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">103</int> + <reference key="object" ref="806179495"/> + <reference key="parent" ref="1046921888"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-2.showNotes</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>100.IBPluginDependency</string> + <string>101.IBPluginDependency</string> + <string>102.CustomClassName</string> + <string>102.IBPluginDependency</string> + <string>103.IBPluginDependency</string> + <string>103.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>16.IBPluginDependency</string> + <string>17.IBPluginDependency</string> + <string>68.IBNumberFormatterLocalizesFormatMetadataKey</string> + <string>68.IBPluginDependency</string> + <string>83.IBAttributePlaceholdersKey</string> + <string>83.IBPluginDependency</string> + <string>86.IBPluginDependency</string> + <string>92.IBPluginDependency</string> + <string>93.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{674, 588}, {482, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{189, 314}, {582, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="2"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <boolean value="YES"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="814849057"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">105</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RouteRunTimeConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorSegment</string> + <string>quantityText</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BetterSegmentedControl</string> + <string>NSTextField</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RouteRunTimeConditionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="475210095"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="883970323"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="939911122"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="982946997"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="400220171"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSNumberFormatter</string> + <string key="superclassName">NSFormatter</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSNumberFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="475210095"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="883970323"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="939911122"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="982946997"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="400220171"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="127450342"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="127450342"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/RouteRunTimeConditionController.h b/RouteRunTimeConditionController.h new file mode 100644 index 0000000..c281608 --- /dev/null +++ b/RouteRunTimeConditionController.h @@ -0,0 +1,19 @@ +// +// RouteRunTimeConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface RouteRunTimeConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *quantityText; +} + +@end diff --git a/RouteRunTimeConditionController.m b/RouteRunTimeConditionController.m new file mode 100644 index 0000000..d41ec5a --- /dev/null +++ b/RouteRunTimeConditionController.m @@ -0,0 +1,56 @@ +// +// RouteRunTimeConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "RouteRunTimeConditionController.h" + + +@implementation RouteRunTimeConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"RouteRunTimeCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading RouteRunTimeCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyRouteRunTime + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeValue + value: [NSNumber numberWithInt:[quantityText intValue]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyRouteRunTime) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [quantityText setStringValue: [[condition value] stringValue]]; +} + +@end diff --git a/RouteSet.h b/RouteSet.h new file mode 100644 index 0000000..4374937 --- /dev/null +++ b/RouteSet.h @@ -0,0 +1,33 @@ +// +// RouteSet.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/21/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "Route.h" +#import "FileObject.h" + +#define PrimaryRoute @"PrimaryRoute" +#define CorpseRunRoute @"CorpseRunRoute" + +@class RouteCollection; + +// this class implements FileObject, but isn't actually saved (part of RouteCollection) +@interface RouteSet : FileObject { + NSMutableDictionary *_routes; + + RouteCollection *_parent; +} + ++ (id)routeSetWithName: (NSString*)name; + +@property (readonly, retain) NSDictionary *routes; +@property (readwrite, retain) RouteCollection *parent; + +- (Route*)routeForKey: (NSString*)key; +- (void)setRoute: (Route*)route forKey: (NSString*)key; + +@end diff --git a/RouteSet.m b/RouteSet.m new file mode 100644 index 0000000..5031368 --- /dev/null +++ b/RouteSet.m @@ -0,0 +1,132 @@ +// +// RouteSet.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/21/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "RouteSet.h" +#import "FileObject.h" +#import "RouteCollection.h" + +@interface RouteSet () +@property (readwrite, retain) NSDictionary *routes; +@end + +@implementation RouteSet + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.name = nil; + self.routes = [NSMutableDictionary dictionary]; + self.parent = nil; + + _observers = [[NSArray arrayWithObjects: + @"parent", + @"routes", nil] retain]; + } + return self; +} + +- (id)initWithName: (NSString*)name { + self = [self init]; + if(self != nil) { + [self setName: name]; + + [_routes setObject: [Route route] forKey: PrimaryRoute]; + [_routes setObject: [Route route] forKey: CorpseRunRoute]; + } + return self; +} + ++ (id)routeSetWithName: (NSString*)name { + RouteSet *route = [[[RouteSet alloc] initWithName: name] autorelease]; + route.changed = YES; + return route; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if ( self ) { + self.routes = [decoder decodeObjectForKey: @"Routes"] ? [decoder decodeObjectForKey: @"Routes"] : [NSDictionary dictionary]; + self.parent = [decoder decodeObjectForKey: @"Parent"]; + + // make sure we have a route object for every type + if( ![self routeForKey: PrimaryRoute]) + [self setRoute: [Route route] forKey: PrimaryRoute]; + if( ![self routeForKey: CorpseRunRoute]) + [self setRoute: [Route route] forKey: CorpseRunRoute]; + + [super initWithCoder:decoder]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.routes forKey: @"Routes"]; + [coder encodeObject: self.parent forKey: @"Parent"]; + + [super encodeWithCoder:coder]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + RouteSet *copy = [[[self class] allocWithZone: zone] initWithName: self.name]; + + copy.routes = self.routes; + copy.changed = YES; + copy.parent = self.parent; + + return copy; +} + +- (void) dealloc +{ + self.name = nil; + self.routes = nil; + self.parent = nil; + [super dealloc]; +} + +#pragma mark - + +- (NSString*)description { + return [NSString stringWithFormat: @"<RouteSet %@ %@>", [self name], [self UUID]]; +} + +@synthesize parent = _parent; +@synthesize routes = _routes; + +- (void)setRoutes: (NSDictionary*)routes { + [_routes autorelease]; + if(routes) { + _routes = [[NSMutableDictionary alloc] initWithDictionary: routes copyItems: YES]; + } else { + _routes = nil; + } +} + +- (Route*)routeForKey: (NSString*)key { + return [_routes objectForKey: key]; +} + +- (void)setRoute: (Route*)route forKey: (NSString*)key { + if(!_routes) self.routes = [NSDictionary dictionary]; + if(route && key) { + [_routes setObject: route forKey: key]; + } +} + + +- (void)setParent:(RouteCollection*)myParent{ + [_parent release]; + _parent = [myParent retain]; + +} + +@end diff --git a/RouteVisualizationView.h b/RouteVisualizationView.h new file mode 100644 index 0000000..f3b3257 --- /dev/null +++ b/RouteVisualizationView.h @@ -0,0 +1,24 @@ +// +// RouteVisualizationView.h +// Pocket Gnome +// +// Created by Jon Drummond on 2/8/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@class Route; +@class Position; + +@interface RouteVisualizationView : NSView { + Route *route; + Position *playerPosition; + BOOL shouldClosePath; +} + +@property BOOL shouldClosePath; +@property (readwrite, retain) Route *route; +@property (readwrite, retain) Position *playerPosition; + +@end diff --git a/RouteVisualizationView.m b/RouteVisualizationView.m new file mode 100644 index 0000000..294d142 --- /dev/null +++ b/RouteVisualizationView.m @@ -0,0 +1,121 @@ +// +// RouteVisualizationView.m +// Pocket Gnome +// +// Created by Jon Drummond on 2/8/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "RouteVisualizationView.h" + +#import "Route.h" + +@implementation RouteVisualizationView + +@synthesize route; +@synthesize playerPosition; +@synthesize shouldClosePath; + +- (void)drawRect:(NSRect)aRect { + // determine our extremes for drawing + float leftmost = positiveInfinity, rightmost = negativeInfinity, upper = negativeInfinity, lower = positiveInfinity; + for(Waypoint *waypoint in [self.route waypoints]) { + + if([[waypoint position] xPosition] < leftmost) + leftmost = [[waypoint position] xPosition]; + if([[waypoint position] xPosition] > rightmost) + rightmost = [[waypoint position] xPosition]; + + if([[waypoint position] yPosition] < lower) + lower = [[waypoint position] yPosition]; + if([[waypoint position] yPosition] > upper) + upper = [[waypoint position] yPosition]; + } + + // now we have our extremes + float xSpan = rightmost - leftmost; + float ySpan = upper - lower; + NSBezierPath *path = [NSBezierPath bezierPath]; + + // create the path + NSPoint firstPoint = NSZeroPoint; + for(Waypoint *waypoint in [self.route waypoints]) { + float xDiff = ([[waypoint position] xPosition] - leftmost)/xSpan; + float yDiff = ([[waypoint position] yPosition] - lower)/ySpan; + + NSPoint point = NSMakePoint(xDiff*([self bounds].size.width-20) + 10, yDiff*([self bounds].size.height-20) + 10); + + if([path elementCount] == 0) { + firstPoint = point; + [path moveToPoint: point]; + } + + [path lineToPoint: point]; + [path moveToPoint: point]; + } + if(!NSEqualPoints(firstPoint, NSZeroPoint) && shouldClosePath) + [path lineToPoint: firstPoint]; + [[NSColor blueColor] set]; + [path setLineWidth: 3.0]; + [path stroke]; + + NSMutableParagraphStyle *paraStyle = [[[NSParagraphStyle defaultParagraphStyle] mutableCopy] autorelease]; + [paraStyle setAlignment: NSCenterTextAlignment]; + + // draw the points + int i = 0; + for(Waypoint *waypoint in [self.route waypoints]) { + float xDiff = ([[waypoint position] xPosition] - leftmost)/xSpan; + float yDiff = ([[waypoint position] yPosition] - lower)/ySpan; + float xPos = xDiff*([self bounds].size.width-20) - 7 + 10; + float yPos = yDiff*([self bounds].size.height-20) - 7 + 10; + + NSRect pointRect = NSMakeRect(xPos, yPos, 14, 14); + if(waypoint == [self.route waypointAtIndex: 0]) + [[NSColor greenColor] set]; + else + [[NSColor redColor] set]; + [[NSBezierPath bezierPathWithOvalInRect: pointRect] fill]; + + NSAttributedString *numStr = [[[NSAttributedString alloc] initWithString: [NSString stringWithFormat: @"%d", ++i] + attributes: [NSDictionary dictionaryWithObjectsAndKeys: + [NSFont labelFontOfSize: ((i < 100) ? 8 : 6)], NSFontAttributeName, + ((i==0) ? [NSColor blackColor] : [NSColor whiteColor]), NSForegroundColorAttributeName, + paraStyle, NSParagraphStyleAttributeName, nil]] autorelease]; + + NSSize strSize = [numStr size]; + float x = pointRect.origin.x + ((pointRect.size.width - strSize.width) / 2.0f); + float y = pointRect.origin.y + ((pointRect.size.height - strSize.height) / 2.0f); + + /* + //[numStr drawAtPoint: NSMakePoint(xPos, yPos)]; + if(strSize.width > pointRect.size.width) { + diff = strSize.width - pointRect.size.width; + pointRect.size.width += diff; + pointRect.origin.x -= (diff/2.0f); + log(LOG_GENERAL, @"Fixing rect size for %f %@", strSize.width, NSStringFromRect(pointRect)); + }*/ + [numStr drawInRect: NSMakeRect(x, y, strSize.width, strSize.height)]; + } + + if(self.playerPosition) { + float xDiff = ([self.playerPosition xPosition] - leftmost)/xSpan; + float yDiff = ([self.playerPosition yPosition] - lower)/ySpan; + float xPos = xDiff*([self bounds].size.width-20) - 6 + 10; + float yPos = yDiff*([self bounds].size.height-20) - 6 + 10; + + NSRect pointRect = NSMakeRect(xPos, yPos, 12, 12); + [[NSColor orangeColor] set]; + [[NSBezierPath bezierPathWithOvalInRect: pointRect] fill]; + + /*NSAttributedString *str = [[[NSAttributedString alloc] initWithString: @"*" + attributes: [NSDictionary dictionaryWithObjectsAndKeys: + [NSFont boldSystemFontOfSize: 12], NSFontAttributeName, + [NSColor whiteColor], NSForegroundColorAttributeName, + paraStyle, NSParagraphStyleAttributeName, nil]] autorelease]; + [str drawInRect: pointRect];*/ + } + +} + +@end diff --git a/Routes.xib b/Routes.xib new file mode 100644 index 0000000..07483d3 --- /dev/null +++ b/Routes.xib @@ -0,0 +1,7274 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10F569</string> + <string key="IBDocument.InterfaceBuilderVersion">762</string> + <string key="IBDocument.AppKitVersion">1038.29</string> + <string key="IBDocument.HIToolboxVersion">461.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>net.wafflesoftware.ShortcutRecorder.IB.Leopard</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>762</string> + <string>1</string> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="263"/> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>net.wafflesoftware.ShortcutRecorder.IB.Leopard</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">WaypointController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">274</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSBox" id="116444210"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">10</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="572496861"> + <reference key="NSNextResponder" ref="116444210"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="953244587"> + <reference key="NSNextResponder" ref="572496861"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{12, 8}, {583, 14}}</string> + <reference key="NSSuperview" ref="572496861"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="218011891"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272761856</int> + <string key="NSContents">Waypoint: </string> + <object class="NSFont" key="NSSupport" id="26"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">11</double> + <int key="NSfFlags">3100</int> + </object> + <reference key="NSControlView" ref="953244587"/> + <object class="NSColor" key="NSBackgroundColor" id="211653087"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor" id="178564801"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="523328271"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor" id="613016896"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {1008, 30}}</string> + <reference key="NSSuperview" ref="116444210"/> + </object> + </object> + <string key="NSFrame">{{0, 404}, {1010, 32}}</string> + <reference key="NSSuperview" ref="1005"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Box</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor" id="977072340"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor" id="831073255"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="572496861"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">4</int> + <int key="NSTitlePosition">0</int> + <bool key="NSTransparent">NO</bool> + <object class="NSColor" key="NSBorderColor2"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA</bytes> + </object> + <object class="NSColor" key="NSFillColor2"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA</bytes> + </object> + </object> + <object class="NSBox" id="65453686"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">20</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="959451990"> + <reference key="NSNextResponder" ref="65453686"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSScrollView" id="388122010"> + <reference key="NSNextResponder" ref="959451990"/> + <int key="NSvFlags">276</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSClipView" id="511951756"> + <reference key="NSNextResponder" ref="388122010"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSOutlineView" id="686572762"> + <reference key="NSNextResponder" ref="511951756"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{228, 276}</string> + <reference key="NSSuperview" ref="511951756"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTableHeaderView" key="NSHeaderView" id="836454471"> + <reference key="NSNextResponder" ref="550943056"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{228, 17}</string> + <reference key="NSSuperview" ref="550943056"/> + <reference key="NSTableView" ref="686572762"/> + </object> + <object class="_NSCornerView" key="NSCornerView" id="1014914985"> + <reference key="NSNextResponder" ref="388122010"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{224, 0}, {16, 17}}</string> + <reference key="NSSuperview" ref="388122010"/> + </object> + <object class="NSMutableArray" key="NSTableColumns"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableColumn" id="591981990"> + <string key="NSIdentifier">Routes</string> + <double key="NSWidth">225</double> + <double key="NSMinWidth">16</double> + <double key="NSMaxWidth">1000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Routes</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC4zMzMzMzI5ODU2AA</bytes> + </object> + <object class="NSColor" key="NSTextColor" id="830981269"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">headerTextColor</string> + <reference key="NSColor" ref="613016896"/> + </object> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="958531763"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Text Cell</string> + <object class="NSFont" key="NSSupport" id="805037073"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="686572762"/> + <object class="NSColor" key="NSBackgroundColor" id="907939593"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlBackgroundColor</string> + <reference key="NSColor" ref="178564801"/> + </object> + <reference key="NSTextColor" ref="523328271"/> + </object> + <int key="NSResizingMask">3</int> + <bool key="NSIsResizeable">YES</bool> + <bool key="NSIsEditable">YES</bool> + <reference key="NSTableView" ref="686572762"/> + <object class="NSSortDescriptor" key="NSSortDescriptorPrototype"> + <string key="NSKey">Routes</string> + <bool key="NSAscending">YES</bool> + <string key="NSSelector">compare:</string> + </object> + </object> + </object> + <double key="NSIntercellSpacingWidth">3</double> + <double key="NSIntercellSpacingHeight">2</double> + <reference key="NSBackgroundColor" ref="831073255"/> + <object class="NSColor" key="NSGridColor" id="777590774"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">gridColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC41AA</bytes> + </object> + </object> + <double key="NSRowHeight">17</double> + <int key="NSTvFlags">-767557632</int> + <reference key="NSDelegate"/> + <reference key="NSDataSource"/> + <int key="NSColumnAutoresizingStyle">4</int> + <int key="NSDraggingSourceMaskForLocal">15</int> + <int key="NSDraggingSourceMaskForNonLocal">0</int> + <bool key="NSAllowsTypeSelect">YES</bool> + <int key="NSTableViewDraggingDestinationStyle">0</int> + </object> + </object> + <string key="NSFrame">{{1, 17}, {228, 276}}</string> + <reference key="NSSuperview" ref="388122010"/> + <reference key="NSNextKeyView" ref="686572762"/> + <reference key="NSDocView" ref="686572762"/> + <reference key="NSBGColor" ref="907939593"/> + <int key="NScvFlags">4</int> + </object> + <object class="NSScroller" id="624443309"> + <reference key="NSNextResponder" ref="388122010"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{224, 17}, {15, 102}}</string> + <reference key="NSSuperview" ref="388122010"/> + <reference key="NSTarget" ref="388122010"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.87179487179487181</double> + </object> + <object class="NSScroller" id="296128296"> + <reference key="NSNextResponder" ref="388122010"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{1, 119}, {238, 15}}</string> + <reference key="NSSuperview" ref="388122010"/> + <int key="NSsFlags">1</int> + <reference key="NSTarget" ref="388122010"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.94820717131474108</double> + </object> + <object class="NSClipView" id="550943056"> + <reference key="NSNextResponder" ref="388122010"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="836454471"/> + </object> + <string key="NSFrame">{{1, 0}, {228, 17}}</string> + <reference key="NSSuperview" ref="388122010"/> + <reference key="NSNextKeyView" ref="836454471"/> + <reference key="NSDocView" ref="836454471"/> + <reference key="NSBGColor" ref="907939593"/> + <int key="NScvFlags">4</int> + </object> + <reference ref="1014914985"/> + </object> + <string key="NSFrame">{{18, 64}, {230, 294}}</string> + <reference key="NSSuperview" ref="959451990"/> + <reference key="NSNextKeyView" ref="511951756"/> + <int key="NSsFlags">562</int> + <reference key="NSVScroller" ref="624443309"/> + <reference key="NSHScroller" ref="296128296"/> + <reference key="NSContentView" ref="511951756"/> + <reference key="NSHeaderClipView" ref="550943056"/> + <reference key="NSCornerView" ref="1014914985"/> + <bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes> + </object> + <object class="NSButton" id="49083088"> + <reference key="NSNextResponder" ref="959451990"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{18, 12}, {89, 19}}</string> + <reference key="NSSuperview" ref="959451990"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="752140054"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Add Route</string> + <object class="NSFont" key="NSSupport" id="198283917"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="49083088"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <object class="NSCustomResource" key="NSNormalImage" id="704670070"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSAddTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSButton" id="218980861"> + <reference key="NSNextResponder" ref="959451990"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{184, 37}, {65, 19}}</string> + <reference key="NSSuperview" ref="959451990"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="204810929"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Delete</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="218980861"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <object class="NSCustomResource" key="NSNormalImage" id="577587977"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSRemoveTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"></string> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSButton" id="64949649"> + <reference key="NSNextResponder" ref="959451990"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{18, 37}, {111, 19}}</string> + <reference key="NSSuperview" ref="959451990"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="743392281"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Add Route Set</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="64949649"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <reference key="NSNormalImage" ref="704670070"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSButton" id="901248527"> + <reference key="NSNextResponder" ref="959451990"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{182, 12}, {67, 19}}</string> + <reference key="NSSuperview" ref="959451990"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="780439087"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Import</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="901248527"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <reference key="NSNormalImage" ref="704670070"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {266, 368}}</string> + <reference key="NSSuperview" ref="65453686"/> + </object> + </object> + <string key="NSFrame">{{17, 16}, {268, 384}}</string> + <reference key="NSSuperview" ref="1005"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="977072340"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="959451990"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> + <object class="NSTabView" id="923747786"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">22</int> + <string key="NSFrame">{{283, 10}, {714, 391}}</string> + <reference key="NSSuperview" ref="1005"/> + <object class="NSMutableArray" key="NSTabViewItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTabViewItem" id="781667355"> + <string key="NSIdentifier">0</string> + <object class="NSView" key="NSView" id="558011316"> + <reference key="NSNextResponder" ref="923747786"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="118844016"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{8, 316}, {237, 24}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="753927715"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="413719806"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="118844016"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">115</double> + <string key="NSSegmentItemLabel">Primary Route</string> + <string key="NSSegmentItemTooltip">This is the route your character will run while botting.</string> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">115</double> + <string key="NSSegmentItemLabel">Corpse Run</string> + <string key="NSSegmentItemTooltip">This is the route from the nearest graveyard back to the primary route. You will run this route if you die.</string> + <int key="NSSegmentItemTag">1</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSButton" id="867652295"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">289</int> + <string key="NSFrame">{{557, 44}, {121, 19}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="185420440"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Delete Waypoint</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="867652295"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <reference key="NSNormalImage" ref="577587977"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSScrollView" id="919554175"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">4370</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSClipView" id="934496357"> + <reference key="NSNextResponder" ref="919554175"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableView" id="745831791"> + <reference key="NSNextResponder" ref="934496357"/> + <int key="NSvFlags">4352</int> + <string key="NSFrameSize">{666, 220}</string> + <reference key="NSSuperview" ref="934496357"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTableHeaderView" key="NSHeaderView" id="373829918"> + <reference key="NSNextResponder" ref="232955179"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{666, 17}</string> + <reference key="NSSuperview" ref="232955179"/> + <reference key="NSTableView" ref="745831791"/> + </object> + <object class="_NSCornerView" key="NSCornerView" id="874369871"> + <reference key="NSNextResponder" ref="919554175"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{652, 0}, {16, 17}}</string> + <reference key="NSSuperview" ref="919554175"/> + </object> + <object class="NSMutableArray" key="NSTableColumns"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableColumn" id="199153278"> + <string key="NSIdentifier">Step</string> + <double key="NSWidth">40</double> + <double key="NSMinWidth">40</double> + <double key="NSMaxWidth">1000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Step</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor" id="834695726"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC4zMzMzMzI5OQA</bytes> + </object> + <reference key="NSTextColor" ref="830981269"/> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="283689648"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Text Cell</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="745831791"/> + <reference key="NSBackgroundColor" ref="907939593"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + <reference key="NSTableView" ref="745831791"/> + </object> + <object class="NSTableColumn" id="645013549"> + <string key="NSIdentifier">Type</string> + <double key="NSWidth">90</double> + <double key="NSMinWidth">10</double> + <double key="NSMaxWidth">3.4028229999999999e+38</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Action</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor" id="763623877"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">headerColor</string> + <reference key="NSColor" ref="831073255"/> + </object> + <reference key="NSTextColor" ref="830981269"/> + </object> + <object class="NSPopUpButtonCell" key="NSDataCell" id="169241537"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">133120</int> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="745831791"/> + <int key="NSButtonFlags">100679935</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="260590126"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Jump to waypoint</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="193427801"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="221656227"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">16</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="149671214"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="228477557"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">None</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="1052452777"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Spell</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">1</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="938224170"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Item</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">2</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="514266057"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Macro</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">3</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="568245903"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Delay</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">4</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="949598908"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Interact NPC</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">5</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="409192402"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Jump</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">6</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="406928804"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Switch Route</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">7</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="912383780"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Quest Turn In</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">8</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="530066763"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Quest Grab</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">9</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="667903711"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Vendor</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">10</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="304584884"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Mail</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">11</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="932203169"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Repair</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">12</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="963782176"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Reverse Route</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">13</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="37809107"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Combat Profile</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">14</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <object class="NSMenuItem" id="686181531"> + <reference key="NSMenu" ref="149671214"/> + <string key="NSTitle">Interact Object</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">15</int> + <reference key="NSTarget" ref="169241537"/> + </object> + <reference ref="260590126"/> + </object> + </object> + <int key="NSSelectedIndex">16</int> + <int key="NSPreferredEdge">3</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">1</int> + </object> + <reference key="NSTableView" ref="745831791"/> + </object> + <object class="NSTableColumn" id="3462852"> + <string key="NSIdentifier">Coordinates</string> + <double key="NSWidth">234</double> + <double key="NSMinWidth">40</double> + <double key="NSMaxWidth">1000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Coordinates / Action</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="834695726"/> + <reference key="NSTextColor" ref="830981269"/> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="555448148"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Text Cell</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="745831791"/> + <reference key="NSBackgroundColor" ref="907939593"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + <int key="NSResizingMask">3</int> + <bool key="NSIsResizeable">YES</bool> + <bool key="NSIsEditable">YES</bool> + <reference key="NSTableView" ref="745831791"/> + </object> + <object class="NSTableColumn" id="33506536"> + <string key="NSIdentifier">Distance</string> + <double key="NSWidth">86</double> + <double key="NSMinWidth">10</double> + <double key="NSMaxWidth">3.4028229999999999e+38</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string type="base64-UTF8" key="NSContents">RGlzdGFuY2UgBERlbHRhA</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="763623877"/> + <reference key="NSTextColor" ref="830981269"/> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="1026674769"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Text Cell</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="745831791"/> + <reference key="NSBackgroundColor" ref="907939593"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + <int key="NSResizingMask">2</int> + <bool key="NSIsResizeable">YES</bool> + <bool key="NSIsEditable">YES</bool> + <reference key="NSTableView" ref="745831791"/> + </object> + <object class="NSTableColumn" id="709618286"> + <string key="NSIdentifier">Description</string> + <double key="NSWidth">201</double> + <double key="NSMinWidth">10</double> + <double key="NSMaxWidth">3.4028234663852886e+38</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Description</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="763623877"/> + <reference key="NSTextColor" ref="830981269"/> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="145253772"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Text</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="745831791"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + <int key="NSResizingMask">3</int> + <bool key="NSIsResizeable">YES</bool> + <bool key="NSIsEditable">YES</bool> + <reference key="NSTableView" ref="745831791"/> + </object> + </object> + <double key="NSIntercellSpacingWidth">3</double> + <double key="NSIntercellSpacingHeight">2</double> + <reference key="NSBackgroundColor" ref="907939593"/> + <reference key="NSGridColor" ref="777590774"/> + <double key="NSRowHeight">17</double> + <int key="NSTvFlags">-624951296</int> + <reference key="NSDelegate"/> + <reference key="NSDataSource"/> + <int key="NSColumnAutoresizingStyle">4</int> + <int key="NSDraggingSourceMaskForLocal">15</int> + <int key="NSDraggingSourceMaskForNonLocal">0</int> + <bool key="NSAllowsTypeSelect">YES</bool> + <int key="NSTableViewDraggingDestinationStyle">0</int> + </object> + </object> + <string key="NSFrame">{{1, 17}, {666, 220}}</string> + <reference key="NSSuperview" ref="919554175"/> + <reference key="NSNextKeyView" ref="745831791"/> + <reference key="NSDocView" ref="745831791"/> + <reference key="NSBGColor" ref="907939593"/> + <int key="NScvFlags">4</int> + </object> + <object class="NSScroller" id="818423228"> + <reference key="NSNextResponder" ref="919554175"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{652, 17}, {15, 89}}</string> + <reference key="NSSuperview" ref="919554175"/> + <reference key="NSTarget" ref="919554175"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.85576923076923073</double> + </object> + <object class="NSScroller" id="1017712693"> + <reference key="NSNextResponder" ref="919554175"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{1, 106}, {666, 15}}</string> + <reference key="NSSuperview" ref="919554175"/> + <int key="NSsFlags">1</int> + <reference key="NSTarget" ref="919554175"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.96943231441048039</double> + </object> + <object class="NSClipView" id="232955179"> + <reference key="NSNextResponder" ref="919554175"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="373829918"/> + </object> + <string key="NSFrame">{{1, 0}, {666, 17}}</string> + <reference key="NSSuperview" ref="919554175"/> + <reference key="NSNextKeyView" ref="373829918"/> + <reference key="NSDocView" ref="373829918"/> + <reference key="NSBGColor" ref="907939593"/> + <int key="NScvFlags">4</int> + </object> + <reference ref="874369871"/> + </object> + <string key="NSFrame">{{10, 73}, {668, 238}}</string> + <reference key="NSSuperview" ref="558011316"/> + <reference key="NSNextKeyView" ref="934496357"/> + <int key="NSsFlags">562</int> + <reference key="NSVScroller" ref="818423228"/> + <reference key="NSHScroller" ref="1017712693"/> + <reference key="NSContentView" ref="934496357"/> + <reference key="NSHeaderClipView" ref="232955179"/> + <reference key="NSCornerView" ref="874369871"/> + <bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes> + </object> + <object class="NSButton" id="1069413935"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{10, 44}, {121, 19}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="1049112265"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Add Waypoint</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="1069413935"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <reference key="NSNormalImage" ref="704670070"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="SRRecorderControl" id="1022332372"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{209, 43}, {142, 22}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="SRRecorderCell" key="NSCell" id="858315872"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="1022332372"/> + <nil key="autosaveName"/> + <integer value="-1" key="keyComboCode"/> + <integer value="1048576" key="keyComboFlags"/> + <integer value="10354688" key="allowedFlags"/> + <integer value="0" key="requiredFlags"/> + <boolean value="NO" key="allowsKeyOnly"/> + <boolean value="NO" key="escapeKeysRecord"/> + <boolean value="NO" key="isAnimating"/> + <integer value="0" key="style"/> + </object> + </object> + <object class="NSTextField" id="230136325"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{136, 47}, {68, 14}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="26365240"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272761856</int> + <string key="NSContents">Set hotkey:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="230136325"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="NSPopUpButton" id="199917810"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{536, 314}, {145, 26}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="337762266"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">134219776</int> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="199917810"/> + <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags2">129</int> + <reference key="NSAlternateImage" ref="413719806"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="1073670871"> + <reference key="NSMenu" ref="1009594217"/> + <bool key="NSIsHidden">YES</bool> + <string key="NSTitle">Testing Options</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="337762266"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="1009594217"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1073670871"/> + <object class="NSMenuItem" id="977914209"> + <reference key="NSMenu" ref="1009594217"/> + <string key="NSTitle">Item 2</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="337762266"/> + </object> + <object class="NSMenuItem" id="934434242"> + <reference key="NSMenu" ref="1009594217"/> + <string key="NSTitle">Item 3</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="337762266"/> + </object> + </object> + </object> + <bool key="NSPullDown">YES</bool> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSButton" id="885956448"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{251, 318}, {140, 19}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="192227848"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Automate Route...</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="885956448"/> + <int key="NSButtonFlags">-2035007233</int> + <int key="NSButtonFlags2">164</int> + <object class="NSCustomResource" key="NSNormalImage" id="1058724663"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">off</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSButton" id="353180602"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{370, 45}, {128, 18}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="56465224"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Scroll with Route</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="353180602"/> + <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags2">2</int> + <object class="NSCustomResource" key="NSNormalImage" id="426381024"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSSwitch</string> + </object> + <object class="NSButtonImageSource" key="NSAlternateImage" id="410626337"> + <string key="NSImageName">NSSwitch</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + <object class="NSButton" id="960124274"> + <reference key="NSNextResponder" ref="558011316"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{8, 22}, {188, 18}}</string> + <reference key="NSSuperview" ref="558011316"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="513071628"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Is this your starting route?</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="960124274"/> + <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags2">2</int> + <reference key="NSNormalImage" ref="426381024"/> + <reference key="NSAlternateImage" ref="410626337"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + </object> + <string key="NSFrame">{{10, 33}, {694, 345}}</string> + <reference key="NSSuperview" ref="923747786"/> + </object> + <string key="NSLabel">Waypoints</string> + <reference key="NSColor" ref="211653087"/> + <reference key="NSTabView" ref="923747786"/> + </object> + <object class="NSTabViewItem" id="779019420"> + <string key="NSIdentifier">1</string> + <object class="NSView" key="NSView" id="767841293"> + <nil key="NSNextResponder"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSBox" id="987100475"> + <reference key="NSNextResponder" ref="767841293"/> + <int key="NSvFlags">12</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="95506647"> + <reference key="NSNextResponder" ref="987100475"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSButton" id="1357202"> + <reference key="NSNextResponder" ref="95506647"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{16, 129}, {295, 18}}</string> + <reference key="NSSuperview" ref="95506647"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="628077397"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Always switch to your start route on death?</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="1357202"/> + <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags2">2</int> + <reference key="NSNormalImage" ref="426381024"/> + <reference key="NSAlternateImage" ref="410626337"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {680, 155}}</string> + <reference key="NSSuperview" ref="987100475"/> + </object> + </object> + <string key="NSFrame">{{6, 171}, {682, 171}}</string> + <reference key="NSSuperview" ref="767841293"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Events</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="977072340"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="95506647"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> + </object> + <string key="NSFrame">{{10, 33}, {694, 345}}</string> + </object> + <string key="NSLabel">Route Set Options</string> + <reference key="NSColor" ref="211653087"/> + <reference key="NSTabView" ref="923747786"/> + </object> + </object> + <reference key="NSSelectedTabViewItem" ref="781667355"/> + <reference key="NSFont" ref="805037073"/> + <int key="NSTvFlags">0</int> + <bool key="NSAllowTruncatedLabels">YES</bool> + <bool key="NSDrawsBackground">YES</bool> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="558011316"/> + </object> + </object> + </object> + <string key="NSFrameSize">{1010, 436}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + <object class="NSWindowTemplate" id="455500172"> + <int key="NSWindowStyleMask">31</int> + <int key="NSWindowBacking">2</int> + <string key="NSWindowRect">{{196, 254}, {517, 256}}</string> + <int key="NSWTFlags">1677721600</int> + <string key="NSWindowTitle">Visualize Route</string> + <string key="NSWindowClass">NSPanel</string> + <nil key="NSViewClass"/> + <string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string> + <string key="NSWindowContentMinSize">{517, 256}</string> + <object class="NSView" key="NSWindowView" id="788939595"> + <nil key="NSNextResponder"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomView" id="1047773265"> + <reference key="NSNextResponder" ref="788939595"/> + <int key="NSvFlags">274</int> + <string key="NSFrame">{{20, 45}, {477, 191}}</string> + <reference key="NSSuperview" ref="788939595"/> + <string key="NSClassName">RouteVisualizationView</string> + </object> + <object class="NSButton" id="988129236"> + <reference key="NSNextResponder" ref="788939595"/> + <int key="NSvFlags">289</int> + <string key="NSFrame">{{425, 18}, {72, 19}}</string> + <reference key="NSSuperview" ref="788939595"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="380228346"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Close</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="988129236"/> + <int key="NSButtonFlags">-2038152961</int> + <int key="NSButtonFlags2">164</int> + <string key="NSAlternateContents"/> + <string type="base64-UTF8" key="NSKeyEquivalent">Gw</string> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{517, 256}</string> + </object> + <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string> + <string key="NSMinSize">{517, 272}</string> + <string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string> + <string key="NSFrameAutosaveName">VisualizeRouteWindow</string> + </object> + <object class="NSMenu" id="541121933"> + <string key="NSTitle"/> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="414848340"> + <reference key="NSMenu" ref="541121933"/> + <string key="NSTitle">Testing Options</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="739761296"> + <reference key="NSMenu" ref="541121933"/> + <string key="NSTitle">Visualize Route</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSQuickLookTemplate</string> + </object> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="667431496"> + <reference key="NSMenu" ref="541121933"/> + <bool key="NSIsDisabled">YES</bool> + <bool key="NSIsSeparator">YES</bool> + <string key="NSTitle"/> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="407769754"> + <reference key="NSMenu" ref="541121933"/> + <string key="NSTitle">Move to Waypoint</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSFollowLinkFreestandingTemplate</string> + </object> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="256581412"> + <reference key="NSMenu" ref="541121933"/> + <string key="NSTitle">Closest Waypoint</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSSmartBadgeTemplate</string> + </object> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="315108837"> + <reference key="NSMenu" ref="541121933"/> + <string key="NSTitle">Test Whole Route</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSRefreshTemplate</string> + </object> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="207803960"> + <reference key="NSMenu" ref="541121933"/> + <string key="NSTitle">Cancel Movement</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage" id="686335992"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + </object> + </object> + <object class="NSUserDefaultsController" id="266087510"> + <bool key="NSSharedInstance">YES</bool> + </object> + <object class="NSWindowTemplate" id="10688672"> + <int key="NSWindowStyleMask">31</int> + <int key="NSWindowBacking">2</int> + <string key="NSWindowRect">{{196, 143}, {490, 367}}</string> + <int key="NSWTFlags">-469762048</int> + <string key="NSWindowTitle">Window</string> + <string key="NSWindowClass">NSPanel</string> + <nil key="NSViewClass"/> + <string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string> + <string key="NSWindowContentMinSize">{490, 366}</string> + <object class="NSView" key="NSWindowView" id="526776737"> + <nil key="NSNextResponder"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomView" id="300427653"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">274</int> + <string key="NSFrame">{{20, 129}, {450, 188}}</string> + <reference key="NSSuperview" ref="526776737"/> + <string key="NSClassName">RouteVisualizationView</string> + </object> + <object class="NSButton" id="745721094"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{20, 18}, {133, 19}}</string> + <reference key="NSSuperview" ref="526776737"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="970864815"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Start Recording</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="745721094"/> + <int key="NSButtonFlags">918307071</int> + <int key="NSButtonFlags2">164</int> + <reference key="NSNormalImage" ref="1058724663"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSBox" id="958702901"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">34</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="568236960"> + <reference key="NSNextResponder" ref="958702901"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="322132191"> + <reference key="NSNextResponder" ref="568236960"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{270, 39}, {158, 14}}</string> + <reference key="NSSuperview" ref="568236960"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="705502789"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272761856</int> + <string key="NSContents">Recording start/stop hotkey:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="322132191"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="NSSegmentedControl" id="122984369"> + <reference key="NSNextResponder" ref="568236960"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{91, 14}, {167, 20}}</string> + <reference key="NSSuperview" ref="568236960"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="897796808"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">131072</int> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="122984369"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">80</double> + <string key="NSSegmentItemLabel">Seconds</string> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">80</double> + <string key="NSSegmentItemLabel">Yards</string> + <int key="NSSegmentItemTag">1</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSTextField" id="429623613"> + <reference key="NSNextResponder" ref="568236960"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 39}, {139, 14}}</string> + <reference key="NSSuperview" ref="568236960"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="565194764"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272761856</int> + <string key="NSContents">Record a waypoint every:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="429623613"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="SRRecorderControl" id="1052721081"> + <reference key="NSNextResponder" ref="568236960"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{273, 14}, {163, 22}}</string> + <reference key="NSSuperview" ref="568236960"/> + <bool key="NSEnabled">YES</bool> + <object class="SRRecorderCell" key="NSCell" id="979825181"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="1052721081"/> + <nil key="autosaveName"/> + <integer value="-1" key="keyComboCode"/> + <integer value="1048576" key="keyComboFlags"/> + <integer value="10354688" key="allowedFlags"/> + <integer value="0" key="requiredFlags"/> + <boolean value="NO" key="allowsKeyOnly"/> + <boolean value="NO" key="escapeKeysRecord"/> + <boolean value="NO" key="isAnimating"/> + <integer value="0" key="style"/> + </object> + </object> + <object class="NSTextField" id="596162160"> + <reference key="NSNextResponder" ref="568236960"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{18, 14}, {67, 19}}</string> + <reference key="NSSuperview" ref="568236960"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="414569438"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">-2008939520</int> + <string key="NSContents">0.5</string> + <reference key="NSSupport" ref="26"/> + <object class="NSNumberFormatter" key="NSFormatter" id="484648012"> + <object class="NSMutableDictionary" key="NS.attributes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>allowsFloats</string> + <string>formatterBehavior</string> + <string>locale</string> + <string>maximum</string> + <string>minimum</string> + <string>negativeFormat</string> + <string>numberStyle</string> + <string>positiveFormat</string> + <string>usesGroupingSeparator</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + <integer value="1040"/> + <object class="NSLocale"> + <string key="NS.identifier"/> + </object> + <real value="100"/> + <real value="0.10000000000000001"/> + <string/> + <integer value="1"/> + <string>#0.##</string> + <integer value="0"/> + </object> + </object> + <string key="NS.positiveformat">#0.##</string> + <string key="NS.negativeformat"/> + <nil key="NS.positiveattrs"/> + <nil key="NS.negativeattrs"/> + <nil key="NS.zero"/> + <nil key="NS.nil"/> + <object class="NSAttributedString" key="NS.nan"> + <string key="NSString">NaN</string> + <object class="NSDictionary" key="NSAttributes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + </object> + <real value="0.10000000000000001" key="NS.min"/> + <real value="100" key="NS.max"/> + <object class="NSDecimalNumberHandler" key="NS.rounding"> + <int key="NS.roundingmode">3</int> + <bool key="NS.raise.overflow">YES</bool> + <bool key="NS.raise.underflow">YES</bool> + <bool key="NS.raise.dividebyzero">YES</bool> + </object> + <string key="NS.decimal">.</string> + <string key="NS.thousand">,</string> + <bool key="NS.hasthousands">NO</bool> + <bool key="NS.localized">NO</bool> + <bool key="NS.allowsfloats">YES</bool> + </object> + <reference key="NSControlView" ref="596162160"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <reference key="NSBackgroundColor" ref="977072340"/> + <object class="NSColor" key="NSTextColor" id="195045064"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textColor</string> + <reference key="NSColor" ref="613016896"/> + </object> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {454, 63}}</string> + <reference key="NSSuperview" ref="958702901"/> + </object> + </object> + <string key="NSFrame">{{17, 43}, {456, 79}}</string> + <reference key="NSSuperview" ref="526776737"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Settings</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="977072340"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="568236960"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> + <object class="NSButton" id="471165739"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">289</int> + <string key="NSFrame">{{390, 18}, {80, 19}}</string> + <reference key="NSSuperview" ref="526776737"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="415989422"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Close</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="471165739"/> + <int key="NSButtonFlags">-2038152961</int> + <int key="NSButtonFlags2">164</int> + <string key="NSAlternateContents"/> + <string type="base64-UTF8" key="NSKeyEquivalent">Gw</string> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSProgressIndicator" id="1010237575"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">-2147482332</int> + <object class="NSPSMatrix" key="NSDrawMatrix"/> + <string key="NSFrame">{{161, 20}, {16, 16}}</string> + <reference key="NSSuperview" ref="526776737"/> + <int key="NSpiFlags">20746</int> + <double key="NSMinValue">16</double> + <double key="NSMaxValue">100</double> + </object> + <object class="NSTextField" id="533176306"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">266</int> + <string key="NSFrame">{{17, 325}, {420, 22}}</string> + <reference key="NSSuperview" ref="526776737"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="818751599"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">138413056</int> + <string key="NSContents">route name</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">18</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="533176306"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="NSButton" id="359292937"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">292</int> + <string key="NSFrame">{{182, 19}, {182, 18}}</string> + <reference key="NSSuperview" ref="526776737"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="158537701"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">131072</int> + <string key="NSContents">Disable Growl Notifications</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="359292937"/> + <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags2">130</int> + <reference key="NSNormalImage" ref="426381024"/> + <reference key="NSAlternateImage" ref="410626337"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + <object class="NSButton" id="991531579"> + <reference key="NSNextResponder" ref="526776737"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{442, 323}, {28, 17}}</string> + <reference key="NSSuperview" ref="526776737"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="87966693"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134348800</int> + <string key="NSContents">Reset All Waypoints</string> + <reference key="NSSupport" ref="198283917"/> + <reference key="NSControlView" ref="991531579"/> + <int key="NSButtonFlags">115622143</int> + <int key="NSButtonFlags2">173</int> + <reference key="NSNormalImage" ref="686335992"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{490, 367}</string> + </object> + <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string> + <string key="NSMinSize">{490, 382}</string> + <string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string> + <string key="NSFrameAutosaveName">AutomateRouteWindow</string> + </object> + <object class="NSArrayController" id="866342152"> + <object class="NSMutableArray" key="NSDeclaredKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>name</string> + <string>@count</string> + </object> + <bool key="NSEditable">YES</bool> + <object class="_NSManagedProxy" key="_NSManagedProxy"/> + <bool key="NSAvoidsEmptySelection">YES</bool> + <bool key="NSPreservesSelection">YES</bool> + <bool key="NSSelectsInsertedObjects">YES</bool> + <bool key="NSFilterRestrictsInsertion">YES</bool> + <bool key="NSClearsFilterPredicateOnInsertion">YES</bool> + </object> + <object class="NSMenu" id="138319958"> + <string key="NSTitle">Waypoint Menu</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="375741679"> + <reference key="NSMenu" ref="138319958"/> + <string key="NSTitle">Set Description</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + </object> + </object> + <object class="NSWindowTemplate" id="20188856"> + <int key="NSWindowStyleMask">23</int> + <int key="NSWindowBacking">2</int> + <string key="NSWindowRect">{{196, 448}, {496, 62}}</string> + <int key="NSWTFlags">-1543503872</int> + <string key="NSWindowTitle">Description</string> + <string key="NSWindowClass">NSPanel</string> + <nil key="NSViewClass"/> + <string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string> + <object class="NSView" key="NSWindowView" id="722769512"> + <nil key="NSNextResponder"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="37823149"> + <reference key="NSNextResponder" ref="722769512"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{17, 25}, {81, 17}}</string> + <reference key="NSSuperview" ref="722769512"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="294717348"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71304192</int> + <string key="NSContents">Description:</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="37823149"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="NSTextField" id="921425223"> + <reference key="NSNextResponder" ref="722769512"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{103, 20}, {281, 22}}</string> + <reference key="NSSuperview" ref="722769512"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="447088786"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="921425223"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <reference key="NSBackgroundColor" ref="977072340"/> + <reference key="NSTextColor" ref="195045064"/> + </object> + </object> + <object class="NSButton" id="868988178"> + <reference key="NSNextResponder" ref="722769512"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{386, 14}, {96, 32}}</string> + <reference key="NSSuperview" ref="722769512"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="1040059930"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Done</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="868988178"/> + <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string type="base64-UTF8" key="NSKeyEquivalent">DQ</string> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + </object> + <string key="NSFrameSize">{496, 62}</string> + </object> + <string key="NSScreenRect">{{0, 0}, {1680, 1028}}</string> + <string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string> + </object> + <object class="NSWindowTemplate" id="201197998"> + <int key="NSWindowStyleMask">19</int> + <int key="NSWindowBacking">2</int> + <string key="NSWindowRect">{{230, 239}, {384, 302}}</string> + <int key="NSWTFlags">-1535639552</int> + <string key="NSWindowTitle">Route Help</string> + <string key="NSWindowClass">NSPanel</string> + <nil key="NSViewClass"/> + <string key="NSWindowContentMaxSize">{1.79769e+308, 1.79769e+308}</string> + <object class="NSView" key="NSWindowView" id="449533810"> + <nil key="NSNextResponder"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSImageView" id="514850702"> + <reference key="NSNextResponder" ref="449533810"/> + <int key="NSvFlags">12</int> + <object class="NSMutableSet" key="NSDragTypes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="set.sortedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Apple PDF pasteboard type</string> + <string>Apple PICT pasteboard type</string> + <string>Apple PNG pasteboard type</string> + <string>NSFilenamesPboardType</string> + <string>NeXT Encapsulated PostScript v1.2 pasteboard type</string> + <string>NeXT TIFF v4.0 pasteboard type</string> + </object> + </object> + <string key="NSFrame">{{0, 209}, {80, 93}}</string> + <reference key="NSSuperview" ref="449533810"/> + <bool key="NSEnabled">YES</bool> + <object class="NSImageCell" key="NSCell" id="145982091"> + <int key="NSCellFlags">130560</int> + <int key="NSCellFlags2">33554432</int> + <object class="NSCustomResource" key="NSContents"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSApplicationIcon</string> + </object> + <int key="NSAlign">0</int> + <int key="NSScale">3</int> + <int key="NSStyle">0</int> + <bool key="NSAnimates">NO</bool> + </object> + <bool key="NSEditable">YES</bool> + </object> + <object class="NSTextField" id="381130318"> + <reference key="NSNextResponder" ref="449533810"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{94, 219}, {273, 51}}</string> + <reference key="NSSuperview" ref="449533810"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="294091767"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">272629760</int> + <string type="base64-UTF8" key="NSContents">V2VsY29tZSB0byB0aGUgbmV3IHJvdXRlIHN5c3RlbSEgIAoKA</string> + <reference key="NSSupport" ref="413719806"/> + <reference key="NSControlView" ref="381130318"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="NSTextField" id="315489831"> + <reference key="NSNextResponder" ref="449533810"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{17, 48}, {350, 153}}</string> + <reference key="NSSuperview" ref="449533810"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="810977998"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">272629760</int> + <string type="base64-UTF8" key="NSContents">WW91ciByb3V0ZXMgaGF2ZSBhdXRvbWF0aWNhbGx5IGJlZW4gY29udmVydGVkIGludG8gcm91dGUgc2V0 +cyEgV2hhdCBkb2VzIHRoaXMgbWVhbj8gIE5vdyB5b3UgYXJlIGFibGUgdG8gZ3JvdXAgbXVsdGlwbGUg +cm91dGVzIHRvZ2V0aGVyIGludG8gb25lIHNldCEgVGhpcyB3aWxsIG1ha2UgY3JlYXRpbmcgbW9yZSBk +eW5hbWljIHJvdXRlcyBhIGJyZWV6ZS4gIEVuam95IQoKQ2xpY2sgb24gdGhlIGFycm93cyB0byB0aGUg +bGVmdCBhbmQgeW91IGNhbiBzdGFydCBtb3ZpbmcgeW91ciByb3V0ZXMgYXJvdW5kIQoKQW5kIGRvbid0 +IGZvcmdldCB0byBjaG9vc2UgeW91ciBzdGFydCByb3V0ZSA6LSk</string> + <reference key="NSSupport" ref="413719806"/> + <reference key="NSControlView" ref="315489831"/> + <reference key="NSBackgroundColor" ref="211653087"/> + <reference key="NSTextColor" ref="523328271"/> + </object> + </object> + <object class="NSButton" id="203860979"> + <reference key="NSNextResponder" ref="449533810"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{266, 12}, {104, 32}}</string> + <reference key="NSSuperview" ref="449533810"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="195064179"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Woohooo!</string> + <reference key="NSSupport" ref="805037073"/> + <reference key="NSControlView" ref="203860979"/> + <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string type="base64-UTF8" key="NSKeyEquivalent">DQ</string> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + </object> + <string key="NSFrameSize">{384, 302}</string> + </object> + <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string> + <string key="NSMaxSize">{1.79769e+308, 1.79769e+308}</string> + </object> + <object class="NSMenu" id="332827347"> + <string key="NSTitle"/> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="486983983"> + <reference key="NSMenu" ref="332827347"/> + <string key="NSTitle">Rename</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="563997840"> + <reference key="NSMenu" ref="332827347"/> + <string key="NSTitle">Duplicate</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="586714932"> + <reference key="NSMenu" ref="332827347"/> + <bool key="NSIsDisabled">YES</bool> + <bool key="NSIsSeparator">YES</bool> + <string key="NSTitle"/> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="674268551"> + <reference key="NSMenu" ref="332827347"/> + <string key="NSTitle">Delete</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="935342052"> + <reference key="NSMenu" ref="332827347"/> + <bool key="NSIsDisabled">YES</bool> + <bool key="NSIsSeparator">YES</bool> + <string key="NSTitle"/> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="936285379"> + <reference key="NSMenu" ref="332827347"/> + <string key="NSTitle">Import</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="133973529"> + <reference key="NSMenu" ref="332827347"/> + <string key="NSTitle">Export</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="251261646"> + <reference key="NSMenu" ref="332827347"/> + <bool key="NSIsDisabled">YES</bool> + <bool key="NSIsSeparator">YES</bool> + <string key="NSTitle"/> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + <object class="NSMenuItem" id="886363359"> + <reference key="NSMenu" ref="332827347"/> + <string key="NSTitle">Show in Finder</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="193427801"/> + <reference key="NSMixedImage" ref="221656227"/> + </object> + </object> + <bool key="NSNoAutoenable">YES</bool> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">36</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">visualizePanel</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="455500172"/> + </object> + <int key="connectionID">116</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">visualizeView</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1047773265"/> + </object> + <int key="connectionID">117</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">closeVisualize:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="988129236"/> + </object> + <int key="connectionID">121</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">setRouteType:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="118844016"/> + </object> + <int key="connectionID">190</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">addWaypoint:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1069413935"/> + </object> + <int key="connectionID">196</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">removeWaypoint:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="867652295"/> + </object> + <int key="connectionID">197</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">waypointTable</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="745831791"/> + </object> + <int key="connectionID">198</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">routeTypeSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="118844016"/> + </object> + <int key="connectionID">199</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">dataSource</string> + <reference key="source" ref="745831791"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">200</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="745831791"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">201</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validSelection</string> + <reference key="source" ref="867652295"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="867652295"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validSelection</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validSelection</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">206</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: playerData.playerIsValid</string> + <reference key="source" ref="1069413935"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="203191857"> + <reference key="NSSource" ref="1069413935"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: playerData.playerIsValid</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">playerData.playerIsValid</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">208</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled2: currentRoute</string> + <reference key="source" ref="1069413935"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="1069413935"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled2: currentRoute</string> + <string key="NSBinding">enabled2</string> + <string key="NSKeyPath">currentRoute</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSValueTransformerName</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <string>NSIsNotNil</string> + </object> + </object> + <reference key="NSPreviousConnector" ref="203191857"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">222</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validWaypointCount</string> + <reference key="source" ref="315108837"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="557527744"> + <reference key="NSSource" ref="315108837"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validWaypointCount</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validWaypointCount</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">269</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">testWaypointSequence:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="315108837"/> + </object> + <int key="connectionID">270</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: movementController.isMoving</string> + <reference key="source" ref="207803960"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="207803960"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: movementController.isMoving</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">movementController.isMoving</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">271</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">stopMovement:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="207803960"/> + </object> + <int key="connectionID">272</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validSelection</string> + <reference key="source" ref="407769754"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="948890687"> + <reference key="NSSource" ref="407769754"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validSelection</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validSelection</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">274</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled2: playerData.playerIsValid</string> + <reference key="source" ref="407769754"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="407769754"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled2: playerData.playerIsValid</string> + <string key="NSBinding">enabled2</string> + <string key="NSKeyPath">playerData.playerIsValid</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="-1"/> + <integer value="-1"/> + <integer value="-1"/> + <integer value="-1"/> + </object> + </object> + <reference key="NSPreviousConnector" ref="948890687"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">275</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled2: playerData.playerIsValid</string> + <reference key="source" ref="315108837"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="315108837"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled2: playerData.playerIsValid</string> + <string key="NSBinding">enabled2</string> + <string key="NSKeyPath">playerData.playerIsValid</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="-1"/> + <integer value="-1"/> + <integer value="-1"/> + <integer value="-1"/> + </object> + </object> + <reference key="NSPreviousConnector" ref="557527744"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">276</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">moveToWaypoint:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="407769754"/> + </object> + <int key="connectionID">277</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">visualize:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="739761296"/> + </object> + <int key="connectionID">278</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">testingMenu</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="541121933"/> + </object> + <int key="connectionID">280</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="1022332372"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">287</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">shortcutRecorder</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1022332372"/> + </object> + <int key="connectionID">288</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="228477557"/> + </object> + <int key="connectionID">399</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="949598908"/> + </object> + <int key="connectionID">400</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: playerData.playerIsValid</string> + <reference key="source" ref="885956448"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="127273502"> + <reference key="NSSource" ref="885956448"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: playerData.playerIsValid</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">playerData.playerIsValid</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">419</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled2: currentRoute</string> + <reference key="source" ref="885956448"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="885956448"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled2: currentRoute</string> + <string key="NSBinding">enabled2</string> + <string key="NSKeyPath">currentRoute</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSValueTransformerName</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <string>NSIsNotNil</string> + </object> + </object> + <reference key="NSPreviousConnector" ref="127273502"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">423</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">automatorRecorder</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1052721081"/> + </object> + <int key="connectionID">463</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="1052721081"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">464</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">openAutomatorPanel:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="885956448"/> + </object> + <int key="connectionID">466</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: isAutomatorRunning</string> + <reference key="source" ref="596162160"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="596162160"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: isAutomatorRunning</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">isAutomatorRunning</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSNegateBoolean</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">468</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: isAutomatorRunning</string> + <reference key="source" ref="122984369"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="122984369"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: isAutomatorRunning</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">isAutomatorRunning</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSNegateBoolean</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">470</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: isAutomatorRunning</string> + <reference key="source" ref="1052721081"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="1052721081"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: isAutomatorRunning</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">isAutomatorRunning</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSNegateBoolean</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">472</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">automatorPanel</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="10688672"/> + </object> + <int key="connectionID">482</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">selectedTag: values.RouteAutomatorIntervalTypeTag</string> + <reference key="source" ref="122984369"/> + <reference key="destination" ref="266087510"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="122984369"/> + <reference key="NSDestination" ref="266087510"/> + <string key="NSLabel">selectedTag: values.RouteAutomatorIntervalTypeTag</string> + <string key="NSBinding">selectedTag</string> + <string key="NSKeyPath">values.RouteAutomatorIntervalTypeTag</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">488</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">automatorVizualizer</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="300427653"/> + </object> + <int key="connectionID">490</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">automatorStartStopButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="745721094"/> + </object> + <int key="connectionID">491</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">closeAutomatorPanel:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="471165739"/> + </object> + <int key="connectionID">492</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">automatorSpinner</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1010237575"/> + </object> + <int key="connectionID">494</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">startStopAutomator:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="745721094"/> + </object> + <int key="connectionID">496</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">displayPatternValue1: currentRouteSet.name</string> + <reference key="source" ref="533176306"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="533176306"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">displayPatternValue1: currentRouteSet.name</string> + <string key="NSBinding">displayPatternValue1</string> + <string key="NSKeyPath">currentRouteSet.name</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSDisplayPattern</string> + <string key="NS.object.0">%{value1}@</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">510</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">automatorIntervalValue</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="596162160"/> + </object> + <int key="connectionID">511</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: values.RouteAutomatorIntervalValue</string> + <reference key="source" ref="596162160"/> + <reference key="destination" ref="266087510"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="596162160"/> + <reference key="NSDestination" ref="266087510"/> + <string key="NSLabel">value: values.RouteAutomatorIntervalValue</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">values.RouteAutomatorIntervalValue</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSValidatesImmediately</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <real value="0.5"/> + <real value="0.5"/> + <real value="0.5"/> + <real value="0.5"/> + <integer value="1"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">512</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">hidden: isAutomatorRunning</string> + <reference key="source" ref="1010237575"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="1010237575"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">hidden: isAutomatorRunning</string> + <string key="NSBinding">hidden</string> + <string key="NSKeyPath">isAutomatorRunning</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSNegateBoolean</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">516</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">hidden: values.GlobalSendGrowlNotifications</string> + <reference key="source" ref="359292937"/> + <reference key="destination" ref="266087510"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="359292937"/> + <reference key="NSDestination" ref="266087510"/> + <string key="NSLabel">hidden: values.GlobalSendGrowlNotifications</string> + <string key="NSBinding">hidden</string> + <string key="NSKeyPath">values.GlobalSendGrowlNotifications</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSNegateBoolean</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">531</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: disableGrowl</string> + <reference key="source" ref="359292937"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="359292937"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: disableGrowl</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">disableGrowl</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">532</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">resetAllWaypoints:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="991531579"/> + </object> + <int key="connectionID">535</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">contentArray: routes</string> + <reference key="source" ref="866342152"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="866342152"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">contentArray: routes</string> + <string key="NSBinding">contentArray</string> + <string key="NSKeyPath">routes</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">559</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1052452777"/> + </object> + <int key="connectionID">599</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="938224170"/> + </object> + <int key="connectionID">600</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="514266057"/> + </object> + <int key="connectionID">601</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="568245903"/> + </object> + <int key="connectionID">602</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">menu</string> + <reference key="source" ref="199917810"/> + <reference key="destination" ref="541121933"/> + </object> + <int key="connectionID">603</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validWaypointCount</string> + <reference key="source" ref="256581412"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="449973655"> + <reference key="NSSource" ref="256581412"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validWaypointCount</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validWaypointCount</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">607</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled2: playerData.playerIsValid</string> + <reference key="source" ref="256581412"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="256581412"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled2: playerData.playerIsValid</string> + <string key="NSBinding">enabled2</string> + <string key="NSKeyPath">playerData.playerIsValid</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="-1"/> + <integer value="-1"/> + <integer value="-1"/> + <integer value="-1"/> + </object> + </object> + <reference key="NSPreviousConnector" ref="449973655"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">609</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">closestWaypoint:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="256581412"/> + </object> + <int key="connectionID">610</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="409192402"/> + </object> + <int key="connectionID">616</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">waypointMenuAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="375741679"/> + </object> + <int key="connectionID">629</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">menu</string> + <reference key="source" ref="745831791"/> + <reference key="destination" ref="138319958"/> + </object> + <int key="connectionID">630</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">descriptionPanel</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="20188856"/> + </object> + <int key="connectionID">660</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">closeDescription:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="868988178"/> + </object> + <int key="connectionID">661</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: descriptionMultiRows</string> + <reference key="source" ref="921425223"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="921425223"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: descriptionMultiRows</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">descriptionMultiRows</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">666</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="406928804"/> + </object> + <int key="connectionID">833</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="912383780"/> + </object> + <int key="connectionID">835</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="530066763"/> + </object> + <int key="connectionID">837</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="667903711"/> + </object> + <int key="connectionID">839</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="304584884"/> + </object> + <int key="connectionID">841</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="932203169"/> + </object> + <int key="connectionID">843</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="963782176"/> + </object> + <int key="connectionID">845</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="37809107"/> + </object> + <int key="connectionID">851</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">scrollWithRoute</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="353180602"/> + </object> + <int key="connectionID">854</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: values.RouteScroll</string> + <reference key="source" ref="353180602"/> + <reference key="destination" ref="266087510"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="353180602"/> + <reference key="NSDestination" ref="266087510"/> + <string key="NSLabel">value: values.RouteScroll</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">values.RouteScroll</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">865</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">waypointSectionTitle</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="953244587"/> + </object> + <int key="connectionID">914</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="923747786"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">915</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="686181531"/> + </object> + <int key="connectionID">917</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">routesTable</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="686572762"/> + </object> + <int key="connectionID">944</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="686572762"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">945</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">dataSource</string> + <reference key="source" ref="686572762"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">946</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validRouteSelection</string> + <reference key="source" ref="218980861"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="218980861"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validRouteSelection</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validRouteSelection</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">957</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">addRouteSet:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="49083088"/> + </object> + <int key="connectionID">960</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">addRouteCollection:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="64949649"/> + </object> + <int key="connectionID">964</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">helpPanel</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="201197998"/> + </object> + <int key="connectionID">967</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">closeHelpPanel:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="203860979"/> + </object> + <int key="connectionID">977</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">startingRouteButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="960124274"/> + </object> + <int key="connectionID">985</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">startingRouteClicked:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="960124274"/> + </object> + <int key="connectionID">986</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">waypointTabView</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="923747786"/> + </object> + <int key="connectionID">990</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validRouteCollectionSelected</string> + <reference key="source" ref="1357202"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="1357202"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validRouteCollectionSelected</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validRouteCollectionSelected</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">996</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: validRouteSetSelected</string> + <reference key="source" ref="960124274"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="960124274"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: validRouteSetSelected</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">validRouteSetSelected</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">999</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: currentRouteCollection.startRouteOnDeath</string> + <reference key="source" ref="1357202"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="1357202"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: currentRouteCollection.startRouteOnDeath</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">currentRouteCollection.startRouteOnDeath</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">1001</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">renameRoute:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="486983983"/> + </object> + <int key="connectionID">1016</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">exportRoute:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="133973529"/> + </object> + <int key="connectionID">1017</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">importRoute:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="936285379"/> + </object> + <int key="connectionID">1018</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">duplicateRoute:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="563997840"/> + </object> + <int key="connectionID">1020</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">showInFinder:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="886363359"/> + </object> + <int key="connectionID">1021</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">menu</string> + <reference key="source" ref="686572762"/> + <reference key="destination" ref="332827347"/> + </object> + <int key="connectionID">1026</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">deleteRouteMenu:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="674268551"/> + </object> + <int key="connectionID">1028</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">deleteRouteButton:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="218980861"/> + </object> + <int key="connectionID">1029</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">importRoute:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="901248527"/> + </object> + <int key="connectionID">1040</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">editWaypointAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="260590126"/> + </object> + <int key="connectionID">1045</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="116444210"/> + <reference ref="65453686"/> + <reference ref="923747786"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">113</int> + <reference key="object" ref="455500172"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="788939595"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">VisualizePanel</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">114</int> + <reference key="object" ref="788939595"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1047773265"/> + <reference ref="988129236"/> + </object> + <reference key="parent" ref="455500172"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">115</int> + <reference key="object" ref="1047773265"/> + <reference key="parent" ref="788939595"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">119</int> + <reference key="object" ref="988129236"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="380228346"/> + </object> + <reference key="parent" ref="788939595"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">120</int> + <reference key="object" ref="380228346"/> + <reference key="parent" ref="988129236"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">263</int> + <reference key="object" ref="541121933"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="739761296"/> + <reference ref="315108837"/> + <reference ref="207803960"/> + <reference ref="667431496"/> + <reference ref="407769754"/> + <reference ref="414848340"/> + <reference ref="256581412"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Testing Menu</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">264</int> + <reference key="object" ref="739761296"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">265</int> + <reference key="object" ref="315108837"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">266</int> + <reference key="object" ref="207803960"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">267</int> + <reference key="object" ref="407769754"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">268</int> + <reference key="object" ref="667431496"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">304</int> + <reference key="object" ref="414848340"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">410</int> + <reference key="object" ref="266087510"/> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">436</int> + <reference key="object" ref="10688672"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="526776737"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Automator</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">437</int> + <reference key="object" ref="526776737"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="533176306"/> + <reference ref="300427653"/> + <reference ref="745721094"/> + <reference ref="958702901"/> + <reference ref="1010237575"/> + <reference ref="471165739"/> + <reference ref="359292937"/> + <reference ref="991531579"/> + </object> + <reference key="parent" ref="10688672"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">438</int> + <reference key="object" ref="300427653"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">455</int> + <reference key="object" ref="745721094"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="970864815"/> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">456</int> + <reference key="object" ref="970864815"/> + <reference key="parent" ref="745721094"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">459</int> + <reference key="object" ref="958702901"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="596162160"/> + <reference ref="1052721081"/> + <reference ref="429623613"/> + <reference ref="122984369"/> + <reference ref="322132191"/> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">441</int> + <reference key="object" ref="596162160"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="414569438"/> + </object> + <reference key="parent" ref="958702901"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">442</int> + <reference key="object" ref="414569438"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="484648012"/> + </object> + <reference key="parent" ref="596162160"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">448</int> + <reference key="object" ref="484648012"/> + <reference key="parent" ref="414569438"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">453</int> + <reference key="object" ref="1052721081"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="979825181"/> + </object> + <reference key="parent" ref="958702901"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">458</int> + <reference key="object" ref="979825181"/> + <reference key="parent" ref="1052721081"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">443</int> + <reference key="object" ref="429623613"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="565194764"/> + </object> + <reference key="parent" ref="958702901"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">444</int> + <reference key="object" ref="565194764"/> + <reference key="parent" ref="429623613"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">439</int> + <reference key="object" ref="122984369"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="897796808"/> + </object> + <reference key="parent" ref="958702901"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">440</int> + <reference key="object" ref="897796808"/> + <reference key="parent" ref="122984369"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">454</int> + <reference key="object" ref="322132191"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="705502789"/> + </object> + <reference key="parent" ref="958702901"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">457</int> + <reference key="object" ref="705502789"/> + <reference key="parent" ref="322132191"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">460</int> + <reference key="object" ref="471165739"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="415989422"/> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">461</int> + <reference key="object" ref="415989422"/> + <reference key="parent" ref="471165739"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">462</int> + <reference key="object" ref="1010237575"/> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">503</int> + <reference key="object" ref="533176306"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="818751599"/> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">504</int> + <reference key="object" ref="818751599"/> + <reference key="parent" ref="533176306"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">528</int> + <reference key="object" ref="359292937"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="158537701"/> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">529</int> + <reference key="object" ref="158537701"/> + <reference key="parent" ref="359292937"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">533</int> + <reference key="object" ref="991531579"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="87966693"/> + </object> + <reference key="parent" ref="526776737"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">534</int> + <reference key="object" ref="87966693"/> + <reference key="parent" ref="991531579"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">558</int> + <reference key="object" ref="866342152"/> + <reference key="parent" ref="0"/> + <string key="objectName">Routes Array</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">604</int> + <reference key="object" ref="256581412"/> + <reference key="parent" ref="541121933"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">625</int> + <reference key="object" ref="138319958"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="375741679"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Waypoint Menu</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">626</int> + <reference key="object" ref="375741679"/> + <reference key="parent" ref="138319958"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">650</int> + <reference key="object" ref="20188856"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="722769512"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Description Sheet</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">651</int> + <reference key="object" ref="722769512"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="37823149"/> + <reference ref="921425223"/> + <reference ref="868988178"/> + </object> + <reference key="parent" ref="20188856"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">652</int> + <reference key="object" ref="37823149"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="294717348"/> + </object> + <reference key="parent" ref="722769512"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">653</int> + <reference key="object" ref="921425223"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="447088786"/> + </object> + <reference key="parent" ref="722769512"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">654</int> + <reference key="object" ref="868988178"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1040059930"/> + </object> + <reference key="parent" ref="722769512"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">655</int> + <reference key="object" ref="1040059930"/> + <reference key="parent" ref="868988178"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">656</int> + <reference key="object" ref="447088786"/> + <reference key="parent" ref="921425223"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">657</int> + <reference key="object" ref="294717348"/> + <reference key="parent" ref="37823149"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">874</int> + <reference key="object" ref="923747786"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="781667355"/> + <reference ref="779019420"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">875</int> + <reference key="object" ref="781667355"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="558011316"/> + </object> + <reference key="parent" ref="923747786"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">876</int> + <reference key="object" ref="779019420"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="767841293"/> + </object> + <reference key="parent" ref="923747786"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">877</int> + <reference key="object" ref="767841293"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="987100475"/> + </object> + <reference key="parent" ref="779019420"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">878</int> + <reference key="object" ref="558011316"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="885956448"/> + <reference ref="199917810"/> + <reference ref="919554175"/> + <reference ref="118844016"/> + <reference ref="867652295"/> + <reference ref="1069413935"/> + <reference ref="1022332372"/> + <reference ref="230136325"/> + <reference ref="353180602"/> + <reference ref="960124274"/> + </object> + <reference key="parent" ref="781667355"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">152</int> + <reference key="object" ref="118844016"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="753927715"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">174</int> + <reference key="object" ref="753927715"/> + <reference key="parent" ref="118844016"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">154</int> + <reference key="object" ref="867652295"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="185420440"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">172</int> + <reference key="object" ref="185420440"/> + <reference key="parent" ref="867652295"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">156</int> + <reference key="object" ref="919554175"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="373829918"/> + <reference ref="745831791"/> + <reference ref="1017712693"/> + <reference ref="818423228"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">164</int> + <reference key="object" ref="373829918"/> + <reference key="parent" ref="919554175"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">163</int> + <reference key="object" ref="745831791"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="709618286"/> + <reference ref="645013549"/> + <reference ref="3462852"/> + <reference ref="199153278"/> + <reference ref="33506536"/> + </object> + <reference key="parent" ref="919554175"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">162</int> + <reference key="object" ref="1017712693"/> + <reference key="parent" ref="919554175"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">161</int> + <reference key="object" ref="818423228"/> + <reference key="parent" ref="919554175"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">623</int> + <reference key="object" ref="709618286"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="145253772"/> + </object> + <reference key="parent" ref="745831791"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">325</int> + <reference key="object" ref="645013549"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="169241537"/> + </object> + <reference key="parent" ref="745831791"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">167</int> + <reference key="object" ref="3462852"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="555448148"/> + </object> + <reference key="parent" ref="745831791"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">166</int> + <reference key="object" ref="199153278"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="283689648"/> + </object> + <reference key="parent" ref="745831791"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">165</int> + <reference key="object" ref="33506536"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1026674769"/> + </object> + <reference key="parent" ref="745831791"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">170</int> + <reference key="object" ref="1026674769"/> + <reference key="parent" ref="33506536"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">169</int> + <reference key="object" ref="283689648"/> + <reference key="parent" ref="199153278"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">168</int> + <reference key="object" ref="555448148"/> + <reference key="parent" ref="3462852"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">328</int> + <reference key="object" ref="169241537"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="149671214"/> + </object> + <reference key="parent" ref="645013549"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">329</int> + <reference key="object" ref="149671214"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="37809107"/> + <reference ref="963782176"/> + <reference ref="932203169"/> + <reference ref="304584884"/> + <reference ref="667903711"/> + <reference ref="530066763"/> + <reference ref="912383780"/> + <reference ref="406928804"/> + <reference ref="409192402"/> + <reference ref="514266057"/> + <reference ref="568245903"/> + <reference ref="938224170"/> + <reference ref="1052452777"/> + <reference ref="949598908"/> + <reference ref="228477557"/> + <reference ref="686181531"/> + <reference ref="260590126"/> + </object> + <reference key="parent" ref="169241537"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">850</int> + <reference key="object" ref="37809107"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">844</int> + <reference key="object" ref="963782176"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">842</int> + <reference key="object" ref="932203169"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">840</int> + <reference key="object" ref="304584884"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">838</int> + <reference key="object" ref="667903711"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">836</int> + <reference key="object" ref="530066763"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">834</int> + <reference key="object" ref="912383780"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">832</int> + <reference key="object" ref="406928804"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">615</int> + <reference key="object" ref="409192402"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">589</int> + <reference key="object" ref="514266057"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">588</int> + <reference key="object" ref="568245903"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">587</int> + <reference key="object" ref="938224170"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">586</int> + <reference key="object" ref="1052452777"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">331</int> + <reference key="object" ref="949598908"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">330</int> + <reference key="object" ref="228477557"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">633</int> + <reference key="object" ref="145253772"/> + <reference key="parent" ref="709618286"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">157</int> + <reference key="object" ref="1069413935"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1049112265"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">160</int> + <reference key="object" ref="1049112265"/> + <reference key="parent" ref="1069413935"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">284</int> + <reference key="object" ref="1022332372"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="858315872"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">289</int> + <reference key="object" ref="858315872"/> + <reference key="parent" ref="1022332372"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">285</int> + <reference key="object" ref="230136325"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="26365240"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">286</int> + <reference key="object" ref="26365240"/> + <reference key="parent" ref="230136325"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">298</int> + <reference key="object" ref="199917810"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="337762266"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">299</int> + <reference key="object" ref="337762266"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1009594217"/> + </object> + <reference key="parent" ref="199917810"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">300</int> + <reference key="object" ref="1009594217"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="934434242"/> + <reference ref="977914209"/> + <reference ref="1073670871"/> + </object> + <reference key="parent" ref="337762266"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">303</int> + <reference key="object" ref="934434242"/> + <reference key="parent" ref="1009594217"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">302</int> + <reference key="object" ref="977914209"/> + <reference key="parent" ref="1009594217"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">301</int> + <reference key="object" ref="1073670871"/> + <reference key="parent" ref="1009594217"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">407</int> + <reference key="object" ref="885956448"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="192227848"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">408</int> + <reference key="object" ref="192227848"/> + <reference key="parent" ref="885956448"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">852</int> + <reference key="object" ref="353180602"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="56465224"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">853</int> + <reference key="object" ref="56465224"/> + <reference key="parent" ref="353180602"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">916</int> + <reference key="object" ref="686181531"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">930</int> + <reference key="object" ref="65453686"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="388122010"/> + <reference ref="64949649"/> + <reference ref="49083088"/> + <reference ref="901248527"/> + <reference ref="218980861"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">935</int> + <reference key="object" ref="388122010"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="836454471"/> + <reference ref="686572762"/> + <reference ref="296128296"/> + <reference ref="624443309"/> + </object> + <reference key="parent" ref="65453686"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">939</int> + <reference key="object" ref="836454471"/> + <reference key="parent" ref="388122010"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">938</int> + <reference key="object" ref="686572762"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="591981990"/> + </object> + <reference key="parent" ref="388122010"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">937</int> + <reference key="object" ref="296128296"/> + <reference key="parent" ref="388122010"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">936</int> + <reference key="object" ref="624443309"/> + <reference key="parent" ref="388122010"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">940</int> + <reference key="object" ref="591981990"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="958531763"/> + </object> + <reference key="parent" ref="686572762"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">943</int> + <reference key="object" ref="958531763"/> + <reference key="parent" ref="591981990"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">965</int> + <reference key="object" ref="201197998"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="449533810"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Route Sets</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">966</int> + <reference key="object" ref="449533810"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="514850702"/> + <reference ref="315489831"/> + <reference ref="381130318"/> + <reference ref="203860979"/> + </object> + <reference key="parent" ref="201197998"/> + <string key="objectName">Route Collections</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">968</int> + <reference key="object" ref="514850702"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="145982091"/> + </object> + <reference key="parent" ref="449533810"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">969</int> + <reference key="object" ref="145982091"/> + <reference key="parent" ref="514850702"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">970</int> + <reference key="object" ref="381130318"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="294091767"/> + </object> + <reference key="parent" ref="449533810"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">971</int> + <reference key="object" ref="294091767"/> + <reference key="parent" ref="381130318"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">972</int> + <reference key="object" ref="315489831"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="810977998"/> + </object> + <reference key="parent" ref="449533810"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">973</int> + <reference key="object" ref="810977998"/> + <reference key="parent" ref="315489831"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">974</int> + <reference key="object" ref="203860979"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="195064179"/> + </object> + <reference key="parent" ref="449533810"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">975</int> + <reference key="object" ref="195064179"/> + <reference key="parent" ref="203860979"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">991</int> + <reference key="object" ref="987100475"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1357202"/> + </object> + <reference key="parent" ref="767841293"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">992</int> + <reference key="object" ref="1357202"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="628077397"/> + </object> + <reference key="parent" ref="987100475"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">993</int> + <reference key="object" ref="628077397"/> + <reference key="parent" ref="1357202"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1003</int> + <reference key="object" ref="332827347"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="251261646"/> + <reference ref="886363359"/> + <reference ref="563997840"/> + <reference ref="586714932"/> + <reference ref="486983983"/> + <reference ref="674268551"/> + <reference ref="936285379"/> + <reference ref="935342052"/> + <reference ref="133973529"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Route Menu</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1004</int> + <reference key="object" ref="251261646"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1005</int> + <reference key="object" ref="886363359"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1006</int> + <reference key="object" ref="563997840"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1007</int> + <reference key="object" ref="586714932"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1009</int> + <reference key="object" ref="486983983"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1010</int> + <reference key="object" ref="674268551"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1011</int> + <reference key="object" ref="936285379"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1012</int> + <reference key="object" ref="935342052"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1013</int> + <reference key="object" ref="133973529"/> + <reference key="parent" ref="332827347"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1041</int> + <reference key="object" ref="116444210"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="953244587"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">886</int> + <reference key="object" ref="953244587"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="218011891"/> + </object> + <reference key="parent" ref="116444210"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">887</int> + <reference key="object" ref="218011891"/> + <reference key="parent" ref="953244587"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">981</int> + <reference key="object" ref="960124274"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="513071628"/> + </object> + <reference key="parent" ref="558011316"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">982</int> + <reference key="object" ref="513071628"/> + <reference key="parent" ref="960124274"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1044</int> + <reference key="object" ref="260590126"/> + <reference key="parent" ref="149671214"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">947</int> + <reference key="object" ref="49083088"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="752140054"/> + </object> + <reference key="parent" ref="65453686"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">948</int> + <reference key="object" ref="752140054"/> + <reference key="parent" ref="49083088"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">952</int> + <reference key="object" ref="218980861"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="204810929"/> + </object> + <reference key="parent" ref="65453686"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">953</int> + <reference key="object" ref="204810929"/> + <reference key="parent" ref="218980861"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">961</int> + <reference key="object" ref="64949649"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="743392281"/> + </object> + <reference key="parent" ref="65453686"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">962</int> + <reference key="object" ref="743392281"/> + <reference key="parent" ref="64949649"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1036</int> + <reference key="object" ref="901248527"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="780439087"/> + </object> + <reference key="parent" ref="65453686"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1037</int> + <reference key="object" ref="780439087"/> + <reference key="parent" ref="901248527"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>1003.IBEditorWindowLastContentRect</string> + <string>1003.IBPluginDependency</string> + <string>1003.editorWindowContentRectSynchronizationRect</string> + <string>1004.IBPluginDependency</string> + <string>1005.IBPluginDependency</string> + <string>1006.IBPluginDependency</string> + <string>1007.IBPluginDependency</string> + <string>1009.IBPluginDependency</string> + <string>1010.IBPluginDependency</string> + <string>1011.IBPluginDependency</string> + <string>1012.IBPluginDependency</string> + <string>1013.IBPluginDependency</string> + <string>1036.IBPluginDependency</string> + <string>1037.IBPluginDependency</string> + <string>1041.IBPluginDependency</string> + <string>1044.IBPluginDependency</string> + <string>113.IBEditorWindowLastContentRect</string> + <string>113.IBPluginDependency</string> + <string>113.IBWindowTemplateEditedContentRect</string> + <string>113.NSWindowTemplate.visibleAtLaunch</string> + <string>113.editorWindowContentRectSynchronizationRect</string> + <string>113.windowTemplate.hasMinSize</string> + <string>113.windowTemplate.maxSize</string> + <string>113.windowTemplate.minSize</string> + <string>114.IBPluginDependency</string> + <string>115.IBPluginDependency</string> + <string>119.IBPluginDependency</string> + <string>120.IBPluginDependency</string> + <string>152.CustomClassName</string> + <string>152.IBPluginDependency</string> + <string>154.IBPluginDependency</string> + <string>156.IBPluginDependency</string> + <string>157.IBPluginDependency</string> + <string>160.IBPluginDependency</string> + <string>161.IBPluginDependency</string> + <string>162.IBPluginDependency</string> + <string>163.CustomClassName</string> + <string>163.IBPluginDependency</string> + <string>164.IBPluginDependency</string> + <string>166.IBPluginDependency</string> + <string>167.IBPluginDependency</string> + <string>168.IBPluginDependency</string> + <string>169.IBPluginDependency</string> + <string>172.IBPluginDependency</string> + <string>174.IBPluginDependency</string> + <string>263.IBEditorWindowLastContentRect</string> + <string>263.IBPluginDependency</string> + <string>263.editorWindowContentRectSynchronizationRect</string> + <string>264.IBPluginDependency</string> + <string>265.IBPluginDependency</string> + <string>266.IBPluginDependency</string> + <string>267.IBPluginDependency</string> + <string>268.IBPluginDependency</string> + <string>284.IBPluginDependency</string> + <string>285.IBPluginDependency</string> + <string>286.IBPluginDependency</string> + <string>298.IBPluginDependency</string> + <string>299.IBPluginDependency</string> + <string>300.IBEditorWindowLastContentRect</string> + <string>300.IBPluginDependency</string> + <string>300.editorWindowContentRectSynchronizationRect</string> + <string>301.IBPluginDependency</string> + <string>302.IBPluginDependency</string> + <string>303.IBPluginDependency</string> + <string>304.IBPluginDependency</string> + <string>328.IBPluginDependency</string> + <string>329.IBEditorWindowLastContentRect</string> + <string>329.IBPluginDependency</string> + <string>330.IBPluginDependency</string> + <string>331.IBPluginDependency</string> + <string>407.IBPluginDependency</string> + <string>408.IBPluginDependency</string> + <string>436.IBEditorWindowLastContentRect</string> + <string>436.IBPluginDependency</string> + <string>436.IBWindowTemplateEditedContentRect</string> + <string>436.NSWindowTemplate.visibleAtLaunch</string> + <string>436.windowTemplate.hasMinSize</string> + <string>436.windowTemplate.maxSize</string> + <string>436.windowTemplate.minSize</string> + <string>437.IBPluginDependency</string> + <string>438.IBPluginDependency</string> + <string>439.CustomClassName</string> + <string>439.IBPluginDependency</string> + <string>440.IBPluginDependency</string> + <string>441.IBPluginDependency</string> + <string>442.IBPluginDependency</string> + <string>443.IBPluginDependency</string> + <string>444.IBPluginDependency</string> + <string>448.IBNumberFormatterLocalizesFormatMetadataKey</string> + <string>448.IBPluginDependency</string> + <string>453.IBPluginDependency</string> + <string>454.IBPluginDependency</string> + <string>455.IBPluginDependency</string> + <string>456.IBPluginDependency</string> + <string>457.IBPluginDependency</string> + <string>460.IBPluginDependency</string> + <string>461.IBPluginDependency</string> + <string>462.IBPluginDependency</string> + <string>503.IBPluginDependency</string> + <string>504.IBPluginDependency</string> + <string>528.IBPluginDependency</string> + <string>529.IBPluginDependency</string> + <string>533.IBAttributePlaceholdersKey</string> + <string>533.IBPluginDependency</string> + <string>534.IBPluginDependency</string> + <string>558.IBPluginDependency</string> + <string>586.IBPluginDependency</string> + <string>587.IBPluginDependency</string> + <string>588.IBPluginDependency</string> + <string>589.IBPluginDependency</string> + <string>604.IBPluginDependency</string> + <string>615.IBPluginDependency</string> + <string>625.IBEditorWindowLastContentRect</string> + <string>625.IBPluginDependency</string> + <string>626.IBPluginDependency</string> + <string>633.IBPluginDependency</string> + <string>650.IBEditorWindowLastContentRect</string> + <string>650.IBPluginDependency</string> + <string>650.IBWindowTemplateEditedContentRect</string> + <string>650.NSWindowTemplate.visibleAtLaunch</string> + <string>650.editorWindowContentRectSynchronizationRect</string> + <string>650.windowTemplate.maxSize</string> + <string>651.IBPluginDependency</string> + <string>652.IBPluginDependency</string> + <string>653.IBPluginDependency</string> + <string>654.IBPluginDependency</string> + <string>655.IBPluginDependency</string> + <string>656.IBPluginDependency</string> + <string>657.IBPluginDependency</string> + <string>832.IBPluginDependency</string> + <string>834.IBPluginDependency</string> + <string>836.IBPluginDependency</string> + <string>838.IBPluginDependency</string> + <string>840.IBPluginDependency</string> + <string>842.IBPluginDependency</string> + <string>844.IBPluginDependency</string> + <string>850.IBPluginDependency</string> + <string>852.IBPluginDependency</string> + <string>853.IBPluginDependency</string> + <string>874.IBPluginDependency</string> + <string>875.IBPluginDependency</string> + <string>876.IBPluginDependency</string> + <string>877.IBPluginDependency</string> + <string>878.IBPluginDependency</string> + <string>886.IBPluginDependency</string> + <string>887.IBPluginDependency</string> + <string>916.IBPluginDependency</string> + <string>930.IBAttributePlaceholdersKey</string> + <string>930.IBPluginDependency</string> + <string>935.IBPluginDependency</string> + <string>936.IBPluginDependency</string> + <string>937.IBPluginDependency</string> + <string>938.IBPluginDependency</string> + <string>939.IBPluginDependency</string> + <string>940.IBPluginDependency</string> + <string>943.IBPluginDependency</string> + <string>947.IBPluginDependency</string> + <string>948.IBPluginDependency</string> + <string>952.IBPluginDependency</string> + <string>953.IBPluginDependency</string> + <string>961.IBPluginDependency</string> + <string>962.IBPluginDependency</string> + <string>965.IBEditorWindowLastContentRect</string> + <string>965.IBPluginDependency</string> + <string>965.IBWindowTemplateEditedContentRect</string> + <string>965.NSWindowTemplate.visibleAtLaunch</string> + <string>966.IBAttributePlaceholdersKey</string> + <string>966.IBPluginDependency</string> + <string>968.IBPluginDependency</string> + <string>969.IBPluginDependency</string> + <string>970.IBPluginDependency</string> + <string>971.IBPluginDependency</string> + <string>972.IBPluginDependency</string> + <string>973.IBPluginDependency</string> + <string>974.IBPluginDependency</string> + <string>975.IBPluginDependency</string> + <string>981.IBPluginDependency</string> + <string>982.IBPluginDependency</string> + <string>991.IBPluginDependency</string> + <string>992.IBPluginDependency</string> + <string>993.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{444, 416}, {1010, 436}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{575, 480}, {600, 335}}</string> + <string>{{795, 211}, {166, 153}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{395, 412}, {180, 173}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{323, 665}, {517, 256}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{323, 665}, {517, 256}}</string> + <integer value="0"/> + <string>{{468, 500}, {517, 256}}</string> + <integer value="1"/> + <string>{3.40282e+38, 3.40282e+38}</string> + <string>{517, 256}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterTableView</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{849, 723}, {202, 133}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{574, 532}, {190, 113}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>net.wafflesoftware.ShortcutRecorder.IB.Leopard</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{891, 358}, {175, 63}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{1106, 875}, {178, 63}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{737, 441}, {666, 292}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{93, 495}, {490, 367}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{93, 495}, {490, 367}}</string> + <integer value="0"/> + <integer value="1"/> + <string>{3.40282e+38, 3.40282e+38}</string> + <string>{490, 366}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <boolean value="YES"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>net.wafflesoftware.ShortcutRecorder.IB.Leopard</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="991531579"/> + <string key="toolTip">Delete all Waypoints</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{668, 585}, {155, 23}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{571, 720}, {496, 62}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{571, 720}, {496, 62}}</string> + <integer value="0"/> + <string>{{353, 378}, {532, 62}}</string> + <string>{3.40282e+38, 3.40282e+38}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{664, 516}, {384, 302}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{664, 516}, {384, 302}}</string> + <boolean value="NO"/> + <object class="NSMutableDictionary"> + <string key="NS.key.0">AccessibilityDescription</string> + <object class="IBAccessibilityAttribute" key="NS.object.0"> + <string key="name">AccessibilityDescription</string> + <reference key="object" ref="449533810"/> + <string key="accessibilityValue">Route Collections</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">1045</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">AuraController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aurasPanel</string> + <string>aurasPanelTable</string> + <string>controller</string> + <string>mobController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">AuraController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterTableView</string> + <string key="superclassName">NSTableView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="943844926"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BindingsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BindingsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BlacklistController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>mobController</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MobController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BlacklistController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BotController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeHotkeyHelp:</string> + <string>closeLootHotkeyHelp:</string> + <string>editBehavior:</string> + <string>editBehaviorPvP:</string> + <string>editProfile:</string> + <string>editProfilePvP:</string> + <string>editRoute:</string> + <string>editRoutePvP:</string> + <string>hotkeyHelp:</string> + <string>login:</string> + <string>lootHotkeyHelp:</string> + <string>maltby:</string> + <string>startBot:</string> + <string>startStopBot:</string> + <string>stopBot:</string> + <string>test2:</string> + <string>test:</string> + <string>testHotkey:</string> + <string>updateStatus:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Route</string> + <string>allChatButton</string> + <string>antiAFKButton</string> + <string>anyLevelCheckbox</string> + <string>attackWithinText</string> + <string>auraController</string> + <string>behaviorPopup</string> + <string>behaviorPvPPopup</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>chatController</string> + <string>chatLogController</string> + <string>combatController</string> + <string>combatProfilePopup</string> + <string>combatProfilePvPPopup</string> + <string>controller</string> + <string>corpseController</string> + <string>databaseManager</string> + <string>fishController</string> + <string>hotkeyHelpPanel</string> + <string>itemController</string> + <string>logOutAfterRunningTextField</string> + <string>logOutAfterStuckCheckbox</string> + <string>logOutDurabilityTextField</string> + <string>logOutOnBrokenItemsCheckbox</string> + <string>logOutOnFullInventoryCheckbox</string> + <string>logOutOnTimerExpireCheckbox</string> + <string>logOutUseHearthstoneCheckbox</string> + <string>lootController</string> + <string>lootHotkeyHelpPanel</string> + <string>macroController</string> + <string>maxLevelPopup</string> + <string>maxLevelText</string> + <string>memoryViewController</string> + <string>minLevelPopup</string> + <string>minLevelText</string> + <string>mobController</string> + <string>movementController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>overlayWindow</string> + <string>playerController</string> + <string>playersController</string> + <string>procedureController</string> + <string>profileController</string> + <string>pvpController</string> + <string>questController</string> + <string>routePopup</string> + <string>routePvPPopup</string> + <string>runningTimer</string> + <string>scanGrid</string> + <string>spellController</string> + <string>startStopButton</string> + <string>startstopRecorder</string> + <string>statisticsController</string> + <string>statusText</string> + <string>view</string> + <string>wallWalkButton</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Route</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>id</string> + <string>AuraController</string> + <string>id</string> + <string>id</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>ChatController</string> + <string>ChatLogController</string> + <string>CombatController</string> + <string>id</string> + <string>id</string> + <string>Controller</string> + <string>CorpseController</string> + <string>DatabaseManager</string> + <string>FishController</string> + <string>NSPanel</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>LootController</string> + <string>NSPanel</string> + <string>MacroController</string> + <string>id</string> + <string>NSTextField</string> + <string>MemoryViewController</string> + <string>id</string> + <string>NSTextField</string> + <string>MobController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSWindow</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>ProcedureController</string> + <string>ProfileController</string> + <string>PvPController</string> + <string>QuestController</string> + <string>id</string> + <string>id</string> + <string>NSTextField</string> + <string>ScanGridView</string> + <string>SpellController</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>StatisticsController</string> + <string>NSTextField</string> + <string>NSView</string> + <string>NSButton</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BotController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatLogController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRelayPanel:</string> + <string>createChatAction:</string> + <string>openRelayPanel:</string> + <string>sendEmail:</string> + <string>something:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatActionsController</string> + <string>chatLogTable</string> + <string>controller</string> + <string>enableGrowlNotifications</string> + <string>offsetController</string> + <string>relayPanel</string> + <string>ruleEditor</string> + <string>view</string> + <string>whisperLogTable</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSArrayController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSButton</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPredicateEditor</string> + <string>NSView</string> + <string>NSTableView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatLogController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CombatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>botController</string> + <string>chatController</string> + <string>combatPanel</string> + <string>combatTable</string> + <string>controller</string> + <string>macroController</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>BotController</string> + <string>ChatController</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>Controller</string> + <string>MacroController</string> + <string>MobController</string> + <string>MovementController</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CombatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">Controller</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>confirmAppRename:</string> + <string>launchWebsite:</string> + <string>pidSelected:</string> + <string>renameShowHelp:</string> + <string>renameUseExisting:</string> + <string>showAbout:</string> + <string>showSettings:</string> + <string>testFront:</string> + <string>toggleGUIScripting:</string> + <string>toggleSecurePrefs:</string> + <string>toolbarItemSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aboutValidImage</string> + <string>aboutView</string> + <string>behaviorController</string> + <string>behavsToolbarItem</string> + <string>botController</string> + <string>botToolbarItem</string> + <string>chatLogController</string> + <string>chatLogToolbarItem</string> + <string>corpseController</string> + <string>currentStatusText</string> + <string>disableGUIScriptCheckbox</string> + <string>itemController</string> + <string>mainBackgroundBox</string> + <string>mainToolbar</string> + <string>mainWindow</string> + <string>matchExistingCheckbox</string> + <string>memoryAccessLight</string> + <string>memoryAccessValidText</string> + <string>memoryToolbarItem</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>newIdentifierField</string> + <string>newNameField</string> + <string>newSignatureField</string> + <string>nodeController</string> + <string>objectsController</string> + <string>objectsToolbarItem</string> + <string>offsetController</string> + <string>playerData</string> + <string>playerToolbarItem</string> + <string>playersController</string> + <string>prefsToolbarItem</string> + <string>profileController</string> + <string>profilesToolbarItem</string> + <string>pvpController</string> + <string>pvpToolbarItem</string> + <string>routeController</string> + <string>routesToolbarItem</string> + <string>settingsView</string> + <string>spellController</string> + <string>spellsToolbarItem</string> + <string>statisticsController</string> + <string>statisticsToolbarItem</string> + <string>versionInfoText</string> + <string>wowInstancePopUpButton</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSImageView</string> + <string>NSView</string> + <string>ProcedureController</string> + <string>NSToolbarItem</string> + <string>BotController</string> + <string>NSToolbarItem</string> + <string>ChatLogController</string> + <string>NSToolbarItem</string> + <string>CorpseController</string> + <string>id</string> + <string>NSButton</string> + <string>InventoryController</string> + <string>id</string> + <string>NSToolbar</string> + <string>id</string> + <string>NSButton</string> + <string>id</string> + <string>id</string> + <string>NSToolbarItem</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NodeController</string> + <string>ObjectsController</string> + <string>NSToolbarItem</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>NSToolbarItem</string> + <string>PlayersController</string> + <string>NSToolbarItem</string> + <string>ProfileController</string> + <string>NSToolbarItem</string> + <string>PvPController</string> + <string>NSToolbarItem</string> + <string>WaypointController</string> + <string>NSToolbarItem</string> + <string>NSView</string> + <string>SpellController</string> + <string>NSToolbarItem</string> + <string>StatisticsController</string> + <string>NSToolbarItem</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="606872111"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CorpseController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CorpseController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">DatabaseManager</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">DatabaseManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">FileController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">FileController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">FishController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>itemController</string> + <string>lootController</string> + <string>movementController</string> + <string>nodeController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>LootController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>PlayerDataController</string> + <string>SpellController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">FishController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">InventoryController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>macroController</string> + <string>memoryViewController</string> + <string>nodeController</string> + <string>objectsController</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>MacroController</string> + <string>MemoryViewController</string> + <string>NodeController</string> + <string>ObjectsController</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">InventoryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">LootController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatController</string> + <string>controller</string> + <string>itemController</string> + <string>macroController</string> + <string>offsetController</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>ChatController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">LootController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MacroController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + <string>playerData</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MacroController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MemoryViewController</string> + <string key="superclassName">NSView</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>clearSearch:</string> + <string>clearTable:</string> + <string>clearValues:</string> + <string>menuAction:</string> + <string>offsetSelectAction:</string> + <string>openOffsetPanel:</string> + <string>openPointerPanel:</string> + <string>openSearch:</string> + <string>pointerSelectAction:</string> + <string>saveValues:</string> + <string>selectInstance:</string> + <string>setCustomAddress:</string> + <string>snapshotMemory:</string> + <string>startSearch:</string> + <string>typeSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>bitPanel</string> + <string>bitTableView</string> + <string>clearButton</string> + <string>controller</string> + <string>emulatePPCButton</string> + <string>instanceList</string> + <string>itemController</string> + <string>maskTextField</string> + <string>memoryTable</string> + <string>memoryViewWindow</string> + <string>mobController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>offsetScanPanel</string> + <string>operatorPopUpButton</string> + <string>playersController</string> + <string>pointerScanCancelButton</string> + <string>pointerScanFindButton</string> + <string>pointerScanNumTextField</string> + <string>pointerScanPanel</string> + <string>pointerScanProgressIndicator</string> + <string>pointerScanVariationButton</string> + <string>pointerScanVariationTextField</string> + <string>resultsTextView</string> + <string>searchButton</string> + <string>searchPanel</string> + <string>searchTableView</string> + <string>searchText</string> + <string>searchTypePopUpButton</string> + <string>signMatrix</string> + <string>signatureTextField</string> + <string>valueMatrix</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSButton</string> + <string>Controller</string> + <string>NSButton</string> + <string>NSPopUpButton</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>id</string> + <string>id</string> + <string>MobController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPopUpButton</string> + <string>PlayersController</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSTextView</string> + <string>NSButton</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSMatrix</string> + <string>NSTextField</string> + <string>NSMatrix</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MemoryViewController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MobController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">updateTracking:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>additionalList</string> + <string>auraController</string> + <string>botController</string> + <string>combatController</string> + <string>memoryViewController</string> + <string>movementController</string> + <string>objectsController</string> + <string>spellController</string> + <string>trackFriendlyMenuItem</string> + <string>trackHostileMenuItem</string> + <string>trackNeutralMenuItem</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>id</string> + <string>BotController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>ObjectsController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MobController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MovementController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>itemController</string> + <string>logOutStuckAttemptsTextField</string> + <string>macroController</string> + <string>mobController</string> + <string>movementTypePopUp</string> + <string>offsetController</string> + <string>playerData</string> + <string>profileController</string> + <string>statisticsController</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>BotController</string> + <string>CombatController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>MacroController</string> + <string>MobController</string> + <string>NSPopUpButton</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>ProfileController</string> + <string>StatisticsController</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MovementController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="943844926"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="606872111"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NodeController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>memoryViewController</string> + <string>moveToList</string> + <string>movementController</string> + <string>objectsController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>NSPopUpButton</string> + <string>id</string> + <string>ObjectsController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">NodeController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ObjectController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">tableDoubleClick:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerData</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ObjectsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>faceObject:</string> + <string>filter:</string> + <string>moveToStart:</string> + <string>moveToStop:</string> + <string>refreshData:</string> + <string>reloadNames:</string> + <string>resetObjects:</string> + <string>targetObject:</string> + <string>updateTracking:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>itemController</string> + <string>itemTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>mobTable</string> + <string>moveToMobPopUpButton</string> + <string>moveToNodePopUpButton</string> + <string>movementController</string> + <string>nodeController</string> + <string>nodeTable</string> + <string>playerController</string> + <string>playersController</string> + <string>playersTable</string> + <string>tabView</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>InventoryController</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSTableView</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + <string>MovementController</string> + <string>NodeController</string> + <string>NSTableView</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>NSTableView</string> + <string>NSTabView</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ObjectsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">OffsetController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">OffsetController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayerDataController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>setPlayerDirectionInMemory:</string> + <string>showAuraWindow:</string> + <string>showCombatWindow:</string> + <string>showCooldownWindow:</string> + <string>showPlayerStructure:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>bindingsController</string> + <string>botController</string> + <string>combatController</string> + <string>combatTable</string> + <string>controller</string> + <string>healingTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>movementController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>powerNameText</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BindingsController</string> + <string>BotController</string> + <string>CombatController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSTextField</string> + <string>SpellController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayerDataController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayersController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">updateTracking:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>memoryViewController</string> + <string>movementController</string> + <string>objectsController</string> + <string>playerColorByLevel</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MemoryViewController</string> + <string>MovementController</string> + <string>ObjectsController</string> + <string>NSButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayersController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ProcedureController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRule:</string> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteRule:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>importBehavior:</string> + <string>loadBehavior:</string> + <string>removeBehavior:</string> + <string>renameBehavior:</string> + <string>setBehaviorEvent:</string> + <string>showInFinder:</string> + <string>tableRowDoubleClicked:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>combatPriorityTextField</string> + <string>fileController</string> + <string>itemController</string> + <string>procedureEventSegment</string> + <string>renamePanel</string> + <string>ruleEditor</string> + <string>ruleTable</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>FileController</string> + <string>id</string> + <string>id</string> + <string>NSPanel</string> + <string>id</string> + <string>NSTableView</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ProcedureController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ProfileController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addIgnoreEntry:</string> + <string>addIgnoreFromTarget:</string> + <string>createProfile:</string> + <string>deleteIgnoreEntry:</string> + <string>deleteProfile:</string> + <string>duplicateProfile:</string> + <string>exportProfile:</string> + <string>importProfile:</string> + <string>renameProfile:</string> + <string>showInFinder:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>assistPopUpButton</string> + <string>controller</string> + <string>fileController</string> + <string>followPopUpButton</string> + <string>ignoreTable</string> + <string>mobController</string> + <string>playersController</string> + <string>profileOutlineView</string> + <string>profileTabView</string> + <string>profileTitle</string> + <string>profileTypePopUp</string> + <string>tankPopUpButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>Controller</string> + <string>FileController</string> + <string>NSPopUpButton</string> + <string>NSTableView</string> + <string>MobController</string> + <string>PlayersController</string> + <string>NSOutlineView</string> + <string>NSTabView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ProfileController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PvPController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteBehavior:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>importBehavior:</string> + <string>renameBehavior:</string> + <string>saveAllObjects:</string> + <string>showInFinder:</string> + <string>test:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>fileController</string> + <string>renamePanel</string> + <string>view</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>FileController</string> + <string>NSPanel</string> + <string>NSView</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PvPController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">Route</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Route.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RouteVisualizationView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RouteVisualizationView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ScanGridView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ScanGridView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SpellController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>reloadMenu:</string> + <string>spellLoadAllData:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>cooldownPanel</string> + <string>cooldownPanelTable</string> + <string>itemController</string> + <string>macroController</string> + <string>offsetController</string> + <string>playerController</string> + <string>spellDropDown</string> + <string>spellLoadingProgress</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>id</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SpellController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">StatisticsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">resetStatistics:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>experienceText</string> + <string>honorGainedText</string> + <string>itemsLootedText</string> + <string>memoryOperationsTable</string> + <string>memoryReadsText</string> + <string>memoryWritesText</string> + <string>mobsKilledText</string> + <string>moneyText</string> + <string>playerController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">StatisticsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">WaypointController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRouteCollection:</string> + <string>addRouteSet:</string> + <string>addWaypoint:</string> + <string>closeAutomatorPanel:</string> + <string>closeDescription:</string> + <string>closeHelpPanel:</string> + <string>closeVisualize:</string> + <string>closestWaypoint:</string> + <string>deleteRouteButton:</string> + <string>deleteRouteMenu:</string> + <string>duplicateRoute:</string> + <string>editWaypointAction:</string> + <string>exportRoute:</string> + <string>importRoute:</string> + <string>loadRoute:</string> + <string>moveToWaypoint:</string> + <string>openAutomatorPanel:</string> + <string>removeWaypoint:</string> + <string>renameRoute:</string> + <string>resetAllWaypoints:</string> + <string>setRouteType:</string> + <string>showInFinder:</string> + <string>startStopAutomator:</string> + <string>startingRouteClicked:</string> + <string>stopMovement:</string> + <string>testWaypointSequence:</string> + <string>visualize:</string> + <string>waypointMenuAction:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>automatorIntervalValue</string> + <string>automatorPanel</string> + <string>automatorRecorder</string> + <string>automatorSpinner</string> + <string>automatorStartStopButton</string> + <string>automatorVizualizer</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>descriptionPanel</string> + <string>fileController</string> + <string>helpPanel</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>routeTypeSegment</string> + <string>routesTable</string> + <string>scrollWithRoute</string> + <string>shortcutRecorder</string> + <string>startingRouteButton</string> + <string>testingMenu</string> + <string>view</string> + <string>visualizePanel</string> + <string>visualizeView</string> + <string>waypointSectionTitle</string> + <string>waypointTabView</string> + <string>waypointTable</string> + <string>wpActionDelayText</string> + <string>wpActionIDPopUp</string> + <string>wpActionPanel</string> + <string>wpActionTabs</string> + <string>wpActionTypeSegments</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>SRRecorderControl</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>RouteVisualizationView</string> + <string>BotController</string> + <string>CombatController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>FileController</string> + <string>NSPanel</string> + <string>MobController</string> + <string>MovementController</string> + <string>PlayerDataController</string> + <string>id</string> + <string>NSOutlineView</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>NSButton</string> + <string>NSMenu</string> + <string>NSView</string> + <string>NSPanel</string> + <string>RouteVisualizationView</string> + <string>NSTextField</string> + <string>NSTabView</string> + <string>BetterTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSPanel</string> + <string>NSTabView</string> + <string>BetterSegmentedControl</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">WaypointController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="908276271"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="648668874"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="798460269"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSArrayController</string> + <string key="superclassName">NSObjectController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSArrayController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSBox</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSBox.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1024627523"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSImageCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSImageCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSImageView</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSManagedObjectContext</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">CoreData.framework/Headers/NSManagedObjectContext.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMatrix</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1007653637"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="203924809"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSNumberFormatter</string> + <string key="superclassName">NSFormatter</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSNumberFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="908276271"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="648668874"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="798460269"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="1024627523"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="1007653637"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="366898344"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="113963544"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1040806741"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="367964802"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="709713447"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="923036801"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObjectController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSOutlineView</string> + <string key="superclassName">NSTableView</string> + <reference key="sourceIdentifier" ref="366898344"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPanel</string> + <string key="superclassName">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPredicateEditor</string> + <string key="superclassName">NSRuleEditor</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPredicateEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSProgressIndicator</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSRuleEditor</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRuleEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScrollView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScroller</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTabView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTabViewItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTabViewItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableColumn</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableHeaderView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableHeaderView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableView</string> + <string key="superclassName">NSControl</string> + <reference key="sourceIdentifier" ref="113963544"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSText</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSText.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextView</string> + <string key="superclassName">NSText</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbar</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbar.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbarItem</string> + <string key="superclassName">NSObject</string> + <reference key="sourceIdentifier" ref="1040806741"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="203924809"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="367964802"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SRRecorderCell</string> + <string key="superclassName">NSActionCell</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">delegate</string> + <string key="NS.object.0">id</string> + </object> + <reference key="sourceIdentifier" ref="709713447"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SRRecorderControl</string> + <string key="superclassName">NSControl</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">delegate</string> + <string key="NS.object.0">id</string> + </object> + <reference key="sourceIdentifier" ref="923036801"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + <object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSAddTemplate</string> + <string>NSApplicationIcon</string> + <string>NSFollowLinkFreestandingTemplate</string> + <string>NSMenuCheckmark</string> + <string>NSMenuMixedState</string> + <string>NSQuickLookTemplate</string> + <string>NSRefreshTemplate</string> + <string>NSRemoveTemplate</string> + <string>NSSmartBadgeTemplate</string> + <string>NSStopProgressTemplate</string> + <string>NSSwitch</string> + <string>off</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>{8, 8}</string> + <string>{512, 512}</string> + <string>{10, 10}</string> + <string>{9, 8}</string> + <string>{7, 2}</string> + <string>{19, 11}</string> + <string>{10, 12}</string> + <string>{8, 8}</string> + <string>{15, 15}</string> + <string>{11, 11}</string> + <string>{15, 15}</string> + <string>{16, 16}</string> + </object> + </object> + </data> +</archive> diff --git a/Rule.h b/Rule.h new file mode 100644 index 0000000..b29adbc --- /dev/null +++ b/Rule.h @@ -0,0 +1,55 @@ +// +// Rule.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "Action.h" + +/*typedef enum RuleResult { + ResultNone = 0, + ResultSpell = 1, + ResultItem = 2, + ResultMacro = 3, + ResultSpecial = 4, +} ResultType;*/ + +typedef enum TargetType { + TargetNone = 0, + TargetSelf = 1, + TargetEnemy = 2, + TargetFriend = 3, + TargetAdd = 4, + TargetPet = 5, + TargetFriendlies = 6, + TargetPat = 7, +} TargetType; + +@interface Rule : NSObject <NSCoding, NSCopying> { + BOOL _matchAll; + NSString *_name; + NSMutableArray *_conditionsList; + + Action *_action; + int _target; + + //ResultType _resultType; + //unsigned _actionID; +} + +@property (readwrite, copy) NSString *name; +@property BOOL isMatchAll; +@property (readwrite, copy) Action *action; +//@property ResultType resultType; +//@property unsigned actionID; +@property (readwrite, retain) NSArray *conditions; +@property (readwrite, assign) int target; + +// play nice methods +@property (readonly) ActionType resultType; +@property (readonly) UInt32 actionID; + +@end diff --git a/Rule.m b/Rule.m new file mode 100644 index 0000000..acec379 --- /dev/null +++ b/Rule.m @@ -0,0 +1,123 @@ +// +// Rule.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/4/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Rule.h" +#import "Action.h" + +@implementation Rule + +- (id) init +{ + self = [super init]; + if (self != nil) { + self.isMatchAll = YES; + self.conditions = [NSArray array]; + self.name = nil; + self.action = [Action action]; + self.target = -1; + //self.actionID = 0; + //self.resultType = 0; + } + return self; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [self init]; + if(self) { + [self setName: [decoder decodeObjectForKey: @"Name"]]; + [self setIsMatchAll: [[decoder decodeObjectForKey: @"MatchAll"] boolValue]]; + [self setConditions: [decoder decodeObjectForKey: @"Conditions"]]; + [self setTarget: [[decoder decodeObjectForKey: @"Target"] intValue]]; + + // we have an old-style rule we must import + if([decoder decodeObjectForKey: @"ResultType"] && [decoder decodeObjectForKey: @"ActionID"]) { + self.action = [Action actionWithType: [[decoder decodeObjectForKey: @"ResultType"] unsignedIntValue] + value: [decoder decodeObjectForKey: @"ActionID"]]; + // log(LOG_GENERAL, @"Translating action %@ to %@", [decoder decodeObjectForKey: @"ActionID"], self.action); + } else { + self.action = [decoder decodeObjectForKey: @"Action"] ? [decoder decodeObjectForKey: @"Action"] : [Action action]; + } + + //[self setResultType: [[decoder decodeObjectForKey: @"ResultType"] intValue]]; + //[self setActionID: [[decoder decodeObjectForKey: @"ActionID"] unsignedIntValue]]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: [self name] forKey: @"Name"]; + [coder encodeObject: [NSNumber numberWithBool: [self isMatchAll]] forKey: @"MatchAll"]; + [coder encodeObject: [self conditions] forKey: @"Conditions"]; + [coder encodeObject: self.action forKey: @"Action"]; + [coder encodeObject: [NSNumber numberWithInt:self.target] forKey: @"Target"]; + + //[coder encodeObject: [NSNumber numberWithInt: [self resultType]] forKey: @"ResultType"]; + //[coder encodeObject: [NSNumber numberWithUnsignedInt: [self actionID]] forKey: @"ActionID"]; +} + +- (id)copyWithZone:(NSZone *)zone +{ + Rule *copy = [[[self class] allocWithZone: zone] init]; + + copy.name = self.name; + copy.conditions = self.conditions; + copy.isMatchAll = self.isMatchAll; + copy.action = self.action; + copy.target = self.target; + //copy.resultType = self.resultType; + //copy.actionID = self.actionID; + + return copy; +} + +- (void) dealloc { + self.conditions = nil; + self.name = nil; + self.action = nil; + + [super dealloc]; +} + +#pragma mark - + +- (NSString*)description { + NSString *resultType = @"No Action"; + if(self.action.type == ActionType_Spell) resultType = @"Cast Spell"; + if(self.action.type == ActionType_Item) resultType = @"Use Item"; + if(self.action.type == ActionType_Macro) resultType = @"Use Macro"; + return [NSString stringWithFormat: @"<Rule \"%@\" (%@ %d conditions); %@ (%@)>", [self name], [self isMatchAll] ? @"Match all" : @"Match any of", [[self conditions] count], resultType, self.action.value]; +} + +@synthesize name = _name; +@synthesize isMatchAll = _matchAll; +@synthesize conditions = _conditionsList; +@synthesize action = _action; +@synthesize target = _target; +//@synthesize resultType = _resultType; +//@synthesize actionID = _actionID; + +- (void)setConditions: (NSArray*)conditions { + [_conditionsList autorelease]; + if(conditions) { + _conditionsList = [[NSMutableArray alloc] initWithArray: conditions copyItems: YES]; + } else { + _conditionsList = nil; + } +} + +- (ActionType)resultType { + return [[self action] type]; +} + +- (UInt32)actionID { + return [[self action] actionID]; +} + +@end diff --git a/RuleEditor.h b/RuleEditor.h new file mode 100644 index 0000000..350a5b7 --- /dev/null +++ b/RuleEditor.h @@ -0,0 +1,58 @@ +// +// RuleEditor.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "Rule.h" + +@class Controller; +@class BotController; + +@class BetterSegmentedControl; + +#define RuleEditorSaveRule 1 +#define RuleEditorCancelRule 0 + +@interface RuleEditor : NSObject { + IBOutlet Controller *controller; + IBOutlet BotController *botController; + IBOutlet id spellController; + IBOutlet id inventoryController; + + IBOutlet id conditionMatchingSegment; + IBOutlet id conditionResultTypeSegment; + IBOutlet BetterSegmentedControl *conditionTargetType; + + IBOutlet id spellRuleTableView; + IBOutlet id spellRuleTypeDropdown; + + IBOutlet NSPopUpButton *resultActionDropdown; + IBOutlet id ruleNameText; + IBOutlet id ruleEditorWindow; + + IBOutlet NSTextField *labelNoTarget; + + NSMutableArray *_conditionList; + + NSMenu *_spellsMenu, *_itemsMenu, *_macrosMenu, *_interactMenu; + BOOL validSelection; +} + +@property BOOL validSelection; + +- (IBAction)addCondition:(id)sender; +- (IBAction)testCondition:(id)sender; +- (IBAction)testRule:(id)sender; +- (IBAction)saveRule:(id)sender; +- (IBAction)cancelRule:(id)sender; +- (IBAction)setResultType:(id)sender; + +- (Rule*)rule; +- (void)initiateEditorForRule: (Rule*)rule; +- (NSWindow*)window; + +@end diff --git a/RuleEditor.m b/RuleEditor.m new file mode 100644 index 0000000..07f33db --- /dev/null +++ b/RuleEditor.m @@ -0,0 +1,404 @@ +// +// RuleEditor.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "RuleEditor.h" + +#import "Unit.h" + +#import "Controller.h" +#import "BotController.h" +#import "SpellController.h" +#import "InventoryController.h" +#import "ActionMenusController.h" +#import "ConditionCell.h" +#import "BetterTableView.h" +#import "BetterSegmentedControl.h" +#import "HealthConditionController.h" +#import "StatusConditionController.h" +#import "AuraConditionController.h" +#import "DistanceConditionController.h" +#import "InventoryConditionController.h" +#import "ComboPointConditionController.h" +#import "AuraStackConditionController.h" +#import "TotemConditionController.h" +#import "TempEnchantConditionController.h" +#import "TargetTypeConditionController.h" +#import "TargetClassConditionController.h" +#import "CombatCountConditionController.h" +#import "ProximityCountConditionController.h" +#import "SpellCooldownConditionController.h" +#import "LastSpellCastConditionController.h" +#import "RuneConditionController.h" + +#import "Macro.h" +#import "Action.h" + +#import "BetterSegmentedControl.h" + + +@interface RuleEditor (Internal) +@end + +@implementation RuleEditor +- (id) init +{ + self = [super init]; + if (self != nil) { + _conditionList = [[NSMutableArray array] retain]; + + _spellsMenu = nil; + _itemsMenu = nil; + _macrosMenu = nil; + _interactMenu = nil; + } + return self; +} + +- (void) dealloc{ + [_spellsMenu release]; _spellsMenu = nil; + [_itemsMenu release]; _itemsMenu = nil; + [_macrosMenu release]; _macrosMenu = nil; + [_interactMenu release]; _interactMenu = nil; + + [super dealloc]; +} + +- (void)awakeFromNib { + // set our column to use a Rule Cell + + [spellRuleTableView registerForDraggedTypes: [NSArray arrayWithObjects: @"Condition", nil]]; + + NSTableColumn *column = [spellRuleTableView tableColumnWithIdentifier: @"Conditions"]; + [column setDataCell: [[[ConditionCell alloc] init] autorelease]]; + [column setEditable: NO]; +} + +@synthesize validSelection; + +- (void)validateBindings { + self.validSelection = [spellRuleTableView numberOfSelectedRows] ? YES : NO; +} + +- (NSWindow*)window { + return ruleEditorWindow; +} + + +- (Rule*)rule { + NSMutableArray *conditions = [NSMutableArray array]; + + for(ConditionController* condController in _conditionList) { + Condition *condition = nil; + if((condition = [condController condition])) + [conditions addObject: [condController condition]]; + } + + Rule *newRule = nil; + if([conditions count]) { + + NSNumber *value = [NSNumber numberWithUnsignedInt: [[resultActionDropdown selectedItem] tag]]; + + newRule = [[Rule alloc] init]; + + [newRule setName: [ruleNameText stringValue]]; + [newRule setConditions: conditions]; + [newRule setIsMatchAll: [conditionMatchingSegment isSelectedForSegment: 0]]; + [newRule setAction: [Action actionWithType: [conditionResultTypeSegment selectedTag] + value: value]]; + [newRule setTarget: [conditionTargetType selectedTag]]; + //[newRule setResultType: [conditionResultTypeSegment selectedTag]]; + //[newRule setActionID: [[resultActionDropdown selectedItem] tag]]; + + // log(LOG_GENERAL, @"Created Rule: %@", newRule); + } + + return [newRule autorelease]; +} + +- (void)initiateEditorForRule: (Rule*)rule { + [_spellsMenu release]; _spellsMenu = nil; + [_itemsMenu release]; _itemsMenu = nil; + [_macrosMenu release]; _macrosMenu = nil; + [_interactMenu release]; _interactMenu = nil; + [_conditionList removeAllObjects]; + + // get our result menus + _spellsMenu = [[[ActionMenusController sharedMenus] menuType: MenuType_Spell actionID: [rule actionID]] retain]; // [[spellController playerSpellsMenu] retain]; + _itemsMenu = [[[ActionMenusController sharedMenus] menuType: MenuType_Inventory actionID: [rule actionID]] retain]; // [[inventoryController prettyInventoryItemsMenu] retain]; + _macrosMenu = [[[ActionMenusController sharedMenus] menuType: MenuType_Macro actionID: [rule actionID]] retain]; // [[self createMacroMenu] retain]; + _interactMenu = [[[ActionMenusController sharedMenus] menuType: MenuType_Interact actionID: [rule actionID]] retain]; // [[inventoryController prettyInventoryItemsMenu] retain]; + + [conditionResultTypeSegment selectSegmentWithTag: [rule resultType]]; + [self setResultType: conditionResultTypeSegment]; // this also sets the menu + + if ( rule != nil ) + [conditionTargetType selectSegmentWithTag: [rule target]]; + else + [conditionTargetType unselectAllSegments]; + + + if(rule) { + for(Condition *condition in [rule conditions]) { + [_conditionList addObject: [ConditionController conditionControllerWithCondition: condition]]; + } + + if( [rule isMatchAll] ) + [conditionMatchingSegment selectSegmentWithTag: 0]; + else + [conditionMatchingSegment selectSegmentWithTag: 1]; + + // if we dont have a real spell list (or our spell doesn't exist in the list), create a temporary one with just one spell + if(![resultActionDropdown selectItemWithTag: [rule actionID]]) { + + + NSMenu *noActionMenu = [[[NSMenu alloc] initWithTitle: @"No Menu"] autorelease]; + NSMenuItem *menuItem = [[[NSMenuItem alloc] initWithTitle: @"Error building menu." action: nil keyEquivalent: @""] autorelease]; + + [menuItem setTag: [rule actionID]]; + [noActionMenu addItem: menuItem]; + + [resultActionDropdown setMenu: noActionMenu]; + [resultActionDropdown selectItemWithTag: [rule actionID]]; + } + } + + if( [rule name] ) + [ruleNameText setStringValue: [rule name]]; + else + [ruleNameText setStringValue: [NSString string]]; + + [spellRuleTableView reloadData]; + [self validateBindings]; +} + +- (IBAction)addCondition:(id)sender { + //log(LOG_GENERAL, @"adding condition"); + + int type = [[spellRuleTypeDropdown selectedItem] tag]; + ConditionController *newRule = nil; + + if(type == 1) newRule = [[[HealthConditionController alloc] init] autorelease]; + if(type == 2) newRule = [[[StatusConditionController alloc] init] autorelease]; + if(type == 3) newRule = [[[AuraConditionController alloc] init] autorelease]; + if(type == 4) newRule = [[[DistanceConditionController alloc] init] autorelease]; + if(type == 5) newRule = [[[InventoryConditionController alloc] init] autorelease]; + if(type == 6) newRule = [[[ComboPointConditionController alloc] init] autorelease]; + if(type == 7) newRule = [[[AuraStackConditionController alloc] init] autorelease]; + if(type == 8) newRule = [[[TotemConditionController alloc] init] autorelease]; + if(type == 9) newRule = [[[TempEnchantConditionController alloc] init] autorelease]; + if(type == 10) newRule = [[[TargetTypeConditionController alloc] init] autorelease]; + if(type == 11) newRule = [[[TargetClassConditionController alloc] init] autorelease]; + if(type == 12) newRule = [[[CombatCountConditionController alloc] init] autorelease]; + if(type == 13) newRule = [[[ProximityCountConditionController alloc] init] autorelease]; + if(type == 14) newRule = [[[SpellCooldownConditionController alloc] init] autorelease]; + if(type == 15) newRule = [[[LastSpellCastConditionController alloc] init] autorelease]; + if(type == 16) newRule = [[[RuneConditionController alloc] init] autorelease]; + + if(newRule) { + [_conditionList addObject: newRule]; + [spellRuleTableView reloadData]; + [spellRuleTableView selectRowIndexes: [NSIndexSet indexSetWithIndex: [_conditionList count] - 1] byExtendingSelection: NO]; + + [sender selectItemWithTag: 0]; + } + [self validateBindings]; +} + +- (IBAction)testRule:(id)sender { + [botController testRule: [self rule]]; +} + +- (IBAction)testCondition:(id)sender { + int row = [spellRuleTableView selectedRow]; + if(row == -1) { + NSBeep(); + return; + } + + Condition *condition = [(ConditionController*)[_conditionList objectAtIndex: row] condition]; + if(condition) { + Rule *rule = [self rule]; + if(rule) { + [rule setConditions: [NSArray arrayWithObject: condition]]; + [botController testRule: rule]; + } + } +} + +- (IBAction)saveRule:(id)sender { + + [[sender window] makeFirstResponder: [[sender window] contentView]]; + + // check to see if a target is selected! It's now required! + BOOL targetSelected = NO; + int i; + for ( i = 0; i < [conditionTargetType segmentCount]; i++ ){ + if ( [conditionTargetType isSelectedForSegment:i] ){ + targetSelected = YES; + break; + } + } + + if( [[ruleNameText stringValue] length] && targetSelected ) { + [labelNoTarget setHidden:YES]; + [NSApp endSheet: [self window] returnCode: RuleEditorSaveRule]; + [[self window] orderOut: nil]; + } else { + + NSBeep(); + + NSRunAlertPanel(@"Select a target", @"You must choose a valid target, or your character will never attack or heal.", @"Okay", NULL, NULL); + + if ( !targetSelected ){ + [labelNoTarget setHidden:NO]; + } + } +} + +- (IBAction)cancelRule:(id)sender { + [NSApp endSheet: [self window] returnCode: RuleEditorCancelRule]; + [[self window] orderOut: nil]; +} + +- (IBAction)setResultType:(id)sender { + int oldTag = [[resultActionDropdown selectedItem] tag]; + + if([sender selectedTag] == ActionType_Spell) { + [resultActionDropdown setMenu: _spellsMenu]; + } + if([sender selectedTag] == ActionType_Item) { + [resultActionDropdown setMenu: _itemsMenu]; + } + if([sender selectedTag] == ActionType_Macro) { + [resultActionDropdown setMenu: _macrosMenu]; + } + if([sender selectedTag] == ActionType_None) { + NSMenu *noActionMenu = [[[NSMenu alloc] initWithTitle: @"No Action"] autorelease]; + NSMenuItem *menuItem = [[[NSMenuItem alloc] initWithTitle: @"Perform no action." action: nil keyEquivalent: @""] autorelease]; + + [menuItem setTag: 0]; + [noActionMenu addItem: menuItem]; + + [resultActionDropdown setMenu: noActionMenu]; + [resultActionDropdown selectItemWithTag: 0]; + } + if( [[resultActionDropdown menu] itemWithTag: oldTag] ) { + [resultActionDropdown selectItemWithTag: oldTag]; + } +} + +#pragma mark - +#pragma mark TableView Delegate/DataSource + +- (void) tableView:(NSTableView *) tableView willDisplayCell:(id) cell forTableColumn:(NSTableColumn *) tableColumn row:(int) row +{ + if( [[tableColumn identifier] isEqualToString: @"Conditions"] ) { + NSView *view = [[_conditionList objectAtIndex: row] view]; + [(ConditionCell*)cell addSubview: view]; + } +} + +// Methods from NSTableDataSource protocol +- (int) numberOfRowsInTableView:(NSTableView *) tableView +{ + return [_conditionList count]; +} + +- (id) tableView:(NSTableView *) tableView objectValueForTableColumn:(NSTableColumn *) tableColumn row:(int) row +{ + return @""; +} + +- (void)tableViewSelectionDidChange:(NSNotification *)aNotification { + [self validateBindings]; +} + +- (void)tableView: (NSTableView*)tableView deleteKeyPressedOnRowIndexes: (NSIndexSet*)rowIndexes { + if([rowIndexes count] == 0) return; + + int row = [rowIndexes lastIndex]; + while(row != NSNotFound) { + [_conditionList removeObjectAtIndex: row]; + row = [rowIndexes indexLessThanIndex: row]; + } + [spellRuleTableView reloadData]; +} + +- (BOOL)tableView:(NSTableView *)tableView shouldTypeSelectForEvent:(NSEvent *)event withCurrentSearchString:(NSString *)searchString { + return NO; +} + +#pragma mark Table Drag & Drop + +// begin drag operation, save row index +- (BOOL)tableView:(NSTableView *)tv writeRowsWithIndexes:(NSIndexSet *)rowIndexes toPasteboard:(NSPasteboard*)pboard { + // Copy the row numbers to the pasteboard. + NSData *data = [NSKeyedArchiver archivedDataWithRootObject:rowIndexes]; + [pboard declareTypes: [NSArray arrayWithObjects: @"Condition", nil] owner: self]; + [pboard setData: data forType: @"Condition"]; + return YES; +} + +// validate drag operation +- (NSDragOperation) tableView: (NSTableView*) tableView + validateDrop: (id ) info + proposedRow: (int) row + proposedDropOperation: (NSTableViewDropOperation) op +{ + int result = NSDragOperationNone; + + if (op == NSTableViewDropAbove) { + result = NSDragOperationMove; + + NSPasteboard* pboard = [info draggingPasteboard]; + NSData* rowData = [pboard dataForType: @"Condition"]; + NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData:rowData]; + int dragRow = [rowIndexes firstIndex]; + + if (dragRow == row || dragRow == row-1) result = NSDragOperationNone; + } + + return (result); + +} + +// accept the drop +- (BOOL)tableView: (NSTableView *)aTableView + acceptDrop: (id <NSDraggingInfo>)info + row: (int)row + dropOperation: (NSTableViewDropOperation)operation { + + NSPasteboard* pboard = [info draggingPasteboard]; + + NSData* rowData = [pboard dataForType: @"Condition"]; + if ( !rowData) return NO; + + NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData:rowData]; + if ( !rowIndexes ) return NO; + + int dragRow = [rowIndexes firstIndex]; + if ( dragRow < 0 ) return NO; + + // Move the specified row to its new location... + + ConditionController *condition = [[_conditionList objectAtIndex: dragRow] retain]; + if ( !condition ) return NO; + + log(LOG_DEV, @"Dropping %@ dragRow: %d row: %d", condition, dragRow, row) + + if(dragRow < row) row--; + [_conditionList removeObjectAtIndex: dragRow]; + [_conditionList insertObject: condition atIndex: row]; + + [condition release]; + [aTableView reloadData]; + + return YES; +} + +@end diff --git a/RuneCondition.xib b/RuneCondition.xib new file mode 100644 index 0000000..a9a7fa5 --- /dev/null +++ b/RuneCondition.xib @@ -0,0 +1,1268 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">RuneConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="974434570"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="1005299719"> + <reference key="NSNextResponder" ref="974434570"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{103, 5}, {86, 24}}</string> + <reference key="NSSuperview" ref="974434570"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="989725355"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="179050291"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="1005299719"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel">></string> + <int key="NSSegmentItemTag">1</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel">=</string> + <int key="NSSegmentItemTag">2</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">26</double> + <string key="NSSegmentItemLabel"><</string> + <int key="NSSegmentItemTag">3</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSelectedSegment">1</int> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSPopUpButton" id="1021712786"> + <reference key="NSNextResponder" ref="974434570"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{251, 3}, {92, 26}}</string> + <reference key="NSSuperview" ref="974434570"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="276144838"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="179050291"/> + <reference key="NSControlView" ref="1021712786"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="1043575178"> + <reference key="NSMenu" ref="333761335"/> + <string key="NSTitle">Blood</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="1028035404"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="883248712"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">21</int> + <reference key="NSTarget" ref="276144838"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="333761335"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1043575178"/> + <object class="NSMenuItem" id="396758094"> + <reference key="NSMenu" ref="333761335"/> + <string key="NSTitle">Unholy</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1028035404"/> + <reference key="NSMixedImage" ref="883248712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">22</int> + <reference key="NSTarget" ref="276144838"/> + </object> + <object class="NSMenuItem" id="877323099"> + <reference key="NSMenu" ref="333761335"/> + <string key="NSTitle">Frost</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1028035404"/> + <reference key="NSMixedImage" ref="883248712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">23</int> + <reference key="NSTarget" ref="276144838"/> + </object> + <object class="NSMenuItem" id="962533083"> + <reference key="NSMenu" ref="333761335"/> + <string key="NSTitle">Death</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1028035404"/> + <reference key="NSMixedImage" ref="883248712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">24</int> + <reference key="NSTarget" ref="276144838"/> + </object> + </object> + <reference key="NSMenuFont" ref="179050291"/> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSPopUpButton" id="331814659"> + <reference key="NSNextResponder" ref="974434570"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{192, 3}, {57, 26}}</string> + <reference key="NSSuperview" ref="974434570"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="109590142"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="179050291"/> + <reference key="NSControlView" ref="331814659"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="260883669"> + <reference key="NSMenu" ref="830227041"/> + <string key="NSTitle">1</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <reference key="NSOnImage" ref="1028035404"/> + <reference key="NSMixedImage" ref="883248712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">1</int> + <reference key="NSTarget" ref="109590142"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="830227041"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="998522147"> + <reference key="NSMenu" ref="830227041"/> + <string key="NSTitle">0</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1028035404"/> + <reference key="NSMixedImage" ref="883248712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="109590142"/> + </object> + <reference ref="260883669"/> + <object class="NSMenuItem" id="468965547"> + <reference key="NSMenu" ref="830227041"/> + <string key="NSTitle">2</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1028035404"/> + <reference key="NSMixedImage" ref="883248712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">2</int> + <reference key="NSTarget" ref="109590142"/> + </object> + </object> + <reference key="NSMenuFont" ref="179050291"/> + </object> + <int key="NSSelectedIndex">1</int> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSTextField" id="923881260"> + <reference key="NSNextResponder" ref="974434570"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{345, 9}, {107, 17}}</string> + <reference key="NSSuperview" ref="974434570"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="805167438"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">rune(s) available</string> + <reference key="NSSupport" ref="179050291"/> + <reference key="NSControlView" ref="923881260"/> + <object class="NSColor" key="NSBackgroundColor" id="323734996"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="893699282"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="690247327"> + <reference key="NSNextResponder" ref="974434570"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 7}, {20, 19}}</string> + <reference key="NSSuperview" ref="974434570"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="1006451541"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="690247327"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSTextField" id="753069048"> + <reference key="NSNextResponder" ref="974434570"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 9}, {68, 17}}</string> + <reference key="NSSuperview" ref="974434570"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="560183604"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Player has</string> + <reference key="NSSupport" ref="179050291"/> + <reference key="NSControlView" ref="753069048"/> + <reference key="NSBackgroundColor" ref="323734996"/> + <reference key="NSTextColor" ref="893699282"/> + </object> + </object> + </object> + <string key="NSFrameSize">{469, 35}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="974434570"/> + </object> + <int key="connectionID">22</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="690247327"/> + </object> + <int key="connectionID">33</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="690247327"/> + </object> + <int key="connectionID">34</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">quantityPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="331814659"/> + </object> + <int key="connectionID">50</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">qualityPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1021712786"/> + </object> + <int key="connectionID">51</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005299719"/> + </object> + <int key="connectionID">54</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="974434570"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="690247327"/> + <reference ref="753069048"/> + <reference ref="1005299719"/> + <reference ref="331814659"/> + <reference ref="1021712786"/> + <reference ref="923881260"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">3</int> + <reference key="object" ref="923881260"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="805167438"/> + </object> + <reference key="parent" ref="974434570"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">13</int> + <reference key="object" ref="805167438"/> + <reference key="parent" ref="923881260"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">23</int> + <reference key="object" ref="690247327"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1006451541"/> + </object> + <reference key="parent" ref="974434570"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">24</int> + <reference key="object" ref="1006451541"/> + <reference key="parent" ref="690247327"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">25</int> + <reference key="object" ref="753069048"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="560183604"/> + </object> + <reference key="parent" ref="974434570"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">26</int> + <reference key="object" ref="560183604"/> + <reference key="parent" ref="753069048"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">37</int> + <reference key="object" ref="331814659"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="109590142"/> + </object> + <reference key="parent" ref="974434570"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">38</int> + <reference key="object" ref="109590142"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="830227041"/> + </object> + <reference key="parent" ref="331814659"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">39</int> + <reference key="object" ref="830227041"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="998522147"/> + <reference ref="468965547"/> + <reference ref="260883669"/> + </object> + <reference key="parent" ref="109590142"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">40</int> + <reference key="object" ref="998522147"/> + <reference key="parent" ref="830227041"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">41</int> + <reference key="object" ref="260883669"/> + <reference key="parent" ref="830227041"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">42</int> + <reference key="object" ref="468965547"/> + <reference key="parent" ref="830227041"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">43</int> + <reference key="object" ref="1021712786"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="276144838"/> + </object> + <reference key="parent" ref="974434570"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">44</int> + <reference key="object" ref="276144838"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="333761335"/> + </object> + <reference key="parent" ref="1021712786"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">45</int> + <reference key="object" ref="333761335"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="396758094"/> + <reference ref="877323099"/> + <reference ref="1043575178"/> + <reference ref="962533083"/> + </object> + <reference key="parent" ref="276144838"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">46</int> + <reference key="object" ref="396758094"/> + <reference key="parent" ref="333761335"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">47</int> + <reference key="object" ref="877323099"/> + <reference key="parent" ref="333761335"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">48</int> + <reference key="object" ref="1043575178"/> + <reference key="parent" ref="333761335"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">49</int> + <reference key="object" ref="962533083"/> + <reference key="parent" ref="333761335"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="1005299719"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="989725355"/> + </object> + <reference key="parent" ref="974434570"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="989725355"/> + <reference key="parent" ref="1005299719"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>13.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>23.IBAttributePlaceholdersKey</string> + <string>23.IBPluginDependency</string> + <string>24.IBPluginDependency</string> + <string>25.IBPluginDependency</string> + <string>26.IBPluginDependency</string> + <string>3.IBPluginDependency</string> + <string>37.IBPluginDependency</string> + <string>38.IBPluginDependency</string> + <string>39.IBEditorWindowLastContentRect</string> + <string>39.IBPluginDependency</string> + <string>40.IBPluginDependency</string> + <string>41.IBPluginDependency</string> + <string>42.IBPluginDependency</string> + <string>43.IBPluginDependency</string> + <string>44.IBPluginDependency</string> + <string>45.IBEditorWindowLastContentRect</string> + <string>45.IBPluginDependency</string> + <string>46.IBPluginDependency</string> + <string>47.IBPluginDependency</string> + <string>48.IBPluginDependency</string> + <string>49.IBPluginDependency</string> + <string>52.CustomClassName</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{792, 572}, {469, 35}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{590, 350}, {376, 36}}</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="690247327"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{974, 470}, {75, 63}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{1065, 523}, {113, 83}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">54</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RuneConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorSegment</string> + <string>qualityPopUp</string> + <string>quantityPopUp</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BetterSegmentedControl</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RuneConditionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="272159276"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="418760472"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="28871420"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="919773680"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1054788436"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="631919433"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="272159276"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="418760472"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="28871420"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="919773680"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="1054788436"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="989910883"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="631919433"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="989910883"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/RuneConditionController.h b/RuneConditionController.h new file mode 100644 index 0000000..e183491 --- /dev/null +++ b/RuneConditionController.h @@ -0,0 +1,20 @@ +// +// RuneConditionController.h +// Pocket Gnome +// +// Created by Josh on 1/7/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface RuneConditionController : ConditionController { + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSPopUpButton *qualityPopUp; + IBOutlet NSPopUpButton *quantityPopUp; +} + +@end diff --git a/RuneConditionController.m b/RuneConditionController.m new file mode 100644 index 0000000..c175730 --- /dev/null +++ b/RuneConditionController.m @@ -0,0 +1,63 @@ +// +// RuneConditionController.m +// Pocket Gnome +// +// Created by Josh on 1/7/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "RuneConditionController.h" +#import "ConditionController.h" + +@implementation RuneConditionController + + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"RuneCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading RuneCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyRune + unit: UnitTarget + quality: [[qualityPopUp selectedItem] tag] // [qualitySegment selectedTag] + comparator: [comparatorSegment selectedTag] + state: StateNone + type: TypeValue + value: [NSNumber numberWithInt:[[quantityPopUp selectedItem] tag]]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyRune) return; + + if(![qualityPopUp selectItemWithTag: [condition quality]]) { + [qualityPopUp selectItemWithTag: 21]; + } + + if(![quantityPopUp selectItemWithTag: [[condition value] intValue]]) { + [quantityPopUp selectItemWithTag: 1]; + } + [comparatorSegment selectSegmentWithTag: [condition comparator]]; +} + +@end diff --git a/ScanGridView.h b/ScanGridView.h new file mode 100644 index 0000000..bb131c7 --- /dev/null +++ b/ScanGridView.h @@ -0,0 +1,22 @@ +// +// ScanGridView.h +// Pocket Gnome +// +// Created by Jon Drummond on 5/31/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@interface ScanGridView : NSView { + float xInc, yInc; + CGPoint scanPoint; + CGPoint origin; +} + +@property float xIncrement; +@property float yIncrement; +@property CGPoint scanPoint; +@property CGPoint origin; + +@end diff --git a/ScanGridView.m b/ScanGridView.m new file mode 100644 index 0000000..ed86dff --- /dev/null +++ b/ScanGridView.m @@ -0,0 +1,81 @@ +// +// ScanGridView.m +// Pocket Gnome +// +// Created by Jon Drummond on 5/31/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "ScanGridView.h" + + +@implementation ScanGridView + +@synthesize xIncrement = xInc; +@synthesize yIncrement = yInc; +@synthesize scanPoint; +@synthesize origin; + + +- (void)drawRect:(NSRect)aRect { + [[NSColor clearColor] set]; + [NSBezierPath fillRect: [self frame]]; + + + NSBezierPath *border = [NSBezierPath bezierPath]; + NSBezierPath *done = [NSBezierPath bezierPath]; + NSBezierPath *notDone = [NSBezierPath bezierPath]; + + // make box around us + [border moveToPoint: NSZeroPoint]; + [border lineToPoint: NSMakePoint(0, aRect.size.height)]; + [border lineToPoint: NSMakePoint(aRect.size.width, aRect.size.height)]; + [border lineToPoint: NSMakePoint(aRect.size.width, 0)]; + [border lineToPoint: NSZeroPoint]; + + int i; + if(self.xIncrement > 0) { + for(i=0; i<=aRect.size.width; i+=self.xIncrement) { + + if(i < self.scanPoint.x) { + [done moveToPoint: NSMakePoint(i, 0)]; + [done lineToPoint: NSMakePoint(i, aRect.size.height)]; + } else { + [notDone moveToPoint: NSMakePoint(i, 0)]; + [notDone lineToPoint: NSMakePoint(i, aRect.size.height)]; + } + } + } + if(self.yIncrement > 0) { + for(i=aRect.size.height; i>=0; i-=self.yIncrement) { + if(i > self.scanPoint.y) { + [done moveToPoint: NSMakePoint(0, i)]; + [done lineToPoint: NSMakePoint(aRect.size.width, i)]; + } else { + [notDone moveToPoint: NSMakePoint(0, i)]; + [notDone lineToPoint: NSMakePoint(aRect.size.width, i)]; + } + } + } + + NSRect focusBox = NSZeroRect; + focusBox.origin = NSPointFromCGPoint(self.scanPoint); + NSBezierPath *mouse = [NSBezierPath bezierPathWithOvalInRect: NSInsetRect(focusBox, -5, -5)]; + + [[NSColor greenColor] set]; + [done setLineWidth: 1.0]; + [done stroke]; + + [[NSColor redColor] set]; + [notDone setLineWidth: 1.0]; + [notDone stroke]; + + + [[NSColor orangeColor] set]; + [border setLineWidth: 4.0]; + [border stroke]; + [mouse fill]; + +} + +@end diff --git a/Shaman.png b/Shaman.png new file mode 100644 index 0000000..494d9a1 Binary files /dev/null and b/Shaman.png differ diff --git a/Shaman_Small.gif b/Shaman_Small.gif new file mode 100644 index 0000000..8684655 Binary files /dev/null and b/Shaman_Small.gif differ diff --git a/ShortcutRecorder.framework/.svn/all-wcprops b/ShortcutRecorder.framework/.svn/all-wcprops new file mode 100644 index 0000000..4fd1d7f --- /dev/null +++ b/ShortcutRecorder.framework/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 50 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework +END +ShortcutRecorder +K 25 +svn:wc:ra_dav:version-url +V 67 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/ShortcutRecorder +END +Resources +K 25 +svn:wc:ra_dav:version-url +V 60 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Resources +END +Headers +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Headers +END diff --git a/ShortcutRecorder.framework/.svn/entries b/ShortcutRecorder.framework/.svn/entries new file mode 100644 index 0000000..c429304 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.framework +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ShortcutRecorder +file + + + + +2010-04-24T16:43:08.000000Z +66ac0155fec73ae350dddfc10e0699d1 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +33 + +Versions +dir + +Resources +file + + + + +2010-04-24T16:43:08.000000Z +8a6539acc25a583ce7a88f6573bf4687 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +26 + +Headers +file + + + + +2010-04-24T16:43:08.000000Z +574393f6f6e7d44c9dfa3c805bbefb99 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +24 + diff --git a/ShortcutRecorder.framework/.svn/prop-base/Headers.svn-base b/ShortcutRecorder.framework/.svn/prop-base/Headers.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/prop-base/Headers.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.framework/.svn/prop-base/Resources.svn-base b/ShortcutRecorder.framework/.svn/prop-base/Resources.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/prop-base/Resources.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.framework/.svn/prop-base/ShortcutRecorder.svn-base b/ShortcutRecorder.framework/.svn/prop-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/prop-base/ShortcutRecorder.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.framework/.svn/text-base/Headers.svn-base b/ShortcutRecorder.framework/.svn/text-base/Headers.svn-base new file mode 100644 index 0000000..45bda20 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/text-base/Headers.svn-base @@ -0,0 +1 @@ +link Versions/Current/Headers \ No newline at end of file diff --git a/ShortcutRecorder.framework/.svn/text-base/Resources.svn-base b/ShortcutRecorder.framework/.svn/text-base/Resources.svn-base new file mode 100644 index 0000000..0af1f07 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/text-base/Resources.svn-base @@ -0,0 +1 @@ +link Versions/Current/Resources \ No newline at end of file diff --git a/ShortcutRecorder.framework/.svn/text-base/ShortcutRecorder.svn-base b/ShortcutRecorder.framework/.svn/text-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..2999e57 --- /dev/null +++ b/ShortcutRecorder.framework/.svn/text-base/ShortcutRecorder.svn-base @@ -0,0 +1 @@ +link Versions/Current/ShortcutRecorder \ No newline at end of file diff --git a/ShortcutRecorder.framework/Headers b/ShortcutRecorder.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/ShortcutRecorder.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/ShortcutRecorder.framework/Resources b/ShortcutRecorder.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/ShortcutRecorder.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/ShortcutRecorder.framework/ShortcutRecorder b/ShortcutRecorder.framework/ShortcutRecorder new file mode 120000 index 0000000..2be0db1 --- /dev/null +++ b/ShortcutRecorder.framework/ShortcutRecorder @@ -0,0 +1 @@ +Versions/Current/ShortcutRecorder \ No newline at end of file diff --git a/ShortcutRecorder.framework/Versions/.svn/all-wcprops b/ShortcutRecorder.framework/Versions/.svn/all-wcprops new file mode 100644 index 0000000..187429f --- /dev/null +++ b/ShortcutRecorder.framework/Versions/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 59 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions +END +Current +K 25 +svn:wc:ra_dav:version-url +V 67 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/Current +END diff --git a/ShortcutRecorder.framework/Versions/.svn/entries b/ShortcutRecorder.framework/Versions/.svn/entries new file mode 100644 index 0000000..e344e37 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.framework/Versions +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +A +dir + +Current +file + + + + +2010-04-24T16:43:08.000000Z +654580f41818cd6f51408c7cbd313728 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + +svn:special + + + + + + + + + + + + + + + + + +1 + diff --git a/ShortcutRecorder.framework/Versions/.svn/prop-base/Current.svn-base b/ShortcutRecorder.framework/Versions/.svn/prop-base/Current.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/.svn/prop-base/Current.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.framework/Versions/.svn/text-base/Current.svn-base b/ShortcutRecorder.framework/Versions/.svn/text-base/Current.svn-base new file mode 100644 index 0000000..613feee --- /dev/null +++ b/ShortcutRecorder.framework/Versions/.svn/text-base/Current.svn-base @@ -0,0 +1 @@ +link A \ No newline at end of file diff --git a/ShortcutRecorder.framework/Versions/A/.svn/all-wcprops b/ShortcutRecorder.framework/Versions/A/.svn/all-wcprops new file mode 100644 index 0000000..3a30f33 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 61 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A +END +ShortcutRecorder +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/ShortcutRecorder +END diff --git a/ShortcutRecorder.framework/Versions/A/.svn/entries b/ShortcutRecorder.framework/Versions/A/.svn/entries new file mode 100644 index 0000000..c5884a9 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/.svn/entries @@ -0,0 +1,68 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.framework/Versions/A +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ShortcutRecorder +file + + + + +2010-04-24T16:43:08.000000Z +487067c72dd8289917204ea65b98af7c +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com +has-props + + + + + + + + + + + + + + + + + + + + +249872 + +Resources +dir + +Headers +dir + diff --git a/ShortcutRecorder.framework/Versions/A/.svn/prop-base/ShortcutRecorder.svn-base b/ShortcutRecorder.framework/Versions/A/.svn/prop-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..cd0e69f --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/.svn/prop-base/ShortcutRecorder.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 0 + +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/ShortcutRecorder.framework/Versions/A/.svn/text-base/ShortcutRecorder.svn-base b/ShortcutRecorder.framework/Versions/A/.svn/text-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..b876868 Binary files /dev/null and b/ShortcutRecorder.framework/Versions/A/.svn/text-base/ShortcutRecorder.svn-base differ diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/all-wcprops b/ShortcutRecorder.framework/Versions/A/Headers/.svn/all-wcprops new file mode 100644 index 0000000..975b5e4 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/all-wcprops @@ -0,0 +1,53 @@ +K 25 +svn:wc:ra_dav:version-url +V 69 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers +END +SRValidator.h +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h +END +SRRecorderCell.h +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h +END +SRRecorderControl.h +K 25 +svn:wc:ra_dav:version-url +V 89 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h +END +SRKeyCodeTransformer.h +K 25 +svn:wc:ra_dav:version-url +V 92 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h +END +SRCommon.h +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h +END +ShortcutRecorder.h +K 25 +svn:wc:ra_dav:version-url +V 88 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h +END +CTGradient.h +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h +END +SR_LeopardView.h +K 25 +svn:wc:ra_dav:version-url +V 86 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h +END diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/entries b/ShortcutRecorder.framework/Versions/A/Headers/.svn/entries new file mode 100644 index 0000000..70969c3 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/entries @@ -0,0 +1,300 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.framework/Versions/A/Headers +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SRValidator.h +file + + + + +2010-04-24T16:43:08.000000Z +42223a77d4a990c515c75009704b16c6 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +834 + +SRRecorderCell.h +file + + + + +2010-04-24T16:43:08.000000Z +504266e4f2169c383012017c43f57886 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +3417 + +SRRecorderControl.h +file + + + + +2010-04-24T16:43:08.000000Z +55986780d991c5ab46ecfb50bf1f2e59 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +2023 + +SRKeyCodeTransformer.h +file + + + + +2010-04-24T16:43:08.000000Z +dbba528bb76ea832f58beaff1a16a6ba +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +302 + +SRCommon.h +file + + + + +2010-04-24T16:43:08.000000Z +656c0a2f6da6d52334a1fdc98e1c8caa +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +7659 + +ShortcutRecorder.h +file + + + + +2010-04-24T16:43:08.000000Z +a7af7dd493e6e65df2f311c15946cf81 +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +483 + +CTGradient.h +file + + + + +2010-04-24T16:43:08.000000Z +9a86ef7f4a4373f4292b2b4252df465c +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +1800 + +SR_LeopardView.h +file + + + + +2010-04-24T16:43:08.000000Z +74b89fe51153e702bbbc19b6e9344a3b +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +212 + diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/CTGradient.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/CTGradient.h.svn-base new file mode 100644 index 0000000..84ed22c --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/CTGradient.h.svn-base @@ -0,0 +1,69 @@ +// +// CTGradient.h +// +// Created by Chad Weider on 12/3/05. +// Copyright (c) 2006 Cotingent. +// Some rights reserved: <http://creativecommons.org/licenses/by/2.5/> +// +// Version: 1.5 + +#import <Cocoa/Cocoa.h> + +typedef struct _CTGradientElement + { + float red, green, blue, alpha; + float position; + + struct _CTGradientElement *nextElement; + } CTGradientElement; + +typedef enum _CTBlendingMode + { + CTLinearBlendingMode, + CTChromaticBlendingMode, + CTInverseChromaticBlendingMode + } CTGradientBlendingMode; + + +@interface CTGradient : NSObject <NSCopying, NSCoding> + { + CTGradientElement* elementList; + CTGradientBlendingMode blendingMode; + + CGFunctionRef gradientFunction; + } + ++ (id)gradientWithBeginningColor:(NSColor *)begin endingColor:(NSColor *)end; + ++ (id)aquaSelectedGradient; ++ (id)aquaNormalGradient; ++ (id)aquaPressedGradient; + ++ (id)unifiedSelectedGradient; ++ (id)unifiedNormalGradient; ++ (id)unifiedPressedGradient; ++ (id)unifiedDarkGradient; + ++ (id)rainbowGradient; ++ (id)hydrogenSpectrumGradient; + ++ (id)sourceListSelectedGradient; ++ (id)sourceListUnselectedGradient; + +- (CTGradient *)gradientWithAlphaComponent:(float)alpha; + +- (CTGradient *)addColorStop:(NSColor *)color atPosition:(float)position; //positions given relative to [0,1] +- (CTGradient *)removeColorStopAtIndex:(unsigned)index; +- (CTGradient *)removeColorStopAtPosition:(float)position; + +- (CTGradientBlendingMode)blendingMode; +- (NSColor *)colorStopAtIndex:(unsigned)index; +- (NSColor *)colorAtPosition:(float)position; + + +- (void)drawSwatchInRect:(NSRect)rect; +- (void)fillRect:(NSRect)rect angle:(float)angle; //fills rect with axial gradient + // angle in degrees +- (void)radialFillRect:(NSRect)rect; //fills rect with radial gradient + // gradient from center outwards +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRCommon.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRCommon.h.svn-base new file mode 100644 index 0000000..2ce34ff --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRCommon.h.svn-base @@ -0,0 +1,214 @@ +// +// SRCommon.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import <Carbon/Carbon.h> +#import <CoreServices/CoreServices.h> + + +#pragma mark Define magic +/* +#ifdef DEPRECATED_ATTRIBUTE +# define SR_DEPRECATED_ATTRIBUTE DEPRECATED_ATTRIBUTE +#else +# define SR_DEPRECATED_ATTRIBUTE +#endif*/ +// uncomment when this won't cause build errors +#define SR_DEPRECATED_ATTRIBUTE + +#pragma mark Dummy class + +@interface SRDummyClass : NSObject {} @end + +#pragma mark - +#pragma mark Typedefs + +typedef struct _KeyCombo { + unsigned int flags; // 0 for no flags + signed short code; // -1 for no code +} KeyCombo; + +#pragma mark - +#pragma mark Enums + +// Unicode values of some keyboard glyphs +enum { + KeyboardTabRightGlyph = 0x21E5, + KeyboardTabLeftGlyph = 0x21E4, + KeyboardCommandGlyph = kCommandUnicode, + KeyboardOptionGlyph = kOptionUnicode, + KeyboardShiftGlyph = kShiftUnicode, + KeyboardControlGlyph = kControlUnicode, + KeyboardReturnGlyph = 0x2305, + KeyboardReturnR2LGlyph = 0x21A9, + KeyboardDeleteLeftGlyph = 0x232B, + KeyboardDeleteRightGlyph = 0x2326, + KeyboardPadClearGlyph = 0x2327, + KeyboardLeftArrowGlyph = 0x2190, + KeyboardRightArrowGlyph = 0x2192, + KeyboardUpArrowGlyph = 0x2191, + KeyboardDownArrowGlyph = 0x2193, + KeyboardPageDownGlyph = 0x21DF, + KeyboardPageUpGlyph = 0x21DE, + KeyboardNorthwestArrowGlyph = 0x2196, + KeyboardSoutheastArrowGlyph = 0x2198, + KeyboardEscapeGlyph = 0x238B, + KeyboardHelpGlyph = 0x003F, + KeyboardUpArrowheadGlyph = 0x2303, +}; + +// Special keys +enum { + kSRKeysF1 = 122, + kSRKeysF2 = 120, + kSRKeysF3 = 99, + kSRKeysF4 = 118, + kSRKeysF5 = 96, + kSRKeysF6 = 97, + kSRKeysF7 = 98, + kSRKeysF8 = 100, + kSRKeysF9 = 101, + kSRKeysF10 = 109, + kSRKeysF11 = 103, + kSRKeysF12 = 111, + kSRKeysF13 = 105, + kSRKeysF14 = 107, + kSRKeysF15 = 113, + kSRKeysF16 = 106, + kSRKeysF17 = 0x40, /* kVK_F17, */ + kSRKeysF18 = 0x4F, /* kVK_F18 */ + kSRKeysF19 = 0x50, /* kVK_F19 */ + kSRKeysF20 = 0x5A, /* kVK_F20 */ + kSRKeysSpace = 49, + kSRKeysDeleteLeft = 51, + kSRKeysDeleteRight = 117, + kSRKeysPadClear = 71, + kSRKeysLeftArrow = 123, + kSRKeysRightArrow = 124, + kSRKeysUpArrow = 126, + kSRKeysDownArrow = 125, + kSRKeysSoutheastArrow = 119, + kSRKeysNorthwestArrow = 115, + kSRKeysEscape = 53, + kSRKeysPageDown = 121, + kSRKeysPageUp = 116, + kSRKeysReturnR2L = 36, + kSRKeysReturn = 76, + kSRKeysTabRight = 48, + kSRKeysHelp = 114 +}; + +#pragma mark - +#pragma mark Macros + +// Localization macros, for use in any bundle +#define SRLoc(key) SRLocalizedString(key, nil) +#define SRLocalizedString(key, comment) NSLocalizedStringFromTableInBundle(key, @"ShortcutRecorder", [NSBundle bundleForClass: [SRDummyClass class]], comment) + +// Image macros, for use in any bundle +//#define SRImage(name) [[[NSImage alloc] initWithContentsOfFile: [[NSBundle bundleForClass: [self class]] pathForImageResource: name]] autorelease] +#define SRResIndImage(name) [SRSharedImageProvider supportingImageWithName:name] +#define SRImage(name) SRResIndImage(name) + +//#define SRCommonWriteDebugImagery + +// Macros for glyps +#define SRInt(x) [NSNumber numberWithInt: x] +#define SRChar(x) [NSString stringWithFormat: @"%C", x] + +// Some default values +#define ShortcutRecorderEmptyFlags 0 +#define ShortcutRecorderAllFlags ShortcutRecorderEmptyFlags | (NSCommandKeyMask | NSAlternateKeyMask | NSControlKeyMask | NSShiftKeyMask | NSFunctionKeyMask) +#define ShortcutRecorderEmptyCode -1 + +// These keys will cancel the recoding mode if not pressed with any modifier +#define ShortcutRecorderEscapeKey 53 +#define ShortcutRecorderBackspaceKey 51 +#define ShortcutRecorderDeleteKey 117 + +#pragma mark - +#pragma mark Getting a string of the key combination + +// +// ################### +- Returns string from keyCode like NSEvent's -characters +// # EXPLANATORY # | +- Returns string from keyCode like NSEvent's -charactersUsingModifiers +// # CHART # | | +- Returns fully readable and localized name of modifier (if modifier given) +// ################### | | | +- Returns glyph of modifier (if modifier given) +// SRString... X - - X +// SRReadableString... X - X - +// SRCharacter... - X - - +// +NSString *SRStringForKeyCode( signed short keyCode ); +NSString *SRStringForCarbonModifierFlags( unsigned int flags ); +NSString *SRStringForCarbonModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRStringForCocoaModifierFlags( unsigned int flags ); +NSString *SRStringForCocoaModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRReadableStringForCarbonModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRReadableStringForCocoaModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRCharacterForKeyCodeAndCarbonFlags(signed short keyCode, unsigned int carbonFlags); +NSString *SRCharacterForKeyCodeAndCocoaFlags(signed short keyCode, unsigned int cocoaFlags); + +#pragma mark Converting between Cocoa and Carbon modifier flags + +unsigned int SRCarbonToCocoaFlags( unsigned int carbonFlags ); +unsigned int SRCocoaToCarbonFlags( unsigned int cocoaFlags ); + +#pragma mark - +#pragma mark Animation pace function + +double SRAnimationEaseInOut(double t); + +#pragma mark - +#pragma mark Inlines + +FOUNDATION_STATIC_INLINE KeyCombo SRMakeKeyCombo(signed short code, unsigned int flags) { + KeyCombo kc; + kc.code = code; + kc.flags = flags; + return kc; +} + +FOUNDATION_STATIC_INLINE BOOL SRIsSpecialKey(signed short keyCode) { + return (keyCode == kSRKeysF1 || keyCode == kSRKeysF2 || keyCode == kSRKeysF3 || keyCode == kSRKeysF4 || keyCode == kSRKeysF5 || keyCode == kSRKeysF6 || keyCode == kSRKeysF7 || keyCode == kSRKeysF8 || keyCode == kSRKeysF9 || keyCode == kSRKeysF10 || keyCode == kSRKeysF11 || keyCode == kSRKeysF12 || keyCode == kSRKeysF13 || keyCode == kSRKeysF14 || keyCode == kSRKeysF15 || keyCode == kSRKeysF16 || keyCode == kSRKeysF17 || keyCode == kSRKeysF18 || keyCode == kSRKeysF19 || keyCode == kSRKeysF20 || keyCode == kSRKeysSpace || keyCode == kSRKeysDeleteLeft || keyCode == kSRKeysDeleteRight || keyCode == kSRKeysPadClear || keyCode == kSRKeysLeftArrow || keyCode == kSRKeysRightArrow || keyCode == kSRKeysUpArrow || keyCode == kSRKeysDownArrow || keyCode == kSRKeysSoutheastArrow || keyCode == kSRKeysNorthwestArrow || keyCode == kSRKeysEscape || keyCode == kSRKeysPageDown || keyCode == kSRKeysPageUp || keyCode == kSRKeysReturnR2L || keyCode == kSRKeysReturn || keyCode == kSRKeysTabRight || keyCode == kSRKeysHelp); +} + +#pragma mark - +#pragma mark Additions + +// +// This segment is a category on NSBezierPath to supply roundrects. It's a common thing if you're drawing, +// so to integrate well, we use an oddball method signature to not implement the same method twice. +// +// This code is originally from http://www.cocoadev.com/index.pl?RoundedRectangles and no license demands +// (or Copyright demands) are stated, so we pretend it's public domain. +// +@interface NSBezierPath( SRAdditions ) ++ (NSBezierPath*)bezierPathWithSRCRoundRectInRect:(NSRect)aRect radius:(float)radius; +@end + +@interface NSError( SRAdditions ) +- (NSString *)localizedFailureReason; +- (NSString *)localizedRecoverySuggestion; +- (NSArray *)localizedRecoveryOptions; +@end + +@interface NSAlert( SRAdditions ) ++ (NSAlert *) alertWithNonRecoverableError:(NSError *)error; +@end + +#pragma mark - +#pragma mark Image provider + +@interface SRSharedImageProvider : NSObject ++ (NSImage *)supportingImageWithName:(NSString *)name; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRKeyCodeTransformer.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRKeyCodeTransformer.h.svn-base new file mode 100644 index 0000000..6f252f3 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRKeyCodeTransformer.h.svn-base @@ -0,0 +1,16 @@ +// +// SRKeyCodeTransformer.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRKeyCodeTransformer : NSValueTransformer {} @end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderCell.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderCell.h.svn-base new file mode 100644 index 0000000..88f66d4 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderCell.h.svn-base @@ -0,0 +1,138 @@ +// +// SRRecorderCell.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRCommon.h" + +#define SRMinWidth 50 +#define SRMaxHeight 22 + +#define SRTransitionFPS 30.0 +#define SRTransitionDuration 0.35 +//#define SRTransitionDuration 2.35 +#define SRTransitionFrames (SRTransitionFPS*SRTransitionDuration) +#define SRAnimationAxisIsY YES +#define ShortcutRecorderNewStyleDrawing + +#define SRAnimationOffsetRect(X,Y) (SRAnimationAxisIsY ? NSOffsetRect(X,0.0,-NSHeight(Y)) : NSOffsetRect(X,NSWidth(Y),0.0)) + +@class SRRecorderControl, CTGradient, SRValidator; + +enum SRRecorderStyle { + SRGradientBorderStyle = 0, + SRGreyStyle = 1 +}; +typedef enum SRRecorderStyle SRRecorderStyle; + +@interface SRRecorderCell : NSActionCell <NSCoding> +{ + CTGradient *recordingGradient; + NSString *autosaveName; + + BOOL isRecording; + BOOL mouseInsideTrackingArea; + BOOL mouseDown; + + SRRecorderStyle style; + + BOOL isAnimating; + double transitionProgress; + BOOL isAnimatingNow; + BOOL isAnimatingTowardsRecording; + BOOL comboJustChanged; + + NSTrackingRectTag removeTrackingRectTag; + NSTrackingRectTag snapbackTrackingRectTag; + + KeyCombo keyCombo; + BOOL hasKeyChars; + NSString *keyChars; + NSString *keyCharsIgnoringModifiers; + + unsigned int allowedFlags; + unsigned int requiredFlags; + unsigned int recordingFlags; + + BOOL allowsKeyOnly; + BOOL escapeKeysRecord; + + NSSet *cancelCharacterSet; + + SRValidator *validator; + + IBOutlet id delegate; + BOOL globalHotKeys; + void *hotKeyModeToken; +} + +- (void)resetTrackingRects; + +#pragma mark *** Aesthetics *** + ++ (BOOL)styleSupportsAnimation:(SRRecorderStyle)style; + +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** + +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Responder Control *** + +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; + +#pragma mark *** Key Combination Control *** + +- (BOOL)performKeyEquivalent:(NSEvent *)theEvent; +- (void)flagsChanged:(NSEvent *)theEvent; + +- (unsigned int)allowedFlags; +- (void)setAllowedFlags:(unsigned int)flags; + +- (unsigned int)requiredFlags; +- (void)setRequiredFlags:(unsigned int)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; +- (void)clearKeyCombo; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderCellDelegate) +- (BOOL)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +- (void)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell keyComboDidChange:(KeyCombo)newCombo; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderControl.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderControl.h.svn-base new file mode 100644 index 0000000..1db0a4c --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderControl.h.svn-base @@ -0,0 +1,82 @@ +// +// SRRecorderControl.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRRecorderCell.h" + +@interface SRRecorderControl : NSControl +{ + IBOutlet id delegate; +} + +#pragma mark *** Aesthetics *** +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Key Combination Control *** + +- (unsigned int)allowedFlags; +- (void)setAllowedFlags:(unsigned int)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (unsigned int)requiredFlags; +- (void)setRequiredFlags:(unsigned int)flags; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; +- (void)clearKeyCombo; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +#pragma mark *** Deprecated *** + +- (NSString *)autosaveName SR_DEPRECATED_ATTRIBUTE; +- (void)setAutosaveName:(NSString *)aName SR_DEPRECATED_ATTRIBUTE; + +#pragma mark - + +#pragma mark IB3 tomfoolery + +- (void)forIBuse__nilOutDeprecatedAutosaveName:(id)sender; +- (BOOL)forIBuse__hasDeprecatedAutosaveName; + +#pragma mark - + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +#pragma mark *** Conversion Methods *** + +- (unsigned int)cocoaToCarbonFlags:(unsigned int)cocoaFlags; +- (unsigned int)carbonToCocoaFlags:(unsigned int)carbonFlags; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderDelegate) +- (BOOL)shortcutRecorder:(SRRecorderControl *)aRecorder isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +- (void)shortcutRecorder:(SRRecorderControl *)aRecorder keyComboDidChange:(KeyCombo)newKeyCombo; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRValidator.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRValidator.h.svn-base new file mode 100644 index 0000000..2b44b06 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRValidator.h.svn-base @@ -0,0 +1,34 @@ +// +// SRValidator.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRValidator : NSObject { + id delegate; +} + +- (id) initWithDelegate:(id)theDelegate; + +- (BOOL) isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags error:(NSError **)error; +- (BOOL) isKeyCode:(signed short)keyCode andFlags:(unsigned int)flags takenInMenu:(NSMenu *)menu error:(NSError **)error; + +- (id) delegate; +- (void) setDelegate: (id) theDelegate; + +@end + +#pragma mark - + +@interface NSObject( SRValidation ) +- (BOOL) shortcutValidator:(SRValidator *)validator isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SR_LeopardView.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SR_LeopardView.h.svn-base new file mode 100644 index 0000000..26b78f3 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SR_LeopardView.h.svn-base @@ -0,0 +1,15 @@ +// +// SR_LeopardView.h +// SR Leopard +// +// Created by Jesper on 2007-10-19. +// Copyright 2007 __MyCompanyName__. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@interface SR_LeopardView : NSView { + +} + +@end \ No newline at end of file diff --git a/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/ShortcutRecorder.h.svn-base b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/ShortcutRecorder.h.svn-base new file mode 100644 index 0000000..6474bcb --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/ShortcutRecorder.h.svn-base @@ -0,0 +1,18 @@ +// +// ShortcutRecorder.h +// ShortcutRecorder +// - 10.5 version only; master framework header +// +// Copyright 2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors to this file: +// Jesper + +#import <ShortcutRecorder/SRCommon.h> +#import <ShortcutRecorder/CTGradient.h> +#import <ShortcutRecorder/SRKeyCodeTransformer.h> +#import <ShortcutRecorder/SRValidator.h> +#import <ShortcutRecorder/SRRecorderCell.h> +#import <ShortcutRecorder/SRRecorderControl.h> diff --git a/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h b/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h new file mode 100644 index 0000000..84ed22c --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h @@ -0,0 +1,69 @@ +// +// CTGradient.h +// +// Created by Chad Weider on 12/3/05. +// Copyright (c) 2006 Cotingent. +// Some rights reserved: <http://creativecommons.org/licenses/by/2.5/> +// +// Version: 1.5 + +#import <Cocoa/Cocoa.h> + +typedef struct _CTGradientElement + { + float red, green, blue, alpha; + float position; + + struct _CTGradientElement *nextElement; + } CTGradientElement; + +typedef enum _CTBlendingMode + { + CTLinearBlendingMode, + CTChromaticBlendingMode, + CTInverseChromaticBlendingMode + } CTGradientBlendingMode; + + +@interface CTGradient : NSObject <NSCopying, NSCoding> + { + CTGradientElement* elementList; + CTGradientBlendingMode blendingMode; + + CGFunctionRef gradientFunction; + } + ++ (id)gradientWithBeginningColor:(NSColor *)begin endingColor:(NSColor *)end; + ++ (id)aquaSelectedGradient; ++ (id)aquaNormalGradient; ++ (id)aquaPressedGradient; + ++ (id)unifiedSelectedGradient; ++ (id)unifiedNormalGradient; ++ (id)unifiedPressedGradient; ++ (id)unifiedDarkGradient; + ++ (id)rainbowGradient; ++ (id)hydrogenSpectrumGradient; + ++ (id)sourceListSelectedGradient; ++ (id)sourceListUnselectedGradient; + +- (CTGradient *)gradientWithAlphaComponent:(float)alpha; + +- (CTGradient *)addColorStop:(NSColor *)color atPosition:(float)position; //positions given relative to [0,1] +- (CTGradient *)removeColorStopAtIndex:(unsigned)index; +- (CTGradient *)removeColorStopAtPosition:(float)position; + +- (CTGradientBlendingMode)blendingMode; +- (NSColor *)colorStopAtIndex:(unsigned)index; +- (NSColor *)colorAtPosition:(float)position; + + +- (void)drawSwatchInRect:(NSRect)rect; +- (void)fillRect:(NSRect)rect angle:(float)angle; //fills rect with axial gradient + // angle in degrees +- (void)radialFillRect:(NSRect)rect; //fills rect with radial gradient + // gradient from center outwards +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h b/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h new file mode 100644 index 0000000..2ce34ff --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h @@ -0,0 +1,214 @@ +// +// SRCommon.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import <Carbon/Carbon.h> +#import <CoreServices/CoreServices.h> + + +#pragma mark Define magic +/* +#ifdef DEPRECATED_ATTRIBUTE +# define SR_DEPRECATED_ATTRIBUTE DEPRECATED_ATTRIBUTE +#else +# define SR_DEPRECATED_ATTRIBUTE +#endif*/ +// uncomment when this won't cause build errors +#define SR_DEPRECATED_ATTRIBUTE + +#pragma mark Dummy class + +@interface SRDummyClass : NSObject {} @end + +#pragma mark - +#pragma mark Typedefs + +typedef struct _KeyCombo { + unsigned int flags; // 0 for no flags + signed short code; // -1 for no code +} KeyCombo; + +#pragma mark - +#pragma mark Enums + +// Unicode values of some keyboard glyphs +enum { + KeyboardTabRightGlyph = 0x21E5, + KeyboardTabLeftGlyph = 0x21E4, + KeyboardCommandGlyph = kCommandUnicode, + KeyboardOptionGlyph = kOptionUnicode, + KeyboardShiftGlyph = kShiftUnicode, + KeyboardControlGlyph = kControlUnicode, + KeyboardReturnGlyph = 0x2305, + KeyboardReturnR2LGlyph = 0x21A9, + KeyboardDeleteLeftGlyph = 0x232B, + KeyboardDeleteRightGlyph = 0x2326, + KeyboardPadClearGlyph = 0x2327, + KeyboardLeftArrowGlyph = 0x2190, + KeyboardRightArrowGlyph = 0x2192, + KeyboardUpArrowGlyph = 0x2191, + KeyboardDownArrowGlyph = 0x2193, + KeyboardPageDownGlyph = 0x21DF, + KeyboardPageUpGlyph = 0x21DE, + KeyboardNorthwestArrowGlyph = 0x2196, + KeyboardSoutheastArrowGlyph = 0x2198, + KeyboardEscapeGlyph = 0x238B, + KeyboardHelpGlyph = 0x003F, + KeyboardUpArrowheadGlyph = 0x2303, +}; + +// Special keys +enum { + kSRKeysF1 = 122, + kSRKeysF2 = 120, + kSRKeysF3 = 99, + kSRKeysF4 = 118, + kSRKeysF5 = 96, + kSRKeysF6 = 97, + kSRKeysF7 = 98, + kSRKeysF8 = 100, + kSRKeysF9 = 101, + kSRKeysF10 = 109, + kSRKeysF11 = 103, + kSRKeysF12 = 111, + kSRKeysF13 = 105, + kSRKeysF14 = 107, + kSRKeysF15 = 113, + kSRKeysF16 = 106, + kSRKeysF17 = 0x40, /* kVK_F17, */ + kSRKeysF18 = 0x4F, /* kVK_F18 */ + kSRKeysF19 = 0x50, /* kVK_F19 */ + kSRKeysF20 = 0x5A, /* kVK_F20 */ + kSRKeysSpace = 49, + kSRKeysDeleteLeft = 51, + kSRKeysDeleteRight = 117, + kSRKeysPadClear = 71, + kSRKeysLeftArrow = 123, + kSRKeysRightArrow = 124, + kSRKeysUpArrow = 126, + kSRKeysDownArrow = 125, + kSRKeysSoutheastArrow = 119, + kSRKeysNorthwestArrow = 115, + kSRKeysEscape = 53, + kSRKeysPageDown = 121, + kSRKeysPageUp = 116, + kSRKeysReturnR2L = 36, + kSRKeysReturn = 76, + kSRKeysTabRight = 48, + kSRKeysHelp = 114 +}; + +#pragma mark - +#pragma mark Macros + +// Localization macros, for use in any bundle +#define SRLoc(key) SRLocalizedString(key, nil) +#define SRLocalizedString(key, comment) NSLocalizedStringFromTableInBundle(key, @"ShortcutRecorder", [NSBundle bundleForClass: [SRDummyClass class]], comment) + +// Image macros, for use in any bundle +//#define SRImage(name) [[[NSImage alloc] initWithContentsOfFile: [[NSBundle bundleForClass: [self class]] pathForImageResource: name]] autorelease] +#define SRResIndImage(name) [SRSharedImageProvider supportingImageWithName:name] +#define SRImage(name) SRResIndImage(name) + +//#define SRCommonWriteDebugImagery + +// Macros for glyps +#define SRInt(x) [NSNumber numberWithInt: x] +#define SRChar(x) [NSString stringWithFormat: @"%C", x] + +// Some default values +#define ShortcutRecorderEmptyFlags 0 +#define ShortcutRecorderAllFlags ShortcutRecorderEmptyFlags | (NSCommandKeyMask | NSAlternateKeyMask | NSControlKeyMask | NSShiftKeyMask | NSFunctionKeyMask) +#define ShortcutRecorderEmptyCode -1 + +// These keys will cancel the recoding mode if not pressed with any modifier +#define ShortcutRecorderEscapeKey 53 +#define ShortcutRecorderBackspaceKey 51 +#define ShortcutRecorderDeleteKey 117 + +#pragma mark - +#pragma mark Getting a string of the key combination + +// +// ################### +- Returns string from keyCode like NSEvent's -characters +// # EXPLANATORY # | +- Returns string from keyCode like NSEvent's -charactersUsingModifiers +// # CHART # | | +- Returns fully readable and localized name of modifier (if modifier given) +// ################### | | | +- Returns glyph of modifier (if modifier given) +// SRString... X - - X +// SRReadableString... X - X - +// SRCharacter... - X - - +// +NSString *SRStringForKeyCode( signed short keyCode ); +NSString *SRStringForCarbonModifierFlags( unsigned int flags ); +NSString *SRStringForCarbonModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRStringForCocoaModifierFlags( unsigned int flags ); +NSString *SRStringForCocoaModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRReadableStringForCarbonModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRReadableStringForCocoaModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRCharacterForKeyCodeAndCarbonFlags(signed short keyCode, unsigned int carbonFlags); +NSString *SRCharacterForKeyCodeAndCocoaFlags(signed short keyCode, unsigned int cocoaFlags); + +#pragma mark Converting between Cocoa and Carbon modifier flags + +unsigned int SRCarbonToCocoaFlags( unsigned int carbonFlags ); +unsigned int SRCocoaToCarbonFlags( unsigned int cocoaFlags ); + +#pragma mark - +#pragma mark Animation pace function + +double SRAnimationEaseInOut(double t); + +#pragma mark - +#pragma mark Inlines + +FOUNDATION_STATIC_INLINE KeyCombo SRMakeKeyCombo(signed short code, unsigned int flags) { + KeyCombo kc; + kc.code = code; + kc.flags = flags; + return kc; +} + +FOUNDATION_STATIC_INLINE BOOL SRIsSpecialKey(signed short keyCode) { + return (keyCode == kSRKeysF1 || keyCode == kSRKeysF2 || keyCode == kSRKeysF3 || keyCode == kSRKeysF4 || keyCode == kSRKeysF5 || keyCode == kSRKeysF6 || keyCode == kSRKeysF7 || keyCode == kSRKeysF8 || keyCode == kSRKeysF9 || keyCode == kSRKeysF10 || keyCode == kSRKeysF11 || keyCode == kSRKeysF12 || keyCode == kSRKeysF13 || keyCode == kSRKeysF14 || keyCode == kSRKeysF15 || keyCode == kSRKeysF16 || keyCode == kSRKeysF17 || keyCode == kSRKeysF18 || keyCode == kSRKeysF19 || keyCode == kSRKeysF20 || keyCode == kSRKeysSpace || keyCode == kSRKeysDeleteLeft || keyCode == kSRKeysDeleteRight || keyCode == kSRKeysPadClear || keyCode == kSRKeysLeftArrow || keyCode == kSRKeysRightArrow || keyCode == kSRKeysUpArrow || keyCode == kSRKeysDownArrow || keyCode == kSRKeysSoutheastArrow || keyCode == kSRKeysNorthwestArrow || keyCode == kSRKeysEscape || keyCode == kSRKeysPageDown || keyCode == kSRKeysPageUp || keyCode == kSRKeysReturnR2L || keyCode == kSRKeysReturn || keyCode == kSRKeysTabRight || keyCode == kSRKeysHelp); +} + +#pragma mark - +#pragma mark Additions + +// +// This segment is a category on NSBezierPath to supply roundrects. It's a common thing if you're drawing, +// so to integrate well, we use an oddball method signature to not implement the same method twice. +// +// This code is originally from http://www.cocoadev.com/index.pl?RoundedRectangles and no license demands +// (or Copyright demands) are stated, so we pretend it's public domain. +// +@interface NSBezierPath( SRAdditions ) ++ (NSBezierPath*)bezierPathWithSRCRoundRectInRect:(NSRect)aRect radius:(float)radius; +@end + +@interface NSError( SRAdditions ) +- (NSString *)localizedFailureReason; +- (NSString *)localizedRecoverySuggestion; +- (NSArray *)localizedRecoveryOptions; +@end + +@interface NSAlert( SRAdditions ) ++ (NSAlert *) alertWithNonRecoverableError:(NSError *)error; +@end + +#pragma mark - +#pragma mark Image provider + +@interface SRSharedImageProvider : NSObject ++ (NSImage *)supportingImageWithName:(NSString *)name; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h b/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h new file mode 100644 index 0000000..6f252f3 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h @@ -0,0 +1,16 @@ +// +// SRKeyCodeTransformer.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRKeyCodeTransformer : NSValueTransformer {} @end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h b/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h new file mode 100644 index 0000000..88f66d4 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h @@ -0,0 +1,138 @@ +// +// SRRecorderCell.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRCommon.h" + +#define SRMinWidth 50 +#define SRMaxHeight 22 + +#define SRTransitionFPS 30.0 +#define SRTransitionDuration 0.35 +//#define SRTransitionDuration 2.35 +#define SRTransitionFrames (SRTransitionFPS*SRTransitionDuration) +#define SRAnimationAxisIsY YES +#define ShortcutRecorderNewStyleDrawing + +#define SRAnimationOffsetRect(X,Y) (SRAnimationAxisIsY ? NSOffsetRect(X,0.0,-NSHeight(Y)) : NSOffsetRect(X,NSWidth(Y),0.0)) + +@class SRRecorderControl, CTGradient, SRValidator; + +enum SRRecorderStyle { + SRGradientBorderStyle = 0, + SRGreyStyle = 1 +}; +typedef enum SRRecorderStyle SRRecorderStyle; + +@interface SRRecorderCell : NSActionCell <NSCoding> +{ + CTGradient *recordingGradient; + NSString *autosaveName; + + BOOL isRecording; + BOOL mouseInsideTrackingArea; + BOOL mouseDown; + + SRRecorderStyle style; + + BOOL isAnimating; + double transitionProgress; + BOOL isAnimatingNow; + BOOL isAnimatingTowardsRecording; + BOOL comboJustChanged; + + NSTrackingRectTag removeTrackingRectTag; + NSTrackingRectTag snapbackTrackingRectTag; + + KeyCombo keyCombo; + BOOL hasKeyChars; + NSString *keyChars; + NSString *keyCharsIgnoringModifiers; + + unsigned int allowedFlags; + unsigned int requiredFlags; + unsigned int recordingFlags; + + BOOL allowsKeyOnly; + BOOL escapeKeysRecord; + + NSSet *cancelCharacterSet; + + SRValidator *validator; + + IBOutlet id delegate; + BOOL globalHotKeys; + void *hotKeyModeToken; +} + +- (void)resetTrackingRects; + +#pragma mark *** Aesthetics *** + ++ (BOOL)styleSupportsAnimation:(SRRecorderStyle)style; + +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** + +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Responder Control *** + +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; + +#pragma mark *** Key Combination Control *** + +- (BOOL)performKeyEquivalent:(NSEvent *)theEvent; +- (void)flagsChanged:(NSEvent *)theEvent; + +- (unsigned int)allowedFlags; +- (void)setAllowedFlags:(unsigned int)flags; + +- (unsigned int)requiredFlags; +- (void)setRequiredFlags:(unsigned int)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; +- (void)clearKeyCombo; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderCellDelegate) +- (BOOL)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +- (void)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell keyComboDidChange:(KeyCombo)newCombo; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h b/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h new file mode 100644 index 0000000..1db0a4c --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h @@ -0,0 +1,82 @@ +// +// SRRecorderControl.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRRecorderCell.h" + +@interface SRRecorderControl : NSControl +{ + IBOutlet id delegate; +} + +#pragma mark *** Aesthetics *** +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Key Combination Control *** + +- (unsigned int)allowedFlags; +- (void)setAllowedFlags:(unsigned int)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (unsigned int)requiredFlags; +- (void)setRequiredFlags:(unsigned int)flags; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; +- (void)clearKeyCombo; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +#pragma mark *** Deprecated *** + +- (NSString *)autosaveName SR_DEPRECATED_ATTRIBUTE; +- (void)setAutosaveName:(NSString *)aName SR_DEPRECATED_ATTRIBUTE; + +#pragma mark - + +#pragma mark IB3 tomfoolery + +- (void)forIBuse__nilOutDeprecatedAutosaveName:(id)sender; +- (BOOL)forIBuse__hasDeprecatedAutosaveName; + +#pragma mark - + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +#pragma mark *** Conversion Methods *** + +- (unsigned int)cocoaToCarbonFlags:(unsigned int)cocoaFlags; +- (unsigned int)carbonToCocoaFlags:(unsigned int)carbonFlags; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderDelegate) +- (BOOL)shortcutRecorder:(SRRecorderControl *)aRecorder isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +- (void)shortcutRecorder:(SRRecorderControl *)aRecorder keyComboDidChange:(KeyCombo)newKeyCombo; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h b/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h new file mode 100644 index 0000000..2b44b06 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h @@ -0,0 +1,34 @@ +// +// SRValidator.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRValidator : NSObject { + id delegate; +} + +- (id) initWithDelegate:(id)theDelegate; + +- (BOOL) isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags error:(NSError **)error; +- (BOOL) isKeyCode:(signed short)keyCode andFlags:(unsigned int)flags takenInMenu:(NSMenu *)menu error:(NSError **)error; + +- (id) delegate; +- (void) setDelegate: (id) theDelegate; + +@end + +#pragma mark - + +@interface NSObject( SRValidation ) +- (BOOL) shortcutValidator:(SRValidator *)validator isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +@end diff --git a/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h b/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h new file mode 100644 index 0000000..26b78f3 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h @@ -0,0 +1,15 @@ +// +// SR_LeopardView.h +// SR Leopard +// +// Created by Jesper on 2007-10-19. +// Copyright 2007 __MyCompanyName__. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@interface SR_LeopardView : NSView { + +} + +@end \ No newline at end of file diff --git a/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h b/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h new file mode 100644 index 0000000..6474bcb --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h @@ -0,0 +1,18 @@ +// +// ShortcutRecorder.h +// ShortcutRecorder +// - 10.5 version only; master framework header +// +// Copyright 2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors to this file: +// Jesper + +#import <ShortcutRecorder/SRCommon.h> +#import <ShortcutRecorder/CTGradient.h> +#import <ShortcutRecorder/SRKeyCodeTransformer.h> +#import <ShortcutRecorder/SRValidator.h> +#import <ShortcutRecorder/SRRecorderCell.h> +#import <ShortcutRecorder/SRRecorderControl.h> diff --git a/ShortcutRecorder.framework/Versions/A/Resources/.svn/all-wcprops b/ShortcutRecorder.framework/Versions/A/Resources/.svn/all-wcprops new file mode 100644 index 0000000..21be96b --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Resources/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 71 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Resources +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/445/trunk/ShortcutRecorder.framework/Versions/A/Resources/Info.plist +END diff --git a/ShortcutRecorder.framework/Versions/A/Resources/.svn/entries b/ShortcutRecorder.framework/Versions/A/Resources/.svn/entries new file mode 100644 index 0000000..774fea0 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Resources/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.framework/Versions/A/Resources +https://pocketgnome.googlecode.com/svn + + + +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Info.plist +file + + + + +2010-04-24T16:43:08.000000Z +c9305a30329cd30b9ccd343ac52d795a +2008-12-16T05:17:54.582275Z +2 +jond@savorydeviate.com + + + + + + + + + + + + + + + + + + + + + +643 + diff --git a/ShortcutRecorder.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base b/ShortcutRecorder.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..40a7e46 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>ShortcutRecorder</string> + <key>CFBundleIdentifier</key> + <string>net.wafflesoftware.ShortcutRecorder.framework.Leopard</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1.0</string> +</dict> +</plist> diff --git a/ShortcutRecorder.framework/Versions/A/Resources/Info.plist b/ShortcutRecorder.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..40a7e46 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>ShortcutRecorder</string> + <key>CFBundleIdentifier</key> + <string>net.wafflesoftware.ShortcutRecorder.framework.Leopard</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1.0</string> +</dict> +</plist> diff --git a/ShortcutRecorder.framework/Versions/A/ShortcutRecorder b/ShortcutRecorder.framework/Versions/A/ShortcutRecorder new file mode 100755 index 0000000..b876868 Binary files /dev/null and b/ShortcutRecorder.framework/Versions/A/ShortcutRecorder differ diff --git a/ShortcutRecorder.framework/Versions/Current b/ShortcutRecorder.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/ShortcutRecorder.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/.svn/all-wcprops b/ShortcutRecorder.ibplugin/.svn/all-wcprops new file mode 100644 index 0000000..ec65cd6 --- /dev/null +++ b/ShortcutRecorder.ibplugin/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 49 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin +END diff --git a/ShortcutRecorder.ibplugin/.svn/entries b/ShortcutRecorder.ibplugin/.svn/entries new file mode 100644 index 0000000..d1f6bf1 --- /dev/null +++ b/ShortcutRecorder.ibplugin/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Contents +dir + diff --git a/ShortcutRecorder.ibplugin/Contents/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/.svn/all-wcprops new file mode 100644 index 0000000..5d3b0d7 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 69 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Info.plist +END diff --git a/ShortcutRecorder.ibplugin/Contents/.svn/entries b/ShortcutRecorder.ibplugin/Contents/.svn/entries new file mode 100644 index 0000000..957369e --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/.svn/entries @@ -0,0 +1,71 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Frameworks +dir + +MacOS +dir + +Info.plist +file + + + + +2010-04-24T16:43:07.000000Z +40e92237993cabc67a22d4ace1abe912 +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +813 + +Resources +dir + diff --git a/ShortcutRecorder.ibplugin/Contents/.svn/text-base/Info.plist.svn-base b/ShortcutRecorder.ibplugin/Contents/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..1d522db --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/.svn/text-base/Info.plist.svn-base @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>ShortcutRecorder</string> + <key>CFBundleIdentifier</key> + <string>net.wafflesoftware.ShortcutRecorder.IB.Leopard</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>ShortcutRecorder</string> + <key>CFBundlePackageType</key> + <string>BNDL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1</string> + <key>NSPrincipalClass</key> + <string>SR_Leopard</string> +</dict> +</plist> diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Frameworks/.svn/all-wcprops new file mode 100644 index 0000000..97f8b0a --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 69 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Frameworks/.svn/entries new file mode 100644 index 0000000..93cb83b --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ShortcutRecorder.framework +dir + diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/all-wcprops new file mode 100644 index 0000000..c29546d --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework +END +ShortcutRecorder +K 25 +svn:wc:ra_dav:version-url +V 113 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder +END +Resources +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Resources +END +Headers +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Headers +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/entries new file mode 100644 index 0000000..a294d28 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ShortcutRecorder +file + + + + +2010-04-24T16:43:07.000000Z +66ac0155fec73ae350dddfc10e0699d1 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + +svn:special + + + + + + + + + + + + + + + + + +33 + +Versions +dir + +Resources +file + + + + +2010-04-24T16:43:07.000000Z +8a6539acc25a583ce7a88f6573bf4687 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + +svn:special + + + + + + + + + + + + + + + + + +26 + +Headers +file + + + + +2010-04-24T16:43:07.000000Z +574393f6f6e7d44c9dfa3c805bbefb99 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + +svn:special + + + + + + + + + + + + + + + + + +24 + diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/Headers.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/Headers.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/Headers.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/Resources.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/Resources.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/Resources.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/ShortcutRecorder.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/prop-base/ShortcutRecorder.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/Headers.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/Headers.svn-base new file mode 100644 index 0000000..45bda20 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/Headers.svn-base @@ -0,0 +1 @@ +link Versions/Current/Headers \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/Resources.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/Resources.svn-base new file mode 100644 index 0000000..0af1f07 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/Resources.svn-base @@ -0,0 +1 @@ +link Versions/Current/Resources \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/ShortcutRecorder.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..2999e57 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/.svn/text-base/ShortcutRecorder.svn-base @@ -0,0 +1 @@ +link Versions/Current/ShortcutRecorder \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Headers b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Resources b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder new file mode 120000 index 0000000..2be0db1 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder @@ -0,0 +1 @@ +Versions/Current/ShortcutRecorder \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/all-wcprops new file mode 100644 index 0000000..b1bfd94 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions +END +Current +K 25 +svn:wc:ra_dav:version-url +V 113 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/entries new file mode 100644 index 0000000..f4613c1 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +A +dir + +Current +file + + + + +2010-04-24T16:43:07.000000Z +654580f41818cd6f51408c7cbd313728 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + +svn:special + + + + + + + + + + + + + + + + + +1 + diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/prop-base/Current.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/prop-base/Current.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/prop-base/Current.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/text-base/Current.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/text-base/Current.svn-base new file mode 100644 index 0000000..613feee --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/.svn/text-base/Current.svn-base @@ -0,0 +1 @@ +link A \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/all-wcprops new file mode 100644 index 0000000..883946f --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A +END +ShortcutRecorder +K 25 +svn:wc:ra_dav:version-url +V 124 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/entries new file mode 100644 index 0000000..386cdc8 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/entries @@ -0,0 +1,68 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ShortcutRecorder +file + + + + +2010-04-24T16:43:07.000000Z +9d65e9f8c316a02c1335931d5ea414d3 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +273568 + +Resources +dir + +Headers +dir + diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/prop-base/ShortcutRecorder.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/prop-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/prop-base/ShortcutRecorder.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/text-base/ShortcutRecorder.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/text-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..c4c7293 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/.svn/text-base/ShortcutRecorder.svn-base differ diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/all-wcprops new file mode 100644 index 0000000..d4153fa --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/all-wcprops @@ -0,0 +1,47 @@ +K 25 +svn:wc:ra_dav:version-url +V 115 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers +END +SRValidator.h +K 25 +svn:wc:ra_dav:version-url +V 129 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h +END +SRRecorderCell.h +K 25 +svn:wc:ra_dav:version-url +V 132 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h +END +SRRecorderControl.h +K 25 +svn:wc:ra_dav:version-url +V 135 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h +END +SRKeyCodeTransformer.h +K 25 +svn:wc:ra_dav:version-url +V 138 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h +END +SRCommon.h +K 25 +svn:wc:ra_dav:version-url +V 126 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h +END +ShortcutRecorder.h +K 25 +svn:wc:ra_dav:version-url +V 134 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h +END +SR_LeopardView.h +K 25 +svn:wc:ra_dav:version-url +V 132 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/entries new file mode 100644 index 0000000..c5d6355 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/entries @@ -0,0 +1,266 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SRValidator.h +file + + + + +2010-04-24T16:43:07.000000Z +09e3f0aeae246de50bdf47bace581ca7 +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +819 + +SRRecorderCell.h +file + + + + +2010-04-24T16:43:07.000000Z +0c8c16d0c92168a564f0b00d00d85438 +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +3368 + +SRRecorderControl.h +file + + + + +2010-04-24T16:43:07.000000Z +cbb31deb5879790511d25f827bd9b7b6 +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1787 + +SRKeyCodeTransformer.h +file + + + + +2010-04-24T16:43:07.000000Z +dbba528bb76ea832f58beaff1a16a6ba +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +302 + +SRCommon.h +file + + + + +2010-04-24T16:43:07.000000Z +108b8b488ce547ae778070fbfd461010 +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +6498 + +ShortcutRecorder.h +file + + + + +2010-04-24T16:43:07.000000Z +5fd482a6cc3369800c014b31b1312122 +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +443 + +SR_LeopardView.h +file + + + + +2010-04-24T16:43:07.000000Z +74b89fe51153e702bbbc19b6e9344a3b +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +212 + diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRCommon.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRCommon.h.svn-base new file mode 100644 index 0000000..ce12ebf --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRCommon.h.svn-base @@ -0,0 +1,185 @@ +// +// SRCommon.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import <Carbon/Carbon.h> +#import <CoreServices/CoreServices.h> + +#pragma mark Dummy class + +@interface SRDummyClass : NSObject {} @end + +#pragma mark - +#pragma mark Typedefs + +typedef struct _KeyCombo { + NSUInteger flags; // 0 for no flags + NSInteger code; // -1 for no code +} KeyCombo; + +#pragma mark - +#pragma mark Enums + +// Unicode values of some keyboard glyphs +enum { + KeyboardTabRightGlyph = 0x21E5, + KeyboardTabLeftGlyph = 0x21E4, + KeyboardCommandGlyph = kCommandUnicode, + KeyboardOptionGlyph = kOptionUnicode, + KeyboardShiftGlyph = kShiftUnicode, + KeyboardControlGlyph = kControlUnicode, + KeyboardReturnGlyph = 0x2305, + KeyboardReturnR2LGlyph = 0x21A9, + KeyboardDeleteLeftGlyph = 0x232B, + KeyboardDeleteRightGlyph = 0x2326, + KeyboardPadClearGlyph = 0x2327, + KeyboardLeftArrowGlyph = 0x2190, + KeyboardRightArrowGlyph = 0x2192, + KeyboardUpArrowGlyph = 0x2191, + KeyboardDownArrowGlyph = 0x2193, + KeyboardPageDownGlyph = 0x21DF, + KeyboardPageUpGlyph = 0x21DE, + KeyboardNorthwestArrowGlyph = 0x2196, + KeyboardSoutheastArrowGlyph = 0x2198, + KeyboardEscapeGlyph = 0x238B, + KeyboardHelpGlyph = 0x003F, + KeyboardUpArrowheadGlyph = 0x2303, +}; + +// Special keys +enum { + kSRKeysF1 = 122, + kSRKeysF2 = 120, + kSRKeysF3 = 99, + kSRKeysF4 = 118, + kSRKeysF5 = 96, + kSRKeysF6 = 97, + kSRKeysF7 = 98, + kSRKeysF8 = 100, + kSRKeysF9 = 101, + kSRKeysF10 = 109, + kSRKeysF11 = 103, + kSRKeysF12 = 111, + kSRKeysF13 = 105, + kSRKeysF14 = 107, + kSRKeysF15 = 113, + kSRKeysF16 = 106, + kSRKeysF17 = 64, + kSRKeysF18 = 79, + kSRKeysF19 = 80, + kSRKeysSpace = 49, + kSRKeysDeleteLeft = 51, + kSRKeysDeleteRight = 117, + kSRKeysPadClear = 71, + kSRKeysLeftArrow = 123, + kSRKeysRightArrow = 124, + kSRKeysUpArrow = 126, + kSRKeysDownArrow = 125, + kSRKeysSoutheastArrow = 119, + kSRKeysNorthwestArrow = 115, + kSRKeysEscape = 53, + kSRKeysPageDown = 121, + kSRKeysPageUp = 116, + kSRKeysReturnR2L = 36, + kSRKeysReturn = 76, + kSRKeysTabRight = 48, + kSRKeysHelp = 114 +}; + +#pragma mark - +#pragma mark Macros + +// Localization macros, for use in any bundle +#define SRLoc(key) SRLocalizedString(key, nil) +#define SRLocalizedString(key, comment) NSLocalizedStringFromTableInBundle(key, @"ShortcutRecorder", [NSBundle bundleForClass: [SRDummyClass class]], comment) + +// Image macros, for use in any bundle +//#define SRImage(name) [[[NSImage alloc] initWithContentsOfFile: [[NSBundle bundleForClass: [self class]] pathForImageResource: name]] autorelease] +#define SRResIndImage(name) [SRSharedImageProvider supportingImageWithName:name] +#define SRImage(name) SRResIndImage(name) + +//#define SRCommonWriteDebugImagery + +// Macros for glyps +#define SRInt(x) [NSNumber numberWithInteger:x] +#define SRChar(x) [NSString stringWithFormat: @"%C", x] + +// Some default values +#define ShortcutRecorderEmptyFlags 0 +#define ShortcutRecorderAllFlags ShortcutRecorderEmptyFlags | (NSCommandKeyMask | NSAlternateKeyMask | NSControlKeyMask | NSShiftKeyMask | NSFunctionKeyMask) +#define ShortcutRecorderEmptyCode -1 + +// These keys will cancel the recoding mode if not pressed with any modifier +#define ShortcutRecorderEscapeKey 53 +#define ShortcutRecorderBackspaceKey 51 +#define ShortcutRecorderDeleteKey 117 + +#pragma mark - +#pragma mark Getting a string of the key combination + +// +// ################### +- Returns string from keyCode like NSEvent's -characters +// # EXPLANATORY # | +- Returns string from keyCode like NSEvent's -charactersUsingModifiers +// # CHART # | | +- Returns fully readable and localized name of modifier (if modifier given) +// ################### | | | +- Returns glyph of modifier (if modifier given) +// SRString... X - - X +// SRReadableString... X - X - +// SRCharacter... - X - - +// +NSString * SRStringForKeyCode( NSInteger keyCode ); +NSString * SRStringForCarbonModifierFlags( NSUInteger flags ); +NSString * SRStringForCarbonModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString * SRStringForCocoaModifierFlags( NSUInteger flags ); +NSString * SRStringForCocoaModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString * SRReadableStringForCarbonModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString * SRReadableStringForCocoaModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString *SRCharacterForKeyCodeAndCarbonFlags(NSInteger keyCode, NSUInteger carbonFlags); +NSString *SRCharacterForKeyCodeAndCocoaFlags(NSInteger keyCode, NSUInteger cocoaFlags); + +#pragma mark Converting between Cocoa and Carbon modifier flags + +NSUInteger SRCarbonToCocoaFlags( NSUInteger carbonFlags ); +NSUInteger SRCocoaToCarbonFlags( NSUInteger cocoaFlags ); + +#pragma mark - +#pragma mark Animation pace function + +CGFloat SRAnimationEaseInOut(CGFloat t); + +#pragma mark - +#pragma mark Inlines + +FOUNDATION_STATIC_INLINE KeyCombo SRMakeKeyCombo(NSInteger code, NSUInteger flags) { + KeyCombo kc; + kc.code = code; + kc.flags = flags; + return kc; +} + +FOUNDATION_STATIC_INLINE BOOL SRIsSpecialKey(NSInteger keyCode) { + return (keyCode == kSRKeysF1 || keyCode == kSRKeysF2 || keyCode == kSRKeysF3 || keyCode == kSRKeysF4 || keyCode == kSRKeysF5 || keyCode == kSRKeysF6 || keyCode == kSRKeysF7 || keyCode == kSRKeysF8 || keyCode == kSRKeysF9 || keyCode == kSRKeysF10 || keyCode == kSRKeysF11 || keyCode == kSRKeysF12 || keyCode == kSRKeysF13 || keyCode == kSRKeysF14 || keyCode == kSRKeysF15 || keyCode == kSRKeysF16 || keyCode == kSRKeysSpace || keyCode == kSRKeysDeleteLeft || keyCode == kSRKeysDeleteRight || keyCode == kSRKeysPadClear || keyCode == kSRKeysLeftArrow || keyCode == kSRKeysRightArrow || keyCode == kSRKeysUpArrow || keyCode == kSRKeysDownArrow || keyCode == kSRKeysSoutheastArrow || keyCode == kSRKeysNorthwestArrow || keyCode == kSRKeysEscape || keyCode == kSRKeysPageDown || keyCode == kSRKeysPageUp || keyCode == kSRKeysReturnR2L || keyCode == kSRKeysReturn || keyCode == kSRKeysTabRight || keyCode == kSRKeysHelp); +} + +#pragma mark - +#pragma mark Additions + +@interface NSAlert( SRAdditions ) ++ (NSAlert *) alertWithNonRecoverableError:(NSError *)error; +@end + +#pragma mark - +#pragma mark Image provider + +@interface SRSharedImageProvider : NSObject ++ (NSImage *)supportingImageWithName:(NSString *)name; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRKeyCodeTransformer.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRKeyCodeTransformer.h.svn-base new file mode 100644 index 0000000..6f252f3 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRKeyCodeTransformer.h.svn-base @@ -0,0 +1,16 @@ +// +// SRKeyCodeTransformer.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRKeyCodeTransformer : NSValueTransformer {} @end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderCell.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderCell.h.svn-base new file mode 100644 index 0000000..31b3854 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderCell.h.svn-base @@ -0,0 +1,137 @@ +// +// SRRecorderCell.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRCommon.h" + +#define SRMinWidth 50 +#define SRMaxHeight 22 + +#define SRTransitionFPS 30.0f +#define SRTransitionDuration 0.35f +//#define SRTransitionDuration 2.35 +#define SRTransitionFrames (SRTransitionFPS*SRTransitionDuration) +#define SRAnimationAxisIsY YES +#define ShortcutRecorderNewStyleDrawing + +#define SRAnimationOffsetRect(X,Y) (SRAnimationAxisIsY ? NSOffsetRect(X,0.0f,-NSHeight(Y)) : NSOffsetRect(X,NSWidth(Y),0.0f)) + +@class SRRecorderControl, SRValidator; + +enum SRRecorderStyle { + SRGradientBorderStyle = 0, + SRGreyStyle = 1 +}; +typedef enum SRRecorderStyle SRRecorderStyle; + +@interface SRRecorderCell : NSActionCell <NSCoding> +{ + NSGradient *recordingGradient; + NSString *autosaveName; + + BOOL isRecording; + BOOL mouseInsideTrackingArea; + BOOL mouseDown; + + SRRecorderStyle style; + + BOOL isAnimating; + CGFloat transitionProgress; + BOOL isAnimatingNow; + BOOL isAnimatingTowardsRecording; + BOOL comboJustChanged; + + NSTrackingRectTag removeTrackingRectTag; + NSTrackingRectTag snapbackTrackingRectTag; + + KeyCombo keyCombo; + BOOL hasKeyChars; + NSString *keyChars; + NSString *keyCharsIgnoringModifiers; + + NSUInteger allowedFlags; + NSUInteger requiredFlags; + NSUInteger recordingFlags; + + BOOL allowsKeyOnly; + BOOL escapeKeysRecord; + + NSSet *cancelCharacterSet; + + SRValidator *validator; + + IBOutlet id delegate; + BOOL globalHotKeys; + void *hotKeyModeToken; +} + +- (void)resetTrackingRects; + +#pragma mark *** Aesthetics *** + ++ (BOOL)styleSupportsAnimation:(SRRecorderStyle)style; + +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** + +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Responder Control *** + +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; + +#pragma mark *** Key Combination Control *** + +- (BOOL)performKeyEquivalent:(NSEvent *)theEvent; +- (void)flagsChanged:(NSEvent *)theEvent; + +- (NSUInteger)allowedFlags; +- (void)setAllowedFlags:(NSUInteger)flags; + +- (NSUInteger)requiredFlags; +- (void)setRequiredFlags:(NSUInteger)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderCellDelegate) +- (BOOL)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; +- (void)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell keyComboDidChange:(KeyCombo)newCombo; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderControl.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderControl.h.svn-base new file mode 100644 index 0000000..15134e9 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRRecorderControl.h.svn-base @@ -0,0 +1,74 @@ +// +// SRRecorderControl.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRRecorderCell.h" + +@interface SRRecorderControl : NSControl +{ + IBOutlet id delegate; +} + +#pragma mark *** Aesthetics *** +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Key Combination Control *** + +- (NSUInteger)allowedFlags; +- (void)setAllowedFlags:(NSUInteger)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (NSUInteger)requiredFlags; +- (void)setRequiredFlags:(NSUInteger)flags; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +#pragma mark - + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +#pragma mark *** Conversion Methods *** + +- (NSUInteger)cocoaToCarbonFlags:(NSUInteger)cocoaFlags; +- (NSUInteger)carbonToCocoaFlags:(NSUInteger)carbonFlags; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderDelegate) +- (BOOL)shortcutRecorder:(SRRecorderControl *)aRecorder isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; +- (void)shortcutRecorder:(SRRecorderControl *)aRecorder keyComboDidChange:(KeyCombo)newKeyCombo; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRValidator.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRValidator.h.svn-base new file mode 100644 index 0000000..0dd8f28 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SRValidator.h.svn-base @@ -0,0 +1,34 @@ +// +// SRValidator.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRValidator : NSObject { + id delegate; +} + +- (id) initWithDelegate:(id)theDelegate; + +- (BOOL) isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags error:(NSError **)error; +- (BOOL) isKeyCode:(NSInteger)keyCode andFlags:(NSUInteger)flags takenInMenu:(NSMenu *)menu error:(NSError **)error; + +- (id) delegate; +- (void) setDelegate: (id) theDelegate; + +@end + +#pragma mark - + +@interface NSObject( SRValidation ) +- (BOOL) shortcutValidator:(SRValidator *)validator isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SR_LeopardView.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SR_LeopardView.h.svn-base new file mode 100644 index 0000000..26b78f3 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/SR_LeopardView.h.svn-base @@ -0,0 +1,15 @@ +// +// SR_LeopardView.h +// SR Leopard +// +// Created by Jesper on 2007-10-19. +// Copyright 2007 __MyCompanyName__. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@interface SR_LeopardView : NSView { + +} + +@end \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/ShortcutRecorder.h.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/ShortcutRecorder.h.svn-base new file mode 100644 index 0000000..855a288 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/.svn/text-base/ShortcutRecorder.h.svn-base @@ -0,0 +1,17 @@ +// +// ShortcutRecorder.h +// ShortcutRecorder +// - 10.5 version only; master framework header +// +// Copyright 2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors to this file: +// Jesper + +#import <ShortcutRecorder/SRCommon.h> +#import <ShortcutRecorder/SRKeyCodeTransformer.h> +#import <ShortcutRecorder/SRValidator.h> +#import <ShortcutRecorder/SRRecorderCell.h> +#import <ShortcutRecorder/SRRecorderControl.h> diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h new file mode 100644 index 0000000..ce12ebf --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h @@ -0,0 +1,185 @@ +// +// SRCommon.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import <Carbon/Carbon.h> +#import <CoreServices/CoreServices.h> + +#pragma mark Dummy class + +@interface SRDummyClass : NSObject {} @end + +#pragma mark - +#pragma mark Typedefs + +typedef struct _KeyCombo { + NSUInteger flags; // 0 for no flags + NSInteger code; // -1 for no code +} KeyCombo; + +#pragma mark - +#pragma mark Enums + +// Unicode values of some keyboard glyphs +enum { + KeyboardTabRightGlyph = 0x21E5, + KeyboardTabLeftGlyph = 0x21E4, + KeyboardCommandGlyph = kCommandUnicode, + KeyboardOptionGlyph = kOptionUnicode, + KeyboardShiftGlyph = kShiftUnicode, + KeyboardControlGlyph = kControlUnicode, + KeyboardReturnGlyph = 0x2305, + KeyboardReturnR2LGlyph = 0x21A9, + KeyboardDeleteLeftGlyph = 0x232B, + KeyboardDeleteRightGlyph = 0x2326, + KeyboardPadClearGlyph = 0x2327, + KeyboardLeftArrowGlyph = 0x2190, + KeyboardRightArrowGlyph = 0x2192, + KeyboardUpArrowGlyph = 0x2191, + KeyboardDownArrowGlyph = 0x2193, + KeyboardPageDownGlyph = 0x21DF, + KeyboardPageUpGlyph = 0x21DE, + KeyboardNorthwestArrowGlyph = 0x2196, + KeyboardSoutheastArrowGlyph = 0x2198, + KeyboardEscapeGlyph = 0x238B, + KeyboardHelpGlyph = 0x003F, + KeyboardUpArrowheadGlyph = 0x2303, +}; + +// Special keys +enum { + kSRKeysF1 = 122, + kSRKeysF2 = 120, + kSRKeysF3 = 99, + kSRKeysF4 = 118, + kSRKeysF5 = 96, + kSRKeysF6 = 97, + kSRKeysF7 = 98, + kSRKeysF8 = 100, + kSRKeysF9 = 101, + kSRKeysF10 = 109, + kSRKeysF11 = 103, + kSRKeysF12 = 111, + kSRKeysF13 = 105, + kSRKeysF14 = 107, + kSRKeysF15 = 113, + kSRKeysF16 = 106, + kSRKeysF17 = 64, + kSRKeysF18 = 79, + kSRKeysF19 = 80, + kSRKeysSpace = 49, + kSRKeysDeleteLeft = 51, + kSRKeysDeleteRight = 117, + kSRKeysPadClear = 71, + kSRKeysLeftArrow = 123, + kSRKeysRightArrow = 124, + kSRKeysUpArrow = 126, + kSRKeysDownArrow = 125, + kSRKeysSoutheastArrow = 119, + kSRKeysNorthwestArrow = 115, + kSRKeysEscape = 53, + kSRKeysPageDown = 121, + kSRKeysPageUp = 116, + kSRKeysReturnR2L = 36, + kSRKeysReturn = 76, + kSRKeysTabRight = 48, + kSRKeysHelp = 114 +}; + +#pragma mark - +#pragma mark Macros + +// Localization macros, for use in any bundle +#define SRLoc(key) SRLocalizedString(key, nil) +#define SRLocalizedString(key, comment) NSLocalizedStringFromTableInBundle(key, @"ShortcutRecorder", [NSBundle bundleForClass: [SRDummyClass class]], comment) + +// Image macros, for use in any bundle +//#define SRImage(name) [[[NSImage alloc] initWithContentsOfFile: [[NSBundle bundleForClass: [self class]] pathForImageResource: name]] autorelease] +#define SRResIndImage(name) [SRSharedImageProvider supportingImageWithName:name] +#define SRImage(name) SRResIndImage(name) + +//#define SRCommonWriteDebugImagery + +// Macros for glyps +#define SRInt(x) [NSNumber numberWithInteger:x] +#define SRChar(x) [NSString stringWithFormat: @"%C", x] + +// Some default values +#define ShortcutRecorderEmptyFlags 0 +#define ShortcutRecorderAllFlags ShortcutRecorderEmptyFlags | (NSCommandKeyMask | NSAlternateKeyMask | NSControlKeyMask | NSShiftKeyMask | NSFunctionKeyMask) +#define ShortcutRecorderEmptyCode -1 + +// These keys will cancel the recoding mode if not pressed with any modifier +#define ShortcutRecorderEscapeKey 53 +#define ShortcutRecorderBackspaceKey 51 +#define ShortcutRecorderDeleteKey 117 + +#pragma mark - +#pragma mark Getting a string of the key combination + +// +// ################### +- Returns string from keyCode like NSEvent's -characters +// # EXPLANATORY # | +- Returns string from keyCode like NSEvent's -charactersUsingModifiers +// # CHART # | | +- Returns fully readable and localized name of modifier (if modifier given) +// ################### | | | +- Returns glyph of modifier (if modifier given) +// SRString... X - - X +// SRReadableString... X - X - +// SRCharacter... - X - - +// +NSString * SRStringForKeyCode( NSInteger keyCode ); +NSString * SRStringForCarbonModifierFlags( NSUInteger flags ); +NSString * SRStringForCarbonModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString * SRStringForCocoaModifierFlags( NSUInteger flags ); +NSString * SRStringForCocoaModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString * SRReadableStringForCarbonModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString * SRReadableStringForCocoaModifierFlagsAndKeyCode( NSUInteger flags, NSInteger keyCode ); +NSString *SRCharacterForKeyCodeAndCarbonFlags(NSInteger keyCode, NSUInteger carbonFlags); +NSString *SRCharacterForKeyCodeAndCocoaFlags(NSInteger keyCode, NSUInteger cocoaFlags); + +#pragma mark Converting between Cocoa and Carbon modifier flags + +NSUInteger SRCarbonToCocoaFlags( NSUInteger carbonFlags ); +NSUInteger SRCocoaToCarbonFlags( NSUInteger cocoaFlags ); + +#pragma mark - +#pragma mark Animation pace function + +CGFloat SRAnimationEaseInOut(CGFloat t); + +#pragma mark - +#pragma mark Inlines + +FOUNDATION_STATIC_INLINE KeyCombo SRMakeKeyCombo(NSInteger code, NSUInteger flags) { + KeyCombo kc; + kc.code = code; + kc.flags = flags; + return kc; +} + +FOUNDATION_STATIC_INLINE BOOL SRIsSpecialKey(NSInteger keyCode) { + return (keyCode == kSRKeysF1 || keyCode == kSRKeysF2 || keyCode == kSRKeysF3 || keyCode == kSRKeysF4 || keyCode == kSRKeysF5 || keyCode == kSRKeysF6 || keyCode == kSRKeysF7 || keyCode == kSRKeysF8 || keyCode == kSRKeysF9 || keyCode == kSRKeysF10 || keyCode == kSRKeysF11 || keyCode == kSRKeysF12 || keyCode == kSRKeysF13 || keyCode == kSRKeysF14 || keyCode == kSRKeysF15 || keyCode == kSRKeysF16 || keyCode == kSRKeysSpace || keyCode == kSRKeysDeleteLeft || keyCode == kSRKeysDeleteRight || keyCode == kSRKeysPadClear || keyCode == kSRKeysLeftArrow || keyCode == kSRKeysRightArrow || keyCode == kSRKeysUpArrow || keyCode == kSRKeysDownArrow || keyCode == kSRKeysSoutheastArrow || keyCode == kSRKeysNorthwestArrow || keyCode == kSRKeysEscape || keyCode == kSRKeysPageDown || keyCode == kSRKeysPageUp || keyCode == kSRKeysReturnR2L || keyCode == kSRKeysReturn || keyCode == kSRKeysTabRight || keyCode == kSRKeysHelp); +} + +#pragma mark - +#pragma mark Additions + +@interface NSAlert( SRAdditions ) ++ (NSAlert *) alertWithNonRecoverableError:(NSError *)error; +@end + +#pragma mark - +#pragma mark Image provider + +@interface SRSharedImageProvider : NSObject ++ (NSImage *)supportingImageWithName:(NSString *)name; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h new file mode 100644 index 0000000..6f252f3 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h @@ -0,0 +1,16 @@ +// +// SRKeyCodeTransformer.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRKeyCodeTransformer : NSValueTransformer {} @end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h new file mode 100644 index 0000000..31b3854 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h @@ -0,0 +1,137 @@ +// +// SRRecorderCell.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRCommon.h" + +#define SRMinWidth 50 +#define SRMaxHeight 22 + +#define SRTransitionFPS 30.0f +#define SRTransitionDuration 0.35f +//#define SRTransitionDuration 2.35 +#define SRTransitionFrames (SRTransitionFPS*SRTransitionDuration) +#define SRAnimationAxisIsY YES +#define ShortcutRecorderNewStyleDrawing + +#define SRAnimationOffsetRect(X,Y) (SRAnimationAxisIsY ? NSOffsetRect(X,0.0f,-NSHeight(Y)) : NSOffsetRect(X,NSWidth(Y),0.0f)) + +@class SRRecorderControl, SRValidator; + +enum SRRecorderStyle { + SRGradientBorderStyle = 0, + SRGreyStyle = 1 +}; +typedef enum SRRecorderStyle SRRecorderStyle; + +@interface SRRecorderCell : NSActionCell <NSCoding> +{ + NSGradient *recordingGradient; + NSString *autosaveName; + + BOOL isRecording; + BOOL mouseInsideTrackingArea; + BOOL mouseDown; + + SRRecorderStyle style; + + BOOL isAnimating; + CGFloat transitionProgress; + BOOL isAnimatingNow; + BOOL isAnimatingTowardsRecording; + BOOL comboJustChanged; + + NSTrackingRectTag removeTrackingRectTag; + NSTrackingRectTag snapbackTrackingRectTag; + + KeyCombo keyCombo; + BOOL hasKeyChars; + NSString *keyChars; + NSString *keyCharsIgnoringModifiers; + + NSUInteger allowedFlags; + NSUInteger requiredFlags; + NSUInteger recordingFlags; + + BOOL allowsKeyOnly; + BOOL escapeKeysRecord; + + NSSet *cancelCharacterSet; + + SRValidator *validator; + + IBOutlet id delegate; + BOOL globalHotKeys; + void *hotKeyModeToken; +} + +- (void)resetTrackingRects; + +#pragma mark *** Aesthetics *** + ++ (BOOL)styleSupportsAnimation:(SRRecorderStyle)style; + +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** + +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Responder Control *** + +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; + +#pragma mark *** Key Combination Control *** + +- (BOOL)performKeyEquivalent:(NSEvent *)theEvent; +- (void)flagsChanged:(NSEvent *)theEvent; + +- (NSUInteger)allowedFlags; +- (void)setAllowedFlags:(NSUInteger)flags; + +- (NSUInteger)requiredFlags; +- (void)setRequiredFlags:(NSUInteger)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderCellDelegate) +- (BOOL)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; +- (void)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell keyComboDidChange:(KeyCombo)newCombo; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h new file mode 100644 index 0000000..15134e9 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h @@ -0,0 +1,74 @@ +// +// SRRecorderControl.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> +#import "SRRecorderCell.h" + +@interface SRRecorderControl : NSControl +{ + IBOutlet id delegate; +} + +#pragma mark *** Aesthetics *** +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Key Combination Control *** + +- (NSUInteger)allowedFlags; +- (void)setAllowedFlags:(NSUInteger)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (NSUInteger)requiredFlags; +- (void)setRequiredFlags:(NSUInteger)flags; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +#pragma mark - + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +#pragma mark *** Conversion Methods *** + +- (NSUInteger)cocoaToCarbonFlags:(NSUInteger)cocoaFlags; +- (NSUInteger)carbonToCocoaFlags:(NSUInteger)carbonFlags; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderDelegate) +- (BOOL)shortcutRecorder:(SRRecorderControl *)aRecorder isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; +- (void)shortcutRecorder:(SRRecorderControl *)aRecorder keyComboDidChange:(KeyCombo)newKeyCombo; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h new file mode 100644 index 0000000..0dd8f28 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h @@ -0,0 +1,34 @@ +// +// SRValidator.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import <Cocoa/Cocoa.h> + +@interface SRValidator : NSObject { + id delegate; +} + +- (id) initWithDelegate:(id)theDelegate; + +- (BOOL) isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags error:(NSError **)error; +- (BOOL) isKeyCode:(NSInteger)keyCode andFlags:(NSUInteger)flags takenInMenu:(NSMenu *)menu error:(NSError **)error; + +- (id) delegate; +- (void) setDelegate: (id) theDelegate; + +@end + +#pragma mark - + +@interface NSObject( SRValidation ) +- (BOOL) shortcutValidator:(SRValidator *)validator isKeyCode:(NSInteger)keyCode andFlagsTaken:(NSUInteger)flags reason:(NSString **)aReason; +@end diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h new file mode 100644 index 0000000..26b78f3 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h @@ -0,0 +1,15 @@ +// +// SR_LeopardView.h +// SR Leopard +// +// Created by Jesper on 2007-10-19. +// Copyright 2007 __MyCompanyName__. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@interface SR_LeopardView : NSView { + +} + +@end \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h new file mode 100644 index 0000000..855a288 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h @@ -0,0 +1,17 @@ +// +// ShortcutRecorder.h +// ShortcutRecorder +// - 10.5 version only; master framework header +// +// Copyright 2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors to this file: +// Jesper + +#import <ShortcutRecorder/SRCommon.h> +#import <ShortcutRecorder/SRKeyCodeTransformer.h> +#import <ShortcutRecorder/SRValidator.h> +#import <ShortcutRecorder/SRRecorderCell.h> +#import <ShortcutRecorder/SRRecorderControl.h> diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/all-wcprops new file mode 100644 index 0000000..3803881 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 117 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 128 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist +END diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/entries new file mode 100644 index 0000000..91a505d --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Info.plist +file + + + + +2010-04-24T16:43:07.000000Z +c9305a30329cd30b9ccd343ac52d795a +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +643 + diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..40a7e46 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>ShortcutRecorder</string> + <key>CFBundleIdentifier</key> + <string>net.wafflesoftware.ShortcutRecorder.framework.Leopard</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1.0</string> +</dict> +</plist> diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..40a7e46 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>ShortcutRecorder</string> + <key>CFBundleIdentifier</key> + <string>net.wafflesoftware.ShortcutRecorder.framework.Leopard</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1.0</string> +</dict> +</plist> diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder new file mode 100755 index 0000000..c4c7293 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder differ diff --git a/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/ShortcutRecorder.ibplugin/Contents/Info.plist b/ShortcutRecorder.ibplugin/Contents/Info.plist new file mode 100644 index 0000000..1d522db --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Info.plist @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>ShortcutRecorder</string> + <key>CFBundleIdentifier</key> + <string>net.wafflesoftware.ShortcutRecorder.IB.Leopard</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>ShortcutRecorder</string> + <key>CFBundlePackageType</key> + <string>BNDL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1</string> + <key>NSPrincipalClass</key> + <string>SR_Leopard</string> +</dict> +</plist> diff --git a/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/all-wcprops new file mode 100644 index 0000000..6878720 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 64 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/MacOS +END +ShortcutRecorder +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/MacOS/ShortcutRecorder +END diff --git a/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/entries b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/entries new file mode 100644 index 0000000..538bfde --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/MacOS +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ShortcutRecorder +file + + + + +2010-04-24T16:43:07.000000Z +52d2dca45bb4c97b587c7e05d795bbbf +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +79716 + diff --git a/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/prop-base/ShortcutRecorder.svn-base b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/prop-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/prop-base/ShortcutRecorder.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/text-base/ShortcutRecorder.svn-base b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/text-base/ShortcutRecorder.svn-base new file mode 100644 index 0000000..2406ab5 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/MacOS/.svn/text-base/ShortcutRecorder.svn-base differ diff --git a/ShortcutRecorder.ibplugin/Contents/MacOS/ShortcutRecorder b/ShortcutRecorder.ibplugin/Contents/MacOS/ShortcutRecorder new file mode 100755 index 0000000..2406ab5 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/MacOS/ShortcutRecorder differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/all-wcprops new file mode 100644 index 0000000..166918c --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 68 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Resources +END +SRRecorderControl.classdescription +K 25 +svn:wc:ra_dav:version-url +V 103 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Resources/SRRecorderControl.classdescription +END diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/entries new file mode 100644 index 0000000..eb0da92 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Resources +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SRRecorderControl.classdescription +file + + + + +2010-04-24T16:43:07.000000Z +dee55b5dfac01cc0ff9a6c232f93ac0c +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +120 + +English.lproj +dir + diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/.svn/prop-base/SRRecorderControl.classdescription.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/prop-base/SRRecorderControl.classdescription.svn-base new file mode 100644 index 0000000..869ac71 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/prop-base/SRRecorderControl.classdescription.svn-base @@ -0,0 +1,5 @@ +K 14 +svn:executable +V 1 +* +END diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/.svn/text-base/SRRecorderControl.classdescription.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/text-base/SRRecorderControl.classdescription.svn-base new file mode 100644 index 0000000..46527ac --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/.svn/text-base/SRRecorderControl.classdescription.svn-base @@ -0,0 +1,9 @@ +{ + Actions = { + }; + Outlets = { + delegate = id; + }; + ClassName = SRRecorderControl; + SuperClass = NSControl; +} diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/all-wcprops b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/all-wcprops new file mode 100644 index 0000000..fc9f35c --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj +END +InfoPlist.strings +K 25 +svn:wc:ra_dav:version-url +V 100 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/InfoPlist.strings +END +SR_LeopardLibrary.nib +K 25 +svn:wc:ra_dav:version-url +V 104 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardLibrary.nib +END +SR_LeopardInspector.nib +K 25 +svn:wc:ra_dav:version-url +V 106 +/svn/!svn/ver/445/trunk/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardInspector.nib +END diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/entries b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/entries new file mode 100644 index 0000000..a6dc819 --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/entries @@ -0,0 +1,130 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-01-19T17:41:24.562958Z +162 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +InfoPlist.strings +file + + + + +2010-04-24T16:43:07.000000Z +7dc7e79fa356e53eebc8323197dd97a3 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +270 + +SR_LeopardLibrary.nib +file + + + + +2010-04-24T16:43:07.000000Z +7cffa6d23c4004283ff73857c4e2ef86 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +4904 + +SR_LeopardInspector.nib +file + + + + +2010-04-24T16:43:07.000000Z +66d386894387a07a930b3817353447c1 +2010-01-19T17:41:24.562958Z +162 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +10173 + diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/InfoPlist.strings.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/InfoPlist.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/InfoPlist.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/SR_LeopardInspector.nib.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/SR_LeopardInspector.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/SR_LeopardInspector.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/SR_LeopardLibrary.nib.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/SR_LeopardLibrary.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/prop-base/SR_LeopardLibrary.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/InfoPlist.strings.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/InfoPlist.strings.svn-base new file mode 100644 index 0000000..1c1fbc3 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/InfoPlist.strings.svn-base differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/SR_LeopardInspector.nib.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/SR_LeopardInspector.nib.svn-base new file mode 100644 index 0000000..0c5de0d Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/SR_LeopardInspector.nib.svn-base differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/SR_LeopardLibrary.nib.svn-base b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/SR_LeopardLibrary.nib.svn-base new file mode 100644 index 0000000..9683a72 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/.svn/text-base/SR_LeopardLibrary.nib.svn-base differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/InfoPlist.strings b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/InfoPlist.strings new file mode 100644 index 0000000..1c1fbc3 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/InfoPlist.strings differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardInspector.nib b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardInspector.nib new file mode 100644 index 0000000..0c5de0d Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardInspector.nib differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardLibrary.nib b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardLibrary.nib new file mode 100644 index 0000000..9683a72 Binary files /dev/null and b/ShortcutRecorder.ibplugin/Contents/Resources/English.lproj/SR_LeopardLibrary.nib differ diff --git a/ShortcutRecorder.ibplugin/Contents/Resources/SRRecorderControl.classdescription b/ShortcutRecorder.ibplugin/Contents/Resources/SRRecorderControl.classdescription new file mode 100755 index 0000000..46527ac --- /dev/null +++ b/ShortcutRecorder.ibplugin/Contents/Resources/SRRecorderControl.classdescription @@ -0,0 +1,9 @@ +{ + Actions = { + }; + Outlets = { + delegate = id; + }; + ClassName = SRRecorderControl; + SuperClass = NSControl; +} diff --git a/Skull.png b/Skull.png new file mode 100644 index 0000000..d29f0ba Binary files /dev/null and b/Skull.png differ diff --git a/Sparkle.framework/.svn/all-wcprops b/Sparkle.framework/.svn/all-wcprops new file mode 100644 index 0000000..83c9c4e --- /dev/null +++ b/Sparkle.framework/.svn/all-wcprops @@ -0,0 +1,23 @@ +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework +END +Sparkle +K 25 +svn:wc:ra_dav:version-url +V 56 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Sparkle +END +Resources +K 25 +svn:wc:ra_dav:version-url +V 58 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Resources +END +Headers +K 25 +svn:wc:ra_dav:version-url +V 56 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Headers +END diff --git a/Sparkle.framework/.svn/entries b/Sparkle.framework/.svn/entries new file mode 100644 index 0000000..9895a8b --- /dev/null +++ b/Sparkle.framework/.svn/entries @@ -0,0 +1,133 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle +file + + + + +2010-04-03T16:45:50.000000Z +73fcce70322aeedaf8df0efd744e5a52 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + +svn:special + + + + + + + + + + + + + + + + + +24 + +Versions +dir + +Resources +file + + + + +2010-04-03T16:45:50.000000Z +8a6539acc25a583ce7a88f6573bf4687 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + +svn:special + + + + + + + + + + + + + + + + + +26 + +Headers +file + + + + +2010-04-03T16:45:50.000000Z +574393f6f6e7d44c9dfa3c805bbefb99 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + +svn:special + + + + + + + + + + + + + + + + + +24 + diff --git a/Sparkle.framework/.svn/prop-base/Headers.svn-base b/Sparkle.framework/.svn/prop-base/Headers.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Sparkle.framework/.svn/prop-base/Headers.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Sparkle.framework/.svn/prop-base/Resources.svn-base b/Sparkle.framework/.svn/prop-base/Resources.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Sparkle.framework/.svn/prop-base/Resources.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Sparkle.framework/.svn/prop-base/Sparkle.svn-base b/Sparkle.framework/.svn/prop-base/Sparkle.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Sparkle.framework/.svn/prop-base/Sparkle.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Sparkle.framework/.svn/text-base/Headers.svn-base b/Sparkle.framework/.svn/text-base/Headers.svn-base new file mode 100644 index 0000000..45bda20 --- /dev/null +++ b/Sparkle.framework/.svn/text-base/Headers.svn-base @@ -0,0 +1 @@ +link Versions/Current/Headers \ No newline at end of file diff --git a/Sparkle.framework/.svn/text-base/Resources.svn-base b/Sparkle.framework/.svn/text-base/Resources.svn-base new file mode 100644 index 0000000..0af1f07 --- /dev/null +++ b/Sparkle.framework/.svn/text-base/Resources.svn-base @@ -0,0 +1 @@ +link Versions/Current/Resources \ No newline at end of file diff --git a/Sparkle.framework/.svn/text-base/Sparkle.svn-base b/Sparkle.framework/.svn/text-base/Sparkle.svn-base new file mode 100644 index 0000000..bc0c51e --- /dev/null +++ b/Sparkle.framework/.svn/text-base/Sparkle.svn-base @@ -0,0 +1 @@ +link Versions/Current/Sparkle \ No newline at end of file diff --git a/Sparkle.framework/Headers b/Sparkle.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/Sparkle.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/Sparkle.framework/Resources b/Sparkle.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/Sparkle.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/Sparkle.framework/Sparkle b/Sparkle.framework/Sparkle new file mode 120000 index 0000000..b2c5273 --- /dev/null +++ b/Sparkle.framework/Sparkle @@ -0,0 +1 @@ +Versions/Current/Sparkle \ No newline at end of file diff --git a/Sparkle.framework/Versions/.svn/all-wcprops b/Sparkle.framework/Versions/.svn/all-wcprops new file mode 100644 index 0000000..649aa8c --- /dev/null +++ b/Sparkle.framework/Versions/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 57 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions +END +Current +K 25 +svn:wc:ra_dav:version-url +V 65 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/Current +END diff --git a/Sparkle.framework/Versions/.svn/entries b/Sparkle.framework/Versions/.svn/entries new file mode 100644 index 0000000..2547134 --- /dev/null +++ b/Sparkle.framework/Versions/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +A +dir + +Current +file + + + + +2010-04-03T16:45:50.000000Z +654580f41818cd6f51408c7cbd313728 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + +svn:special + + + + + + + + + + + + + + + + + +1 + diff --git a/Sparkle.framework/Versions/.svn/prop-base/Current.svn-base b/Sparkle.framework/Versions/.svn/prop-base/Current.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Sparkle.framework/Versions/.svn/prop-base/Current.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Sparkle.framework/Versions/.svn/text-base/Current.svn-base b/Sparkle.framework/Versions/.svn/text-base/Current.svn-base new file mode 100644 index 0000000..613feee --- /dev/null +++ b/Sparkle.framework/Versions/.svn/text-base/Current.svn-base @@ -0,0 +1 @@ +link A \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/.svn/all-wcprops b/Sparkle.framework/Versions/A/.svn/all-wcprops new file mode 100644 index 0000000..6952c4d --- /dev/null +++ b/Sparkle.framework/Versions/A/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 59 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A +END +Sparkle +K 25 +svn:wc:ra_dav:version-url +V 67 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Sparkle +END diff --git a/Sparkle.framework/Versions/A/.svn/entries b/Sparkle.framework/Versions/A/.svn/entries new file mode 100644 index 0000000..7f40b5c --- /dev/null +++ b/Sparkle.framework/Versions/A/.svn/entries @@ -0,0 +1,68 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle +file + + + + +2010-04-03T16:45:50.000000Z +1899ccb686d4267bf1791cac392aece9 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +300016 + +Resources +dir + +Headers +dir + diff --git a/Sparkle.framework/Versions/A/.svn/prop-base/Sparkle.svn-base b/Sparkle.framework/Versions/A/.svn/prop-base/Sparkle.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/Sparkle.framework/Versions/A/.svn/prop-base/Sparkle.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/.svn/text-base/Sparkle.svn-base b/Sparkle.framework/Versions/A/.svn/text-base/Sparkle.svn-base new file mode 100644 index 0000000..d390784 Binary files /dev/null and b/Sparkle.framework/Versions/A/.svn/text-base/Sparkle.svn-base differ diff --git a/Sparkle.framework/Versions/A/Headers/.svn/all-wcprops b/Sparkle.framework/Versions/A/Headers/.svn/all-wcprops new file mode 100644 index 0000000..8eb6039 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/all-wcprops @@ -0,0 +1,41 @@ +K 25 +svn:wc:ra_dav:version-url +V 67 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Headers +END +SUVersionComparisonProtocol.h +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h +END +SUUpdater.h +K 25 +svn:wc:ra_dav:version-url +V 79 +/svn/!svn/ver/544/branches/1.4/Sparkle.framework/Versions/A/Headers/SUUpdater.h +END +Sparkle.h +K 25 +svn:wc:ra_dav:version-url +V 77 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Headers/Sparkle.h +END +SUAppcastItem.h +K 25 +svn:wc:ra_dav:version-url +V 83 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h +END +SUAppcast.h +K 25 +svn:wc:ra_dav:version-url +V 79 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Headers/SUAppcast.h +END +SUVersionDisplayProtocol.h +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/entries b/Sparkle.framework/Versions/A/Headers/.svn/entries new file mode 100644 index 0000000..f3fd5e7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/entries @@ -0,0 +1,232 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Headers +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUVersionComparisonProtocol.h +file + + + + +2010-04-03T16:45:50.000000Z +2174fb4b22eafc2fa1a35474ea6e5447 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +771 + +SUUpdater.h +file +544 + + + +2010-10-04T23:50:37.000000Z +56c9f5b6a63ac93eb01ccea13fa73f3f +2010-10-05T00:24:44.195327Z +544 +ootoaoo +has-props + + + + + + + + + + + + + + + + + + + + +6942 + +Sparkle.h +file + + + + +2010-04-03T16:45:50.000000Z +fab93e9ad6d3f48020f723097f30aa89 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +536 + +SUAppcastItem.h +file + + + + +2010-04-03T16:45:50.000000Z +3878e67a8c009296ff633a035082dd11 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +1167 + +SUAppcast.h +file + + + + +2010-04-03T16:45:50.000000Z +e48b835aebc39293465c3063749b32e0 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +664 + +SUVersionDisplayProtocol.h +file + + + + +2010-04-03T16:45:50.000000Z +a1a464475b88aa29ef9b6e5bbd9e32fd +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +644 + diff --git a/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUAppcast.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUAppcast.h.svn-base new file mode 100644 index 0000000..92c8ad7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUAppcast.h.svn-base @@ -0,0 +1,5 @@ +K 12 +svn:keywords +V 2 +Id +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUAppcastItem.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUAppcastItem.h.svn-base new file mode 100644 index 0000000..92c8ad7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUAppcastItem.h.svn-base @@ -0,0 +1,5 @@ +K 12 +svn:keywords +V 2 +Id +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUUpdater.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUUpdater.h.svn-base new file mode 100644 index 0000000..92c8ad7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUUpdater.h.svn-base @@ -0,0 +1,5 @@ +K 12 +svn:keywords +V 2 +Id +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUVersionComparisonProtocol.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUVersionComparisonProtocol.h.svn-base new file mode 100644 index 0000000..92c8ad7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUVersionComparisonProtocol.h.svn-base @@ -0,0 +1,5 @@ +K 12 +svn:keywords +V 2 +Id +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUVersionDisplayProtocol.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUVersionDisplayProtocol.h.svn-base new file mode 100644 index 0000000..92c8ad7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/SUVersionDisplayProtocol.h.svn-base @@ -0,0 +1,5 @@ +K 12 +svn:keywords +V 2 +Id +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/prop-base/Sparkle.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/Sparkle.h.svn-base new file mode 100644 index 0000000..92c8ad7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/prop-base/Sparkle.h.svn-base @@ -0,0 +1,5 @@ +K 12 +svn:keywords +V 2 +Id +END diff --git a/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUAppcast.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUAppcast.h.svn-base new file mode 100644 index 0000000..a29492c --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUAppcast.h.svn-base @@ -0,0 +1,33 @@ +// +// SUAppcast.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUAPPCAST_H +#define SUAPPCAST_H + +@class SUAppcastItem; +@interface SUAppcast : NSObject { + NSArray *items; + NSString *userAgentString; + id delegate; + NSString *downloadFilename; +} + +- (void)fetchAppcastFromURL:(NSURL *)url; +- (void)setDelegate:delegate; +- (void)setUserAgentString:(NSString *)userAgentString; + +- (NSArray *)items; + +@end + +@interface NSObject (SUAppcastDelegate) +- (void)appcastDidFinishLoading:(SUAppcast *)appcast; +- (void)appcast:(SUAppcast *)appcast failedToLoadWithError:(NSError *)error; +@end + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUAppcastItem.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUAppcastItem.h.svn-base new file mode 100644 index 0000000..6cbd474 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUAppcastItem.h.svn-base @@ -0,0 +1,52 @@ +// +// SUAppcastItem.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUAPPCASTITEM_H +#define SUAPPCASTITEM_H + +@interface SUAppcastItem : NSObject { + NSString *title; + NSDate *date; + NSString *itemDescription; + + NSURL *releaseNotesURL; + + NSString *DSASignature; + NSString *minimumSystemVersion; + + NSURL *fileURL; + NSString *versionString; + NSString *displayVersionString; + + NSDictionary *propertiesDictionary; + + NSURL *infoURL; // UK 2007-08-31 +} + +// Initializes with data from a dictionary provided by the RSS class. +- initWithDictionary:(NSDictionary *)dict; +- initWithDictionary:(NSDictionary *)dict failureReason:(NSString**)error; + +- (NSString *)title; +- (NSString *)versionString; +- (NSString *)displayVersionString; +- (NSDate *)date; +- (NSString *)itemDescription; +- (NSURL *)releaseNotesURL; +- (NSURL *)fileURL; +- (NSString *)DSASignature; +- (NSString *)minimumSystemVersion; + +// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions. +- (NSDictionary *)propertiesDictionary; + +- (NSURL *)infoURL; // UK 2007-08-31 + +@end + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUUpdater.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUUpdater.h.svn-base new file mode 100644 index 0000000..7cffab0 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUUpdater.h.svn-base @@ -0,0 +1,171 @@ +// +// SUUpdater.h +// Sparkle +// +// Created by Andy Matuschak on 1/4/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUUPDATER_H +#define SUUPDATER_H + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import "SUVersionComparisonProtocol.h" +#import "SUVersionDisplayProtocol.h" + + +// ----------------------------------------------------------------------------- +// Forwards: +// ----------------------------------------------------------------------------- + +@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast; + + +// ----------------------------------------------------------------------------- +// SUUpdater: +// ----------------------------------------------------------------------------- + +@interface SUUpdater : NSObject +{ + NSTimer *checkTimer; + SUUpdateDriver *driver; + + NSString *customUserAgentString; + SUHost *host; + IBOutlet id delegate; +} + ++ (SUUpdater *)sharedUpdater; ++ (SUUpdater *)updaterForBundle:(NSBundle *)bundle; +- initForBundle:(NSBundle *)bundle; + +- (NSBundle *)hostBundle; + +- (void)setDelegate:(id)delegate; +- delegate; + +- (void)setAutomaticallyChecksForUpdates:(BOOL)automaticallyChecks; +- (BOOL)automaticallyChecksForUpdates; + +- (void)setUpdateCheckInterval:(NSTimeInterval)interval; +- (NSTimeInterval)updateCheckInterval; + +- (void)setFeedURL:(NSURL *)feedURL; +- (NSURL *)feedURL; // *** MUST BE CALLED ON MAIN THREAD *** + +- (void)setUserAgentString:(NSString *)userAgent; +- (NSString *)userAgentString; + +- (void)setSendsSystemProfile:(BOOL)sendsSystemProfile; +- (BOOL)sendsSystemProfile; + +- (void)setAutomaticallyDownloadsUpdates:(BOOL)automaticallyDownloadsUpdates; +- (BOOL)automaticallyDownloadsUpdates; + +// This IBAction is meant for a main menu item. Hook up any menu item to this action, +// and Sparkle will check for updates and report back its findings verbosely. +- (IBAction)checkForUpdates:(id)sender; + +// This kicks off an update meant to be programmatically initiated. That is, it will display no UI unless it actually finds an update, +// in which case it proceeds as usual. If the fully automated updating is turned on, however, this will invoke that behavior, and if an +// update is found, it will be downloaded and prepped for installation. +- (void)checkForUpdatesInBackground; + +// Date of last update check. Returns null if no check has been performed. +- (NSDate*)lastUpdateCheckDate; + +// This begins a "probing" check for updates which will not actually offer to update to that version. The delegate methods, though, +// (up to updater:didFindValidUpdate: and updaterDidNotFindUpdate:), are called, so you can use that information in your UI. +- (void)checkForUpdateInformation; + +// Call this to appropriately schedule or cancel the update checking timer according to the preferences for time interval and automatic checks. This call does not change the date of the next check, but only the internal NSTimer. +- (void)resetUpdateCycle; + +- (BOOL)updateInProgress; + +-(BOOL) mayUpdateAndRestart; // If we can't restart, don't update, because that'd mean anything the old app (still running) reads from disk + +@end + + +// ----------------------------------------------------------------------------- +// SUUpdater Delegate: +// ----------------------------------------------------------------------------- + +@interface NSObject (SUUpdaterDelegateInformalProtocol) + +// Use this to keep Sparkle from popping up e.g. while your setup assistant is showing: +- (BOOL)updaterMayCheckForUpdates:(SUUpdater *)bundle; + +// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not Sparkle will also be sending along the system profile. This method should return an array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user. +- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile; + +// If you need to generate the whole URL: +-(NSString*) feedURLStringForUpdater: (SUUpdater*)updater; + +// Use this to override the default behavior for Sparkle prompting the user about automatic update checks. +- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)bundle; + +// Implement this if you want to do some special handling with the appcast once it finishes loading. +- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast; + +// If you're using special logic or extensions in your appcast, implement this to use your own logic for finding +// a valid update, if any, in the given appcast. +- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)bundle; + +// Sent when a valid update is found by the update driver. +- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update; + +// Sent when a valid update is not found. +- (void)updaterDidNotFindUpdate:(SUUpdater *)update; + +// Sent immediately before installing the specified update. +- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update; + +// Return YES to delay the relaunch until you do some processing; invoke the given NSInvocation to continue. +// This is not called if the user didn't relaunch on the previous update, in that case it will immediately +// restart. +- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update untilInvoking:(NSInvocation *)invocation; + +// Some apps *can not* be relaunched in certain circumstances. They can use this method +// to prevent a relaunch "hard": +- (BOOL)updaterShouldRelaunchApplication:(SUUpdater *)updater; + +// Called immediately before relaunching. +- (void)updaterWillRelaunchApplication:(SUUpdater *)updater; + +// This method allows you to provide a custom version comparator. +// If you don't implement this method or return nil, the standard version comparator will be used. +- (id <SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater; + +// This method allows you to provide a custom version comparator. +// If you don't implement this method or return nil, the standard version comparator will be used. +- (id <SUVersionDisplay>)versionDisplayerForUpdater:(SUUpdater *)updater; + +// Returns the path which is used to relaunch the client after the update is installed. By default, the path of the host bundle. +- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater; + +@end + + +// ----------------------------------------------------------------------------- +// Constants: +// ----------------------------------------------------------------------------- + +// Define some minimum intervals to avoid DOS-like checking attacks. These are in seconds. +#ifdef DEBUG +#define SU_MIN_CHECK_INTERVAL 60 +#else +#define SU_MIN_CHECK_INTERVAL 60*60 +#endif + +#ifdef DEBUG +#define SU_DEFAULT_CHECK_INTERVAL 60 +#else +#define SU_DEFAULT_CHECK_INTERVAL 60*60*24 +#endif + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUVersionComparisonProtocol.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUVersionComparisonProtocol.h.svn-base new file mode 100644 index 0000000..6c65ea4 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUVersionComparisonProtocol.h.svn-base @@ -0,0 +1,29 @@ +// +// SUVersionComparisonProtocol.h +// Sparkle +// +// Created by Andy Matuschak on 12/21/07. +// Copyright 2007 Andy Matuschak. All rights reserved. +// + +#ifndef SUVERSIONCOMPARISONPROTOCOL_H +#define SUVERSIONCOMPARISONPROTOCOL_H + +#import <Cocoa/Cocoa.h> + +/*! + @protocol + @abstract Implement this protocol to provide version comparison facilities for Sparkle. +*/ +@protocol SUVersionComparison + +/*! + @method + @abstract An abstract method to compare two version strings. + @discussion Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a, and NSOrderedSame if they are equivalent. +*/ +- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD! + +@end + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUVersionDisplayProtocol.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUVersionDisplayProtocol.h.svn-base new file mode 100644 index 0000000..368b9c9 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/text-base/SUVersionDisplayProtocol.h.svn-base @@ -0,0 +1,27 @@ +// +// SUVersionDisplayProtocol.h +// EyeTV +// +// Created by Uli Kusterer on 08.12.09. +// Copyright 2009 Elgato Systems GmbH. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + + +/*! + @protocol + @abstract Implement this protocol to apply special formatting to the two + version numbers. +*/ +@protocol SUVersionDisplay + +/*! + @method + @abstract An abstract method to format two version strings. + @discussion You get both so you can display important distinguishing + information, but leave out unnecessary/confusing parts. +*/ +-(void) formatVersion: (NSString**)inOutVersionA andVersion: (NSString**)inOutVersionB; + +@end diff --git a/Sparkle.framework/Versions/A/Headers/.svn/text-base/Sparkle.h.svn-base b/Sparkle.framework/Versions/A/Headers/.svn/text-base/Sparkle.h.svn-base new file mode 100644 index 0000000..08dd577 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/.svn/text-base/Sparkle.h.svn-base @@ -0,0 +1,21 @@ +// +// Sparkle.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07) +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SPARKLE_H +#define SPARKLE_H + +// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless +// there are name-space collisions) so we can list all of them to start with: + +#import <Sparkle/SUUpdater.h> + +#import <Sparkle/SUAppcast.h> +#import <Sparkle/SUAppcastItem.h> +#import <Sparkle/SUVersionComparisonProtocol.h> + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/SUAppcast.h b/Sparkle.framework/Versions/A/Headers/SUAppcast.h new file mode 100644 index 0000000..a29492c --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/SUAppcast.h @@ -0,0 +1,33 @@ +// +// SUAppcast.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUAPPCAST_H +#define SUAPPCAST_H + +@class SUAppcastItem; +@interface SUAppcast : NSObject { + NSArray *items; + NSString *userAgentString; + id delegate; + NSString *downloadFilename; +} + +- (void)fetchAppcastFromURL:(NSURL *)url; +- (void)setDelegate:delegate; +- (void)setUserAgentString:(NSString *)userAgentString; + +- (NSArray *)items; + +@end + +@interface NSObject (SUAppcastDelegate) +- (void)appcastDidFinishLoading:(SUAppcast *)appcast; +- (void)appcast:(SUAppcast *)appcast failedToLoadWithError:(NSError *)error; +@end + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h b/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h new file mode 100644 index 0000000..6cbd474 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h @@ -0,0 +1,52 @@ +// +// SUAppcastItem.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUAPPCASTITEM_H +#define SUAPPCASTITEM_H + +@interface SUAppcastItem : NSObject { + NSString *title; + NSDate *date; + NSString *itemDescription; + + NSURL *releaseNotesURL; + + NSString *DSASignature; + NSString *minimumSystemVersion; + + NSURL *fileURL; + NSString *versionString; + NSString *displayVersionString; + + NSDictionary *propertiesDictionary; + + NSURL *infoURL; // UK 2007-08-31 +} + +// Initializes with data from a dictionary provided by the RSS class. +- initWithDictionary:(NSDictionary *)dict; +- initWithDictionary:(NSDictionary *)dict failureReason:(NSString**)error; + +- (NSString *)title; +- (NSString *)versionString; +- (NSString *)displayVersionString; +- (NSDate *)date; +- (NSString *)itemDescription; +- (NSURL *)releaseNotesURL; +- (NSURL *)fileURL; +- (NSString *)DSASignature; +- (NSString *)minimumSystemVersion; + +// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions. +- (NSDictionary *)propertiesDictionary; + +- (NSURL *)infoURL; // UK 2007-08-31 + +@end + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/SUUpdater.h b/Sparkle.framework/Versions/A/Headers/SUUpdater.h new file mode 100644 index 0000000..7cffab0 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/SUUpdater.h @@ -0,0 +1,171 @@ +// +// SUUpdater.h +// Sparkle +// +// Created by Andy Matuschak on 1/4/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUUPDATER_H +#define SUUPDATER_H + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import "SUVersionComparisonProtocol.h" +#import "SUVersionDisplayProtocol.h" + + +// ----------------------------------------------------------------------------- +// Forwards: +// ----------------------------------------------------------------------------- + +@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast; + + +// ----------------------------------------------------------------------------- +// SUUpdater: +// ----------------------------------------------------------------------------- + +@interface SUUpdater : NSObject +{ + NSTimer *checkTimer; + SUUpdateDriver *driver; + + NSString *customUserAgentString; + SUHost *host; + IBOutlet id delegate; +} + ++ (SUUpdater *)sharedUpdater; ++ (SUUpdater *)updaterForBundle:(NSBundle *)bundle; +- initForBundle:(NSBundle *)bundle; + +- (NSBundle *)hostBundle; + +- (void)setDelegate:(id)delegate; +- delegate; + +- (void)setAutomaticallyChecksForUpdates:(BOOL)automaticallyChecks; +- (BOOL)automaticallyChecksForUpdates; + +- (void)setUpdateCheckInterval:(NSTimeInterval)interval; +- (NSTimeInterval)updateCheckInterval; + +- (void)setFeedURL:(NSURL *)feedURL; +- (NSURL *)feedURL; // *** MUST BE CALLED ON MAIN THREAD *** + +- (void)setUserAgentString:(NSString *)userAgent; +- (NSString *)userAgentString; + +- (void)setSendsSystemProfile:(BOOL)sendsSystemProfile; +- (BOOL)sendsSystemProfile; + +- (void)setAutomaticallyDownloadsUpdates:(BOOL)automaticallyDownloadsUpdates; +- (BOOL)automaticallyDownloadsUpdates; + +// This IBAction is meant for a main menu item. Hook up any menu item to this action, +// and Sparkle will check for updates and report back its findings verbosely. +- (IBAction)checkForUpdates:(id)sender; + +// This kicks off an update meant to be programmatically initiated. That is, it will display no UI unless it actually finds an update, +// in which case it proceeds as usual. If the fully automated updating is turned on, however, this will invoke that behavior, and if an +// update is found, it will be downloaded and prepped for installation. +- (void)checkForUpdatesInBackground; + +// Date of last update check. Returns null if no check has been performed. +- (NSDate*)lastUpdateCheckDate; + +// This begins a "probing" check for updates which will not actually offer to update to that version. The delegate methods, though, +// (up to updater:didFindValidUpdate: and updaterDidNotFindUpdate:), are called, so you can use that information in your UI. +- (void)checkForUpdateInformation; + +// Call this to appropriately schedule or cancel the update checking timer according to the preferences for time interval and automatic checks. This call does not change the date of the next check, but only the internal NSTimer. +- (void)resetUpdateCycle; + +- (BOOL)updateInProgress; + +-(BOOL) mayUpdateAndRestart; // If we can't restart, don't update, because that'd mean anything the old app (still running) reads from disk + +@end + + +// ----------------------------------------------------------------------------- +// SUUpdater Delegate: +// ----------------------------------------------------------------------------- + +@interface NSObject (SUUpdaterDelegateInformalProtocol) + +// Use this to keep Sparkle from popping up e.g. while your setup assistant is showing: +- (BOOL)updaterMayCheckForUpdates:(SUUpdater *)bundle; + +// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not Sparkle will also be sending along the system profile. This method should return an array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user. +- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile; + +// If you need to generate the whole URL: +-(NSString*) feedURLStringForUpdater: (SUUpdater*)updater; + +// Use this to override the default behavior for Sparkle prompting the user about automatic update checks. +- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)bundle; + +// Implement this if you want to do some special handling with the appcast once it finishes loading. +- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast; + +// If you're using special logic or extensions in your appcast, implement this to use your own logic for finding +// a valid update, if any, in the given appcast. +- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)bundle; + +// Sent when a valid update is found by the update driver. +- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update; + +// Sent when a valid update is not found. +- (void)updaterDidNotFindUpdate:(SUUpdater *)update; + +// Sent immediately before installing the specified update. +- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update; + +// Return YES to delay the relaunch until you do some processing; invoke the given NSInvocation to continue. +// This is not called if the user didn't relaunch on the previous update, in that case it will immediately +// restart. +- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update untilInvoking:(NSInvocation *)invocation; + +// Some apps *can not* be relaunched in certain circumstances. They can use this method +// to prevent a relaunch "hard": +- (BOOL)updaterShouldRelaunchApplication:(SUUpdater *)updater; + +// Called immediately before relaunching. +- (void)updaterWillRelaunchApplication:(SUUpdater *)updater; + +// This method allows you to provide a custom version comparator. +// If you don't implement this method or return nil, the standard version comparator will be used. +- (id <SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater; + +// This method allows you to provide a custom version comparator. +// If you don't implement this method or return nil, the standard version comparator will be used. +- (id <SUVersionDisplay>)versionDisplayerForUpdater:(SUUpdater *)updater; + +// Returns the path which is used to relaunch the client after the update is installed. By default, the path of the host bundle. +- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater; + +@end + + +// ----------------------------------------------------------------------------- +// Constants: +// ----------------------------------------------------------------------------- + +// Define some minimum intervals to avoid DOS-like checking attacks. These are in seconds. +#ifdef DEBUG +#define SU_MIN_CHECK_INTERVAL 60 +#else +#define SU_MIN_CHECK_INTERVAL 60*60 +#endif + +#ifdef DEBUG +#define SU_DEFAULT_CHECK_INTERVAL 60 +#else +#define SU_DEFAULT_CHECK_INTERVAL 60*60*24 +#endif + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h b/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h new file mode 100644 index 0000000..6c65ea4 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h @@ -0,0 +1,29 @@ +// +// SUVersionComparisonProtocol.h +// Sparkle +// +// Created by Andy Matuschak on 12/21/07. +// Copyright 2007 Andy Matuschak. All rights reserved. +// + +#ifndef SUVERSIONCOMPARISONPROTOCOL_H +#define SUVERSIONCOMPARISONPROTOCOL_H + +#import <Cocoa/Cocoa.h> + +/*! + @protocol + @abstract Implement this protocol to provide version comparison facilities for Sparkle. +*/ +@protocol SUVersionComparison + +/*! + @method + @abstract An abstract method to compare two version strings. + @discussion Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a, and NSOrderedSame if they are equivalent. +*/ +- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD! + +@end + +#endif diff --git a/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h b/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h new file mode 100644 index 0000000..368b9c9 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h @@ -0,0 +1,27 @@ +// +// SUVersionDisplayProtocol.h +// EyeTV +// +// Created by Uli Kusterer on 08.12.09. +// Copyright 2009 Elgato Systems GmbH. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + + +/*! + @protocol + @abstract Implement this protocol to apply special formatting to the two + version numbers. +*/ +@protocol SUVersionDisplay + +/*! + @method + @abstract An abstract method to format two version strings. + @discussion You get both so you can display important distinguishing + information, but leave out unnecessary/confusing parts. +*/ +-(void) formatVersion: (NSString**)inOutVersionA andVersion: (NSString**)inOutVersionB; + +@end diff --git a/Sparkle.framework/Versions/A/Headers/Sparkle.h b/Sparkle.framework/Versions/A/Headers/Sparkle.h new file mode 100644 index 0000000..08dd577 --- /dev/null +++ b/Sparkle.framework/Versions/A/Headers/Sparkle.h @@ -0,0 +1,21 @@ +// +// Sparkle.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07) +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SPARKLE_H +#define SPARKLE_H + +// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless +// there are name-space collisions) so we can list all of them to start with: + +#import <Sparkle/SUUpdater.h> + +#import <Sparkle/SUAppcast.h> +#import <Sparkle/SUAppcastItem.h> +#import <Sparkle/SUVersionComparisonProtocol.h> + +#endif diff --git a/Sparkle.framework/Versions/A/Resources/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/.svn/all-wcprops new file mode 100644 index 0000000..629f99f --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/all-wcprops @@ -0,0 +1,35 @@ +K 25 +svn:wc:ra_dav:version-url +V 69 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources +END +fr_CA.lproj +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/fr_CA.lproj +END +License.txt +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/License.txt +END +SUModelTranslation.plist +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist +END +SUStatus.nib +K 25 +svn:wc:ra_dav:version-url +V 82 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/SUStatus.nib +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 80 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/Info.plist +END diff --git a/Sparkle.framework/Versions/A/Resources/.svn/entries b/Sparkle.framework/Versions/A/Resources/.svn/entries new file mode 100644 index 0000000..1338dee --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/entries @@ -0,0 +1,258 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ja.lproj +dir + +zh_TW.lproj +dir + +finish_installation.app +dir + +SUModelTranslation.plist +file + + + + +2010-04-03T16:45:50.000000Z +f1ea04fe15a18d331dd1cde62aee3953 +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + + + + + + + + +5987 + +Info.plist +file + + + + +2010-04-03T16:45:50.000000Z +c91a8a3d98e51abdae202bba231aa70f +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + + + + + + + + +728 + +zh_CN.lproj +dir + +en.lproj +dir + +cs.lproj +dir + +pt_BR.lproj +dir + +es.lproj +dir + +fr.lproj +dir + +nl.lproj +dir + +ko.lproj +dir + +fr_CA.lproj +file + + + + +2010-04-03T16:45:50.000000Z +5b69d2bfb5d8bb0823b155df6c0db7d8 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + +svn:special + + + + + + + + + + + + + + + + + +8 + +pl.lproj +dir + +is.lproj +dir + +License.txt +file + + + + +2010-04-03T16:45:50.000000Z +c3af581a42ad8450490fd57d3db5b6c0 +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + + + + + + + + +7089 + +it.lproj +dir + +sk.lproj +dir + +SUStatus.nib +file + + + + +2010-04-03T16:45:50.000000Z +5351c2ff7a1dcb1bc7672a6d316f1ff2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7040 + +pt.lproj +dir + +da.lproj +dir + +ru.lproj +dir + +de.lproj +dir + +sv.lproj +dir + diff --git a/Sparkle.framework/Versions/A/Resources/.svn/prop-base/SUStatus.nib.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/prop-base/SUStatus.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/prop-base/SUStatus.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/.svn/prop-base/fr_CA.lproj.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/prop-base/fr_CA.lproj.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/prop-base/fr_CA.lproj.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Sparkle.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..bcb78eb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/text-base/Info.plist.svn-base @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>en</string> + <key>CFBundleExecutable</key> + <string>Sparkle</string> + <key>CFBundleIdentifier</key> + <string>org.andymatuschak.Sparkle</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>Sparkle</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleShortVersionString</key> + <string>1.5 Beta (git)</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>f81bfd9</string> +</dict> +</plist> diff --git a/Sparkle.framework/Versions/A/Resources/.svn/text-base/License.txt.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/text-base/License.txt.svn-base new file mode 100644 index 0000000..f81c9d4 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/text-base/License.txt.svn-base @@ -0,0 +1,126 @@ +Copyright (c) 2006 Andy Matuschak + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +================= +EXTERNAL LICENSES +================= + +This project uses software developed by the OpenSSL Project for use in the OpenSSL +Toolkit (http://www.openssl.org). This toolkit is licensed as follows: +/* ==================================================================== +* Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modiÞcation, are permitted provided that the following conditions +* are met: +* +* 1. Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in +* the documentation and/or other materials provided with the +* distribution. +* +* 3. All advertising materials mentioning features or use of this +* software must display the following acknowledgment: +* ÒThis product includes software developed by the OpenSSL Project +* for use in the OpenSSL Toolkit. (http://www.openssl.org/)Ó +* +* 4. The names ÒOpenSSL ToolkitÓ and ÒOpenSSL ProjectÓ must not be used to +* endorse or promote products derived from this software without +* prior written permission. For written permission, please contact +* openssl-core@openssl.org. +* +* 5. Products derived from this software may not be called ÒOpenSSLÓ +* nor may ÒOpenSSLÓ appear in their names without prior written +* permission of the OpenSSL Project. +* +* 6. Redistributions of any form whatsoever must retain the following + +* acknowledgment: +* ÒThis product includes software developed by the OpenSSL Project +* for use in the OpenSSL Toolkit (http://www.openssl.org/)Ó +* +* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS ISÕÕ AND ANY +* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +* OF THE POSSIBILITY OF SUCH DAMAGE. +* ==================================================================== +* +* This product includes cryptographic software written by Eric Young +* (eay@cryptsoft.com). This product includes software written by Tim +* Hudson (tjh@cryptsoft.com). +* +*/ + +Original SSLeay License +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) +* All rights reserved. +* +* This package is an SSL implementation written +* by Eric Young (eay@cryptsoft.com). +* The implementation was written so as to conform with Netscapes SSL. +* +* This library is free for commercial and non-commercial use as long as +* the following conditions are aheared to. The following conditions +* apply to all code found in this distribution, be it the RC4, RSA, +* lhash, DES, etc., code; not just the SSL code. The SSL documentation +* included with this distribution is covered by the same copyright terms +* except that the holder is Tim Hudson (tjh@cryptsoft.com). +* +* Copyright remains Eric YoungÕs, and as such any Copyright notices in +* the code are not to be removed. +* If this package is used in a product, Eric Young should be given attribution +* as the author of the parts of the library used. +* This can be in the form of a textual message at program startup or +* in documentation (online or textual) provided with the package. +* +* Redistribution and use in source and binary forms, with or without +* modiÞcation, are permitted provided that the following conditions +* are met: +* 1. Redistributions of source code must retain the copyright +* notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* 3. All advertising materials mentioning features or use of this software +* must display the following acknowledgement: +* ÒThis product includes cryptographic software written by +* Eric Young (eay@cryptsoft.com)Ó +* The word ÔcryptographicÕ can be left out if the rouines from the library +* being used are not cryptographic related :-). +* 4. If you include any Windows speciÞc code (or a derivative thereof) from +* the apps directory (application code) you must include an acknowledgement: +* ÒThis product includes software written by Tim Hudson (tjh@cryptsoft.com)Ó +* +* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS ISÕÕ AND +* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +* SUCH DAMAGE. +* +* The licence and distribution terms for any publically available version or +* derivative of this code cannot be changed. i.e. this code cannot simply be +* copied and put under another distribution licence +* [including the GNU Public Licence.] +*/ \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/.svn/text-base/SUModelTranslation.plist.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/text-base/SUModelTranslation.plist.svn-base new file mode 100644 index 0000000..92ef947 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/text-base/SUModelTranslation.plist.svn-base @@ -0,0 +1,174 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>ADP2,1</key> + <string>Developer Transition Kit</string> + <key>MacBook1,1</key> + <string>MacBook (Core Duo)</string> + <key>MacBook2,1</key> + <string>MacBook (Core 2 Duo)</string> + <key>MacBook4,1</key> + <string>MacBook (Core 2 Duo Feb 2008)</string> + <key>MacBookAir1,1</key> + <string>MacBook Air (January 2008)</string> + <key>MacBookPro1,1</key> + <string>MacBook Pro Core Duo (15-inch)</string> + <key>MacBookPro1,2</key> + <string>MacBook Pro Core Duo (17-inch)</string> + <key>MacBookPro2,1</key> + <string>MacBook Pro Core 2 Duo (17-inch)</string> + <key>MacBookPro2,2</key> + <string>MacBook Pro Core 2 Duo (15-inch)</string> + <key>MacBookPro3,1</key> + <string>MacBook Pro Core 2 Duo (15-inch LED, Core 2 Duo)</string> + <key>MacBookPro3,2</key> + <string>MacBook Pro Core 2 Duo (17-inch HD, Core 2 Duo)</string> + <key>MacBookPro4,1</key> + <string>MacBook Pro (Core 2 Duo Feb 2008)</string> + <key>MacPro1,1</key> + <string>Mac Pro (four-core)</string> + <key>MacPro2,1</key> + <string>Mac Pro (eight-core)</string> + <key>MacPro3,1</key> + <string>Mac Pro (January 2008 4- or 8- core "Harpertown")</string> + <key>Macmini1,1</key> + <string>Mac Mini (Core Solo/Duo)</string> + <key>PowerBook1,1</key> + <string>PowerBook G3</string> + <key>PowerBook2,1</key> + <string>iBook G3</string> + <key>PowerBook2,2</key> + <string>iBook G3 (FireWire)</string> + <key>PowerBook2,3</key> + <string>iBook G3</string> + <key>PowerBook2,4</key> + <string>iBook G3</string> + <key>PowerBook3,1</key> + <string>PowerBook G3 (FireWire)</string> + <key>PowerBook3,2</key> + <string>PowerBook G4</string> + <key>PowerBook3,3</key> + <string>PowerBook G4 (Gigabit Ethernet)</string> + <key>PowerBook3,4</key> + <string>PowerBook G4 (DVI)</string> + <key>PowerBook3,5</key> + <string>PowerBook G4 (1GHz / 867MHz)</string> + <key>PowerBook4,1</key> + <string>iBook G3 (Dual USB, Late 2001)</string> + <key>PowerBook4,2</key> + <string>iBook G3 (16MB VRAM)</string> + <key>PowerBook4,3</key> + <string>iBook G3 Opaque 16MB VRAM, 32MB VRAM, Early 2003)</string> + <key>PowerBook5,1</key> + <string>PowerBook G4 (17 inch)</string> + <key>PowerBook5,2</key> + <string>PowerBook G4 (15 inch FW 800)</string> + <key>PowerBook5,3</key> + <string>PowerBook G4 (17-inch 1.33GHz)</string> + <key>PowerBook5,4</key> + <string>PowerBook G4 (15 inch 1.5/1.33GHz)</string> + <key>PowerBook5,5</key> + <string>PowerBook G4 (17-inch 1.5GHz)</string> + <key>PowerBook5,6</key> + <string>PowerBook G4 (15 inch 1.67GHz/1.5GHz)</string> + <key>PowerBook5,7</key> + <string>PowerBook G4 (17-inch 1.67GHz)</string> + <key>PowerBook5,8</key> + <string>PowerBook G4 (Double layer SD, 15 inch)</string> + <key>PowerBook5,9</key> + <string>PowerBook G4 (Double layer SD, 17 inch)</string> + <key>PowerBook6,1</key> + <string>PowerBook G4 (12 inch)</string> + <key>PowerBook6,2</key> + <string>PowerBook G4 (12 inch, DVI)</string> + <key>PowerBook6,3</key> + <string>iBook G4</string> + <key>PowerBook6,4</key> + <string>PowerBook G4 (12 inch 1.33GHz)</string> + <key>PowerBook6,5</key> + <string>iBook G4 (Early-Late 2004)</string> + <key>PowerBook6,7</key> + <string>iBook G4 (Mid 2005)</string> + <key>PowerBook6,8</key> + <string>PowerBook G4 (12 inch 1.5GHz)</string> + <key>PowerMac1,1</key> + <string>Power Macintosh G3 (Blue & White)</string> + <key>PowerMac1,2</key> + <string>Power Macintosh G4 (PCI Graphics)</string> + <key>PowerMac10,1</key> + <string>Mac Mini G4</string> + <key>PowerMac10,2</key> + <string>Mac Mini (Late 2005)</string> + <key>PowerMac11,2</key> + <string>Power Macintosh G5 (Late 2005)</string> + <key>PowerMac12,1</key> + <string>iMac G5 (iSight)</string> + <key>PowerMac2,1</key> + <string>iMac G3 (Slot-loading CD-ROM)</string> + <key>PowerMac2,2</key> + <string>iMac G3 (Summer 2000)</string> + <key>PowerMac3,1</key> + <string>Power Macintosh G4 (AGP Graphics)</string> + <key>PowerMac3,2</key> + <string>Power Macintosh G4 (AGP Graphics)</string> + <key>PowerMac3,3</key> + <string>Power Macintosh G4 (Gigabit Ethernet)</string> + <key>PowerMac3,4</key> + <string>Power Macintosh G4 (Digital Audio)</string> + <key>PowerMac3,5</key> + <string>Power Macintosh G4 (Quick Silver)</string> + <key>PowerMac3,6</key> + <string>Power Macintosh G4 (Mirrored Drive Door)</string> + <key>PowerMac4,1</key> + <string>iMac G3 (Early/Summer 2001)</string> + <key>PowerMac4,2</key> + <string>iMac G4 (Flat Panel)</string> + <key>PowerMac4,4</key> + <string>eMac</string> + <key>PowerMac4,5</key> + <string>iMac G4 (17-inch Flat Panel)</string> + <key>PowerMac5,1</key> + <string>Power Macintosh G4 Cube</string> + <key>PowerMac6,1</key> + <string>iMac G4 (USB 2.0)</string> + <key>PowerMac6,3</key> + <string>iMac G4 (20-inch Flat Panel)</string> + <key>PowerMac6,4</key> + <string>eMac (USB 2.0, 2005)</string> + <key>PowerMac7,2</key> + <string>Power Macintosh G5</string> + <key>PowerMac7,3</key> + <string>Power Macintosh G5</string> + <key>PowerMac8,1</key> + <string>iMac G5</string> + <key>PowerMac8,2</key> + <string>iMac G5 (Ambient Light Sensor)</string> + <key>PowerMac9,1</key> + <string>Power Macintosh G5 (Late 2005)</string> + <key>RackMac1,1</key> + <string>Xserve G4</string> + <key>RackMac1,2</key> + <string>Xserve G4 (slot-loading, cluster node)</string> + <key>RackMac3,1</key> + <string>Xserve G5</string> + <key>Xserve1,1</key> + <string>Xserve (Intel Xeon)</string> + <key>Xserve2,1</key> + <string>Xserve (January 2008 quad-core)</string> + <key>iMac1,1</key> + <string>iMac G3 (Rev A-D)</string> + <key>iMac4,1</key> + <string>iMac (Core Duo)</string> + <key>iMac4,2</key> + <string>iMac for Education (17-inch, Core Duo)</string> + <key>iMac5,1</key> + <string>iMac (Core 2 Duo, 17 or 20 inch, SuperDrive)</string> + <key>iMac5,2</key> + <string>iMac (Core 2 Duo, 17 inch, Combo Drive)</string> + <key>iMac6,1</key> + <string>iMac (Core 2 Duo, 24 inch, SuperDrive)</string> + <key>iMac8,1</key> + <string>iMac (April 2008)</string> +</dict> +</plist> diff --git a/Sparkle.framework/Versions/A/Resources/.svn/text-base/SUStatus.nib.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/text-base/SUStatus.nib.svn-base new file mode 100644 index 0000000..f67e677 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/.svn/text-base/SUStatus.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/.svn/text-base/fr_CA.lproj.svn-base b/Sparkle.framework/Versions/A/Resources/.svn/text-base/fr_CA.lproj.svn-base new file mode 100644 index 0000000..f34475d --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/.svn/text-base/fr_CA.lproj.svn-base @@ -0,0 +1 @@ +link fr.lproj \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/Info.plist b/Sparkle.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..bcb78eb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,24 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>en</string> + <key>CFBundleExecutable</key> + <string>Sparkle</string> + <key>CFBundleIdentifier</key> + <string>org.andymatuschak.Sparkle</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundleName</key> + <string>Sparkle</string> + <key>CFBundlePackageType</key> + <string>FMWK</string> + <key>CFBundleShortVersionString</key> + <string>1.5 Beta (git)</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>f81bfd9</string> +</dict> +</plist> diff --git a/Sparkle.framework/Versions/A/Resources/License.txt b/Sparkle.framework/Versions/A/Resources/License.txt new file mode 100644 index 0000000..f81c9d4 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/License.txt @@ -0,0 +1,126 @@ +Copyright (c) 2006 Andy Matuschak + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +================= +EXTERNAL LICENSES +================= + +This project uses software developed by the OpenSSL Project for use in the OpenSSL +Toolkit (http://www.openssl.org). This toolkit is licensed as follows: +/* ==================================================================== +* Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modiÞcation, are permitted provided that the following conditions +* are met: +* +* 1. Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in +* the documentation and/or other materials provided with the +* distribution. +* +* 3. All advertising materials mentioning features or use of this +* software must display the following acknowledgment: +* ÒThis product includes software developed by the OpenSSL Project +* for use in the OpenSSL Toolkit. (http://www.openssl.org/)Ó +* +* 4. The names ÒOpenSSL ToolkitÓ and ÒOpenSSL ProjectÓ must not be used to +* endorse or promote products derived from this software without +* prior written permission. For written permission, please contact +* openssl-core@openssl.org. +* +* 5. Products derived from this software may not be called ÒOpenSSLÓ +* nor may ÒOpenSSLÓ appear in their names without prior written +* permission of the OpenSSL Project. +* +* 6. Redistributions of any form whatsoever must retain the following + +* acknowledgment: +* ÒThis product includes software developed by the OpenSSL Project +* for use in the OpenSSL Toolkit (http://www.openssl.org/)Ó +* +* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS ISÕÕ AND ANY +* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +* OF THE POSSIBILITY OF SUCH DAMAGE. +* ==================================================================== +* +* This product includes cryptographic software written by Eric Young +* (eay@cryptsoft.com). This product includes software written by Tim +* Hudson (tjh@cryptsoft.com). +* +*/ + +Original SSLeay License +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) +* All rights reserved. +* +* This package is an SSL implementation written +* by Eric Young (eay@cryptsoft.com). +* The implementation was written so as to conform with Netscapes SSL. +* +* This library is free for commercial and non-commercial use as long as +* the following conditions are aheared to. The following conditions +* apply to all code found in this distribution, be it the RC4, RSA, +* lhash, DES, etc., code; not just the SSL code. The SSL documentation +* included with this distribution is covered by the same copyright terms +* except that the holder is Tim Hudson (tjh@cryptsoft.com). +* +* Copyright remains Eric YoungÕs, and as such any Copyright notices in +* the code are not to be removed. +* If this package is used in a product, Eric Young should be given attribution +* as the author of the parts of the library used. +* This can be in the form of a textual message at program startup or +* in documentation (online or textual) provided with the package. +* +* Redistribution and use in source and binary forms, with or without +* modiÞcation, are permitted provided that the following conditions +* are met: +* 1. Redistributions of source code must retain the copyright +* notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* 3. All advertising materials mentioning features or use of this software +* must display the following acknowledgement: +* ÒThis product includes cryptographic software written by +* Eric Young (eay@cryptsoft.com)Ó +* The word ÔcryptographicÕ can be left out if the rouines from the library +* being used are not cryptographic related :-). +* 4. If you include any Windows speciÞc code (or a derivative thereof) from +* the apps directory (application code) you must include an acknowledgement: +* ÒThis product includes software written by Tim Hudson (tjh@cryptsoft.com)Ó +* +* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS ISÕÕ AND +* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +* SUCH DAMAGE. +* +* The licence and distribution terms for any publically available version or +* derivative of this code cannot be changed. i.e. this code cannot simply be +* copied and put under another distribution licence +* [including the GNU Public Licence.] +*/ \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist b/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist new file mode 100644 index 0000000..92ef947 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist @@ -0,0 +1,174 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>ADP2,1</key> + <string>Developer Transition Kit</string> + <key>MacBook1,1</key> + <string>MacBook (Core Duo)</string> + <key>MacBook2,1</key> + <string>MacBook (Core 2 Duo)</string> + <key>MacBook4,1</key> + <string>MacBook (Core 2 Duo Feb 2008)</string> + <key>MacBookAir1,1</key> + <string>MacBook Air (January 2008)</string> + <key>MacBookPro1,1</key> + <string>MacBook Pro Core Duo (15-inch)</string> + <key>MacBookPro1,2</key> + <string>MacBook Pro Core Duo (17-inch)</string> + <key>MacBookPro2,1</key> + <string>MacBook Pro Core 2 Duo (17-inch)</string> + <key>MacBookPro2,2</key> + <string>MacBook Pro Core 2 Duo (15-inch)</string> + <key>MacBookPro3,1</key> + <string>MacBook Pro Core 2 Duo (15-inch LED, Core 2 Duo)</string> + <key>MacBookPro3,2</key> + <string>MacBook Pro Core 2 Duo (17-inch HD, Core 2 Duo)</string> + <key>MacBookPro4,1</key> + <string>MacBook Pro (Core 2 Duo Feb 2008)</string> + <key>MacPro1,1</key> + <string>Mac Pro (four-core)</string> + <key>MacPro2,1</key> + <string>Mac Pro (eight-core)</string> + <key>MacPro3,1</key> + <string>Mac Pro (January 2008 4- or 8- core "Harpertown")</string> + <key>Macmini1,1</key> + <string>Mac Mini (Core Solo/Duo)</string> + <key>PowerBook1,1</key> + <string>PowerBook G3</string> + <key>PowerBook2,1</key> + <string>iBook G3</string> + <key>PowerBook2,2</key> + <string>iBook G3 (FireWire)</string> + <key>PowerBook2,3</key> + <string>iBook G3</string> + <key>PowerBook2,4</key> + <string>iBook G3</string> + <key>PowerBook3,1</key> + <string>PowerBook G3 (FireWire)</string> + <key>PowerBook3,2</key> + <string>PowerBook G4</string> + <key>PowerBook3,3</key> + <string>PowerBook G4 (Gigabit Ethernet)</string> + <key>PowerBook3,4</key> + <string>PowerBook G4 (DVI)</string> + <key>PowerBook3,5</key> + <string>PowerBook G4 (1GHz / 867MHz)</string> + <key>PowerBook4,1</key> + <string>iBook G3 (Dual USB, Late 2001)</string> + <key>PowerBook4,2</key> + <string>iBook G3 (16MB VRAM)</string> + <key>PowerBook4,3</key> + <string>iBook G3 Opaque 16MB VRAM, 32MB VRAM, Early 2003)</string> + <key>PowerBook5,1</key> + <string>PowerBook G4 (17 inch)</string> + <key>PowerBook5,2</key> + <string>PowerBook G4 (15 inch FW 800)</string> + <key>PowerBook5,3</key> + <string>PowerBook G4 (17-inch 1.33GHz)</string> + <key>PowerBook5,4</key> + <string>PowerBook G4 (15 inch 1.5/1.33GHz)</string> + <key>PowerBook5,5</key> + <string>PowerBook G4 (17-inch 1.5GHz)</string> + <key>PowerBook5,6</key> + <string>PowerBook G4 (15 inch 1.67GHz/1.5GHz)</string> + <key>PowerBook5,7</key> + <string>PowerBook G4 (17-inch 1.67GHz)</string> + <key>PowerBook5,8</key> + <string>PowerBook G4 (Double layer SD, 15 inch)</string> + <key>PowerBook5,9</key> + <string>PowerBook G4 (Double layer SD, 17 inch)</string> + <key>PowerBook6,1</key> + <string>PowerBook G4 (12 inch)</string> + <key>PowerBook6,2</key> + <string>PowerBook G4 (12 inch, DVI)</string> + <key>PowerBook6,3</key> + <string>iBook G4</string> + <key>PowerBook6,4</key> + <string>PowerBook G4 (12 inch 1.33GHz)</string> + <key>PowerBook6,5</key> + <string>iBook G4 (Early-Late 2004)</string> + <key>PowerBook6,7</key> + <string>iBook G4 (Mid 2005)</string> + <key>PowerBook6,8</key> + <string>PowerBook G4 (12 inch 1.5GHz)</string> + <key>PowerMac1,1</key> + <string>Power Macintosh G3 (Blue & White)</string> + <key>PowerMac1,2</key> + <string>Power Macintosh G4 (PCI Graphics)</string> + <key>PowerMac10,1</key> + <string>Mac Mini G4</string> + <key>PowerMac10,2</key> + <string>Mac Mini (Late 2005)</string> + <key>PowerMac11,2</key> + <string>Power Macintosh G5 (Late 2005)</string> + <key>PowerMac12,1</key> + <string>iMac G5 (iSight)</string> + <key>PowerMac2,1</key> + <string>iMac G3 (Slot-loading CD-ROM)</string> + <key>PowerMac2,2</key> + <string>iMac G3 (Summer 2000)</string> + <key>PowerMac3,1</key> + <string>Power Macintosh G4 (AGP Graphics)</string> + <key>PowerMac3,2</key> + <string>Power Macintosh G4 (AGP Graphics)</string> + <key>PowerMac3,3</key> + <string>Power Macintosh G4 (Gigabit Ethernet)</string> + <key>PowerMac3,4</key> + <string>Power Macintosh G4 (Digital Audio)</string> + <key>PowerMac3,5</key> + <string>Power Macintosh G4 (Quick Silver)</string> + <key>PowerMac3,6</key> + <string>Power Macintosh G4 (Mirrored Drive Door)</string> + <key>PowerMac4,1</key> + <string>iMac G3 (Early/Summer 2001)</string> + <key>PowerMac4,2</key> + <string>iMac G4 (Flat Panel)</string> + <key>PowerMac4,4</key> + <string>eMac</string> + <key>PowerMac4,5</key> + <string>iMac G4 (17-inch Flat Panel)</string> + <key>PowerMac5,1</key> + <string>Power Macintosh G4 Cube</string> + <key>PowerMac6,1</key> + <string>iMac G4 (USB 2.0)</string> + <key>PowerMac6,3</key> + <string>iMac G4 (20-inch Flat Panel)</string> + <key>PowerMac6,4</key> + <string>eMac (USB 2.0, 2005)</string> + <key>PowerMac7,2</key> + <string>Power Macintosh G5</string> + <key>PowerMac7,3</key> + <string>Power Macintosh G5</string> + <key>PowerMac8,1</key> + <string>iMac G5</string> + <key>PowerMac8,2</key> + <string>iMac G5 (Ambient Light Sensor)</string> + <key>PowerMac9,1</key> + <string>Power Macintosh G5 (Late 2005)</string> + <key>RackMac1,1</key> + <string>Xserve G4</string> + <key>RackMac1,2</key> + <string>Xserve G4 (slot-loading, cluster node)</string> + <key>RackMac3,1</key> + <string>Xserve G5</string> + <key>Xserve1,1</key> + <string>Xserve (Intel Xeon)</string> + <key>Xserve2,1</key> + <string>Xserve (January 2008 quad-core)</string> + <key>iMac1,1</key> + <string>iMac G3 (Rev A-D)</string> + <key>iMac4,1</key> + <string>iMac (Core Duo)</string> + <key>iMac4,2</key> + <string>iMac for Education (17-inch, Core Duo)</string> + <key>iMac5,1</key> + <string>iMac (Core 2 Duo, 17 or 20 inch, SuperDrive)</string> + <key>iMac5,2</key> + <string>iMac (Core 2 Duo, 17 inch, Combo Drive)</string> + <key>iMac6,1</key> + <string>iMac (Core 2 Duo, 24 inch, SuperDrive)</string> + <key>iMac8,1</key> + <string>iMac (April 2008)</string> +</dict> +</plist> diff --git a/Sparkle.framework/Versions/A/Resources/SUStatus.nib b/Sparkle.framework/Versions/A/Resources/SUStatus.nib new file mode 100644 index 0000000..f67e677 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/SUStatus.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/all-wcprops new file mode 100644 index 0000000..f0edace --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/cs.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/entries new file mode 100644 index 0000000..405d48f --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/cs.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +fa4b88a3af3a60cc3774c0cf079efae8 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7368 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +41193c43b0264eebc3008eaf402c41ec +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11874 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +ebef71cfa27be13137ae7fe58c705dd5 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8602 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +72069986ccaa8f904bfecb3650f593cc +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13311 + diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..a38f515 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..9ce92ab Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..0d2a88d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..f089371 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..a38f515 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..9ce92ab Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..0d2a88d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings new file mode 100644 index 0000000..f089371 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/all-wcprops new file mode 100644 index 0000000..b165278 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/da.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/entries new file mode 100644 index 0000000..2f27cfd --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/da.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +523a975ccccb73d4549c5376ead09d4c +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8147 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +7b804bc367e55230b7c5004e763fde61 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11502 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +c83707a4645f59d1339c8f9e5f2f2ddc +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8276 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +6a7d6d5a2afcb742e9f96a7889413896 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12807 + diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..0ef484b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..48d0bac Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..4ef0a8b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..06f3c08 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..0ef484b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..48d0bac Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..4ef0a8b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings new file mode 100644 index 0000000..06f3c08 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/all-wcprops new file mode 100644 index 0000000..2aa3133 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/de.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/entries new file mode 100644 index 0000000..76d42b8 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/de.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +8d56e1974d2006703227634548d78054 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7210 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +435b51cc31f9dd8c8f26b51e4d54b40a +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11683 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +6e23c05b3656eb6d215d406585c7369e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8936 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +3a581d518c14c29fdeee12d2744870b2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13060 + diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..709d3ee Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..bdf425f Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..9d870f3 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..d7d8fce Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..709d3ee Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..bdf425f Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..9d870f3 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings new file mode 100644 index 0000000..d7d8fce Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/all-wcprops new file mode 100644 index 0000000..e10b661 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/en.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/entries new file mode 100644 index 0000000..4682399 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/en.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +1910f674b360903f01c887422df4e56e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7149 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +be4807c38c3ff4fb8eec9ec78f551142 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11368 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +13fc2762351e712f257d2469ff8dc9a1 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8216 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +f68ea826bf866a9be1f213c4b6e2b520 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13263 + diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..eab2990 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..9fb2516 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..e8dc5b8 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..0008c09 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..eab2990 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..9fb2516 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..e8dc5b8 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings new file mode 100644 index 0000000..0008c09 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/all-wcprops new file mode 100644 index 0000000..bb172b1 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/es.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/entries new file mode 100644 index 0000000..27f21cb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/es.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +ca838470bbdc796c1ebfdfd2529e47c1 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7252 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +b481da94919f820be7144912b43a273c +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12033 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +582ed45a4d8f410779b3c87046f4f740 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8634 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +28b5b929920422236118cba2caaaa195 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13434 + diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..e801e60 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..4250d07 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..a8b097d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..a62d71b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..e801e60 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..4250d07 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..a8b097d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings new file mode 100644 index 0000000..a62d71b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/.svn/all-wcprops new file mode 100644 index 0000000..003819d --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 93 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/.svn/entries new file mode 100644 index 0000000..ef0f10b --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/.svn/entries @@ -0,0 +1,31 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Contents +dir + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/all-wcprops new file mode 100644 index 0000000..925548c --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 102 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents +END +Info.plist +K 25 +svn:wc:ra_dav:version-url +V 113 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist +END +PkgInfo +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/entries new file mode 100644 index 0000000..f4aacaa --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/entries @@ -0,0 +1,102 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +MacOS +dir + +Info.plist +file + + + + +2010-04-03T16:45:49.000000Z +acf406db32a416a4b814d54d3db9c190 +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + + + + + + + + +1009 + +Resources +dir + +PkgInfo +file + + + + +2010-04-03T16:45:49.000000Z +23b7d7d024abb0f558420e098800bf27 +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + + + + + + + + +8 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/text-base/Info.plist.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/text-base/Info.plist.svn-base new file mode 100644 index 0000000..ac1e7cb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/text-base/Info.plist.svn-base @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>finish_installation</string> + <key>CFBundleIconFile</key> + <string>Sparkle</string> + <key>CFBundleIdentifier</key> + <string>org.andymatuschak.finish-installation</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>APPL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1</string> + <key>LSBackgroundOnly</key> + <string>1</string> + <key>LSMinimumSystemVersion</key> + <string>10.5</string> + <key>LSUIElement</key> + <string>1</string> + <key>NSMainNibFile</key> + <string>MainMenu</string> + <key>NSPrincipalClass</key> + <string>NSApplication</string> +</dict> +</plist> diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/text-base/PkgInfo.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/text-base/PkgInfo.svn-base new file mode 100644 index 0000000..bd04210 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/.svn/text-base/PkgInfo.svn-base @@ -0,0 +1 @@ +APPL???? \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist new file mode 100644 index 0000000..ac1e7cb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist @@ -0,0 +1,34 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> +<plist version="1.0"> +<dict> + <key>CFBundleDevelopmentRegion</key> + <string>English</string> + <key>CFBundleExecutable</key> + <string>finish_installation</string> + <key>CFBundleIconFile</key> + <string>Sparkle</string> + <key>CFBundleIdentifier</key> + <string>org.andymatuschak.finish-installation</string> + <key>CFBundleInfoDictionaryVersion</key> + <string>6.0</string> + <key>CFBundlePackageType</key> + <string>APPL</string> + <key>CFBundleShortVersionString</key> + <string>1.0</string> + <key>CFBundleSignature</key> + <string>????</string> + <key>CFBundleVersion</key> + <string>1</string> + <key>LSBackgroundOnly</key> + <string>1</string> + <key>LSMinimumSystemVersion</key> + <string>10.5</string> + <key>LSUIElement</key> + <string>1</string> + <key>NSMainNibFile</key> + <string>MainMenu</string> + <key>NSPrincipalClass</key> + <string>NSApplication</string> +</dict> +</plist> diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/all-wcprops new file mode 100644 index 0000000..bda9fb6 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS +END +finish_installation +K 25 +svn:wc:ra_dav:version-url +V 128 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/entries new file mode 100644 index 0000000..1009e1c --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +finish_installation +file + + + + +2010-04-03T16:45:49.000000Z +ea27b0a86f51ff42c465113dabb62b2d +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +121280 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/prop-base/finish_installation.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/prop-base/finish_installation.svn-base new file mode 100644 index 0000000..dbc918b --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/prop-base/finish_installation.svn-base @@ -0,0 +1,9 @@ +K 14 +svn:executable +V 1 +* +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/text-base/finish_installation.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/text-base/finish_installation.svn-base new file mode 100644 index 0000000..0ff4c7a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/.svn/text-base/finish_installation.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation new file mode 100755 index 0000000..0ff4c7a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo new file mode 100644 index 0000000..bd04210 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo @@ -0,0 +1 @@ +APPL???? \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/all-wcprops new file mode 100644 index 0000000..78c402e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 112 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources +END +SUStatus.nib +K 25 +svn:wc:ra_dav:version-url +V 125 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib +END +Sparkle.icns +K 25 +svn:wc:ra_dav:version-url +V 125 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/entries new file mode 100644 index 0000000..352b517 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/entries @@ -0,0 +1,144 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +ja.lproj +dir + +zh_TW.lproj +dir + +zh_CN.lproj +dir + +en.lproj +dir + +cs.lproj +dir + +pt_BR.lproj +dir + +es.lproj +dir + +fr.lproj +dir + +Sparkle.icns +file + + + + +2010-04-03T16:45:49.000000Z +a835ab0d1534bf724d598583cbebe7d3 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +50219 + +nl.lproj +dir + +pl.lproj +dir + +is.lproj +dir + +it.lproj +dir + +SUStatus.nib +file + + + + +2010-04-03T16:45:49.000000Z +5351c2ff7a1dcb1bc7672a6d316f1ff2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7040 + +da.lproj +dir + +ru.lproj +dir + +sv.lproj +dir + +de.lproj +dir + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/prop-base/SUStatus.nib.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/prop-base/SUStatus.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/prop-base/SUStatus.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/prop-base/Sparkle.icns.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/prop-base/Sparkle.icns.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/prop-base/Sparkle.icns.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/text-base/SUStatus.nib.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/text-base/SUStatus.nib.svn-base new file mode 100644 index 0000000..f67e677 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/text-base/SUStatus.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/text-base/Sparkle.icns.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/text-base/Sparkle.icns.svn-base new file mode 100644 index 0000000..8e56d45 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/.svn/text-base/Sparkle.icns.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib new file mode 100644 index 0000000..f67e677 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns new file mode 100644 index 0000000..8e56d45 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/all-wcprops new file mode 100644 index 0000000..2fb78c1 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/entries new file mode 100644 index 0000000..83d2350 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +ebef71cfa27be13137ae7fe58c705dd5 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8602 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..f089371 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings new file mode 100644 index 0000000..f089371 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/all-wcprops new file mode 100644 index 0000000..d238e08 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/entries new file mode 100644 index 0000000..9c2cc27 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +c83707a4645f59d1339c8f9e5f2f2ddc +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8276 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..06f3c08 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings new file mode 100644 index 0000000..06f3c08 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/all-wcprops new file mode 100644 index 0000000..00c26ad --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/entries new file mode 100644 index 0000000..3fdc009 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +6e23c05b3656eb6d215d406585c7369e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8936 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..d7d8fce Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings new file mode 100644 index 0000000..d7d8fce Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/all-wcprops new file mode 100644 index 0000000..41edfec --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/entries new file mode 100644 index 0000000..70e5227 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +13fc2762351e712f257d2469ff8dc9a1 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8216 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..0008c09 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings new file mode 100644 index 0000000..0008c09 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/all-wcprops new file mode 100644 index 0000000..fe68b92 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/entries new file mode 100644 index 0000000..280f00a --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +582ed45a4d8f410779b3c87046f4f740 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8634 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..a62d71b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings new file mode 100644 index 0000000..a62d71b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/all-wcprops new file mode 100644 index 0000000..e9d2cfb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/entries new file mode 100644 index 0000000..41b5335 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +23a9e67fec214ee03c47051e5c63b3e7 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8884 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..16bee71 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings new file mode 100644 index 0000000..16bee71 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/all-wcprops new file mode 100644 index 0000000..7e7c8cb --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/entries new file mode 100644 index 0000000..a6926f0 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +5b46007dbb9336614d6108c8098efcb2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +6772 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..0c7fa89 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings new file mode 100644 index 0000000..0c7fa89 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/all-wcprops new file mode 100644 index 0000000..5e127bd --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/entries new file mode 100644 index 0000000..3b4229a --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +6ff332d6e92d92f21de437d2b6555de8 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8800 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..c491872 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings new file mode 100644 index 0000000..c491872 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/all-wcprops new file mode 100644 index 0000000..3981f4c --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/entries new file mode 100644 index 0000000..5b2e660 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +b772ccd4a0afb8e71699f69c76726bff +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7188 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..f09fb6d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings new file mode 100644 index 0000000..f09fb6d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/all-wcprops new file mode 100644 index 0000000..e6ac310 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/entries new file mode 100644 index 0000000..ac29453 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +97adc1e81a9bd8453cef64cd24d99843 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8528 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..e93e970 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings new file mode 100644 index 0000000..e93e970 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/all-wcprops new file mode 100644 index 0000000..f42f8d9 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/entries new file mode 100644 index 0000000..65d8444 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +97e8ada4939c593a3a6a5f59283cb56b +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +9532 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..8748ed6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings new file mode 100644 index 0000000..8748ed6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/all-wcprops new file mode 100644 index 0000000..7832c25 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 124 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 140 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/entries new file mode 100644 index 0000000..fb6f1d7 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +a1e6f308c9a849e11ab82898b6574ed2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8642 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..e4d51a1 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings new file mode 100644 index 0000000..e4d51a1 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/all-wcprops new file mode 100644 index 0000000..ff1198e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/entries new file mode 100644 index 0000000..6aa0b79 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +c3cdc0d1c93f74117e5760980b710b21 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8378 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..21f64dd Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings new file mode 100644 index 0000000..21f64dd Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/all-wcprops new file mode 100644 index 0000000..51ebdbd --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 121 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 137 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/entries new file mode 100644 index 0000000..f87dcbd --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +ac210450bb916a3c26c3526448c26364 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8332 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..47c5b18 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings new file mode 100644 index 0000000..47c5b18 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/all-wcprops new file mode 100644 index 0000000..ca70233 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 124 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 140 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/entries new file mode 100644 index 0000000..5517644 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +f6f2ca1a214f06890575b05129fe998e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +6596 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..8ae19d8 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings new file mode 100644 index 0000000..8ae19d8 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/all-wcprops new file mode 100644 index 0000000..42c1b6c --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 124 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 140 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/entries new file mode 100644 index 0000000..0902c8f --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +efb1a88bfad65c64a7b746c53de39e7e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +6642 + diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..ad41389 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings new file mode 100644 index 0000000..ad41389 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/all-wcprops new file mode 100644 index 0000000..8e80330 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/fr.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/entries new file mode 100644 index 0000000..aa86b26 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/fr.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +c40582496c9897a7e808b559d45f76e4 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7302 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +d32fec6a6ceace665991ce665aa0c6c9 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11805 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +23a9e67fec214ee03c47051e5c63b3e7 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8884 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +7668ad12892f204f2fe2276650fea7b1 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13418 + diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..678f3aa Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..adf1d73 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..2c42049 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..16bee71 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..678f3aa Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..adf1d73 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..2c42049 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings new file mode 100644 index 0000000..16bee71 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/fr_CA.lproj b/Sparkle.framework/Versions/A/Resources/fr_CA.lproj new file mode 120000 index 0000000..f9834a3 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/fr_CA.lproj @@ -0,0 +1 @@ +fr.lproj \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/all-wcprops new file mode 100644 index 0000000..00485e0 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/is.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/entries new file mode 100644 index 0000000..fe89f3c --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/is.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +39b5eb885c7d6486b161349322dc6be1 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7315 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +895e71b26e4655b2d691450181588294 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11782 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +5b46007dbb9336614d6108c8098efcb2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +6772 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +23979d57db6958cfb3914fe2386ababe +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13293 + diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..9df8add Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..92f5370 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..6636734 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..0c7fa89 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..9df8add Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..92f5370 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..6636734 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings new file mode 100644 index 0000000..0c7fa89 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/all-wcprops new file mode 100644 index 0000000..a86c292 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/it.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/entries new file mode 100644 index 0000000..406aaaf --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/it.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +7741043903df129a4da675e4c08840de +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7140 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +5c7064be17960d041e009978c084fbc9 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11562 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +6ff332d6e92d92f21de437d2b6555de8 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8800 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +54840e3df724eca26f0d1c0878ebffcd +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13080 + diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..8ea2697 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..9d4dd3a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..52f294b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..c491872 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..8ea2697 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..9d4dd3a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..52f294b Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings new file mode 100644 index 0000000..c491872 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/all-wcprops new file mode 100644 index 0000000..32a1726 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ja.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/entries new file mode 100644 index 0000000..eba9d5b --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/ja.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:49.000000Z +caf640fb347ad18c5384a6e9cc33e046 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7198 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:49.000000Z +96fa84d03e0a025095f1ed72a3a2d117 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11629 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +b772ccd4a0afb8e71699f69c76726bff +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7188 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:49.000000Z +efe4b9d639d6eb6ee24357668d82d84d +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12626 + diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..02bce43 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..50434cc Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..2d62bc6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..f09fb6d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..02bce43 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..50434cc Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..2d62bc6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings new file mode 100644 index 0000000..f09fb6d Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/all-wcprops new file mode 100644 index 0000000..b411e0d --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ko.lproj +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/entries new file mode 100644 index 0000000..44afc84 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/ko.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +e77ec6e18468b6aaf66d0e7dc2295dd2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11440 + diff --git a/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..15b9f73 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ko.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..15b9f73 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/all-wcprops new file mode 100644 index 0000000..47b6262 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/nl.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/entries new file mode 100644 index 0000000..3756ee3 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/nl.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +37592a585232db89f7d2d6f1bbcc9c03 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7234 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +3f951c25678fa4e6dd4bafcefe65e1f6 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11459 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +97adc1e81a9bd8453cef64cd24d99843 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8528 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +1c395200f1b97bc1ad57c3ead1ced97a +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +14448 + diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..aa38f86 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..ab9d0a7 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..d9a9888 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..e93e970 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..aa38f86 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..ab9d0a7 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..d9a9888 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings new file mode 100644 index 0000000..e93e970 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/all-wcprops new file mode 100644 index 0000000..c829722 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pl.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/entries new file mode 100644 index 0000000..e4b9588 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/pl.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +2fc751f70ce1fc081633411de2fc4663 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7367 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +d710fdf44d7e0241a60f8c6f0a487426 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11828 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +97e8ada4939c593a3a6a5f59283cb56b +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +9532 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +d52490c350352ce825e081baac931195 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12839 + diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..592ecaf Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..584609e Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..f3fb56c Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..8748ed6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..592ecaf Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..584609e Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..f3fb56c Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings new file mode 100644 index 0000000..8748ed6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/all-wcprops new file mode 100644 index 0000000..645190e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/all-wcprops @@ -0,0 +1,17 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt.lproj +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib +END +pt_BR.lproj +K 25 +svn:wc:ra_dav:version-url +V 90 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj +END diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/entries new file mode 100644 index 0000000..e79a20b --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/entries @@ -0,0 +1,96 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/pt.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +33945a4cf73e068d029c9d886fab42ea +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11979 + +pt_BR.lproj +file + + + + +2010-04-03T16:45:50.000000Z +51263b919831fc7eac57d7bc78d62036 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + +svn:special + + + + + + + + + + + + + + + + + +11 + diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/prop-base/pt_BR.lproj.svn-base b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/prop-base/pt_BR.lproj.svn-base new file mode 100644 index 0000000..d222469 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/prop-base/pt_BR.lproj.svn-base @@ -0,0 +1,5 @@ +K 11 +svn:special +V 1 +* +END diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..d385ec0 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/text-base/pt_BR.lproj.svn-base b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/text-base/pt_BR.lproj.svn-base new file mode 100644 index 0000000..91dcbb4 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt.lproj/.svn/text-base/pt_BR.lproj.svn-base @@ -0,0 +1 @@ +link pt_BR.lproj \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..d385ec0 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj b/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj new file mode 120000 index 0000000..3c1c9f6 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj @@ -0,0 +1 @@ +pt_BR.lproj \ No newline at end of file diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/all-wcprops new file mode 100644 index 0000000..39babf3 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt_BR.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/entries new file mode 100644 index 0000000..99fda68 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/pt_BR.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +d66483652c69c0d5b0872b7e8ce63161 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7339 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +ed7e237bc252e5ccc476c58f7fccd702 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11915 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +a1e6f308c9a849e11ab82898b6574ed2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8642 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +97292dc7368585236ec61ba2cc513e08 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13293 + diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..aa24217 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..871db32 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..a4fe848 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..e4d51a1 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..aa24217 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..871db32 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..a4fe848 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings new file mode 100644 index 0000000..e4d51a1 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/all-wcprops new file mode 100644 index 0000000..c1fc67b --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ru.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/entries new file mode 100644 index 0000000..ef66e94 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/ru.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +f6692adb84afa24a1b5e9e9a009347fb +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7452 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +e4d3fb9776aa709694dc114b180ceac2 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12061 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +c3cdc0d1c93f74117e5760980b710b21 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8378 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +ca894706997185ddf535fcb644fe264a +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13432 + diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..9d36537 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..bf48047 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..d0f1747 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..21f64dd Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..9d36537 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..bf48047 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..d0f1747 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings new file mode 100644 index 0000000..21f64dd Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/all-wcprops new file mode 100644 index 0000000..5fb0811 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sk.lproj +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/entries new file mode 100644 index 0000000..cf4a2e3 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/entries @@ -0,0 +1,62 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/sk.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +43d12ca9b225492a382b18e0461bace4 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11947 + diff --git a/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..c640954 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sk.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..c640954 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/all-wcprops new file mode 100644 index 0000000..9b9e0fc --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 78 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sv.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 105 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 96 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 94 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 107 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/entries new file mode 100644 index 0000000..95de4da --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/sv.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +704e50f27e1f464897d8c76b017d0f0f +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7180 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +1c2fe0d0a88d2c12f08a8de00d0031a6 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11693 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +ac210450bb916a3c26c3526448c26364 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +8332 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +cf68f7be3533ca327668ef5eefb8cf5b +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +13117 + diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..a56c528 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..07f49c4 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..c065b92 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..47c5b18 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..a56c528 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..07f49c4 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..c065b92 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings new file mode 100644 index 0000000..47c5b18 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/all-wcprops new file mode 100644 index 0000000..0d5636e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_CN.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/entries new file mode 100644 index 0000000..7b28170 --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_CN.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +80e545ecf5ec80e1d5fb4d97d4ad828c +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7076 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:50.000000Z +eeeedf66b569a8cfcd968fb751bdf34c +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11393 + +Sparkle.strings +file + + + + +2010-04-03T16:45:50.000000Z +f6f2ca1a214f06890575b05129fe998e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +6596 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:50.000000Z +6e3910c7f4aed3b49f28bbe0ea4b5dea +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12382 + diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..edb4aa0 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..debeea6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..143866a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..8ae19d8 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..edb4aa0 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..debeea6 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..143866a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings new file mode 100644 index 0000000..8ae19d8 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/all-wcprops b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/all-wcprops new file mode 100644 index 0000000..9cbb3ea --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/all-wcprops @@ -0,0 +1,29 @@ +K 25 +svn:wc:ra_dav:version-url +V 81 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_TW.lproj +END +SUAutomaticUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 108 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib +END +SUUpdateAlert.nib +K 25 +svn:wc:ra_dav:version-url +V 99 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib +END +Sparkle.strings +K 25 +svn:wc:ra_dav:version-url +V 97 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings +END +SUUpdatePermissionPrompt.nib +K 25 +svn:wc:ra_dav:version-url +V 110 +/svn/!svn/ver/332/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/entries b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/entries new file mode 100644 index 0000000..c085dcd --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/entries @@ -0,0 +1,164 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/branches/1.4/Sparkle.framework/Versions/A/Resources/zh_TW.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-04-03T02:41:53.618577Z +332 +cfredwine + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +SUAutomaticUpdateAlert.nib +file + + + + +2010-04-03T16:45:49.000000Z +9e79871d6bd129c18c8baabdcc5caaa0 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +7018 + +SUUpdateAlert.nib +file + + + + +2010-04-03T16:45:49.000000Z +aace529f998f08c0727dfdfca267f355 +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +11345 + +Sparkle.strings +file + + + + +2010-04-03T16:45:49.000000Z +efb1a88bfad65c64a7b746c53de39e7e +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +6642 + +SUUpdatePermissionPrompt.nib +file + + + + +2010-04-03T16:45:49.000000Z +80dcf82ec8ff21e2a3f3fb31aa63231b +2010-04-03T02:41:53.618577Z +332 +cfredwine +has-props + + + + + + + + + + + + + + + + + + + + +12436 + diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUAutomaticUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUUpdateAlert.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/SUUpdatePermissionPrompt.nib.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..5e9587e --- /dev/null +++ b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/prop-base/Sparkle.strings.svn-base @@ -0,0 +1,5 @@ +K 13 +svn:mime-type +V 24 +application/octet-stream +END diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base new file mode 100644 index 0000000..e6ef86a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUAutomaticUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base new file mode 100644 index 0000000..75ab296 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUUpdateAlert.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base new file mode 100644 index 0000000..92f7b5c Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/SUUpdatePermissionPrompt.nib.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/Sparkle.strings.svn-base b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/Sparkle.strings.svn-base new file mode 100644 index 0000000..ad41389 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/.svn/text-base/Sparkle.strings.svn-base differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..e6ef86a Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..75ab296 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..92f7b5c Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings new file mode 100644 index 0000000..ad41389 Binary files /dev/null and b/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings differ diff --git a/Sparkle.framework/Versions/A/Sparkle b/Sparkle.framework/Versions/A/Sparkle new file mode 100755 index 0000000..d390784 Binary files /dev/null and b/Sparkle.framework/Versions/A/Sparkle differ diff --git a/Sparkle.framework/Versions/Current b/Sparkle.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/Sparkle.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/Spell.h b/Spell.h new file mode 100644 index 0000000..93a2a86 --- /dev/null +++ b/Spell.h @@ -0,0 +1,75 @@ +// +// Spell.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/22/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +#define MaxSpellID 1000000 + +enum mountType { + MOUNT_NONE = 0, + MOUNT_GROUND = 1, + MOUNT_AIR = 2 +}; + +@interface Spell : NSObject { + NSNumber *_spellID; + + NSString *_name; + NSNumber *_range; + NSString *_dispelType; + NSString *_school; + NSString *_mechanic; + NSNumber *_cooldown; + NSNumber *_castTime; + NSNumber *_speed; // speed of mount + NSNumber *_mount; // 0 = no mount, 1 = ground mount, 2 = air mount + BOOL _spellDataLoading; + + NSURLConnection *_connection; + NSMutableData *_downloadData; +} ++ (id)spellWithID: (NSNumber*)spellID; +- (BOOL)isEqualToSpell: (Spell*)spell; + +- (NSNumber*)ID; +- (void)setID: (NSNumber*)ID; +- (NSString*)name; +- (void)setName: (NSString*)name; +- (NSNumber*)range; +- (void)setRange: (NSNumber*)range; +- (NSNumber*)cooldown; +- (void)setCooldown: (NSNumber*)cooldown; +- (NSString*)school; +- (void)setSchool: (NSString*)school; +- (NSString*)mechanic; +- (void)setMechanic: (NSString*)mechanic; +- (NSString*)dispelType; +- (void)setDispelType: (NSString*)dispelType; +- (NSNumber*)mount; +- (void)setMount: (NSNumber*)mount; +- (NSNumber*)speed; +- (void)setSpeed: (NSNumber*)speed; + +@property (readwrite, retain) NSNumber *castTime; + +- (BOOL)isInstant; +- (BOOL)isMount; + +- (NSString*)fullName; + +/*- (NSNumber*)ID; +- (NSString*)name; +- (NSNumber*)rank; +- (NSNumber*)range; +- (NSString*)school; +- (NSNumber*)cooldown; */ + +- (void)reloadSpellData; + + +@end diff --git a/Spell.m b/Spell.m new file mode 100644 index 0000000..2f345ef --- /dev/null +++ b/Spell.m @@ -0,0 +1,623 @@ +// +// Spell.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/22/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Spell.h" + + +@interface Spell (internal) +- (void)loadSpellData; +@end + +@implementation Spell + +- (id) init +{ + self = [super init]; + if (self != nil) { + _spellID = nil; + _range = nil; + _cooldown = nil; + _name = nil; + _dispelType = nil; + _school = nil; + _mount = nil; + _mechanic = nil; + _speed = nil; + self.castTime = nil; + + } + return self; +} + +- (id)initWithSpellID: (NSNumber*)spellID { + self = [self init]; + if(self) { + if( ([spellID intValue] <= 0) || ([spellID intValue] > MaxSpellID)) { + [self release]; + return nil; + } + _spellID = [spellID retain]; + } + return self; +} + ++ (id)spellWithID: (NSNumber*)spellID { + return [[[Spell alloc] initWithSpellID: spellID] autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [super init]; + if(self) { + self.ID = [decoder decodeObjectForKey: @"SpellID"]; + self.range = [decoder decodeObjectForKey: @"Range"]; + self.name = [decoder decodeObjectForKey: @"Name"]; + self.cooldown = [decoder decodeObjectForKey: @"Cooldown"]; + self.school = [decoder decodeObjectForKey: @"School"]; + self.dispelType = [decoder decodeObjectForKey: @"DispelType"]; + self.castTime = [decoder decodeObjectForKey: @"CastTime"]; + self.mount = [decoder decodeObjectForKey: @"Mount"]; + self.mechanic = [decoder decodeObjectForKey: @"Mechanic"]; + self.speed = [decoder decodeObjectForKey: @"Speed"]; + + if(self.name) { + NSRange range = [self.name rangeOfString: @"html>"]; + if( ([self.name length] == 0) || (range.location != NSNotFound)) { + // log(LOG_GENERAL, @"Name for spell %@ is invalid.", self.ID); + self.name = nil; + } + } + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.ID forKey: @"SpellID"]; + [coder encodeObject: self.name forKey: @"Name"]; + [coder encodeObject: self.range forKey: @"Range"]; + [coder encodeObject: self.school forKey: @"School"]; + [coder encodeObject: self.cooldown forKey: @"Cooldown"]; + [coder encodeObject: self.dispelType forKey: @"DispelType"]; + [coder encodeObject: self.castTime forKey: @"CastTime"]; + [coder encodeObject: self.mount forKey: @"Mount"]; + [coder encodeObject: self.mechanic forKey: @"Mechanic"]; + [coder encodeObject: self.speed forKey: @"Speed"]; +} + +- (void)dealloc { + self.ID = nil; + self.range = nil; + self.name = nil; + self.cooldown = nil; + self.dispelType = nil; + self.school = nil; + self.castTime = nil; + self.mount = nil; + self.mechanic = nil; + self.speed = nil; + + [_connection release]; + [_downloadData release]; + + [super dealloc]; +} + +@synthesize castTime = _castTime; + +#pragma mark - + +- (BOOL)isEqualToSpell: (Spell*)spell { + return ([[self ID] unsignedIntValue] == [[spell ID] unsignedIntValue]); +} + +- (NSString*)description { + return [NSString stringWithFormat: @"<Spell \"%@\" (%@)>", self.fullName, self.ID]; +} + +- (NSNumber*)ID { + NSNumber *temp = nil; + @synchronized (@"ID") { + temp = [_spellID retain]; + } + return [temp autorelease]; +} + +- (void)setID: (NSNumber*)ID { + id temp = nil; + [ID retain]; + @synchronized (@"ID") { + temp = _spellID; + _spellID = ID; + } + [temp release]; +} + +- (NSString*)name { + NSString *temp = nil; + @synchronized (@"Name") { + temp = [_name retain]; + } + return [temp autorelease]; +} + +- (void)setName: (NSString*)name { + id temp = [name retain]; + [self willChangeValueForKey: @"fullName"]; + @synchronized (@"Name") { + temp = _name; + _name = name; + } + [self didChangeValueForKey: @"fullName"]; + [temp release]; +} + +- (NSNumber*)range { + NSNumber *temp = nil; + @synchronized (@"Range") { + temp = [_range retain]; + } + return [temp autorelease]; +} +- (void)setRange: (NSNumber*)range { + id temp = nil; + [range retain]; + @synchronized (@"Range") { + temp = _range; + _range = range; + } + [temp release]; +} + +- (NSNumber*)cooldown { + NSNumber *temp = nil; + @synchronized (@"Cooldown") { + temp = [_cooldown retain]; + } + return [temp autorelease]; +} + +- (void)setCooldown: (NSNumber*)cooldown { + id temp = nil; + [cooldown retain]; + @synchronized (@"Cooldown") { + temp = _cooldown; + _cooldown = cooldown; + } + [temp release]; +} + +- (NSString*)school { + NSString *temp = nil; + @synchronized (@"School") { + temp = [_school retain]; + } + return [temp autorelease]; +} + +- (void)setSchool: (NSString*)school { + id temp = nil; + [school retain]; + @synchronized (@"School") { + temp = _school; + _school = school; + } + [temp release]; +} + +- (NSString*)mechanic { + NSString *temp = nil; + @synchronized (@"Mechanic") { + temp = [_mechanic retain]; + } + return [temp autorelease]; +} + +- (void)setMechanic: (NSString*)mechanic { + id temp = nil; + [mechanic retain]; + @synchronized (@"Mechanic") { + temp = _mechanic; + _mechanic = mechanic; + } + [temp release]; +} + +- (NSString*)dispelType { + NSString *temp = nil; + @synchronized (@"DispelType") { + temp = [_dispelType retain]; + } + return [temp autorelease]; +} + +- (void)setDispelType: (NSString*)dispelType { + id temp = nil; + [dispelType retain]; + @synchronized (@"DispelType") { + temp = _dispelType; + _dispelType = dispelType; + } + [temp release]; +} + +- (NSString*)fullName { + NSString *name = nil; + @synchronized(@"Name") { + name = self.name; + } + return name; +} + +- (NSNumber*)mount { + NSNumber *temp = nil; + @synchronized (@"Mount") { + temp = [_mount retain]; + } + return [temp autorelease]; +} + +- (void)setMount: (NSNumber*)mount { + id temp = nil; + [mount retain]; + @synchronized (@"Mount") { + temp = _mount; + _mount = mount; + } + [temp release]; +} + +- (NSNumber*)speed { + NSNumber *temp = nil; + @synchronized (@"Speed") { + temp = [_speed retain]; + } + return [temp autorelease]; +} + +- (void)setSpeed: (NSNumber*)speed { + id temp = nil; + [speed retain]; + @synchronized (@"Speed") { + temp = _speed; + _speed = speed; + } + [temp release]; +} + +- (BOOL)isInstant { + if(!self.castTime) return NO; + + if( [self.castTime isEqualToNumber: [NSNumber numberWithFloat: 0]] ) + return YES; + return NO; +} + +- (BOOL)isMount { + if ( [self.mechanic isEqualToString:@"Mounted"] ){ + return YES; + } + + if ( [self.mount intValue] == MOUNT_AIR || [self.mount intValue] == MOUNT_GROUND) { + return YES; + } + + return NO; +} + +#pragma mark - + +//#define NAME_SEPARATOR @"<table class=ttb width=300><tr><td colspan=2>" +//#define RANGE_SEPARATOR @"<th>Range</th> <td>" +//#define COOLDOWN_SEPARATOR @"<tr><th>Cooldown</th><td>" + +#define NAME_SEPARATOR @"<title>" +#define SCHOOL_SEPARATOR @"School</th><td>" +#define MECHANIC_SEPARATOR @"Mechanic</th><td>" +#define DISPEL_SEPARATOR @"Dispel type</th><td style=\"border-bottom: 0\">" +#define COST_SEPARATOR @"Cost</th><td style=\"border-top: 0\">" +#define RANGE_SEPARATOR @"<th>Range</th><td>" +#define CASTTIME_SEPARATOR @"<th>Cast time</th><td>" +#define COOLDOWN_SEPARATOR @"<th>Cooldown</th><td>" +#define GLOBAL_COOLDOWN_SEPARATOR @"<div style=\"width: 65%; float: right\">Global cooldown: " +#define MOUNT @"Apply Aura: Mounted" +#define MOUNT_FAST @"Apply Aura: Mod Speed Mounted" +#define MOUNT_AIR @"Apply Aura: Mod Speed Mounted Flight" +#define MOUNT_GROUND_SPEED @"<td>Increases speed by " +#define MOUNT_AIR_SPEED @"<td>Increases flight speed by " + +- (void)reloadSpellData { + + if([[self ID] intValue] < 0 || [[self ID] intValue] > MaxSpellID) + return; + + [_connection cancel]; + [_connection release]; + _connection = [[NSURLConnection alloc] initWithRequest: [NSURLRequest requestWithURL: [NSURL URLWithString: [NSString stringWithFormat: @"http://wowhead.com/?spell=%@", [self ID]]]] delegate: self]; + if(_connection) { + [_downloadData release]; + _downloadData = [[NSMutableData data] retain]; + //[_connection start]; + } +} + +- (void)connection:(NSURLConnection *)connection didReceiveResponse:(NSURLResponse *)response +{ + [_downloadData setLength: 0]; +} + +- (void)connection:(NSURLConnection *)connection didReceiveData:(NSData *)data +{ + [_downloadData appendData: data]; +} + +- (void)connection:(NSURLConnection *)connection + didFailWithError:(NSError *)error +{ + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // inform the user + log(LOG_GENERAL, @"Connection failed! Error - %@ %@", + [error localizedDescription], + [[error userInfo] objectForKey:NSErrorFailingURLStringKey]); +} + +- (void)connectionDidFinishLoading:(NSURLConnection *)connection +{ + // get the download as a string + NSString *wowhead = [[[NSString alloc] initWithData: _downloadData encoding: NSUTF8StringEncoding] autorelease]; + + // The encoding failed? O noes! Lets try another! Fix from GO + if ( !wowhead || [wowhead length] == 0 ){ + wowhead = [[[NSString alloc] initWithData: _downloadData encoding: NSASCIIStringEncoding] autorelease]; + } + + // release the connection, and the data object + [_connection release]; _connection = nil; + [_downloadData release]; _downloadData = nil; + + // parse out the name + if(wowhead && [wowhead length]) { + NSScanner *scanner = [NSScanner scannerWithString: wowhead]; + + // check to see if this is a valid spell + if( ([scanner scanUpToString: @"Error - Wowhead" intoString: nil]) && ![scanner isAtEnd]) { + int spellID = [[self ID] intValue]; + switch(spellID) { + case 5302: + self.name = @"Defensive State"; + break; + case 30794: + self.name = @"Summoned Imp"; + break; + case 24868: + self.name = @"Predatory Strikes"; + break; + default: + self.name = @"[Unknown]"; + break; + } + + log(LOG_GENERAL, @"Spell %d does not exist on wowhead.", spellID); + return; + } else { + if( [scanner scanUpToString: @"Bad Request" intoString: nil] && ![scanner isAtEnd]) { + int spellID = [[self ID] intValue]; + log(LOG_GENERAL, @"Error loading spell %d.", spellID); + return; + } else { + [scanner setScanLocation: 0]; + } + } + + // get the spell name + int scanSave = [scanner scanLocation]; + if([scanner scanUpToString: NAME_SEPARATOR intoString: nil] && [scanner scanString: NAME_SEPARATOR intoString: nil]) { + NSString *newName = nil; + if([scanner scanUpToString: @" - Spell" intoString: &newName]) { + if(newName && [newName length]) { + self.name = newName; + } else { + self.name = @""; + } + } + } else { + [scanner setScanLocation: scanSave]; // some spells dont have ranks + } + + // if it's a mount, see if we have a ground speed? + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: MOUNT_GROUND_SPEED intoString: nil] && [scanner scanString: MOUNT_GROUND_SPEED intoString: nil]) { + NSString *string = nil; + if([scanner scanUpToString: @"%.</td>" intoString: &string] && string) { + self.speed = [NSNumber numberWithInt:[string intValue]]; + } else{ + self.speed = nil; + } + } + [scanner setScanLocation: scanSave]; + + // check to see if we have an air speed? + // if it's a mount, see if we have a ground speed? + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: MOUNT_AIR_SPEED intoString: nil] && [scanner scanString: MOUNT_AIR_SPEED intoString: nil]) { + NSString *string = nil; + if([scanner scanUpToString: @"%.</td>" intoString: &string] && string) { + self.speed = [NSNumber numberWithInt:[string intValue]]; + } + } + [scanner setScanLocation: scanSave]; + + // get spell school + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: SCHOOL_SEPARATOR intoString: nil] && [scanner scanString: SCHOOL_SEPARATOR intoString: nil]) { + NSString *string = nil; + if([scanner scanUpToString: @"</td>" intoString: &string] && string) { + self.school = string; + } else + self.school = @"None"; + } else { + [scanner setScanLocation: scanSave]; // some spells dont have ranks + } + + // get spell mechanic + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: MECHANIC_SEPARATOR intoString: nil] && [scanner scanString: MECHANIC_SEPARATOR intoString: nil]) { + NSString *string = nil; + if([scanner scanUpToString: @"</td>" intoString: &string] && string) { + self.mechanic = string; + } else + self.mechanic = @"None"; + } else { + [scanner setScanLocation: scanSave]; + } + + // get dispel type + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: DISPEL_SEPARATOR intoString: nil] && [scanner scanString: DISPEL_SEPARATOR intoString: nil]) { + if(![scanner scanString: @"<span" intoString: nil]) { + NSString *dispelType = nil; + if([scanner scanUpToString: @"</td>" intoString: &dispelType] && dispelType) { + self.dispelType = dispelType; + } else + self.dispelType = @"None"; + } + } else { + [scanner setScanLocation: scanSave]; // some spells dont have ranks + } + + // get the range + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: RANGE_SEPARATOR intoString: nil] && [scanner scanString: RANGE_SEPARATOR intoString: NULL]) { + int range = 0; + if([scanner scanInt: &range]) { + self.range = [NSNumber numberWithUnsignedInt: range]; + } else + self.range = [NSNumber numberWithInt: 0]; + } else { + [scanner setScanLocation: scanSave]; // some spells dont have ranks + } + + + // get the cast time + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: CASTTIME_SEPARATOR intoString: nil] && [scanner scanString: CASTTIME_SEPARATOR intoString: NULL]) { + float castTime = 0; + if([scanner scanFloat: &castTime]) { + self.castTime = [NSNumber numberWithFloat: castTime]; + // log(LOG_GENERAL, @"Loaded cast time %@ for spell %@", self.castTime, self); + } else { + if([scanner scanString: @"Instant" intoString: nil]) { + self.castTime = [NSNumber numberWithFloat: 0]; + // log(LOG_GENERAL, @"Loaded cast time instant! for spell %@", self); + } else { + // log(LOG_GENERAL, @"Got nothing for %@", self); + self.castTime = nil; + } + } + } else { + // log(LOG_GENERAL, @"No cast time entry for %@", self); + [scanner setScanLocation: scanSave]; + self.castTime = nil; + } + + // get cooldown + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: COOLDOWN_SEPARATOR intoString: nil] && [scanner scanString: COOLDOWN_SEPARATOR intoString: NULL]) { + + if([scanner scanUpToString: GLOBAL_COOLDOWN_SEPARATOR intoString: nil] && [scanner scanString: GLOBAL_COOLDOWN_SEPARATOR intoString: NULL]) { + + float cooldown = 0; + if([scanner scanFloat: &cooldown]) { + if([scanner scanString: @"minute" intoString: nil]) { + cooldown = cooldown*60; + } else if([scanner scanString: @"hour" intoString: nil]) { + cooldown = cooldown*60*60; + } + } else { + BOOL foundCooldown = NO; + // looks like wowhead keeps changing it's cooldown format + // <th>Cooldown</th><td><!--<div style="width: 65%; float: right">Global cooldown: <span class="q0">n/a</span></div>-->25 seconds</td> + if([scanner scanUpToString: @"</div>-->" intoString: nil] && [scanner scanString: @"</div>-->" intoString: NULL]) { + foundCooldown = YES; + } else { + // <th>Cooldown</th><td><div style="width: 65%; float: right">Global cooldown: <span class="q0">n/a</span></div>8 seconds</td> + if([scanner scanUpToString: @"</div>" intoString: nil] && [scanner scanString: @"</div>" intoString: NULL]) { + foundCooldown = YES; + } + } + + if(foundCooldown && [scanner scanFloat: &cooldown]) { + if([scanner scanString: @"minute" intoString: nil]) { + cooldown = cooldown*60; + } else if([scanner scanString: @"hour" intoString: nil]) { + cooldown = cooldown*60*60; + } + } + } + + self.cooldown = [NSNumber numberWithFloat: cooldown]; + } + } else { + [scanner setScanLocation: scanSave]; // some spells dont have cooldowns + + // log(LOG_GENERAL, @"Loaded: %@; %@ yards; %@ seconds; school: %@; dispel: %@", self.name, self.range, self.cooldown, self.school, self.dispelType); + } + + + // get if this is a mount spell + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: MOUNT intoString: nil] && [scanner scanString: MOUNT intoString: NULL]) { + // Find out if this is an air mount + if([scanner scanUpToString: MOUNT_AIR intoString: nil] && [scanner scanString: MOUNT_AIR intoString: NULL]) { + self.mount = [NSNumber numberWithInt:2]; + } + else{ + self.mount = [NSNumber numberWithInt:1]; + } + } else { + self.mount = [NSNumber numberWithInt:0]; + } + [scanner setScanLocation: scanSave]; + + if ( [self.mount intValue] > 0 ){ + //log(LOG_GENERAL, @"mount: %@ %@ %@", [self ID], self.mount, self.mechanic); + } + + // get if this is a fast mount + scanSave = [scanner scanLocation]; + if([scanner scanUpToString: MOUNT_FAST intoString: nil] && [scanner scanString: MOUNT_FAST intoString: NULL]) { + } else { + // log(LOG_GENERAL, @"No cast time entry for %@", self); + [scanner setScanLocation: scanSave]; + } + + // For druids (Swift or regular) + int spellID = [[self ID] intValue]; + if ( spellID == 40120 || spellID == 33943 ){ + self.mount = [NSNumber numberWithInt:2]; + + // Swift Flight Form + if ( spellID == 40120 ){ + self.speed = [NSNumber numberWithInt:280]; + } + // Flight Form + else if ( spellID == 33943 ){ + self.speed = [NSNumber numberWithInt:150]; + } + } + } + else{ + log(LOG_GENERAL, @"[Spell] Error grabbing data for Spell ID: %@", [self ID]); + } +} + + +@end diff --git a/SpellAction.xib b/SpellAction.xib new file mode 100644 index 0000000..9469818 --- /dev/null +++ b/SpellAction.xib @@ -0,0 +1,1108 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">SpellActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSButton" id="790724026"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{311, 7}, {101, 18}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="190094013"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Instant cast?</string> + <object class="NSFont" key="NSSupport" id="567458509"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="790724026"/> + <int key="NSButtonFlags">1211912703</int> + <int key="NSButtonFlags2">2</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSSwitch</string> + </object> + <object class="NSButtonImageSource" key="NSAlternateImage"> + <string key="NSImageName">NSSwitch</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + <object class="NSPopUpButton" id="852672986"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{104, 2}, {204, 26}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="545539660"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="567458509"/> + <reference key="NSControlView" ref="852672986"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="806981711"> + <reference key="NSMenu" ref="1049699681"/> + <string key="NSTitle">Item 1</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="345463982"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="944698602"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="545539660"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="1049699681"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="806981711"/> + <object class="NSMenuItem" id="776060456"> + <reference key="NSMenu" ref="1049699681"/> + <string key="NSTitle">Item 2</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="345463982"/> + <reference key="NSMixedImage" ref="944698602"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="545539660"/> + </object> + <object class="NSMenuItem" id="81054269"> + <reference key="NSMenu" ref="1049699681"/> + <string key="NSTitle">Item 3</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="345463982"/> + <reference key="NSMixedImage" ref="944698602"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="545539660"/> + </object> + </object> + <reference key="NSMenuFont" ref="567458509"/> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 8}, {70, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Cast spell:</string> + <reference key="NSSupport" ref="567458509"/> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 6}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{430, 34}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + <object class="NSUserDefaultsController" id="853790461"> + <bool key="NSSharedInstance">YES</bool> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">97</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">content: spells</string> + <reference key="source" ref="852672986"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="980499082"> + <reference key="NSSource" ref="852672986"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">content: spells</string> + <string key="NSBinding">content</string> + <string key="NSKeyPath">spells</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">160</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">contentObjects: spells</string> + <reference key="source" ref="852672986"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="541359913"> + <reference key="NSSource" ref="852672986"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">contentObjects: spells</string> + <string key="NSBinding">contentObjects</string> + <string key="NSKeyPath">spells</string> + <reference key="NSPreviousConnector" ref="980499082"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">161</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">contentValues: spells.name</string> + <reference key="source" ref="852672986"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="852672986"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">contentValues: spells.name</string> + <string key="NSBinding">contentValues</string> + <string key="NSKeyPath">spells.name</string> + <reference key="NSPreviousConnector" ref="541359913"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">162</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">spellPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="852672986"/> + </object> + <int key="connectionID">163</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">spellInstantButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="790724026"/> + </object> + <int key="connectionID">168</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="652240429"/> + <reference ref="867616341"/> + <reference ref="852672986"/> + <reference ref="790724026"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">105</int> + <reference key="object" ref="853790461"/> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">120</int> + <reference key="object" ref="852672986"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="545539660"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">121</int> + <reference key="object" ref="545539660"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1049699681"/> + </object> + <reference key="parent" ref="852672986"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">122</int> + <reference key="object" ref="1049699681"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="806981711"/> + <reference ref="776060456"/> + <reference ref="81054269"/> + </object> + <reference key="parent" ref="545539660"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">123</int> + <reference key="object" ref="806981711"/> + <reference key="parent" ref="1049699681"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">124</int> + <reference key="object" ref="776060456"/> + <reference key="parent" ref="1049699681"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">125</int> + <reference key="object" ref="81054269"/> + <reference key="parent" ref="1049699681"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">166</int> + <reference key="object" ref="790724026"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="190094013"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">167</int> + <reference key="object" ref="190094013"/> + <reference key="parent" ref="790724026"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>120.IBPluginDependency</string> + <string>121.IBPluginDependency</string> + <string>122.IBPluginDependency</string> + <string>123.IBPluginDependency</string> + <string>124.IBPluginDependency</string> + <string>125.IBPluginDependency</string> + <string>166.IBPluginDependency</string> + <string>167.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{614, 594}, {430, 34}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">168</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SpellActionController</string> + <string key="superclassName">ActionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>spellInstantButton</string> + <string>spellPopUp</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSButton</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SpellActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="203642501"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="203642501"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/SpellActionController.h b/SpellActionController.h new file mode 100644 index 0000000..4a20259 --- /dev/null +++ b/SpellActionController.h @@ -0,0 +1,24 @@ +// +// SpellActionController.h +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +#import "ActionController.h" + +@interface SpellActionController : ActionController { + IBOutlet NSPopUpButton *spellPopUp; + IBOutlet NSButton *spellInstantButton; + + NSArray *_spells; +} + ++ (id)spellActionControllerWithSpells: (NSArray*)spells; + +@property (readwrite, copy) NSArray *spells; + +@end diff --git a/SpellActionController.m b/SpellActionController.m new file mode 100644 index 0000000..e0a0344 --- /dev/null +++ b/SpellActionController.m @@ -0,0 +1,100 @@ +// +// SpellActionController.m +// Pocket Gnome +// +// Created by Josh on 1/15/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "SpellActionController.h" +#import "ActionController.h" + +#import "Spell.h" +#import "Action.h" + + +@implementation SpellActionController + +- (id)init +{ + self = [super init]; + if (self != nil) { + _spells = nil; + if(![NSBundle loadNibNamed: @"SpellAction" owner: self]) { + log(LOG_GENERAL, @"Error loading SpellAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id)initWithSpells: (NSArray*)spells{ + self = [self init]; + if (self != nil) { + self.spells = spells; + } + return self; +} + +// sort +NSInteger alphabeticSort(id spell1, id spell2, void *context){ + return [[(Spell*)spell1 name] localizedCaseInsensitiveCompare:[(Spell*)spell2 name]]; +} + ++ (id)spellActionControllerWithSpells: (NSArray*)spells{ + NSMutableArray *arrayToSort = [NSMutableArray arrayWithArray:spells]; + [arrayToSort sortUsingFunction:alphabeticSort context:nil]; + return [[[SpellActionController alloc] initWithSpells: arrayToSort] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [spellPopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [spellPopUp unbind: binding]; + } +} + +@synthesize spells = _spells; + +- (void)setStateFromAction: (Action*)action{ + + NSNumber *spellID = [[action value] objectForKey:@"SpellID"]; + NSNumber *instant = [[action value] objectForKey:@"Instant"]; + + for ( NSMenuItem *item in [spellPopUp itemArray] ){ + if ( [[(Spell*)[item representedObject] ID] intValue] == [spellID intValue] ){ + [spellPopUp selectItem:item]; + break; + } + } + + [spellInstantButton setState:[instant boolValue]]; + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Spell value:nil]; + + [action setEnabled: self.enabled]; + + NSNumber *spellID = [[[spellPopUp selectedItem] representedObject] ID]; + NSNumber *instant = [NSNumber numberWithBool:[spellInstantButton state]]; + + NSDictionary *values = [NSDictionary dictionaryWithObjectsAndKeys: + spellID, @"SpellID", + instant, @"Instant", nil]; + + [action setValue: values]; + + return action; +} + +@end diff --git a/SpellController.h b/SpellController.h new file mode 100644 index 0000000..0e38ab9 --- /dev/null +++ b/SpellController.h @@ -0,0 +1,89 @@ +// +// SpellController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/20/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "MemoryAccess.h" +#import "Spell.h" + +@class Controller; +@class BotController; +@class MacroController; +@class PlayerDataController; +@class OffsetController; +@class InventoryController; + +@interface SpellController : NSObject { + IBOutlet Controller *controller; + IBOutlet BotController *botController; + IBOutlet PlayerDataController *playerController; + IBOutlet OffsetController *offsetController; + IBOutlet MacroController *macroController; + IBOutlet InventoryController *itemController; + + IBOutlet id spellDropDown; + IBOutlet id spellLoadingProgress; + + IBOutlet NSView *view; + IBOutlet NSPanel *cooldownPanel; + IBOutlet NSTableView *cooldownPanelTable; + + Spell *selectedSpell; + NSMutableArray *_playerSpells; + NSMutableArray *_playerCooldowns; + NSMutableDictionary *_spellBook, *_cooldowns; + NSSize minSectionSize, maxSectionSize; + + NSTimer *_lastSpellReloadTimer; +} + ++ (SpellController *)sharedSpells; + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property (readwrite, retain) Spell *selectedSpell; + +- (UInt32)lastAttemptedActionID; // uses LAST_SPELL_*_STATIC constant + +- (void)reloadPlayerSpells; + +- (Spell*)spellForName: (NSString*)name; +- (Spell*)spellForID: (NSNumber*)spellID; +- (Spell*)playerSpellForName: (NSString*)spellName; +- (Spell*)mountSpell: (int)type andFast:(BOOL)isFast; +- (int)mountsLoaded; +- (BOOL)addSpellAsRecognized: (Spell*)spell; + +// For spell cooldowns (no longer needed as of 3.1.3 due to CD code) +//- (void)didCastSpell: (Spell*)spell; +//- (void)didCastSpellWithID: (NSNumber*)spellID; +//- (BOOL)canCastSpellWithID: (NSNumber*)spellID; + +- (BOOL)isPlayerSpell: (Spell*)spell; +- (NSArray*)playerSpells; +- (NSMenu*)playerSpellsMenu; + +- (IBAction)reloadMenu: (id)sender; +- (IBAction)spellLoadAllData:(id)sender; + +- (void)showCooldownPanel; +- (void)reloadCooldownInfo; + +// Cooldown info +-(BOOL)isGCDActive; +-(BOOL)isSpellOnCooldown:(UInt32)spell; +-(UInt32)cooldownLeftForSpellID:(UInt32)spell; + +- (BOOL)isUsableAction: (UInt32)actionID; +- (BOOL)isUsableActionWithSlot: (int)slot; + +// returns nil if ready! Otherwise an error string +- (NSString*)spellsReadyForBotting; + +@end diff --git a/SpellController.m b/SpellController.m new file mode 100644 index 0000000..571f07a --- /dev/null +++ b/SpellController.m @@ -0,0 +1,1055 @@ +// +// SpellController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/20/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <ScreenSaver/ScreenSaver.h> + +#import "SpellController.h" +#import "Controller.h" +#import "Offsets.h" +#import "Spell.h" +#import "PlayerDataController.h" +#import "OffsetController.h" +#import "MacroController.h" +#import "InventoryController.h" +#import "BotController.h" + +#import "Behavior.h" + +#pragma mark Note: LastSpellCast/Timer Disabled +#pragma mark - + +/* + #define CD_NEXT_ADDRESS 0x4 + #define CD_SPELLID 0x8 + #define CD_COOLDOWN 0x14 + #define CD_COOLDOWN2 0x20 + #define CD_ENABLED 0x24 + #define CD_STARTTIME 0x1C // Also 0x10 + #define CD_GCD 0x2C // Also 0x2C + */ +typedef struct WoWCooldown { + UInt32 unk; // 0x0 + UInt32 nextObjectAddress; // 0x4 + UInt32 spellID; // 0x8 + UInt32 unk3; // 0xC (always 0 when the spell is a player spell) + UInt32 startTime; // 0x10 (start time of the spell, stored in milliseconds) + long cooldown; // 0x14 + UInt32 unk4; // 0x18 + UInt32 startNotUsed; // 0x1C (the same as 0x10 always I believe?) + long cooldown2; // 0x20 + UInt32 enabled; // 0x24 (0 if spell is enabled, 1 if it's not) + UInt32 unk5; // 0x28 + UInt32 gcd; // 0x2C +} WoWCooldown; + +@interface SpellController (Internal) +- (void)buildSpellMenu; +- (void)synchronizeSpells; +- (NSArray*)mountsBySpeed: (int)speed; + +@end + +@implementation SpellController + +static SpellController *sharedSpells = nil; + ++ (SpellController *)sharedSpells { + if (sharedSpells == nil) + sharedSpells = [[[self class] alloc] init]; + return sharedSpells; +} + +- (id) init { + self = [super init]; + if(sharedSpells) { + [self release]; + self = sharedSpells; + } else if(self != nil) { + + sharedSpells = self; + + //_knownSpells = [[NSMutableArray array] retain]; + _playerSpells = [[NSMutableArray array] retain]; + _playerCooldowns = [[NSMutableArray array] retain]; + _cooldowns = [[NSMutableDictionary dictionary] retain]; + + // remove the old spell book + [[NSUserDefaults standardUserDefaults] removeObjectForKey:@"SpellBook"]; + [[NSUserDefaults standardUserDefaults] synchronize]; + + // new spell book for cata! + NSData *spellBook = [[NSUserDefaults standardUserDefaults] objectForKey: @"SpellBookCata"]; + if(spellBook) { + _spellBook = [[NSKeyedUnarchiver unarchiveObjectWithData: spellBook] mutableCopy]; + } else + _spellBook = [[NSMutableDictionary dictionary] retain]; + + // register notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(applicationWillTerminate:) + name: NSApplicationWillTerminateNotification + object: nil]; + + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil]; + + [NSBundle loadNibNamed: @"Spells" owner: self]; + } + return self; +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = [self.view frame].size; + +} + +@synthesize view; +@synthesize selectedSpell; +@synthesize minSectionSize; +@synthesize maxSectionSize; + +- (NSString*)sectionTitle { + return @"Spells"; +} + +- (void)playerIsValid: (NSNotification*)notification { + + [self reloadPlayerSpells]; + + + int numLoaded = 0; + for(Spell *spell in [self playerSpells]) { + if( ![spell name] || ![[spell name] length] || [[spell name] isEqualToString: @"[Unknown]"]) { + numLoaded++; + [spell reloadSpellData]; + } + } + + if(numLoaded > 0) { + // log(LOG_GENERAL, @"[Spells] Loading %d unknown spells from wowhead.", numLoaded); + } +} + + +- (void)applicationWillTerminate: (NSNotification*)notification { + [self synchronizeSpells]; +} + + +#pragma mark - +#pragma mark Internal + +- (void)synchronizeSpells { + [[NSUserDefaults standardUserDefaults] setObject: [NSKeyedArchiver archivedDataWithRootObject: _spellBook] forKey: @"SpellBookCata"]; + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +- (void)reloadPlayerSpells { + [_playerSpells removeAllObjects]; + MemoryAccess *memory = [controller wowMemoryAccess]; + if( !memory ) return; + + int i; + + // find known spells + UInt32 offset = [offsetController offset:@"lua_GetSpellBookItemInfo"]; + NSMutableArray *playerSpells = [NSMutableArray array]; + if ( [playerController playerIsValid:self] && offset ){ + + UInt32 totalSpells = 0, spellBookInfoPtr = 0; + [memory loadDataForObject: self atAddress: offset Buffer: (Byte *)&totalSpells BufLength: sizeof(totalSpells)]; + [memory loadDataForObject: self atAddress: offset + 0x4 Buffer: (Byte *)&spellBookInfoPtr BufLength: sizeof(spellBookInfoPtr)]; + + if ( totalSpells > 0 && spellBookInfoPtr > 0x0 ){ + + UInt32 spellStruct = 0, spellID = 0, isKnown = 0; + + for ( i = 0; i < totalSpells; i++ ){ + [memory loadDataForObject: self atAddress: spellBookInfoPtr + i * 4 Buffer: (Byte *)&spellStruct BufLength: sizeof(spellStruct)]; + [memory loadDataForObject: self atAddress: spellStruct + 0x4 Buffer: (Byte *)&spellID BufLength: sizeof(spellID)]; + [memory loadDataForObject: self atAddress: spellStruct Buffer: (Byte *)&isKnown BufLength: sizeof(isKnown)]; // not needed + + // we already have the spell - yay! + Spell *spell = [self spellForID:[NSNumber numberWithInt:spellID]]; + + // never seen it before, lets create it + if ( !spell ){ + spell = [Spell spellWithID: [NSNumber numberWithUnsignedInt: spellID]]; + [self addSpellAsRecognized: spell]; + } + + // then we know the spell! + if ( isKnown != 2 ){ + [playerSpells addObject: spell]; + } + } + } + } + + // scan the list of mounts! + NSMutableArray *playerMounts = [NSMutableArray array]; + uint32_t value = 0; + if( [playerController playerIsValid:self] ){ + UInt32 mountAddress = 0; + + UInt32 companionOffset = [offsetController offset:@"Lua_GetNumCompanions"]; + + // grab the total number of mounts + int32_t totalMounts = 0; + [memory loadDataForObject: self atAddress: companionOffset + 0x10 Buffer: (Byte *)&totalMounts BufLength: sizeof(totalMounts)]; + + log(LOG_DEV, @"[Mount] You have %d mounts, loading!", totalMounts); + + // grab the pointer to the list + if([memory loadDataForObject: self atAddress: companionOffset + 0x14 Buffer: (Byte *)&mountAddress BufLength: sizeof(mountAddress)] && mountAddress) { + + int i = 0; + for ( ; i < totalMounts ; i++ ) { + // load all known spells into a temp array + if ( [memory loadDataForObject: self atAddress: mountAddress + (i*0x4) Buffer: (Byte *)&value BufLength: sizeof(value)] ) { + Spell *spell = [self spellForID: [NSNumber numberWithUnsignedInt: value]]; + if ( !spell ) { + + // create a new spell if necessary + spell = [Spell spellWithID: [NSNumber numberWithUnsignedInt: value]]; + if ( !spell ){ + log(LOG_GENERAL, @"[Spell] Mount %d not found!", value ); + continue; + } + + // spell isn't a mount? snap we probably need to reload it's data! + if ( ![spell isMount] ){ + log(LOG_GENERAL, @"[Spell] Mount %d isn't registered as a mount! Reloading data", value); + [spell reloadSpellData]; + } + + [self addSpellAsRecognized: spell]; + } + [playerMounts addObject: spell]; + } + else { + break; + } + } + } + + //log(LOG_GENERAL, @"[Mount] Broke after search of %d mounts", i); + } + + // update list of known spells + [_playerSpells addObjectsFromArray: playerSpells]; + if ( [playerMounts count] > 0 ) + [_playerSpells addObjectsFromArray: playerMounts]; + [self buildSpellMenu]; +} + +- (void)buildSpellMenu { + + NSMenu *spellMenu = [[[NSMenu alloc] initWithTitle: @"Spells"] autorelease]; + + // load the player spells into arrays by spell school + NSMutableDictionary *organizedSpells = [NSMutableDictionary dictionary]; + for(Spell *spell in _playerSpells) { + + if ( [spell isMount] ){ + if( ![organizedSpells objectForKey: @"Mount"] ) + [organizedSpells setObject: [NSMutableArray array] forKey: @"Mount"]; + [[organizedSpells objectForKey: @"Mount"] addObject: spell]; + } + else if([spell school]) { + if( ![organizedSpells objectForKey: [spell school]] ) + [organizedSpells setObject: [NSMutableArray array] forKey: [spell school]]; + [[organizedSpells objectForKey: [spell school]] addObject: spell]; + } + else { + if( ![organizedSpells objectForKey: @"Unknown"] ) + [organizedSpells setObject: [NSMutableArray array] forKey: @"Unknown"]; + [[organizedSpells objectForKey: @"Unknown"] addObject: spell]; + } + } + + NSMenuItem *spellItem; + NSSortDescriptor *nameDesc = [[[NSSortDescriptor alloc] initWithKey: @"name" ascending: YES] autorelease]; + for(NSString *key in [organizedSpells allKeys]) { + // create menu header for spell school name + spellItem = [[[NSMenuItem alloc] initWithTitle: key action: nil keyEquivalent: @""] autorelease]; + [spellItem setAttributedTitle: [[[NSAttributedString alloc] initWithString: key + attributes: [NSDictionary dictionaryWithObjectsAndKeys: [NSFont boldSystemFontOfSize: 0], NSFontAttributeName, nil]] autorelease]]; + [spellItem setTag: 0]; + [spellMenu addItem: spellItem]; + + // then, sort the array so its in alphabetical order + NSMutableArray *schoolArray = [organizedSpells objectForKey: key]; + [schoolArray sortUsingDescriptors: [NSArray arrayWithObject: nameDesc]]; + + // loop over the array and add in all the spells + for(Spell *spell in schoolArray) { + if( [spell name]) { + spellItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@ - %@", [spell fullName], [spell ID] ] action: nil keyEquivalent: @""]; + } else { + spellItem = [[NSMenuItem alloc] initWithTitle: [NSString stringWithFormat: @"%@", [spell ID]] action: nil keyEquivalent: @""]; + } + [spellItem setTag: [[spell ID] unsignedIntValue]]; + [spellItem setRepresentedObject: spell]; + [spellItem setIndentationLevel: 1]; + [spellMenu addItem: [spellItem autorelease]]; + } + [spellMenu addItem: [NSMenuItem separatorItem]]; + } + + int tagToSelect = 0; + if( [_playerSpells count] == 0) { + //for(NSMenuItem *item in [spellMenu itemArray]) { + // [spellMenu removeItem: item]; + //} + spellItem = [[NSMenuItem alloc] initWithTitle: @"There are no available spells." action: nil keyEquivalent: @""]; + [spellItem setTag: 0]; + [spellMenu addItem: [spellItem autorelease]]; + } else { + tagToSelect = [[spellDropDown selectedItem] tag]; + } + + [spellDropDown setMenu: spellMenu]; + [spellDropDown selectItemWithTag: tagToSelect]; +} + +#pragma mark - + +- (Spell*)spellForName: (NSString*)name { + if(!name || ![name length]) return nil; + //log(LOG_GENERAL, @"[Spell] Searching for spell \"%@\"", name); + + // always return the highest one! + UInt32 spellID = 0; + Spell *tehSpell = nil; + for(Spell *spell in [_spellBook allValues]) { + if([spell name]) { + NSRange range = [[spell name] rangeOfString: name + options: NSCaseInsensitiveSearch | NSAnchoredSearch | NSDiacriticInsensitiveSearch]; + if(range.location != NSNotFound){ + + if ( [[spell ID] unsignedIntValue] > spellID ){ + tehSpell = spell; + spellID = [[spell ID] unsignedIntValue]; + } + } + } + } + + return tehSpell; +} + +- (Spell*)spellForID: (NSNumber*)spellID { + return [_spellBook objectForKey: spellID]; +} + +- (Spell*)playerSpellForName: (NSString*)spellName{ + if(!spellName) return nil; + + for(Spell *spell in [self playerSpells]) { + // if the spell names match + if([spell name] && [[spell name] isEqualToString: spellName]) { + return spell; + } + } + + return nil; +} + +- (int)mountsLoaded{ + int total = 0; + for ( Spell *spell in _playerSpells ) { + if ( [spell isMount] ){ + total++; + } + } + return total; +} + +// I really don't like how ugly this function is, if only it was elegant :( +- (Spell*)mountSpell: (int)type andFast:(BOOL)isFast{ + + NSMutableArray *mounts = [NSMutableArray array]; + if ( type == MOUNT_GROUND ){ + + // Add fast mounts! + if ( isFast ){ + [mounts addObjectsFromArray:[self mountsBySpeed:100]]; + } + + // We either have no fast mounts, or we didn't even want them! + if ( [mounts count] == 0 ){ + [mounts addObjectsFromArray:[self mountsBySpeed:60]]; + } + } + else if ( type == MOUNT_AIR ){ + if ( isFast ){ + [mounts addObjectsFromArray:[self mountsBySpeed:310]]; + + // For most we will be here + if ( [mounts count] == 0 ){ + [mounts addObjectsFromArray:[self mountsBySpeed:280]]; + } + } + + // We either have no fast mounts, or we didn't even want them! + if ( [mounts count] == 0 ){ + [mounts addObjectsFromArray:[self mountsBySpeed:150]]; + } + } + + // Randomly select one from the array! + while ( [mounts count] > 0 ){ + + // choose a random mount + int randomMount = SSRandomIntBetween(0, [mounts count]-1); + + // get the random spell from the list! + Spell *spell = [mounts objectAtIndex:randomMount]; + + // make sure we can cast the spell! + if ( [self isUsableAction:[[spell ID] intValue]] ){ + log(LOG_MOUNT, @"Found usable mount! %@", spell); + return spell; + } + + log(LOG_GENERAL, @"[Mount] Unable to verify spell %@, trying to find another (if no mount is on an action bar this will fail forever).", spell); + + // this spell failed, remove it so we don't select it again + [mounts removeObjectAtIndex:randomMount]; + } + + return nil; +} + +- (NSArray*)mountsBySpeed: (int)speed{ + NSMutableArray *mounts = [NSMutableArray array]; + for(Spell *spell in _playerSpells) { + int s = [[spell speed] intValue]; + if ( s == speed ){ + [mounts addObject:spell]; + } + } + + return mounts; +} + +- (BOOL)addSpellAsRecognized: (Spell*)spell { + if(![spell ID]) return NO; + if([[spell ID] unsignedIntValue] > 1000000) return NO; + if( ![self spellForID: [spell ID]] ) { + // log(LOG_GENERAL, @"Adding spell %@ as recognized.", spell); + [_spellBook setObject: spell forKey: [spell ID]]; + [self synchronizeSpells]; + return YES; + } + return NO; +} + +#pragma mark - + +- (BOOL)isPlayerSpell: (Spell*)aSpell { + for(Spell *spell in [self playerSpells]) { + if([spell isEqualToSpell: aSpell]) + return YES; + } + return NO; +} + +- (NSArray*)playerSpells { + return [[_playerSpells retain] autorelease]; +} + +- (NSMenu*)playerSpellsMenu { + [self reloadPlayerSpells]; + return [[[spellDropDown menu] copy] autorelease]; +} + +- (UInt32)lastAttemptedActionID { + UInt32 value = 0; + [[controller wowMemoryAccess] loadDataForObject: self atAddress: [offsetController offset:@"LAST_SPELL_THAT_DIDNT_CAST_STATIC"] Buffer: (Byte*)&value BufLength: sizeof(value)]; + return value; +} + +#pragma mark - +#pragma mark IBActions + +- (IBAction)reloadMenu: (id)sender { + [self reloadPlayerSpells]; +} + +- (IBAction)spellLoadAllData:(id)sender { + + // make sure our state is valid + MemoryAccess *memory = [controller wowMemoryAccess]; + if( !memory ) { + NSBeep(); + return; + } + + [self reloadPlayerSpells]; + + if([_playerSpells count]) { + [spellLoadingProgress setHidden: NO]; + [spellLoadingProgress setMaxValue: [_playerSpells count]]; + [spellLoadingProgress setDoubleValue: 0]; + [spellLoadingProgress setUsesThreadedAnimation: YES]; + } else { + return; + } + + for(Spell *spell in _playerSpells) { + [spell reloadSpellData]; + [spellLoadingProgress incrementBy: 1.0]; + [spellLoadingProgress displayIfNeeded]; + } + + // finish up + [spellLoadingProgress setHidden: YES]; + [self synchronizeSpells]; + [self reloadPlayerSpells]; +} + +- (void)showCooldownPanel{ + [cooldownPanel makeKeyAndOrderFront: self]; +} + +// Pull in latest CD info +- (void)reloadCooldownInfo{ + + // Why are we updating the table if we can't see it?? + if ( ![[cooldownPanelTable window] isVisible] ){ + return; + } + + [_playerCooldowns removeAllObjects]; + + MemoryAccess *memory = [controller wowMemoryAccess]; + + UInt32 objectListPtr = 0, lastObjectPtr=0, row=0; + UInt32 offset = [offsetController offset:@"CD_LIST_STATIC"]; + [memory loadDataForObject:self atAddress:offset + 0x4 Buffer:(Byte *)&lastObjectPtr BufLength:sizeof(lastObjectPtr)]; + [memory loadDataForObject:self atAddress:offset + 0x8 Buffer:(Byte *)&objectListPtr BufLength:sizeof(objectListPtr)]; + BOOL reachedEnd = NO; + + WoWCooldown cd; + while ((objectListPtr != 0) && ((objectListPtr & 1) == 0) ) { + row++; + [memory loadDataForObject: self atAddress: (objectListPtr) Buffer:(Byte*)&cd BufLength: sizeof(cd)]; + + long realCD = cd.cooldown; + if ( cd.cooldown2 > cd.cooldown ) + realCD = cd.cooldown2; + + long realStartTime = cd.startTime; + if ( cd.startNotUsed > cd.startTime ) + realStartTime = cd.startNotUsed; + + + /* + typedef struct WoWCooldown { + UInt32 unk; // 0x0 + UInt32 nextObjectAddress; // 0x4 + UInt32 spellID; // 0x8 + UInt32 unk3; // 0xC (always 0 when the spell is a player spell) + UInt32 startTime; // 0x10 (start time of the spell, stored in milliseconds) + long cooldown; // 0x14 + UInt32 unk4; // 0x18 + UInt32 startNotUsed; // 0x1C (the same as 0x10 always I believe?) + long cooldown2; // 0x20 + UInt32 enabled; // 0x24 (0 if spell is enabled, 1 if it's not) + UInt32 unk5; // 0x28 + UInt32 gcd; // 0x2C + } WoWCooldown; + */ + + // Save it! + [_playerCooldowns addObject: [NSDictionary dictionaryWithObjectsAndKeys: + [NSNumber numberWithUnsignedLong: row], @"ID", + [NSNumber numberWithUnsignedLong: cd.spellID], @"SpellID", + [NSNumber numberWithUnsignedLong: realStartTime], @"StartTime", + [NSNumber numberWithUnsignedLong: realCD], @"Cooldown", + [NSNumber numberWithUnsignedLong: cd.gcd], @"GCD", + [NSNumber numberWithUnsignedLong: cd.unk], @"Unk", + [NSNumber numberWithUnsignedLong: cd.unk3], @"Unk3", + [NSNumber numberWithUnsignedLong: cd.unk4], @"Unk4", + [NSNumber numberWithUnsignedLong: cd.unk5], @"Unk5", + [NSNumber numberWithUnsignedLong: cd.startTime], @"OriginalStartTime", + [NSNumber numberWithUnsignedLong: cd.startNotUsed], @"StartNotUsed", + [NSNumber numberWithUnsignedLong: cd.cooldown], @"CD1", + [NSNumber numberWithUnsignedLong: cd.cooldown2], @"CD2", + [NSNumber numberWithUnsignedLong: cd.enabled], @"Enabled", + + nil]]; + + if ( reachedEnd ) + break; + + objectListPtr = cd.nextObjectAddress; + + if ( objectListPtr == lastObjectPtr ) + reachedEnd = YES; + } + + [cooldownPanelTable reloadData]; +} + + + +#pragma mark - +#pragma mark Auras Delesource + + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + return [_playerCooldowns count]; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if(rowIndex == -1 || rowIndex >= [_playerCooldowns count]) return nil; + + if([[aTableColumn identifier] isEqualToString: @"Cooldown"]) { + float secRemaining = [[[_playerCooldowns objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]] floatValue]/1000.0f; + if(secRemaining < 60.0f) { + return [NSString stringWithFormat: @"%.0f sec", secRemaining]; + } else if(secRemaining < 3600.0f) { + return [NSString stringWithFormat: @"%.0f min", secRemaining/60.0f]; + } else if(secRemaining < 86400.0f) { + return [NSString stringWithFormat: @"%.0f hour", secRemaining/3600.0f]; + } else if(secRemaining < 604800.0f ) { + return [NSString stringWithFormat: @"%.0f days", secRemaining/86400.0f]; + } + } + + if([[aTableColumn identifier] isEqualToString: @"TimeRemaining"]) { + double cd = [[[_playerCooldowns objectAtIndex: rowIndex] objectForKey: @"Cooldown"] floatValue]; + double currentTime = (float) [playerController currentTime]; + double startTime = [[[_playerCooldowns objectAtIndex: rowIndex] objectForKey: @"StartTime"] floatValue]; + double secRemaining = ((startTime + cd)-currentTime)/1000.0f; + + //if ( secRemaining < 0.0f ) secRemaining = 0.0f; + + if(secRemaining < 60.0f) { + return [NSString stringWithFormat: @"%.0f sec", secRemaining]; + } else if(secRemaining < 3600.0f) { + return [NSString stringWithFormat: @"%.0f min", secRemaining/60.0f]; + } else if(secRemaining < 86400.0f) { + return [NSString stringWithFormat: @"%.0f hour", secRemaining/3600.0f]; + } else if(secRemaining < 604800.0f ) { + return [NSString stringWithFormat: @"%.0f days", secRemaining/86400.0f]; + } + } + + if ([[aTableColumn identifier] isEqualToString:@"Address"]){ + return [NSString stringWithFormat:@"0x%X", [[[_playerCooldowns objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]] intValue]]; + } + + if ([[aTableColumn identifier] isEqualToString:@"SpellName"]){ + int spellID = [[[_playerCooldowns objectAtIndex: rowIndex] objectForKey: @"SpellID"] intValue]; + Spell *spell = [self spellForID:[NSNumber numberWithInt:spellID]]; + // need to add it! + if ( !spell ){ + spell = [Spell spellWithID: [NSNumber numberWithUnsignedInt: spellID]]; + [spell reloadSpellData]; + [self addSpellAsRecognized: spell]; + } + return [spell name]; + } + + return [[_playerCooldowns objectAtIndex: rowIndex] objectForKey: [aTableColumn identifier]]; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (void)tableView:(NSTableView *)aTableView sortDescriptorsDidChange:(NSArray *)oldDescriptors { + //[_playerAuras sortUsingDescriptors: [aurasPanelTable sortDescriptors]]; + [cooldownPanelTable reloadData]; +} + +#pragma mark Cooldowns +// Contribution by Monder - thank you! + +-(BOOL)isGCDActive { + MemoryAccess *memory = [controller wowMemoryAccess]; + UInt32 currentTime = [playerController currentTime]; + UInt32 objectListPtr = 0, lastObjectPtr=0; + UInt32 offset = [offsetController offset:@"CD_LIST_STATIC"]; + BOOL reachedEnd = NO; + WoWCooldown cd; + + // load start/end object ptrs + [memory loadDataForObject:self atAddress:offset + 0x4 Buffer:(Byte *)&lastObjectPtr BufLength:sizeof(lastObjectPtr)]; + [memory loadDataForObject:self atAddress:offset + 0x8 Buffer:(Byte *)&objectListPtr BufLength:sizeof(objectListPtr)]; + + while ((objectListPtr != 0) && ((objectListPtr & 1) == 0) ) { + [memory loadDataForObject: self atAddress: (objectListPtr) Buffer:(Byte*)&cd BufLength: sizeof(cd)]; + + long realStartTime = cd.startTime; + if ( cd.startNotUsed > cd.startTime ) + realStartTime = cd.startNotUsed; + + // is gcd active? + if ( cd.gcd != 0 && realStartTime + cd.gcd > currentTime ){ + return YES; + } + + if ( reachedEnd ) + break; + + objectListPtr = cd.nextObjectAddress; + + if ( objectListPtr == lastObjectPtr ) + reachedEnd = YES; + } + + return NO; +} +-(BOOL)isSpellOnCooldown:(UInt32)spell { + if( [self cooldownLeftForSpellID:spell] == 0) + return NO; + return YES; +} + +// this could be more elegant (i.e. storing cooldown info and only updating it every 0.25 seconds or when a performAction on a spell is done) +-(UInt32)cooldownLeftForSpellID:(UInt32)spell { + + MemoryAccess *memory = [controller wowMemoryAccess]; + + UInt32 currentTime = [playerController currentTime]; + UInt32 objectListPtr = 0, lastObjectPtr=0; + UInt32 offset = [offsetController offset:@"CD_LIST_STATIC"]; + [memory loadDataForObject:self atAddress:offset + 0x4 Buffer:(Byte *)&lastObjectPtr BufLength:sizeof(lastObjectPtr)]; + [memory loadDataForObject:self atAddress:offset + 0x8 Buffer:(Byte *)&objectListPtr BufLength:sizeof(objectListPtr)]; + BOOL reachedEnd = NO; + + WoWCooldown cd; + while ((objectListPtr != 0) && ((objectListPtr & 1) == 0) ) { + [memory loadDataForObject: self atAddress: (objectListPtr) Buffer:(Byte*)&cd BufLength: sizeof(cd)]; + + if ( cd.spellID == spell ){ + + long realCD = cd.cooldown; + if ( cd.cooldown2 > cd.cooldown ) + realCD = cd.cooldown2; + + long realStartTime = cd.startTime; + if ( cd.startNotUsed > cd.startTime ) + realStartTime = cd.startNotUsed; + + // are we on cooldown? + if ( realStartTime + realCD > currentTime ) + return realStartTime + realCD - currentTime; + } + + if ( reachedEnd ) + break; + + objectListPtr = cd.nextObjectAddress; + + if ( objectListPtr == lastObjectPtr ) + reachedEnd = YES; + } + + // if we get here we made it through the list, the spell isn't on cooldown! + return 0; +} + +#pragma mark Spell Usable? + +- (BOOL)isUsableActionWithSlot: (int)slot{ + + // grab memory + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return NO; + + UInt32 isUsable = 0, dueToMana = 0; + [memory loadDataForObject: self atAddress: [offsetController offset:@"Lua_IsUsableAction"] + (slot*4) Buffer: (Byte *)&isUsable BufLength: sizeof(isUsable)]; + [memory loadDataForObject: self atAddress: [offsetController offset:@"Lua_IsUsableActionNotEnough"] + (slot*4) Buffer: (Byte *)&dueToMana BufLength: sizeof(dueToMana)]; + + //log(LOG_GENERAL, @" [Spell] For slot 0x%X, usable? %d due to mana? %d", slot, isUsable, dueToMana); + + // yay! we can use this ability! + if ( isUsable && !dueToMana ){ + return YES; + } + + return NO; +} + +// are we able to use this spell (it must be on an action bar!) +- (BOOL)isUsableAction: (UInt32)actionID{ + + // grab memory + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return NO; + + // find out where the action is stored + UInt32 hotbarBaseOffset = [offsetController offset:@"HOTBAR_BASE_STATIC"]; + + // find where the spell is on our bar + UInt32 hotbarActionIDs[MAXIMUM_SPELLS_IN_BARS] = {0}; + int spellOffset = -1; + if ( [memory loadDataForObject: self atAddress: hotbarBaseOffset Buffer: (Byte *)&hotbarActionIDs BufLength: sizeof(hotbarActionIDs)] ){ + + int i; + for ( i = 0; i < MAXIMUM_SPELLS_IN_BARS; i++ ){ + + if ( actionID == hotbarActionIDs[i] ){ + spellOffset = i; + } + } + } + + /* + this method doesn't work unfortunately, the spells must be on the player's bars + + UInt32 readActionID = 0; + int i, spellOffset = -1; + // loop through all 10 bars to find it + for ( i = 0; i <= 0x1E0; i++ ){ + if ( [memory loadDataForObject: self atAddress: hotbarBaseOffset + (i*4) Buffer: (Byte *)&readActionID BufLength: sizeof(readActionID)] && readActionID ){ + if ( readActionID == actionID ){ + spellOffset = i; + break; + } + } + }*/ + + if ( spellOffset != -1 ){ + return [self isUsableActionWithSlot:spellOffset]; + } + + return NO; + + //log(LOG_GENERAL, @"Spell offset: 0x%X", spellOffset); + + + + + /*UInt32 hotbarBaseOffset = [offsetController offset:@"HOTBAR_BASE_STATIC"]; + + log(LOG_GENERAL, @"writing to 0x%X", hotbarBaseOffset + BAR6_OFFSET); + + // get the old spell + UInt32 oldActionID = 0; + [memory loadDataForObject: self atAddress: (hotbarBaseOffset + BAR6_OFFSET) Buffer: (Byte *)&oldActionID BufLength: sizeof(oldActionID)]; + + // write the new action to memory + [memory saveDataForAddress: (hotbarBaseOffset + BAR6_OFFSET) Buffer: (Byte *)&actionID BufLength: sizeof(actionID)]; + + // wow needs time to process the spell change + usleep([controller refreshDelay]*2); + + BOOL usable = [self isUsableActionWithSlot:(BAR6_OFFSET / 4)]; + + // then save our old action back + [memory saveDataForAddress: (hotbarBaseOffset + BAR6_OFFSET) Buffer: (Byte *)&oldActionID BufLength: sizeof(oldActionID)]; + + // wow needs time to process the spell change + usleep([controller refreshDelay]*2); + + return usable;*/ + + + + + // save the old spell + write the new one + /* + isUsable Flag - Returns 1 if the action is valid for use at present (Does NOT include cooldown or range tests), nil otherwise. + notEnoughMana Flag - Returns 1 if the reason for the action not being usable is because there is not enough mana/rage/energy, nil otherwise. + + + signed int __cdecl lua_IsUsableAction(int a1) + { + int v1; // eax@2 + double v2; // ST18_8@2 + signed int result; // eax@3 + + if ( !FrameScript_IsNumber(a1, 1) ) + FrameScript_DisplayError(a1, "Usage: IsUsableAction(slot)"); + v2 = sub_814950(a1, 1); + __asm { cvttsd2si eax, [ebp+var_10]; Convert with Truncation Scalar Double-Precision Floating-Point Value to Doubleword Integer } + v1 = _EAX - 1; + if ( (unsigned int)v1 <= 0x8F && dword_isUsable[v1] ) //dword_D7DFC0 + { + // action not useable, due to mana/rage/energy + if ( dword_D7DD80[v1] ) + { + FrameScript_pushnil(a1); + FrameScript_PushNumber(a1, 4607182418800017408LL); + result = 2; + } + // action usable, mana irrelevant + else + { + FrameScript_PushNumber(a1, 4607182418800017408LL); + FrameScript_pushnil(a1); + result = 2; + } + } + // action not usable, and no mana :( + else + { + FrameScript_pushnil(a1); + FrameScript_pushnil(a1); + result = 2; + } + return result; + }*/ +} + +#pragma mark All Spells ready for the bot to start? + +- (NSArray*)allActionIDsOnActionBars{ + + // grab memory + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( !memory ) + return NO; + + NSMutableArray *allActionIDs = [NSMutableArray array]; + + // find out where the action is stored + UInt32 hotbarBaseOffset = [offsetController offset:@"HOTBAR_BASE_STATIC"]; + + // find where the spell is on our bar + UInt32 hotbarActionIDs[MAXIMUM_SPELLS_IN_BARS] = {0}; + if ( [memory loadDataForObject: self atAddress: hotbarBaseOffset Buffer: (Byte *)&hotbarActionIDs BufLength: sizeof(hotbarActionIDs)] ){ + + int i; + for ( i = 0; i < MAXIMUM_SPELLS_IN_BARS; i++ ){ + [allActionIDs addObject:[NSNumber numberWithInt:hotbarActionIDs[i]]]; + } + } + + return [[allActionIDs retain] autorelease]; +} + +// return all actions (items, spells, macros) that are used in a procedure +- (NSArray*)spellsInProcedure:(Behavior*)behavior{ + + NSArray *allProcedures = [behavior allProcedures]; + NSMutableArray *allActions = [NSMutableArray array]; + if ( allProcedures && [allProcedures count] ){ + + // look at each procedure + for ( Procedure *procedure in allProcedures ){ + + // look at each rule + int i; + for ( i = 0; i < [procedure ruleCount]; i++ ) { + Rule *rule = [procedure ruleAtIndex: i]; + + // an action exists! + if ( [[rule action] actionID] ){ + + // action id changes based on type + switch([rule resultType]) { + case ActionType_Item: + [allActions addObject:[NSNumber numberWithInt:USE_ITEM_MASK + [[rule action] actionID]]]; + break; + case ActionType_Macro: + [allActions addObject:[NSNumber numberWithInt:USE_MACRO_MASK + [[rule action] actionID]]]; + break; + case ActionType_Spell: + [allActions addObject:[NSNumber numberWithInt:[[rule action] actionID]]]; + break; + default: + break; + } + } + } + } + } + + return allActions; +} + +- (NSString*)spellsReadyForBotting{ + + NSMutableArray *allActions = [NSMutableArray arrayWithArray:[self spellsInProcedure:[botController theBehavior]]]; + + // remove the actions that are on our bars + NSArray *actionBarActions = [self allActionIDsOnActionBars]; + for ( NSNumber *actionID in actionBarActions ){ + + // then all are found! + if ( [allActions count] == 0 ) + break; + + if ( [allActions containsObject:actionID] ){ + [allActions removeObject:actionID]; + } + } + + // remove duplicates + NSMutableArray *finalActions = [NSMutableArray array]; + for ( NSNumber *action in allActions ){ + if ( ![finalActions containsObject:action] ){ + [finalActions addObject:action]; + } + } + + // any left here aren't on any bar, throw an error! + if ( [finalActions count] > 0 ){ + NSMutableString *error = [NSMutableString string]; + [error appendString:@"The following spells/macros/items are not on any action bar, please add them to a bar:\n\n"]; + + for ( NSNumber *actionID in finalActions ){ + UInt32 iActionID = [actionID unsignedLongValue]; + + // item + if ( iActionID & USE_ITEM_MASK ){ + Item *item = [itemController itemForID:[NSNumber numberWithUnsignedLong:iActionID - USE_ITEM_MASK]]; + + if ( item ){ + [error appendString:[NSString stringWithFormat:@"Item: %@ <%u>\n", [item name], iActionID - USE_ITEM_MASK]]; + } + else{ + [error appendString:[NSString stringWithFormat:@"Item ID: <%u>\n", iActionID - USE_ITEM_MASK]]; + } + } + // macro + else if ( iActionID & USE_MACRO_MASK ){ + NSString *macroName = [macroController nameForID:iActionID - USE_MACRO_MASK]; + + if ( macroName && [macroName length] ){ + [error appendString:[NSString stringWithFormat:@"Macro: %@ <%u>\n", macroName, iActionID - USE_MACRO_MASK]]; + } + else{ + [error appendString:[NSString stringWithFormat:@"Macro: <%u>\n", iActionID - USE_MACRO_MASK]]; + } + } + // spell + else{ + Spell *spell = [self spellForID:actionID]; + + if ( spell ){ + [error appendString:[NSString stringWithFormat:@"Spell: %@ <%@>\n", [spell name], actionID]]; + } + else{ + [error appendString:[NSString stringWithFormat:@"Spell: <%@>\n", actionID]]; + } + } + } + + [error appendString:@"\nI would recommend using Bartender4 to better organize your spells (the bars can be hidden)\n\nSpell/Item name not listed? Try adding it to the end of these URLS:\nhttp://wowhead.com/?spell=\nhttp://wowhead.com/?item="]; + + return [[error retain] autorelease]; + } + + return nil; +} + +@end diff --git a/SpellCooldown.xib b/SpellCooldown.xib new file mode 100644 index 0000000..6ca173d --- /dev/null +++ b/SpellCooldown.xib @@ -0,0 +1,1096 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">SpellCooldownConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="330151648"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{320, 6}, {87, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="167088473"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="704037324"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="330151648"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">40</double> + <string key="NSSegmentItemLabel">Is</string> + <int key="NSSegmentItemTag">4</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">40</double> + <string key="NSSegmentItemLabel">Not</string> + <int key="NSSegmentItemTag">5</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSButton" id="493368739"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="240322974"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="493368739"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSTextField" id="568389253"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 10}, {39, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="1032047405"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Spell</string> + <reference key="NSSupport" ref="704037324"/> + <reference key="NSControlView" ref="568389253"/> + <object class="NSColor" key="NSBackgroundColor" id="815543956"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="747211592"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor" id="408280623"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSSegmentedControl" id="280561919"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{74, 6}, {108, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="82766734"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <reference key="NSSupport" ref="704037324"/> + <reference key="NSControlView" ref="280561919"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">51</double> + <string key="NSSegmentItemLabel">Num</string> + <string key="NSSegmentItemTooltip">Spell ID</string> + <int key="NSSegmentItemTag">1</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">50</double> + <string key="NSSegmentItemLabel">Name</string> + <string key="NSSegmentItemTooltip">Spell Name</string> + <int key="NSSegmentItemTag">3</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSTextField" id="512579955"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{188, 7}, {126, 22}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="794247817"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">138413056</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="704037324"/> + <reference key="NSControlView" ref="512579955"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textColor</string> + <reference key="NSColor" ref="408280623"/> + </object> + </object> + </object> + <object class="NSTextField" id="1005317436"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{410, 10}, {95, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="680071952"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">on cooldown.</string> + <reference key="NSSupport" ref="704037324"/> + <reference key="NSControlView" ref="1005317436"/> + <reference key="NSBackgroundColor" ref="815543956"/> + <reference key="NSTextColor" ref="747211592"/> + </object> + </object> + </object> + <string key="NSFrameSize">{522, 36}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="280561919"/> + </object> + <int key="connectionID">21</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="512579955"/> + </object> + <int key="connectionID">22</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">valueText</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="512579955"/> + </object> + <int key="connectionID">23</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">25</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="493368739"/> + </object> + <int key="connectionID">28</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="493368739"/> + </object> + <int key="connectionID">29</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">typeSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="280561919"/> + </object> + <int key="connectionID">30</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="330151648"/> + </object> + <int key="connectionID">33</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="330151648"/> + </object> + <int key="connectionID">34</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="493368739"/> + <reference ref="568389253"/> + <reference ref="280561919"/> + <reference ref="512579955"/> + <reference ref="330151648"/> + <reference ref="1005317436"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">4</int> + <reference key="object" ref="568389253"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1032047405"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">5</int> + <reference key="object" ref="1032047405"/> + <reference key="parent" ref="568389253"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">9</int> + <reference key="object" ref="512579955"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="794247817"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">10</int> + <reference key="object" ref="794247817"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <reference key="parent" ref="512579955"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">13</int> + <reference key="object" ref="1005317436"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="680071952"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">14</int> + <reference key="object" ref="680071952"/> + <reference key="parent" ref="1005317436"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">8</int> + <reference key="object" ref="280561919"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="82766734"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">12</int> + <reference key="object" ref="82766734"/> + <reference key="parent" ref="280561919"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">26</int> + <reference key="object" ref="493368739"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="240322974"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">27</int> + <reference key="object" ref="240322974"/> + <reference key="parent" ref="493368739"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">31</int> + <reference key="object" ref="330151648"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="167088473"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">32</int> + <reference key="object" ref="167088473"/> + <reference key="parent" ref="330151648"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>10.IBPluginDependency</string> + <string>12.IBPluginDependency</string> + <string>12.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>13.IBPluginDependency</string> + <string>14.IBPluginDependency</string> + <string>26.IBAttributePlaceholdersKey</string> + <string>26.IBPluginDependency</string> + <string>27.IBPluginDependency</string> + <string>31.CustomClassName</string> + <string>31.IBPluginDependency</string> + <string>32.IBPluginDependency</string> + <string>32.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>4.IBPluginDependency</string> + <string>5.IBPluginDependency</string> + <string>8.CustomClassName</string> + <string>8.IBPluginDependency</string> + <string>8.IBSegmentedControlTracker.RoundRobinState</string> + <string>8.IBSegmentedControlTracker.WasGrowing</string> + <string>9.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{714, 357}, {522, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{357, 416}, {480, 272}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="1"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="493368739"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <integer value="1"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">34</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SpellCooldownConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorSegment</string> + <string>typeSegment</string> + <string>valueText</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BetterSegmentedControl</string> + <string>BetterSegmentedControl</string> + <string>NSTextField</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SpellCooldownConditionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="342307005"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="466768218"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="767718731"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="726522119"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="380629504"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="342307005"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="466768218"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="767718731"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="726522119"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="380629504"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="89301148"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="89301148"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/SpellCooldownConditionController.h b/SpellCooldownConditionController.h new file mode 100644 index 0000000..27d1aa2 --- /dev/null +++ b/SpellCooldownConditionController.h @@ -0,0 +1,20 @@ +// +// SpellCooldownConditionController.h +// Pocket Gnome +// +// Created by Josh on 12/7/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface SpellCooldownConditionController : ConditionController { + IBOutlet BetterSegmentedControl *typeSegment; + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSTextField *valueText; +} + +@end diff --git a/SpellCooldownConditionController.m b/SpellCooldownConditionController.m new file mode 100644 index 0000000..a71ca12 --- /dev/null +++ b/SpellCooldownConditionController.m @@ -0,0 +1,64 @@ +// +// SpellCooldownConditionController.m +// Pocket Gnome +// +// Created by Josh on 12/7/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "SpellCooldownConditionController.h" + + +@implementation SpellCooldownConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"SpellCooldown" owner: self]) { + log(LOG_GENERAL, @"Error loading SpellCooldown.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + id value = nil; + if( [typeSegment selectedTag] == TypeValue ) + value = [NSNumber numberWithInt: [valueText intValue]]; + if( [typeSegment selectedTag] == TypeString ) + value = [valueText stringValue]; + + Condition *condition = [Condition conditionWithVariety: VarietySpellCooldown + unit: UnitNone + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: StateNone + type: [typeSegment selectedTag] + value: value]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietySpellCooldown) return; + + [typeSegment selectSegmentWithTag: [condition type]]; + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [valueText setStringValue:[NSString stringWithFormat:@"%@", [condition value]]]; + + [self validateState: nil]; +} + +@end diff --git a/Spell_FireResistanceTotem_01.png b/Spell_FireResistanceTotem_01.png new file mode 100644 index 0000000..a37ec62 Binary files /dev/null and b/Spell_FireResistanceTotem_01.png differ diff --git a/Spell_Holy_MindVision.png b/Spell_Holy_MindVision.png new file mode 100644 index 0000000..406cbe1 Binary files /dev/null and b/Spell_Holy_MindVision.png differ diff --git a/Spell_Holy_PrayerofSpirit.png b/Spell_Holy_PrayerofSpirit.png new file mode 100644 index 0000000..3edbfd2 Binary files /dev/null and b/Spell_Holy_PrayerofSpirit.png differ diff --git a/Spell_Nature_PoisonCleansingTotem.png b/Spell_Nature_PoisonCleansingTotem.png new file mode 100644 index 0000000..f366d1e Binary files /dev/null and b/Spell_Nature_PoisonCleansingTotem.png differ diff --git a/Spells.xib b/Spells.xib new file mode 100644 index 0000000..6c77043 --- /dev/null +++ b/Spells.xib @@ -0,0 +1,3842 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10F569</string> + <string key="IBDocument.InterfaceBuilderVersion">762</string> + <string key="IBDocument.AppKitVersion">1038.29</string> + <string key="IBDocument.HIToolboxVersion">461.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">762</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="16"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">SpellController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">319</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="983453135"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{17, 154}, {177, 14}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="989561012"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">Current player's available spells:</string> + <object class="NSFont" key="NSSupport" id="26"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">11</double> + <int key="NSfFlags">3100</int> + </object> + <reference key="NSControlView" ref="983453135"/> + <object class="NSColor" key="NSBackgroundColor" id="465052153"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2ODY1AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="165086122"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MCAwIDAAA</bytes> + </object> + </object> + </object> + <object class="NSButton" id="288593286"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{531, 148}, {26, 26}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="656021203"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Button</string> + <object class="NSFont" key="NSSupport" id="143584928"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="288593286"/> + <int key="NSButtonFlags">-2033958657</int> + <int key="NSButtonFlags2">130</int> + <object class="NSCustomResource" key="NSNormalImage" id="287497096"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSRefreshTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + <object class="NSProgressIndicator" id="353020440"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">-2147482358</int> + <object class="NSPSMatrix" key="NSDrawMatrix"/> + <string key="NSFrame">{{517, 17}, {40, 20}}</string> + <reference key="NSSuperview" ref="1005"/> + <int key="NSpiFlags">16392</int> + <double key="NSMaxValue">100</double> + </object> + <object class="NSButton" id="852849854"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{444, 18}, {67, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="938837294"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Load All</string> + <object class="NSFont" key="NSSupport" id="829560201"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="852849854"/> + <int key="NSButtonFlags">-2038152961</int> + <int key="NSButtonFlags2">164</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSTextField" id="981583352"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{17, 20}, {422, 14}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="971013015"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">Load all spell data from Wowhead? This may take a few moments to complete.</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="981583352"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="165086122"/> + </object> + </object> + <object class="NSPopUpButton" id="599068317"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">266</int> + <string key="NSFrame">{{196, 148}, {332, 26}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="628902303"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="143584928"/> + <reference key="NSControlView" ref="599068317"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">1</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="367184130"> + <reference key="NSMenu" ref="551913641"/> + <string key="NSTitle">There are no available spells.</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="628902303"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="551913641"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="367184130"/> + </object> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSBox" id="906173422"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">10</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="705599350"> + <reference key="NSNextResponder" ref="906173422"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="25016452"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{375, 61}, {45, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="8053204"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Range:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="25016452"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <object class="NSColor" key="NSTextColor" id="365554180"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSTextField" id="1033133196"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{207, 15}, {50, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="681476955"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">School:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="1033133196"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="365138853"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{9, 39}, {61, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="229587708"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Cooldown:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="365138853"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="321437144"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{350, 39}, {70, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="263373712"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Dispel Type:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="321437144"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="542463804"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{72, 61}, {139, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="920840867"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="542463804"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="263748766"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{422, 61}, {102, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="1027959463"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="263748766"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="564316389"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{72, 39}, {124, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="538498651"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="564316389"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="1014003424"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{259, 15}, {78, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="1033892476"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="1014003424"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="761674979"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{422, 39}, {102, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="858207814"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="761674979"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSButton" id="862177330"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{12, 12}, {196, 19}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="921321202"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Reload data from Wowhead</string> + <reference key="NSSupport" ref="829560201"/> + <reference key="NSControlView" ref="862177330"/> + <int key="NSButtonFlags">-2034482945</int> + <int key="NSButtonFlags2">164</int> + <reference key="NSNormalImage" ref="287497096"/> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSTextField" id="508349663"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{9, 61}, {61, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="317792845"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Name:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="508349663"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="193653147"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{259, 39}, {89, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="486028219"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="193653147"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="974341889"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{187, 39}, {70, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="942930259"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Cast Time:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="974341889"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="697629148"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{343, 17}, {77, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="674178586"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Mount Speed:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="697629148"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + <object class="NSTextField" id="633030694"> + <reference key="NSNextResponder" ref="705599350"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{422, 17}, {78, 14}}</string> + <reference key="NSSuperview" ref="705599350"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="774687732"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="633030694"/> + <reference key="NSBackgroundColor" ref="465052153"/> + <reference key="NSTextColor" ref="365554180"/> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {539, 87}}</string> + <reference key="NSSuperview" ref="906173422"/> + </object> + </object> + <string key="NSFrame">{{17, 41}, {541, 103}}</string> + <reference key="NSSuperview" ref="1005"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Data for Selected Spell</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="705599350"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> + </object> + <string key="NSFrameSize">{575, 188}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + <object class="NSUserDefaultsController" id="270141791"> + <bool key="NSSharedInstance">YES</bool> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">15</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">selectedObject: selectedSpell</string> + <reference key="source" ref="599068317"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="599068317"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">selectedObject: selectedSpell</string> + <string key="NSBinding">selectedObject</string> + <string key="NSKeyPath">selectedSpell</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">18</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">title: selectedSpell.fullName</string> + <reference key="source" ref="906173422"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="906173422"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">title: selectedSpell.fullName</string> + <string key="NSBinding">title</string> + <string key="NSKeyPath">selectedSpell.fullName</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSRaisesForNotApplicableKeys</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string/> + <string/> + <string/> + <string>No Spell Selected</string> + <integer value="1"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">31</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: selectedSpell.name</string> + <reference key="source" ref="542463804"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="542463804"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: selectedSpell.name</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">selectedSpell.name</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSAllowsEditingMultipleValuesSelection</string> + <string>NSAlwaysPresentsApplicationModalAlerts</string> + <string>NSConditionallySetsEditable</string> + <string>NSConditionallySetsEnabled</string> + <string>NSConditionallySetsHidden</string> + <string>NSContinuouslyUpdatesValue</string> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSRaisesForNotApplicableKeys</string> + <string>NSValidatesImmediately</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <integer value="0"/> + <string/> + <string/> + <string/> + <string>Unknown</string> + <integer value="1"/> + <integer value="0"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">38</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: selectedSpell</string> + <reference key="source" ref="862177330"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="862177330"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: selectedSpell</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">selectedSpell</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSIsNotNil</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">58</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">spellDropDown</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="599068317"/> + </object> + <int key="connectionID">62</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">spellLoadingProgress</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="353020440"/> + </object> + <int key="connectionID">63</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">spellLoadAllData:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="852849854"/> + </object> + <int key="connectionID">64</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: selectedSpell.school</string> + <reference key="source" ref="1014003424"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="1014003424"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: selectedSpell.school</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">selectedSpell.school</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSNullPlaceholder</string> + <string key="NS.object.0">n/a</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">66</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: selectedSpell.dispelType</string> + <reference key="source" ref="761674979"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="761674979"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: selectedSpell.dispelType</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">selectedSpell.dispelType</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSNullPlaceholder</string> + <string key="NS.object.0">n/a</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">69</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">displayPatternValue1: selectedSpell.cooldown</string> + <reference key="source" ref="564316389"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="564316389"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">displayPatternValue1: selectedSpell.cooldown</string> + <string key="NSBinding">displayPatternValue1</string> + <string key="NSKeyPath">selectedSpell.cooldown</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSDisplayPattern</string> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSRaisesForNotApplicableKeys</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>%{value1}@ seconds</string> + <string/> + <string/> + <string/> + <string>n/a</string> + <integer value="1"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">87</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">displayPatternValue1: selectedSpell.range</string> + <reference key="source" ref="263748766"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="263748766"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">displayPatternValue1: selectedSpell.range</string> + <string key="NSBinding">displayPatternValue1</string> + <string key="NSKeyPath">selectedSpell.range</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSDisplayPattern</string> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSRaisesForNotApplicableKeys</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>%{value1}@ yards</string> + <string/> + <string/> + <string/> + <string>n/a</string> + <integer value="1"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">88</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: selectedSpell.cooldown</string> + <reference key="source" ref="564316389"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="564316389"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: selectedSpell.cooldown</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">selectedSpell.cooldown</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSNullPlaceholder</string> + <string>NSValueTransformerName</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <string>NSIsNotNil</string> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">93</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: selectedSpell.range</string> + <reference key="source" ref="263748766"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="263748766"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: selectedSpell.range</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">selectedSpell.range</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSNullPlaceholder</string> + <string>NSValueTransformerName</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <string>NSIsNotNil</string> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">reloadMenu:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="288593286"/> + </object> + <int key="connectionID">97</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">target: selectedSpell</string> + <reference key="source" ref="862177330"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="862177330"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">target: selectedSpell</string> + <string key="NSBinding">target</string> + <string key="NSKeyPath">selectedSpell</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSAlwaysPresentsApplicationModalAlerts</string> + <string>NSConditionallySetsEnabled</string> + <string>NSConditionallySetsHidden</string> + <string>NSRaisesForNotApplicableKeys</string> + <string>NSSelectorName</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="0"/> + <integer value="1"/> + <integer value="0"/> + <integer value="1"/> + <string>reloadSpellData</string> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">98</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: botController.isBotting</string> + <reference key="source" ref="852849854"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="852849854"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: botController.isBotting</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">botController.isBotting</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSValueTransformerName</string> + <string key="NS.object.0">NSNegateBoolean</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">100</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: playerController.playerIsValid</string> + <reference key="source" ref="599068317"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="599068317"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: playerController.playerIsValid</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">playerController.playerIsValid</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">102</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">enabled: playerController.playerIsValid</string> + <reference key="source" ref="288593286"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="288593286"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">enabled: playerController.playerIsValid</string> + <string key="NSBinding">enabled</string> + <string key="NSKeyPath">playerController.playerIsValid</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">103</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">displayPatternValue1: selectedSpell.castTime</string> + <reference key="source" ref="193653147"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="193653147"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">displayPatternValue1: selectedSpell.castTime</string> + <string key="NSBinding">displayPatternValue1</string> + <string key="NSKeyPath">selectedSpell.castTime</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSDisplayPattern</string> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + <string>NSRaisesForNotApplicableKeys</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>%{value1}@ sec</string> + <string/> + <string/> + <string/> + <string/> + <integer value="1"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">112</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: selectedSpell.speed</string> + <reference key="source" ref="633030694"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="633030694"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">value: selectedSpell.speed</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">selectedSpell.speed</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSNullPlaceholder</string> + <string key="NS.object.0">n/a</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">121</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="983453135"/> + <reference ref="288593286"/> + <reference ref="353020440"/> + <reference ref="981583352"/> + <reference ref="906173422"/> + <reference ref="852849854"/> + <reference ref="599068317"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="983453135"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="989561012"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">3</int> + <reference key="object" ref="288593286"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="656021203"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">4</int> + <reference key="object" ref="353020440"/> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">5</int> + <reference key="object" ref="852849854"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="938837294"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">6</int> + <reference key="object" ref="981583352"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="971013015"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">7</int> + <reference key="object" ref="599068317"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="628902303"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">8</int> + <reference key="object" ref="628902303"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="551913641"/> + </object> + <reference key="parent" ref="599068317"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">9</int> + <reference key="object" ref="551913641"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="367184130"/> + </object> + <reference key="parent" ref="628902303"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">10</int> + <reference key="object" ref="367184130"/> + <reference key="parent" ref="551913641"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">11</int> + <reference key="object" ref="971013015"/> + <reference key="parent" ref="981583352"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">12</int> + <reference key="object" ref="938837294"/> + <reference key="parent" ref="852849854"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">13</int> + <reference key="object" ref="656021203"/> + <reference key="parent" ref="288593286"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">14</int> + <reference key="object" ref="989561012"/> + <reference key="parent" ref="983453135"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">16</int> + <reference key="object" ref="906173422"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="862177330"/> + <reference ref="564316389"/> + <reference ref="365138853"/> + <reference ref="542463804"/> + <reference ref="1033133196"/> + <reference ref="761674979"/> + <reference ref="321437144"/> + <reference ref="263748766"/> + <reference ref="25016452"/> + <reference ref="508349663"/> + <reference ref="193653147"/> + <reference ref="974341889"/> + <reference ref="1014003424"/> + <reference ref="697629148"/> + <reference ref="633030694"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">54</int> + <reference key="object" ref="862177330"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="921321202"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">55</int> + <reference key="object" ref="921321202"/> + <reference key="parent" ref="862177330"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">45</int> + <reference key="object" ref="564316389"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="538498651"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">46</int> + <reference key="object" ref="538498651"/> + <reference key="parent" ref="564316389"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">26</int> + <reference key="object" ref="365138853"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="229587708"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">29</int> + <reference key="object" ref="229587708"/> + <reference key="parent" ref="365138853"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">32</int> + <reference key="object" ref="542463804"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="920840867"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">33</int> + <reference key="object" ref="920840867"/> + <reference key="parent" ref="542463804"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">47</int> + <reference key="object" ref="1014003424"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1033892476"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">48</int> + <reference key="object" ref="1033892476"/> + <reference key="parent" ref="1014003424"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">25</int> + <reference key="object" ref="1033133196"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="681476955"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">30</int> + <reference key="object" ref="681476955"/> + <reference key="parent" ref="1033133196"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">49</int> + <reference key="object" ref="761674979"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="858207814"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">50</int> + <reference key="object" ref="858207814"/> + <reference key="parent" ref="761674979"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">27</int> + <reference key="object" ref="321437144"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="263373712"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">28</int> + <reference key="object" ref="263373712"/> + <reference key="parent" ref="321437144"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">36</int> + <reference key="object" ref="263748766"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1027959463"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">37</int> + <reference key="object" ref="1027959463"/> + <reference key="parent" ref="263748766"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">23</int> + <reference key="object" ref="25016452"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="8053204"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">24</int> + <reference key="object" ref="8053204"/> + <reference key="parent" ref="25016452"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">95</int> + <reference key="object" ref="508349663"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="317792845"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">96</int> + <reference key="object" ref="317792845"/> + <reference key="parent" ref="508349663"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">108</int> + <reference key="object" ref="193653147"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="486028219"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">109</int> + <reference key="object" ref="974341889"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="942930259"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">110</int> + <reference key="object" ref="942930259"/> + <reference key="parent" ref="974341889"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">111</int> + <reference key="object" ref="486028219"/> + <reference key="parent" ref="193653147"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">113</int> + <reference key="object" ref="697629148"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="674178586"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">114</int> + <reference key="object" ref="674178586"/> + <reference key="parent" ref="697629148"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">115</int> + <reference key="object" ref="633030694"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="774687732"/> + </object> + <reference key="parent" ref="906173422"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">116</int> + <reference key="object" ref="774687732"/> + <reference key="parent" ref="633030694"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">117</int> + <reference key="object" ref="270141791"/> + <reference key="parent" ref="0"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>10.IBPluginDependency</string> + <string>108.IBPluginDependency</string> + <string>109.IBPluginDependency</string> + <string>11.IBPluginDependency</string> + <string>110.IBPluginDependency</string> + <string>111.IBPluginDependency</string> + <string>113.IBPluginDependency</string> + <string>114.IBPluginDependency</string> + <string>115.IBPluginDependency</string> + <string>116.IBPluginDependency</string> + <string>12.IBPluginDependency</string> + <string>13.IBPluginDependency</string> + <string>14.IBPluginDependency</string> + <string>16.IBPluginDependency</string> + <string>2.IBPluginDependency</string> + <string>23.IBPluginDependency</string> + <string>24.IBPluginDependency</string> + <string>25.IBPluginDependency</string> + <string>26.IBPluginDependency</string> + <string>27.IBPluginDependency</string> + <string>28.IBPluginDependency</string> + <string>29.IBPluginDependency</string> + <string>3.IBAttributePlaceholdersKey</string> + <string>3.IBPluginDependency</string> + <string>30.IBPluginDependency</string> + <string>32.IBPluginDependency</string> + <string>33.IBPluginDependency</string> + <string>36.IBPluginDependency</string> + <string>37.IBPluginDependency</string> + <string>4.IBPluginDependency</string> + <string>45.IBPluginDependency</string> + <string>46.IBPluginDependency</string> + <string>47.IBPluginDependency</string> + <string>48.IBPluginDependency</string> + <string>49.IBPluginDependency</string> + <string>5.IBPluginDependency</string> + <string>50.IBPluginDependency</string> + <string>54.IBPluginDependency</string> + <string>55.IBPluginDependency</string> + <string>6.IBPluginDependency</string> + <string>7.IBPluginDependency</string> + <string>8.IBPluginDependency</string> + <string>9.IBPluginDependency</string> + <string>9.editorWindowContentRectSynchronizationRect</string> + <string>95.IBPluginDependency</string> + <string>96.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{443, 562}, {575, 188}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{285, 369}, {575, 188}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="288593286"/> + <string key="toolTip">Refresh list of available spells. Requires that a character be logged into WoW.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{577, 524}, {267, 23}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">121</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">AuraController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aurasPanel</string> + <string>aurasPanelTable</string> + <string>controller</string> + <string>mobController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">AuraController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterTableView</string> + <string key="superclassName">NSTableView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="454871138"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BindingsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BindingsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BlacklistController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>mobController</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MobController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BlacklistController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BotController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeHotkeyHelp:</string> + <string>closeLootHotkeyHelp:</string> + <string>editBehavior:</string> + <string>editBehaviorPvP:</string> + <string>editProfile:</string> + <string>editProfilePvP:</string> + <string>editRoute:</string> + <string>editRoutePvP:</string> + <string>hotkeyHelp:</string> + <string>login:</string> + <string>lootHotkeyHelp:</string> + <string>maltby:</string> + <string>startBot:</string> + <string>startStopBot:</string> + <string>stopBot:</string> + <string>test2:</string> + <string>test:</string> + <string>testHotkey:</string> + <string>updateStatus:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Route</string> + <string>allChatButton</string> + <string>antiAFKButton</string> + <string>anyLevelCheckbox</string> + <string>attackWithinText</string> + <string>auraController</string> + <string>behaviorPopup</string> + <string>behaviorPvPPopup</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>chatController</string> + <string>chatLogController</string> + <string>combatController</string> + <string>combatProfilePopup</string> + <string>combatProfilePvPPopup</string> + <string>controller</string> + <string>corpseController</string> + <string>databaseManager</string> + <string>fishController</string> + <string>hotkeyHelpPanel</string> + <string>itemController</string> + <string>logOutAfterRunningTextField</string> + <string>logOutAfterStuckCheckbox</string> + <string>logOutDurabilityTextField</string> + <string>logOutOnBrokenItemsCheckbox</string> + <string>logOutOnFullInventoryCheckbox</string> + <string>logOutOnTimerExpireCheckbox</string> + <string>logOutUseHearthstoneCheckbox</string> + <string>lootController</string> + <string>lootHotkeyHelpPanel</string> + <string>macroController</string> + <string>maxLevelPopup</string> + <string>maxLevelText</string> + <string>memoryViewController</string> + <string>minLevelPopup</string> + <string>minLevelText</string> + <string>mobController</string> + <string>movementController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>overlayWindow</string> + <string>playerController</string> + <string>playersController</string> + <string>procedureController</string> + <string>profileController</string> + <string>pvpController</string> + <string>questController</string> + <string>routePopup</string> + <string>routePvPPopup</string> + <string>runningTimer</string> + <string>scanGrid</string> + <string>spellController</string> + <string>startStopButton</string> + <string>startstopRecorder</string> + <string>statisticsController</string> + <string>statusText</string> + <string>view</string> + <string>wallWalkButton</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Route</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>id</string> + <string>AuraController</string> + <string>id</string> + <string>id</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>ChatController</string> + <string>ChatLogController</string> + <string>CombatController</string> + <string>id</string> + <string>id</string> + <string>Controller</string> + <string>CorpseController</string> + <string>DatabaseManager</string> + <string>FishController</string> + <string>NSPanel</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>LootController</string> + <string>NSPanel</string> + <string>MacroController</string> + <string>id</string> + <string>NSTextField</string> + <string>MemoryViewController</string> + <string>id</string> + <string>NSTextField</string> + <string>MobController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSWindow</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>ProcedureController</string> + <string>ProfileController</string> + <string>PvPController</string> + <string>QuestController</string> + <string>id</string> + <string>id</string> + <string>NSTextField</string> + <string>ScanGridView</string> + <string>SpellController</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>StatisticsController</string> + <string>NSTextField</string> + <string>NSView</string> + <string>NSButton</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BotController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatLogController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRelayPanel:</string> + <string>createChatAction:</string> + <string>openRelayPanel:</string> + <string>sendEmail:</string> + <string>something:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatActionsController</string> + <string>chatLogTable</string> + <string>controller</string> + <string>enableGrowlNotifications</string> + <string>offsetController</string> + <string>relayPanel</string> + <string>ruleEditor</string> + <string>view</string> + <string>whisperLogTable</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSArrayController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSButton</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPredicateEditor</string> + <string>NSView</string> + <string>NSTableView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatLogController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CombatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>botController</string> + <string>chatController</string> + <string>combatPanel</string> + <string>combatTable</string> + <string>controller</string> + <string>macroController</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>BotController</string> + <string>ChatController</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>Controller</string> + <string>MacroController</string> + <string>MobController</string> + <string>MovementController</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CombatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">Controller</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>confirmAppRename:</string> + <string>launchWebsite:</string> + <string>pidSelected:</string> + <string>renameShowHelp:</string> + <string>renameUseExisting:</string> + <string>showAbout:</string> + <string>showSettings:</string> + <string>testFront:</string> + <string>toggleGUIScripting:</string> + <string>toggleSecurePrefs:</string> + <string>toolbarItemSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aboutValidImage</string> + <string>aboutView</string> + <string>behaviorController</string> + <string>behavsToolbarItem</string> + <string>botController</string> + <string>botToolbarItem</string> + <string>chatLogController</string> + <string>chatLogToolbarItem</string> + <string>corpseController</string> + <string>currentStatusText</string> + <string>disableGUIScriptCheckbox</string> + <string>itemController</string> + <string>mainBackgroundBox</string> + <string>mainToolbar</string> + <string>mainWindow</string> + <string>matchExistingCheckbox</string> + <string>memoryAccessLight</string> + <string>memoryAccessValidText</string> + <string>memoryToolbarItem</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>newIdentifierField</string> + <string>newNameField</string> + <string>newSignatureField</string> + <string>nodeController</string> + <string>objectsController</string> + <string>objectsToolbarItem</string> + <string>offsetController</string> + <string>playerData</string> + <string>playerToolbarItem</string> + <string>playersController</string> + <string>prefsToolbarItem</string> + <string>profileController</string> + <string>profilesToolbarItem</string> + <string>pvpController</string> + <string>pvpToolbarItem</string> + <string>routeController</string> + <string>routesToolbarItem</string> + <string>settingsView</string> + <string>spellController</string> + <string>spellsToolbarItem</string> + <string>statisticsController</string> + <string>statisticsToolbarItem</string> + <string>versionInfoText</string> + <string>wowInstancePopUpButton</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSImageView</string> + <string>NSView</string> + <string>ProcedureController</string> + <string>NSToolbarItem</string> + <string>BotController</string> + <string>NSToolbarItem</string> + <string>ChatLogController</string> + <string>NSToolbarItem</string> + <string>CorpseController</string> + <string>id</string> + <string>NSButton</string> + <string>InventoryController</string> + <string>id</string> + <string>NSToolbar</string> + <string>id</string> + <string>NSButton</string> + <string>id</string> + <string>id</string> + <string>NSToolbarItem</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NodeController</string> + <string>ObjectsController</string> + <string>NSToolbarItem</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>NSToolbarItem</string> + <string>PlayersController</string> + <string>NSToolbarItem</string> + <string>ProfileController</string> + <string>NSToolbarItem</string> + <string>PvPController</string> + <string>NSToolbarItem</string> + <string>WaypointController</string> + <string>NSToolbarItem</string> + <string>NSView</string> + <string>SpellController</string> + <string>NSToolbarItem</string> + <string>StatisticsController</string> + <string>NSToolbarItem</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="57362089"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CorpseController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CorpseController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">DatabaseManager</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">DatabaseManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">FileController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">FileController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">FishController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>itemController</string> + <string>lootController</string> + <string>movementController</string> + <string>nodeController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>LootController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>PlayerDataController</string> + <string>SpellController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">FishController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">InventoryController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>macroController</string> + <string>memoryViewController</string> + <string>nodeController</string> + <string>objectsController</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>MacroController</string> + <string>MemoryViewController</string> + <string>NodeController</string> + <string>ObjectsController</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">InventoryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">LootController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatController</string> + <string>controller</string> + <string>itemController</string> + <string>macroController</string> + <string>offsetController</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>ChatController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">LootController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MacroController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + <string>playerData</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MacroController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MemoryViewController</string> + <string key="superclassName">NSView</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>clearSearch:</string> + <string>clearTable:</string> + <string>clearValues:</string> + <string>menuAction:</string> + <string>offsetSelectAction:</string> + <string>openOffsetPanel:</string> + <string>openPointerPanel:</string> + <string>openSearch:</string> + <string>pointerSelectAction:</string> + <string>saveValues:</string> + <string>selectInstance:</string> + <string>setCustomAddress:</string> + <string>snapshotMemory:</string> + <string>startSearch:</string> + <string>typeSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>bitPanel</string> + <string>bitTableView</string> + <string>clearButton</string> + <string>controller</string> + <string>emulatePPCButton</string> + <string>instanceList</string> + <string>itemController</string> + <string>maskTextField</string> + <string>memoryTable</string> + <string>memoryViewWindow</string> + <string>mobController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>offsetScanPanel</string> + <string>operatorPopUpButton</string> + <string>playersController</string> + <string>pointerScanCancelButton</string> + <string>pointerScanFindButton</string> + <string>pointerScanNumTextField</string> + <string>pointerScanPanel</string> + <string>pointerScanProgressIndicator</string> + <string>pointerScanVariationButton</string> + <string>pointerScanVariationTextField</string> + <string>resultsTextView</string> + <string>searchButton</string> + <string>searchPanel</string> + <string>searchTableView</string> + <string>searchText</string> + <string>searchTypePopUpButton</string> + <string>signMatrix</string> + <string>signatureTextField</string> + <string>valueMatrix</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSButton</string> + <string>Controller</string> + <string>NSButton</string> + <string>NSPopUpButton</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>id</string> + <string>id</string> + <string>MobController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPopUpButton</string> + <string>PlayersController</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSTextView</string> + <string>NSButton</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSMatrix</string> + <string>NSTextField</string> + <string>NSMatrix</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MemoryViewController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MobController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">updateTracking:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>additionalList</string> + <string>auraController</string> + <string>botController</string> + <string>combatController</string> + <string>memoryViewController</string> + <string>movementController</string> + <string>objectsController</string> + <string>spellController</string> + <string>trackFriendlyMenuItem</string> + <string>trackHostileMenuItem</string> + <string>trackNeutralMenuItem</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>id</string> + <string>BotController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>ObjectsController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MobController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MovementController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>itemController</string> + <string>logOutStuckAttemptsTextField</string> + <string>macroController</string> + <string>mobController</string> + <string>movementTypePopUp</string> + <string>offsetController</string> + <string>playerData</string> + <string>profileController</string> + <string>statisticsController</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>BotController</string> + <string>CombatController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>MacroController</string> + <string>MobController</string> + <string>NSPopUpButton</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>ProfileController</string> + <string>StatisticsController</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MovementController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="454871138"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="57362089"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NodeController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>memoryViewController</string> + <string>moveToList</string> + <string>movementController</string> + <string>objectsController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>NSPopUpButton</string> + <string>id</string> + <string>ObjectsController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">NodeController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ObjectController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">tableDoubleClick:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerData</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ObjectsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>faceObject:</string> + <string>filter:</string> + <string>moveToStart:</string> + <string>moveToStop:</string> + <string>refreshData:</string> + <string>reloadNames:</string> + <string>resetObjects:</string> + <string>targetObject:</string> + <string>updateTracking:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>itemController</string> + <string>itemTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>mobTable</string> + <string>moveToMobPopUpButton</string> + <string>moveToNodePopUpButton</string> + <string>movementController</string> + <string>nodeController</string> + <string>nodeTable</string> + <string>playerController</string> + <string>playersController</string> + <string>playersTable</string> + <string>tabView</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>InventoryController</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSTableView</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + <string>MovementController</string> + <string>NodeController</string> + <string>NSTableView</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>NSTableView</string> + <string>NSTabView</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ObjectsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">OffsetController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">OffsetController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayerDataController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>setPlayerDirectionInMemory:</string> + <string>showAuraWindow:</string> + <string>showCombatWindow:</string> + <string>showCooldownWindow:</string> + <string>showPlayerStructure:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>bindingsController</string> + <string>botController</string> + <string>combatController</string> + <string>combatTable</string> + <string>controller</string> + <string>healingTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>movementController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>powerNameText</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BindingsController</string> + <string>BotController</string> + <string>CombatController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSTextField</string> + <string>SpellController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayerDataController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayersController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">updateTracking:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>memoryViewController</string> + <string>movementController</string> + <string>objectsController</string> + <string>playerColorByLevel</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MemoryViewController</string> + <string>MovementController</string> + <string>ObjectsController</string> + <string>NSButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayersController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ProcedureController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRule:</string> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteRule:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>importBehavior:</string> + <string>loadBehavior:</string> + <string>removeBehavior:</string> + <string>renameBehavior:</string> + <string>setBehaviorEvent:</string> + <string>showInFinder:</string> + <string>tableRowDoubleClicked:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>combatPriorityTextField</string> + <string>fileController</string> + <string>itemController</string> + <string>procedureEventSegment</string> + <string>renamePanel</string> + <string>ruleEditor</string> + <string>ruleTable</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>FileController</string> + <string>id</string> + <string>id</string> + <string>NSPanel</string> + <string>id</string> + <string>NSTableView</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ProcedureController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ProfileController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addIgnoreEntry:</string> + <string>addIgnoreFromTarget:</string> + <string>createProfile:</string> + <string>deleteIgnoreEntry:</string> + <string>deleteProfile:</string> + <string>duplicateProfile:</string> + <string>exportProfile:</string> + <string>importProfile:</string> + <string>renameProfile:</string> + <string>showInFinder:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>assistPopUpButton</string> + <string>controller</string> + <string>fileController</string> + <string>followPopUpButton</string> + <string>ignoreTable</string> + <string>mobController</string> + <string>playersController</string> + <string>profileOutlineView</string> + <string>profileTabView</string> + <string>profileTitle</string> + <string>profileTypePopUp</string> + <string>tankPopUpButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>Controller</string> + <string>FileController</string> + <string>NSPopUpButton</string> + <string>NSTableView</string> + <string>MobController</string> + <string>PlayersController</string> + <string>NSOutlineView</string> + <string>NSTabView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ProfileController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PvPController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteBehavior:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>importBehavior:</string> + <string>renameBehavior:</string> + <string>saveAllObjects:</string> + <string>showInFinder:</string> + <string>test:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>fileController</string> + <string>renamePanel</string> + <string>view</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>FileController</string> + <string>NSPanel</string> + <string>NSView</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PvPController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">Route</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Route.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RouteVisualizationView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RouteVisualizationView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ScanGridView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ScanGridView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SpellController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>reloadMenu:</string> + <string>spellLoadAllData:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>cooldownPanel</string> + <string>cooldownPanelTable</string> + <string>itemController</string> + <string>macroController</string> + <string>offsetController</string> + <string>playerController</string> + <string>spellDropDown</string> + <string>spellLoadingProgress</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>id</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SpellController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">StatisticsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">resetStatistics:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>experienceText</string> + <string>honorGainedText</string> + <string>itemsLootedText</string> + <string>memoryOperationsTable</string> + <string>memoryReadsText</string> + <string>memoryWritesText</string> + <string>mobsKilledText</string> + <string>moneyText</string> + <string>playerController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">StatisticsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">WaypointController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRouteCollection:</string> + <string>addRouteSet:</string> + <string>addWaypoint:</string> + <string>closeAutomatorPanel:</string> + <string>closeDescription:</string> + <string>closeHelpPanel:</string> + <string>closeVisualize:</string> + <string>closestWaypoint:</string> + <string>deleteRouteButton:</string> + <string>deleteRouteMenu:</string> + <string>duplicateRoute:</string> + <string>editWaypointAction:</string> + <string>exportRoute:</string> + <string>importRoute:</string> + <string>loadRoute:</string> + <string>moveToWaypoint:</string> + <string>openAutomatorPanel:</string> + <string>removeWaypoint:</string> + <string>renameRoute:</string> + <string>resetAllWaypoints:</string> + <string>setRouteType:</string> + <string>showInFinder:</string> + <string>startStopAutomator:</string> + <string>startingRouteClicked:</string> + <string>stopMovement:</string> + <string>testWaypointSequence:</string> + <string>visualize:</string> + <string>waypointMenuAction:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>automatorIntervalValue</string> + <string>automatorPanel</string> + <string>automatorRecorder</string> + <string>automatorSpinner</string> + <string>automatorStartStopButton</string> + <string>automatorVizualizer</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>descriptionPanel</string> + <string>fileController</string> + <string>helpPanel</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>routeTypeSegment</string> + <string>routesTable</string> + <string>scrollWithRoute</string> + <string>shortcutRecorder</string> + <string>startingRouteButton</string> + <string>testingMenu</string> + <string>view</string> + <string>visualizePanel</string> + <string>visualizeView</string> + <string>waypointSectionTitle</string> + <string>waypointTabView</string> + <string>waypointTable</string> + <string>wpActionDelayText</string> + <string>wpActionIDPopUp</string> + <string>wpActionPanel</string> + <string>wpActionTabs</string> + <string>wpActionTypeSegments</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>SRRecorderControl</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>RouteVisualizationView</string> + <string>BotController</string> + <string>CombatController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>FileController</string> + <string>NSPanel</string> + <string>MobController</string> + <string>MovementController</string> + <string>PlayerDataController</string> + <string>id</string> + <string>NSOutlineView</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>NSButton</string> + <string>NSMenu</string> + <string>NSView</string> + <string>NSPanel</string> + <string>RouteVisualizationView</string> + <string>NSTextField</string> + <string>NSTabView</string> + <string>BetterTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSPanel</string> + <string>NSTabView</string> + <string>BetterSegmentedControl</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">WaypointController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="340901596"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="961952549"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="670085758"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSArrayController</string> + <string key="superclassName">NSObjectController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSArrayController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSBox</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSBox.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="476025726"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSImageView</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSManagedObjectContext</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">CoreData.framework/Headers/NSManagedObjectContext.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMatrix</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="230711840"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="726916431"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="340901596"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="961952549"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="670085758"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="476025726"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="230711840"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1073100103"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="5487470"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="285365479"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="638756681"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="340057289"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObjectController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSOutlineView</string> + <string key="superclassName">NSTableView</string> + <reference key="sourceIdentifier" ref="1073100103"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPanel</string> + <string key="superclassName">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPredicateEditor</string> + <string key="superclassName">NSRuleEditor</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPredicateEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSProgressIndicator</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSRuleEditor</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRuleEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTabView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableView</string> + <string key="superclassName">NSControl</string> + <reference key="sourceIdentifier" ref="5487470"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSText</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSText.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextView</string> + <string key="superclassName">NSText</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbar</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbar.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbarItem</string> + <string key="superclassName">NSObject</string> + <reference key="sourceIdentifier" ref="285365479"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="726916431"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="638756681"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SRRecorderControl</string> + <string key="superclassName">NSControl</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">delegate</string> + <string key="NS.object.0">id</string> + </object> + <reference key="sourceIdentifier" ref="340057289"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <string key="IBDocument.TargetRuntimeIdentifier">IBCocoaFramework</string> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + <object class="NSMutableDictionary" key="IBDocument.LastKnownImageSizes"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenuCheckmark</string> + <string>NSMenuMixedState</string> + <string>NSRefreshTemplate</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>{9, 8}</string> + <string>{7, 2}</string> + <string>{10, 12}</string> + </object> + </object> + </data> +</archive> diff --git a/Statistics.xib b/Statistics.xib new file mode 100644 index 0000000..a06d00d --- /dev/null +++ b/Statistics.xib @@ -0,0 +1,3622 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="811"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1048"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1021"> + <string key="NSClassName">StatisticsController</string> + </object> + <object class="NSCustomObject" id="1014"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1050"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005161199"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">319</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="985211526"> + <reference key="NSNextResponder" ref="1005161199"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{17, 266}, {443, 17}}</string> + <reference key="NSSuperview" ref="1005161199"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="320179825"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">138413056</int> + <string key="NSContents">This tab is not complete! Not all statistics are functioning.</string> + <object class="NSFont" key="NSSupport" id="561332119"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="985211526"/> + <object class="NSColor" key="NSBackgroundColor" id="438046899"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor" id="329219313"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MSAwIDAAA</bytes> + </object> + </object> + </object> + <object class="NSScrollView" id="493529785"> + <reference key="NSNextResponder" ref="1005161199"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSClipView" id="843008470"> + <reference key="NSNextResponder" ref="493529785"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableView" id="391034673"> + <reference key="NSNextResponder" ref="843008470"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{238, 247}</string> + <reference key="NSSuperview" ref="843008470"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTableHeaderView" key="NSHeaderView" id="485697019"> + <reference key="NSNextResponder" ref="283369357"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{238, 17}</string> + <reference key="NSSuperview" ref="283369357"/> + <reference key="NSTableView" ref="391034673"/> + </object> + <object class="_NSCornerView" key="NSCornerView" id="346447885"> + <reference key="NSNextResponder" ref="493529785"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{224, 0}, {16, 17}}</string> + <reference key="NSSuperview" ref="493529785"/> + </object> + <object class="NSMutableArray" key="NSTableColumns"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableColumn" id="156018914"> + <string key="NSIdentifier">Class</string> + <double key="NSWidth">123</double> + <double key="NSMinWidth">40</double> + <double key="NSMaxWidth">1000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Class</string> + <object class="NSFont" key="NSSupport" id="26"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">11</double> + <int key="NSfFlags">3100</int> + </object> + <object class="NSColor" key="NSBackgroundColor" id="370732471"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC4zMzMzMzI5ODU2AA</bytes> + </object> + <object class="NSColor" key="NSTextColor" id="386956789"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">headerTextColor</string> + <object class="NSColor" key="NSColor" id="963136482"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="112947375"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">264192</int> + <string key="NSContents">Text Cell</string> + <object class="NSFont" key="NSSupport" id="22"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">9</double> + <int key="NSfFlags">3614</int> + </object> + <reference key="NSControlView" ref="391034673"/> + <object class="NSColor" key="NSBackgroundColor" id="1053509947"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlBackgroundColor</string> + <reference key="NSColor" ref="329219313"/> + </object> + <object class="NSColor" key="NSTextColor" id="387882194"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <reference key="NSColor" ref="963136482"/> + </object> + </object> + <int key="NSResizingMask">3</int> + <bool key="NSIsResizeable">YES</bool> + <bool key="NSIsEditable">YES</bool> + <reference key="NSTableView" ref="391034673"/> + <object class="NSSortDescriptor" key="NSSortDescriptorPrototype"> + <string key="NSKey">Class</string> + <bool key="NSAscending">YES</bool> + <string key="NSSelector">compare:</string> + </object> + </object> + <object class="NSTableColumn" id="453788475"> + <string key="NSIdentifier">Operations</string> + <double key="NSWidth">109</double> + <double key="NSMinWidth">40</double> + <double key="NSMaxWidth">1000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Operations</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="370732471"/> + <reference key="NSTextColor" ref="386956789"/> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="649545701"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">264192</int> + <string key="NSContents">Text Cell</string> + <reference key="NSSupport" ref="22"/> + <reference key="NSControlView" ref="391034673"/> + <reference key="NSBackgroundColor" ref="1053509947"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + <int key="NSResizingMask">3</int> + <bool key="NSIsResizeable">YES</bool> + <bool key="NSIsEditable">YES</bool> + <reference key="NSTableView" ref="391034673"/> + <object class="NSSortDescriptor" key="NSSortDescriptorPrototype"> + <string key="NSKey">Operations</string> + <bool key="NSAscending">YES</bool> + <string key="NSSelector">compare:</string> + </object> + </object> + </object> + <double key="NSIntercellSpacingWidth">3</double> + <double key="NSIntercellSpacingHeight">2</double> + <object class="NSColor" key="NSBackgroundColor" id="400360068"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + <object class="NSColor" key="NSGridColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">gridColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC41AA</bytes> + </object> + </object> + <double key="NSRowHeight">17</double> + <int key="NSTvFlags">-700448768</int> + <reference key="NSDelegate"/> + <reference key="NSDataSource"/> + <int key="NSColumnAutoresizingStyle">4</int> + <int key="NSDraggingSourceMaskForLocal">15</int> + <int key="NSDraggingSourceMaskForNonLocal">0</int> + <bool key="NSAllowsTypeSelect">YES</bool> + <int key="NSTableViewDraggingDestinationStyle">0</int> + </object> + </object> + <string key="NSFrame">{{1, 17}, {238, 247}}</string> + <reference key="NSSuperview" ref="493529785"/> + <reference key="NSNextKeyView" ref="391034673"/> + <reference key="NSDocView" ref="391034673"/> + <reference key="NSBGColor" ref="1053509947"/> + <int key="NScvFlags">4</int> + </object> + <object class="NSScroller" id="691853589"> + <reference key="NSNextResponder" ref="493529785"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{224, 17}, {15, 102}}</string> + <reference key="NSSuperview" ref="493529785"/> + <reference key="NSTarget" ref="493529785"/> + <string key="NSAction">_doScroller:</string> + <double key="NSCurValue">37</double> + <double key="NSPercent">0.1947367936372757</double> + </object> + <object class="NSScroller" id="754613361"> + <reference key="NSNextResponder" ref="493529785"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{1, 119}, {223, 15}}</string> + <reference key="NSSuperview" ref="493529785"/> + <int key="NSsFlags">1</int> + <reference key="NSTarget" ref="493529785"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.57142859697341919</double> + </object> + <object class="NSClipView" id="283369357"> + <reference key="NSNextResponder" ref="493529785"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="485697019"/> + </object> + <string key="NSFrame">{{1, 0}, {238, 17}}</string> + <reference key="NSSuperview" ref="493529785"/> + <reference key="NSNextKeyView" ref="485697019"/> + <reference key="NSDocView" ref="485697019"/> + <reference key="NSBGColor" ref="1053509947"/> + <int key="NScvFlags">4</int> + </object> + <reference ref="346447885"/> + </object> + <string key="NSFrame">{{465, 174}, {240, 265}}</string> + <reference key="NSSuperview" ref="1005161199"/> + <reference key="NSNextKeyView" ref="843008470"/> + <int key="NSsFlags">562</int> + <reference key="NSVScroller" ref="691853589"/> + <reference key="NSHScroller" ref="754613361"/> + <reference key="NSContentView" ref="843008470"/> + <reference key="NSHeaderClipView" ref="283369357"/> + <reference key="NSCornerView" ref="346447885"/> + <bytes key="NSScrollAmts">QSAAAEEgAABBmAAAQZgAAA</bytes> + </object> + <object class="NSBox" id="255513081"> + <reference key="NSNextResponder" ref="1005161199"/> + <int key="NSvFlags">10</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="54153644"> + <reference key="NSNextResponder" ref="255513081"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="730397676"> + <reference key="NSNextResponder" ref="54153644"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 122}, {117, 14}}</string> + <reference key="NSSuperview" ref="54153644"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="85810214"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Memory Reads/sec:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="730397676"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="361224021"> + <reference key="NSNextResponder" ref="54153644"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{22, 100}, {110, 14}}</string> + <reference key="NSSuperview" ref="54153644"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="250456480"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Memory Writes/sec:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="361224021"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="938264862"> + <reference key="NSNextResponder" ref="54153644"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{134, 100}, {57, 14}}</string> + <reference key="NSSuperview" ref="54153644"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="414009067"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="938264862"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="161081546"> + <reference key="NSNextResponder" ref="54153644"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{134, 122}, {57, 14}}</string> + <reference key="NSSuperview" ref="54153644"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="871963358"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="161081546"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {206, 150}}</string> + <reference key="NSSuperview" ref="255513081"/> + </object> + </object> + <string key="NSFrame">{{252, 287}, {208, 166}}</string> + <reference key="NSSuperview" ref="1005161199"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Pocket Gnome</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor" id="566520864"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <reference key="NSColor" ref="400360068"/> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="54153644"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> + <object class="NSBox" id="308547255"> + <reference key="NSNextResponder" ref="1005161199"/> + <int key="NSvFlags">10</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="661513182"> + <reference key="NSNextResponder" ref="308547255"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="955086428"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{-24, 122}, {146, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="905061911"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Money Gained:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="955086428"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="154294200"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 100}, {107, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="642024699"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Experience Gained:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="154294200"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="69674678"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{124, 100}, {89, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="381534417"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="69674678"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="417336893"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{124, 122}, {89, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="712918994"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="417336893"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="324693913"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{-3, 78}, {125, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="605401532"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Honor Gained:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="324693913"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="599783746"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{124, 78}, {89, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="875368486"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="599783746"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="1013630922"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{-3, 56}, {125, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="440794033"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Mobs Killed:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="1013630922"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="537024070"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{124, 56}, {89, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="562472673"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="537024070"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="755640970"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{-3, 34}, {125, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="51049164"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Items Looted:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="755640970"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="647365435"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{124, 34}, {89, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="135145992"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4326400</int> + <string key="NSContents">0</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="647365435"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSTextField" id="249518202"> + <reference key="NSNextResponder" ref="661513182"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{-3, 14}, {125, 14}}</string> + <reference key="NSSuperview" ref="661513182"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="242275502"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Nodes Looted:</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="249518202"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {228, 150}}</string> + <reference key="NSSuperview" ref="308547255"/> + </object> + </object> + <string key="NSFrame">{{17, 287}, {230, 166}}</string> + <reference key="NSSuperview" ref="1005161199"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Player</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="566520864"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="661513182"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">2</int> + <bool key="NSTransparent">NO</bool> + </object> + <object class="NSTextField" id="21787352"> + <reference key="NSNextResponder" ref="1005161199"/> + <int key="NSvFlags">-2147483356</int> + <string key="NSFrame">{{221, 6}, {74, 17}}</string> + <reference key="NSSuperview" ref="1005161199"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="689053897"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4195328</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="561332119"/> + <reference key="NSControlView" ref="21787352"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <reference key="NSTextColor" ref="387882194"/> + </object> + </object> + <object class="NSBox" id="1051793036"> + <reference key="NSNextResponder" ref="1005161199"/> + <int key="NSvFlags">10</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="345959395"> + <reference key="NSNextResponder" ref="1051793036"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="135279006"> + <reference key="NSNextResponder" ref="345959395"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{472, 8}, {123, 14}}</string> + <reference key="NSSuperview" ref="345959395"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="752386536"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">71435264</int> + <string key="NSContents">Update every </string> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="135279006"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMgMC4yMDAwMDAwMDMAA</bytes> + </object> + </object> + </object> + <object class="NSSlider" id="924967322"> + <reference key="NSNextResponder" ref="345959395"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{600, 4}, {125, 17}}</string> + <reference key="NSSuperview" ref="345959395"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSliderCell" key="NSCell" id="734515688"> + <int key="NSCellFlags">-2079981824</int> + <int key="NSCellFlags2">131072</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="26"/> + <reference key="NSControlView" ref="924967322"/> + <double key="NSMaxValue">1</double> + <double key="NSMinValue">0.10000000000000001</double> + <double key="NSValue">0.30000000000000004</double> + <double key="NSAltIncValue">0.0</double> + <int key="NSNumberOfTickMarks">19</int> + <int key="NSTickMarkPosition">0</int> + <bool key="NSAllowsTickMarkValuesOnly">YES</bool> + <bool key="NSVertical">NO</bool> + </object> + </object> + <object class="NSButton" id="444254505"> + <reference key="NSNextResponder" ref="345959395"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 4}, {20, 19}}</string> + <reference key="NSSuperview" ref="345959395"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="954819856"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Round Rect Button</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="444254505"/> + <int key="NSButtonFlags">138690815</int> + <int key="NSButtonFlags2">164</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSTextField" id="1070075179"> + <reference key="NSNextResponder" ref="345959395"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{40, 6}, {163, 17}}</string> + <reference key="NSSuperview" ref="345959395"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="334903928"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">4195328</int> + <string key="NSContents">Tracking for 0 minutes.</string> + <reference key="NSSupport" ref="561332119"/> + <reference key="NSControlView" ref="1070075179"/> + <reference key="NSBackgroundColor" ref="438046899"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MC4yIDAuMiAwLjIAA</bytes> + </object> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {740, 30}}</string> + <reference key="NSSuperview" ref="1051793036"/> + </object> + </object> + <string key="NSFrame">{{-1, 469}, {742, 32}}</string> + <reference key="NSSuperview" ref="1005161199"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Box</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="566520864"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="345959395"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">4</int> + <int key="NSTitlePosition">0</int> + <bool key="NSTransparent">NO</bool> + <object class="NSColor" key="NSBorderColor2"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MC40OTg5ODk4ODAxIDAuNDk4OTg5ODgwMSAwLjQ5ODk4OTg4MDEgMC41AA</bytes> + </object> + <object class="NSColor" key="NSFillColor2"> + <int key="NSColorSpace">1</int> + <bytes key="NSRGB">MC42NzEyNzQ2NjIgMC44MjkwOTQ1MjkyIDAuOTk3MzkwNjg3NSAwLjUyOTk5OTk3MTQAA</bytes> + </object> + </object> + </object> + <string key="NSFrameSize">{740, 500}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + <object class="NSUserDefaultsController" id="304183342"> + <bool key="NSSharedInstance">YES</bool> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">experienceText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="69674678"/> + </object> + <int key="connectionID">944</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">moneyText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="417336893"/> + </object> + <int key="connectionID">945</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">memoryReadsText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="161081546"/> + </object> + <int key="connectionID">946</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">memoryWritesText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="938264862"/> + </object> + <int key="connectionID">947</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">displayPatternValue1: updateFrequency</string> + <reference key="source" ref="135279006"/> + <reference key="destination" ref="1021"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="135279006"/> + <reference key="NSDestination" ref="1021"/> + <string key="NSLabel">displayPatternValue1: updateFrequency</string> + <string key="NSBinding">displayPatternValue1</string> + <string key="NSKeyPath">updateFrequency</string> + <object class="NSDictionary" key="NSOptions"> + <string key="NS.key.0">NSDisplayPattern</string> + <string key="NS.object.0">Update every %{value1}@s:</string> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">952</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">value: updateFrequency</string> + <reference key="source" ref="924967322"/> + <reference key="destination" ref="1021"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="924967322"/> + <reference key="NSDestination" ref="1021"/> + <string key="NSLabel">value: updateFrequency</string> + <string key="NSBinding">value</string> + <string key="NSKeyPath">updateFrequency</string> + <object class="NSDictionary" key="NSOptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMultipleValuesPlaceholder</string> + <string>NSNoSelectionPlaceholder</string> + <string>NSNotApplicablePlaceholder</string> + <string>NSNullPlaceholder</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <real value="0.0"/> + <real value="0.0"/> + <real value="0.0"/> + <real value="0.0"/> + </object> + </object> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">959</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="1005161199"/> + </object> + <int key="connectionID">966</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">memoryOperationsTable</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="391034673"/> + </object> + <int key="connectionID">990</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">dataSource</string> + <reference key="source" ref="391034673"/> + <reference key="destination" ref="1021"/> + </object> + <int key="connectionID">991</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="391034673"/> + <reference key="destination" ref="1021"/> + </object> + <int key="connectionID">992</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">mobsKilledText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="537024070"/> + </object> + <int key="connectionID">993</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">itemsLootedText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="647365435"/> + </object> + <int key="connectionID">994</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">honorGainedText</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="599783746"/> + </object> + <int key="connectionID">999</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">resetStatistics:</string> + <reference key="source" ref="1021"/> + <reference key="destination" ref="444254505"/> + </object> + <int key="connectionID">1000</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1048"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1021"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1014"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1050"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">811</int> + <reference key="object" ref="1005161199"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="21787352"/> + <reference ref="1051793036"/> + <reference ref="308547255"/> + <reference ref="255513081"/> + <reference ref="493529785"/> + <reference ref="985211526"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">816</int> + <reference key="object" ref="21787352"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="689053897"/> + </object> + <reference key="parent" ref="1005161199"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">821</int> + <reference key="object" ref="1051793036"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="924967322"/> + <reference ref="135279006"/> + <reference ref="444254505"/> + <reference ref="1070075179"/> + </object> + <reference key="parent" ref="1005161199"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">835</int> + <reference key="object" ref="924967322"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="734515688"/> + </object> + <reference key="parent" ref="1051793036"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">836</int> + <reference key="object" ref="135279006"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="752386536"/> + </object> + <reference key="parent" ref="1051793036"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">837</int> + <reference key="object" ref="752386536"/> + <reference key="parent" ref="135279006"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">838</int> + <reference key="object" ref="734515688"/> + <reference key="parent" ref="924967322"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">916</int> + <reference key="object" ref="689053897"/> + <reference key="parent" ref="21787352"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">922</int> + <reference key="object" ref="308547255"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="955086428"/> + <reference ref="154294200"/> + <reference ref="417336893"/> + <reference ref="69674678"/> + <reference ref="324693913"/> + <reference ref="599783746"/> + <reference ref="1013630922"/> + <reference ref="537024070"/> + <reference ref="755640970"/> + <reference ref="647365435"/> + <reference ref="249518202"/> + </object> + <reference key="parent" ref="1005161199"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">925</int> + <reference key="object" ref="955086428"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="905061911"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">926</int> + <reference key="object" ref="905061911"/> + <reference key="parent" ref="955086428"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">927</int> + <reference key="object" ref="154294200"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="642024699"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">928</int> + <reference key="object" ref="642024699"/> + <reference key="parent" ref="154294200"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">929</int> + <reference key="object" ref="69674678"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="381534417"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">930</int> + <reference key="object" ref="381534417"/> + <reference key="parent" ref="69674678"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">931</int> + <reference key="object" ref="417336893"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="712918994"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">932</int> + <reference key="object" ref="712918994"/> + <reference key="parent" ref="417336893"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">935</int> + <reference key="object" ref="255513081"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="730397676"/> + <reference ref="361224021"/> + <reference ref="161081546"/> + <reference ref="938264862"/> + </object> + <reference key="parent" ref="1005161199"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">936</int> + <reference key="object" ref="161081546"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="871963358"/> + </object> + <reference key="parent" ref="255513081"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">937</int> + <reference key="object" ref="730397676"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="85810214"/> + </object> + <reference key="parent" ref="255513081"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">938</int> + <reference key="object" ref="938264862"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="414009067"/> + </object> + <reference key="parent" ref="255513081"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">939</int> + <reference key="object" ref="361224021"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="250456480"/> + </object> + <reference key="parent" ref="255513081"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">940</int> + <reference key="object" ref="250456480"/> + <reference key="parent" ref="361224021"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">941</int> + <reference key="object" ref="414009067"/> + <reference key="parent" ref="938264862"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">942</int> + <reference key="object" ref="85810214"/> + <reference key="parent" ref="730397676"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">943</int> + <reference key="object" ref="871963358"/> + <reference key="parent" ref="161081546"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">948</int> + <reference key="object" ref="304183342"/> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">977</int> + <reference key="object" ref="444254505"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="954819856"/> + </object> + <reference key="parent" ref="1051793036"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">978</int> + <reference key="object" ref="954819856"/> + <reference key="parent" ref="444254505"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">979</int> + <reference key="object" ref="1070075179"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="334903928"/> + </object> + <reference key="parent" ref="1051793036"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">980</int> + <reference key="object" ref="334903928"/> + <reference key="parent" ref="1070075179"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">981</int> + <reference key="object" ref="493529785"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="691853589"/> + <reference ref="754613361"/> + <reference ref="391034673"/> + <reference ref="485697019"/> + </object> + <reference key="parent" ref="1005161199"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">982</int> + <reference key="object" ref="691853589"/> + <reference key="parent" ref="493529785"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">983</int> + <reference key="object" ref="754613361"/> + <reference key="parent" ref="493529785"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">984</int> + <reference key="object" ref="391034673"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="156018914"/> + <reference ref="453788475"/> + </object> + <reference key="parent" ref="493529785"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">985</int> + <reference key="object" ref="485697019"/> + <reference key="parent" ref="493529785"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">986</int> + <reference key="object" ref="156018914"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="112947375"/> + </object> + <reference key="parent" ref="391034673"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">987</int> + <reference key="object" ref="453788475"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="649545701"/> + </object> + <reference key="parent" ref="391034673"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">988</int> + <reference key="object" ref="649545701"/> + <reference key="parent" ref="453788475"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">989</int> + <reference key="object" ref="112947375"/> + <reference key="parent" ref="156018914"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">995</int> + <reference key="object" ref="324693913"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="605401532"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">996</int> + <reference key="object" ref="605401532"/> + <reference key="parent" ref="324693913"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">997</int> + <reference key="object" ref="599783746"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="875368486"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">998</int> + <reference key="object" ref="875368486"/> + <reference key="parent" ref="599783746"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">969</int> + <reference key="object" ref="1013630922"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="440794033"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">970</int> + <reference key="object" ref="440794033"/> + <reference key="parent" ref="1013630922"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">971</int> + <reference key="object" ref="537024070"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="562472673"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">972</int> + <reference key="object" ref="562472673"/> + <reference key="parent" ref="537024070"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">973</int> + <reference key="object" ref="755640970"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="51049164"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">974</int> + <reference key="object" ref="51049164"/> + <reference key="parent" ref="755640970"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">975</int> + <reference key="object" ref="647365435"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="135145992"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">976</int> + <reference key="object" ref="135145992"/> + <reference key="parent" ref="647365435"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1001</int> + <reference key="object" ref="985211526"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="320179825"/> + </object> + <reference key="parent" ref="1005161199"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1002</int> + <reference key="object" ref="320179825"/> + <reference key="parent" ref="985211526"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1003</int> + <reference key="object" ref="249518202"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="242275502"/> + </object> + <reference key="parent" ref="308547255"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1004</int> + <reference key="object" ref="242275502"/> + <reference key="parent" ref="249518202"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-3.IBPluginDependency</string> + <string>1001.IBPluginDependency</string> + <string>1002.IBPluginDependency</string> + <string>1003.IBPluginDependency</string> + <string>1004.IBPluginDependency</string> + <string>811.IBEditorWindowLastContentRect</string> + <string>811.IBPluginDependency</string> + <string>811.WindowOrigin</string> + <string>811.editorWindowContentRectSynchronizationRect</string> + <string>816.IBPluginDependency</string> + <string>821.IBPluginDependency</string> + <string>835.IBPluginDependency</string> + <string>836.IBPluginDependency</string> + <string>837.IBPluginDependency</string> + <string>838.IBPluginDependency</string> + <string>916.IBPluginDependency</string> + <string>922.IBPluginDependency</string> + <string>925.IBPluginDependency</string> + <string>926.IBPluginDependency</string> + <string>927.IBPluginDependency</string> + <string>928.IBPluginDependency</string> + <string>929.IBPluginDependency</string> + <string>930.IBPluginDependency</string> + <string>931.IBPluginDependency</string> + <string>932.IBPluginDependency</string> + <string>935.IBPluginDependency</string> + <string>936.IBPluginDependency</string> + <string>937.IBPluginDependency</string> + <string>938.IBPluginDependency</string> + <string>939.IBPluginDependency</string> + <string>940.IBPluginDependency</string> + <string>941.IBPluginDependency</string> + <string>942.IBPluginDependency</string> + <string>943.IBPluginDependency</string> + <string>969.IBPluginDependency</string> + <string>970.IBPluginDependency</string> + <string>971.IBPluginDependency</string> + <string>972.IBPluginDependency</string> + <string>973.IBPluginDependency</string> + <string>974.IBPluginDependency</string> + <string>975.IBPluginDependency</string> + <string>976.IBPluginDependency</string> + <string>977.IBAttributePlaceholdersKey</string> + <string>977.IBPluginDependency</string> + <string>978.IBPluginDependency</string> + <string>979.IBPluginDependency</string> + <string>980.IBPluginDependency</string> + <string>981.IBPluginDependency</string> + <string>982.IBPluginDependency</string> + <string>983.IBPluginDependency</string> + <string>984.IBPluginDependency</string> + <string>985.IBPluginDependency</string> + <string>986.IBPluginDependency</string> + <string>987.IBPluginDependency</string> + <string>988.IBPluginDependency</string> + <string>989.IBPluginDependency</string> + <string>995.IBPluginDependency</string> + <string>996.IBPluginDependency</string> + <string>997.IBPluginDependency</string> + <string>998.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{489, 81}, {740, 500}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{394, 263}, {575, 329}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="444254505"/> + <string key="toolTip">Reset the mob list.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">1004</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">AuraController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aurasPanel</string> + <string>aurasPanelTable</string> + <string>controller</string> + <string>mobController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">AuraController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterTableView</string> + <string key="superclassName">NSTableView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="984992216"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BotController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>autoJoinWG:</string> + <string>closeHotkeyHelp:</string> + <string>closeLootHotkeyHelp:</string> + <string>doTheRelicEmanation:</string> + <string>editCombatProfiles:</string> + <string>gatheringLootingOptions:</string> + <string>gatheringLootingSelectAction:</string> + <string>hotkeyHelp:</string> + <string>login:</string> + <string>lootHotkeyHelp:</string> + <string>pvpBMSelectAction:</string> + <string>pvpStartStop:</string> + <string>pvpTestWarning:</string> + <string>startBot:</string> + <string>startStopBot:</string> + <string>stopBot:</string> + <string>test:</string> + <string>testHotkey:</string> + <string>updateStatus:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>antiAFKButton</string> + <string>anyLevelCheckbox</string> + <string>attackWithinText</string> + <string>auraController</string> + <string>autoJoinWG</string> + <string>behaviorPopup</string> + <string>chatController</string> + <string>chatLogController</string> + <string>combatController</string> + <string>combatProfileEditor</string> + <string>combatProfilePopup</string> + <string>controller</string> + <string>corpseController</string> + <string>fishController</string> + <string>fishingApplyLureCheckbox</string> + <string>fishingCheckbox</string> + <string>fishingGatherDistanceText</string> + <string>fishingLurePopUpButton</string> + <string>fishingOnlySchoolsCheckbox</string> + <string>fishingRecastCheckbox</string> + <string>fishingUseContainersCheckbox</string> + <string>gatherDistText</string> + <string>gatheringLootingPanel</string> + <string>herbalismCheckbox</string> + <string>herbalismSkillText</string> + <string>hotkeyHelpPanel</string> + <string>itemController</string> + <string>logOutAfterRunningTextField</string> + <string>logOutAfterStuckCheckbox</string> + <string>logOutDurabilityTextField</string> + <string>logOutOnBrokenItemsCheckbox</string> + <string>logOutOnFullInventoryCheckbox</string> + <string>logOutOnTimerExpireCheckbox</string> + <string>logOutUseHearthstoneCheckbox</string> + <string>lootCheckbox</string> + <string>lootController</string> + <string>lootHotkeyHelpPanel</string> + <string>macroController</string> + <string>maxLevelPopup</string> + <string>maxLevelText</string> + <string>memoryViewController</string> + <string>minLevelPopup</string> + <string>minLevelText</string> + <string>miningCheckbox</string> + <string>miningSkillText</string> + <string>mobController</string> + <string>mountCheckbox</string> + <string>mountType</string> + <string>mouseOverRecorder</string> + <string>movementController</string> + <string>netherwingEggCheckbox</string> + <string>nodeController</string> + <string>nodeIgnoreFriendlyCheckbox</string> + <string>nodeIgnoreFriendlyDistanceText</string> + <string>nodeIgnoreHostileCheckbox</string> + <string>nodeIgnoreHostileDistanceText</string> + <string>nodeIgnoreMobCheckbox</string> + <string>nodeIgnoreMobDistanceText</string> + <string>offsetController</string> + <string>overlayWindow</string> + <string>petAttackRecorder</string> + <string>playerController</string> + <string>playersController</string> + <string>procedureController</string> + <string>pvpBMSelectPanel</string> + <string>pvpBannerImage</string> + <string>pvpLeaveInactiveCheckbox</string> + <string>pvpPlayWarningCheckbox</string> + <string>pvpStartStopButton</string> + <string>pvpWaitForPreparationBuff</string> + <string>questController</string> + <string>routePopup</string> + <string>runningTimer</string> + <string>scanGrid</string> + <string>shortcutRecorder</string> + <string>skinningCheckbox</string> + <string>skinningSkillText</string> + <string>spellController</string> + <string>startStopButton</string> + <string>startstopRecorder</string> + <string>statusText</string> + <string>view</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSButton</string> + <string>NSButton</string> + <string>id</string> + <string>AuraController</string> + <string>NSButton</string> + <string>id</string> + <string>ChatController</string> + <string>ChatLogController</string> + <string>CombatController</string> + <string>CombatProfileEditor</string> + <string>id</string> + <string>Controller</string> + <string>CorpseController</string> + <string>FishController</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>id</string> + <string>NSPanel</string> + <string>NSButton</string> + <string>id</string> + <string>NSPanel</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>LootController</string> + <string>NSPanel</string> + <string>MacroController</string> + <string>id</string> + <string>NSTextField</string> + <string>MemoryViewController</string> + <string>id</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>id</string> + <string>MobController</string> + <string>NSButton</string> + <string>NSPopUpButton</string> + <string>SRRecorderControl</string> + <string>MovementController</string> + <string>NSButton</string> + <string>NodeController</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>OffsetController</string> + <string>NSWindow</string> + <string>SRRecorderControl</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>ProcedureController</string> + <string>NSPanel</string> + <string>NSImageView</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>QuestController</string> + <string>id</string> + <string>NSTextField</string> + <string>ScanGridView</string> + <string>SRRecorderControl</string> + <string>NSButton</string> + <string>id</string> + <string>SpellController</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>NSTextField</string> + <string>NSView</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BotController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatLogController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRelayPanel:</string> + <string>createChatAction:</string> + <string>openRelayPanel:</string> + <string>sendEmail:</string> + <string>something:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatActionsController</string> + <string>chatLogTable</string> + <string>controller</string> + <string>enableGrowlNotifications</string> + <string>offsetController</string> + <string>relayPanel</string> + <string>ruleEditor</string> + <string>view</string> + <string>whisperLogTable</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSArrayController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSButton</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPredicateEditor</string> + <string>NSView</string> + <string>NSTableView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatLogController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CombatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>MobController</string> + <string>MovementController</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CombatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CombatProfileEditor</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addIgnoreEntry:</string> + <string>addIgnoreFromTarget:</string> + <string>closeEditor:</string> + <string>closeRename:</string> + <string>createCombatProfile:</string> + <string>deleteCombatProfile:</string> + <string>deleteIgnoreEntry:</string> + <string>duplicateCombatProfile:</string> + <string>exportCombatProfile:</string> + <string>importCombatProfile:</string> + <string>loadCombatProfile:</string> + <string>playerList:</string> + <string>renameCombatProfile:</string> + <string>tankSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>editorPanel</string> + <string>ignoreTable</string> + <string>playerList</string> + <string>playersController</string> + <string>renamePanel</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSPopUpButton</string> + <string>PlayersController</string> + <string>NSPanel</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CombatProfileEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">Controller</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>confirmAppRename:</string> + <string>launchWebsite:</string> + <string>pidSelected:</string> + <string>renameShowHelp:</string> + <string>renameUseExisting:</string> + <string>showAbout:</string> + <string>showSettings:</string> + <string>testFront:</string> + <string>toggleGUIScripting:</string> + <string>toggleSecurePrefs:</string> + <string>toolbarItemSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aboutValidImage</string> + <string>aboutView</string> + <string>behaviorController</string> + <string>behavsToolbarItem</string> + <string>botController</string> + <string>botToolbarItem</string> + <string>chatLogController</string> + <string>chatLogToolbarItem</string> + <string>corpseController</string> + <string>currentStatusText</string> + <string>disableGUIScriptCheckbox</string> + <string>itemController</string> + <string>itemsToolbarItem</string> + <string>mainBackgroundBox</string> + <string>mainToolbar</string> + <string>mainWindow</string> + <string>matchExistingCheckbox</string> + <string>memoryAccessLight</string> + <string>memoryAccessValidText</string> + <string>memoryToolbarItem</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>mobsToolbarItem</string> + <string>newIdentifierField</string> + <string>newNameField</string> + <string>newSignatureField</string> + <string>nodeController</string> + <string>nodesToolbarItem</string> + <string>offsetController</string> + <string>playerData</string> + <string>playerToolbarItem</string> + <string>playersController</string> + <string>playersToolbarItem</string> + <string>prefsToolbarItem</string> + <string>routeController</string> + <string>routesToolbarItem</string> + <string>settingsView</string> + <string>spellController</string> + <string>spellsToolbarItem</string> + <string>statisticsController</string> + <string>statisticsToolbarItem</string> + <string>versionInfoText</string> + <string>wowInstancePopUpButton</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSImageView</string> + <string>NSView</string> + <string>ProcedureController</string> + <string>NSToolbarItem</string> + <string>BotController</string> + <string>NSToolbarItem</string> + <string>ChatLogController</string> + <string>NSToolbarItem</string> + <string>CorpseController</string> + <string>id</string> + <string>NSButton</string> + <string>InventoryController</string> + <string>NSToolbarItem</string> + <string>id</string> + <string>NSToolbar</string> + <string>id</string> + <string>NSButton</string> + <string>id</string> + <string>id</string> + <string>NSToolbarItem</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSToolbarItem</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NodeController</string> + <string>NSToolbarItem</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>NSToolbarItem</string> + <string>PlayersController</string> + <string>NSToolbarItem</string> + <string>NSToolbarItem</string> + <string>WaypointController</string> + <string>NSToolbarItem</string> + <string>NSView</string> + <string>SpellController</string> + <string>NSToolbarItem</string> + <string>StatisticsController</string> + <string>NSToolbarItem</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="805368673"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CorpseController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CorpseController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">FishController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>itemController</string> + <string>lootController</string> + <string>movementController</string> + <string>nodeController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>LootController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>PlayerDataController</string> + <string>SpellController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">FishController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">InventoryController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>itemTable</string> + <string>memoryViewController</string> + <string>playerData</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">InventoryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">LootController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatController</string> + <string>controller</string> + <string>itemController</string> + <string>offsetController</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>ChatController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">LootController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MacroController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + <string>playerData</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MacroController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MemoryViewController</string> + <string key="superclassName">NSView</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>clearSearch:</string> + <string>clearTable:</string> + <string>clearValues:</string> + <string>findPointers:</string> + <string>menuAction:</string> + <string>openSearch:</string> + <string>saveValues:</string> + <string>setCustomAddress:</string> + <string>snapshotMemory:</string> + <string>startSearch:</string> + <string>typeSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>bitPanel</string> + <string>bitTableView</string> + <string>clearButton</string> + <string>controller</string> + <string>memoryTable</string> + <string>memoryViewWindow</string> + <string>numAddressesToScan</string> + <string>offsetController</string> + <string>operatorPopUpButton</string> + <string>searchButton</string> + <string>searchPanel</string> + <string>searchTableView</string> + <string>searchText</string> + <string>searchTypePopUpButton</string> + <string>signMatrix</string> + <string>valueMatrix</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSButton</string> + <string>Controller</string> + <string>id</string> + <string>id</string> + <string>NSTextField</string> + <string>OffsetController</string> + <string>NSPopUpButton</string> + <string>NSButton</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSMatrix</string> + <string>NSMatrix</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MemoryViewController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MobController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>additionalStart:</string> + <string>additionalStop:</string> + <string>faceMob:</string> + <string>filterMobs:</string> + <string>resetMobList:</string> + <string>targetMob:</string> + <string>updateTracking:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>additionalList</string> + <string>auraController</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>memoryViewController</string> + <string>mobColorByLevel</string> + <string>mobTable</string> + <string>movementController</string> + <string>playerData</string> + <string>spellController</string> + <string>trackFriendlyMenuItem</string> + <string>trackHostileMenuItem</string> + <string>trackNeutralMenuItem</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MobController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MovementController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">prefsChanged:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>botController</string> + <string>chatController</string> + <string>combatController</string> + <string>controller</string> + <string>logOutStuckAttemptsTextField</string> + <string>macroController</string> + <string>mobController</string> + <string>movementType</string> + <string>offsetController</string> + <string>playerData</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>NSTextField</string> + <string>MacroController</string> + <string>id</string> + <string>NSPopUpButton</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MovementController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="984992216"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="805368673"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NodeController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>faceNode:</string> + <string>filterList:</string> + <string>filterNodes:</string> + <string>moveToStart:</string> + <string>moveToStop:</string> + <string>resetList:</string> + <string>targetNode:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>memoryViewController</string> + <string>moveToList</string> + <string>movementController</string> + <string>nodeTable</string> + <string>playerController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>NSPopUpButton</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">NodeController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">OffsetController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">OffsetController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayerDataController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>setPlayerDirectionInMemory:</string> + <string>showAuraWindow:</string> + <string>showCooldownWindow:</string> + <string>showPlayerStructure:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>combatController</string> + <string>combatTable</string> + <string>controller</string> + <string>healingTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>movementController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>powerNameText</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>CombatController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSTextField</string> + <string>SpellController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayerDataController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayersController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>facePlayer:</string> + <string>reloadNames:</string> + <string>resetPlayerList:</string> + <string>targetPlayer:</string> + <string>updateTracking:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>memoryViewController</string> + <string>movementController</string> + <string>playerColorByLevel</string> + <string>playerData</string> + <string>playerTable</string> + <string>trackFriendly</string> + <string>trackHostile</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>MemoryViewController</string> + <string>MovementController</string> + <string>NSButton</string> + <string>PlayerDataController</string> + <string>NSTableView</string> + <string>id</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayersController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ProcedureController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRule:</string> + <string>closeExportPanel:</string> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteRule:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>exportBehaviors:</string> + <string>importBehavior:</string> + <string>loadBehavior:</string> + <string>openExportPanel:</string> + <string>removeBehavior:</string> + <string>renameBehavior:</string> + <string>setBehaviorEvent:</string> + <string>tableRowDoubleClicked:</string> + <string>updateOptions:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>exportPanel</string> + <string>itemController</string> + <string>procedureEventSegment</string> + <string>renamePanel</string> + <string>ruleEditor</string> + <string>ruleTable</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSPanel</string> + <string>id</string> + <string>id</string> + <string>NSPanel</string> + <string>id</string> + <string>NSTableView</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ProcedureController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RouteVisualizationView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RouteVisualizationView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ScanGridView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ScanGridView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SpellController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>reloadMenu:</string> + <string>spellLoadAllData:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>cooldownPanel</string> + <string>cooldownPanelTable</string> + <string>offsetController</string> + <string>playerController</string> + <string>spellDropDown</string> + <string>spellLoadingProgress</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>id</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SpellController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">StatisticsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">resetStatistics:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>experienceText</string> + <string>honorGainedText</string> + <string>itemsLootedText</string> + <string>memoryOperationsTable</string> + <string>memoryReadsText</string> + <string>memoryWritesText</string> + <string>mobsKilledText</string> + <string>moneyText</string> + <string>playerController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">StatisticsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">WaypointController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addWaypoint:</string> + <string>cancelWaypointAction:</string> + <string>changeWaypointAction:</string> + <string>closeAutomatorPanel:</string> + <string>closeExportPanel:</string> + <string>closeRename:</string> + <string>closeVisualize:</string> + <string>closeWaypointAction:</string> + <string>closestWaypoint:</string> + <string>createRoute:</string> + <string>duplicateRoute:</string> + <string>editWaypointAction:</string> + <string>exportRoute:</string> + <string>importRoute:</string> + <string>loadRoute:</string> + <string>moveToWaypoint:</string> + <string>openAutomatorPanel:</string> + <string>openExportPanel:</string> + <string>optionSelected:</string> + <string>removeRoute:</string> + <string>removeWaypoint:</string> + <string>renameRoute:</string> + <string>resetAllWaypoints:</string> + <string>setRouteType:</string> + <string>startStopAutomator:</string> + <string>stopMovement:</string> + <string>testWaypointSequence:</string> + <string>visualize:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>automatorIntervalValue</string> + <string>automatorPanel</string> + <string>automatorRecorder</string> + <string>automatorSpinner</string> + <string>automatorStartStopButton</string> + <string>automatorVizualizer</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>exportPanel</string> + <string>isFlyingRouteButton</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>renamePanel</string> + <string>routeTypeSegment</string> + <string>shortcutRecorder</string> + <string>testingMenu</string> + <string>view</string> + <string>visualizePanel</string> + <string>visualizeView</string> + <string>waypointTable</string> + <string>wpActionDelayText</string> + <string>wpActionIDPopUp</string> + <string>wpActionPanel</string> + <string>wpActionTabs</string> + <string>wpActionTypeSegments</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>SRRecorderControl</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>RouteVisualizationView</string> + <string>id</string> + <string>id</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSButton</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>NSPanel</string> + <string>id</string> + <string>SRRecorderControl</string> + <string>NSMenu</string> + <string>NSView</string> + <string>NSPanel</string> + <string>RouteVisualizationView</string> + <string>BetterTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSPanel</string> + <string>NSTabView</string> + <string>BetterSegmentedControl</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">WaypointController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="108813271"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="520055644"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1024475543"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSArrayController</string> + <string key="superclassName">NSObjectController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSArrayController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSBox</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSBox.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="565227837"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSImageView</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSManagedObjectContext</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">CoreData.framework/Headers/NSManagedObjectContext.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMatrix</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="825035263"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="108813271"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="520055644"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="1024475543"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="565227837"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="825035263"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1001636556"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="40886930"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="157546847"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="398285213"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObjectController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPanel</string> + <string key="superclassName">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPredicateEditor</string> + <string key="superclassName">NSRuleEditor</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPredicateEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSProgressIndicator</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSRuleEditor</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRuleEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScrollView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScroller</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSlider</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSlider.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSliderCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSliderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTabView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableColumn</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableHeaderView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableHeaderView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableView</string> + <string key="superclassName">NSControl</string> + <reference key="sourceIdentifier" ref="1001636556"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbar</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbar.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbarItem</string> + <string key="superclassName">NSObject</string> + <reference key="sourceIdentifier" ref="40886930"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="157546847"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SRRecorderControl</string> + <string key="superclassName">NSControl</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">delegate</string> + <string key="NS.object.0">id</string> + </object> + <reference key="sourceIdentifier" ref="398285213"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/StatisticsController.h b/StatisticsController.h new file mode 100644 index 0000000..1f4da3a --- /dev/null +++ b/StatisticsController.h @@ -0,0 +1,56 @@ +// +// StatisticsController.m +// Pocket Gnome +// +// Created by Josh on 10/12/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@class Controller; +@class PlayerDataController; + +@interface StatisticsController : NSObject { + IBOutlet Controller *controller; + IBOutlet PlayerDataController *playerController; + + // player statistics + IBOutlet NSTextField *moneyText; + IBOutlet NSTextField *experienceText; + IBOutlet NSTextField *itemsLootedText; + IBOutlet NSTextField *mobsKilledText; + IBOutlet NSTextField *honorGainedText; + + // mmory operations + IBOutlet NSTextField *memoryReadsText; + IBOutlet NSTextField *memoryWritesText; + IBOutlet NSTableView *memoryOperationsTable; + + IBOutlet NSView *view; + + NSSize minSectionSize, maxSectionSize; + float _updateFrequency; + UInt32 _startCopper; // store the amount of copper when the bot started + UInt32 _startHonor; + int _lootedItems; // total number of looted items + int _mobsKilled; // total number of mobs we've killed! + + // store our mob ID w/the # of kills (MEANT FOR QUESTS!) + NSMutableDictionary *_mobsKilledDictionary; +} + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; +@property float updateFrequency; + +// interface +- (IBAction)resetStatistics:(id)sender; + +// for quests +- (void)resetQuestMobCount; +- (int)killCountForEntryID:(int)entryID; + +@end diff --git a/StatisticsController.m b/StatisticsController.m new file mode 100644 index 0000000..c3a85b6 --- /dev/null +++ b/StatisticsController.m @@ -0,0 +1,257 @@ +// +// StatisticsController.m +// Pocket Gnome +// +// Created by Josh on 10/12/09. +// Copyright 2009 Savory Software, LLC. All rights reserved. +// + +#import "StatisticsController.h" +#import "Controller.h" +#import "PlayerDataController.h" +#import "LootController.h" +#import "CombatController.h" +#import "BotController.h" +#import "Mob.h" + +@interface StatisticsController (Internal) + +@end + +@implementation StatisticsController +- (id) init{ + self = [super init]; + if (self != nil) { + _startCopper = -1; + _lootedItems = -1; + _mobsKilled = -1; + _startHonor = -1; + _mobsKilledDictionary = [[NSMutableDictionary dictionary] retain]; + + // notifications + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(applicationWillTerminate:) + name: NSApplicationWillTerminateNotification + object: nil]; + /*[[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(playerIsValid:) + name: PlayerIsValidNotification + object: nil];*/ + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(itemLooted:) + name: ItemLootedNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(unitDied:) + name: UnitDiedNotification + object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(botStarted:) + name: BotStarted + object: nil]; + + + + [NSBundle loadNibNamed: @"Statistics" owner: self]; + } + return self; +} + +- (void) dealloc{ + [super dealloc]; +} + +- (void)awakeFromNib { + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = [self.view frame].size; + + float freq = [[NSUserDefaults standardUserDefaults] floatForKey: @"StatisticsUpdateFrequency"]; + if(freq <= 0.0f) freq = 0.35; + self.updateFrequency = freq; + + [self performSelector: @selector(updateStatistics) withObject: nil afterDelay: _updateFrequency]; +} + +- (void)applicationWillTerminate: (NSNotification*)notification { + [[NSUserDefaults standardUserDefaults] setFloat: self.updateFrequency forKey: @"StatisticsUpdateFrequency"]; +} + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize updateFrequency = _updateFrequency; + +- (NSString*)sectionTitle { + return @"Statistics"; +} + +- (void)updateStatistics{ + + // only updating if this window is visible! + if ( ![[memoryOperationsTable window] isVisible] ){ + [self performSelector: @selector(updateStatistics) withObject: nil afterDelay: _updateFrequency]; + return; + } + + MemoryAccess *memory = [controller wowMemoryAccess]; + + // update statistics + if ( memory ){ + + // memory operations + [memoryReadsText setStringValue: [NSString stringWithFormat:@"%0.2f", [memory readsPerSecond]]]; + [memoryWritesText setStringValue: [NSString stringWithFormat:@"%0.2f", [memory writesPerSecond]]]; + + // only if our player is valid + if ( [playerController playerIsValid:self] ){ + + // money + UInt32 currentCopper = [playerController copper]; + if ( _startCopper != currentCopper && _startCopper > -1 ){ + int32_t difference = (currentCopper - _startCopper); + + // lets make it pretty! + int silver = difference % 100; + difference /= 100; + int copper = difference % 100; + difference /= 100; + int gold = difference; + + [moneyText setStringValue: [NSString stringWithFormat:@"%dg %ds %dc", gold, copper, silver]]; + } + + // honor + UInt32 currentHonor = [playerController honor]; + if ( currentHonor != _startHonor && _startHonor > -1 ){ + int32_t difference = (currentHonor - _startHonor); + [honorGainedText setStringValue: [NSString stringWithFormat:@"%d", difference]]; + } + + if ( _lootedItems > -1 ) [itemsLootedText setStringValue: [NSString stringWithFormat:@"%d", _lootedItems]]; + if ( _mobsKilled > -1 ) [mobsKilledText setStringValue: [NSString stringWithFormat:@"%d", _mobsKilled]]; + } + + // refresh our memory operations table + [memoryOperationsTable reloadData]; + } + + [self performSelector: @selector(updateStatistics) withObject: nil afterDelay: _updateFrequency]; +} + +#pragma mark Interface Actions + +- (IBAction)resetStatistics:(id)sender{ + + _startCopper = [playerController copper]; + _startHonor = [playerController honor]; + _lootedItems = 0; + _mobsKilled = 0; + + // reset memory data + MemoryAccess *memory = [controller wowMemoryAccess]; + if ( memory ){ + [memory resetCounters]; + } +} + +- (void)resetQuestMobCount{ + [_mobsKilledDictionary removeAllObjects]; +} + +- (int)killCountForEntryID:(int)entryID{ + NSNumber *mobID = [NSNumber numberWithUnsignedLong:entryID]; + NSNumber *count = [_mobsKilledDictionary objectForKey:mobID]; + + if ( count ) + return [count intValue]; + return 0; +} + +#pragma mark Notifications + +- (void)botStarted: (NSNotification*)notification { + [self resetStatistics:nil]; +} + +/*- (void)playerIsValid: (NSNotification*)notification { + }*/ + +- (void)itemLooted: (NSNotification*)notification { + _lootedItems++; +} + +- (void)unitDied: (NSNotification*)notification { + + id obj = [notification object]; + + _mobsKilled++; + + // incremement + int count = 1; + if ( [obj isKindOfClass:[Mob class]] ){ + + NSNumber *entryID = [NSNumber numberWithInt:[(Mob*)obj entryID]]; + if ( [_mobsKilledDictionary objectForKey:entryID] ){ + count = [[_mobsKilledDictionary objectForKey:entryID] intValue] + 1; + } + + [_mobsKilledDictionary setObject:[NSNumber numberWithInt:count] forKey:entryID]; + } + + //PGLog(@"[**********] Unit killed: %@ %d times", obj, count); +} + +#pragma mark - +#pragma mark TableView Delegate & Datasource + +- (void)tableView:(NSTableView *)aTableView sortDescriptorsDidChange:(NSArray *)oldDescriptors { + [aTableView reloadData]; +} + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + + if ( aTableView == memoryOperationsTable ){ + MemoryAccess *memory = [controller wowMemoryAccess]; + + if ( memory && [memory isValid] ){ + return [[memory operationsByClassPerSecond] count]; + } + } + + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + + if ( aTableView == memoryOperationsTable ){ + MemoryAccess *memory = [controller wowMemoryAccess]; + + if ( memory && [memory isValid] ){ + NSDictionary *classOperations = [memory operationsByClassPerSecond]; + + if(rowIndex == -1 || rowIndex >= [classOperations count]) return nil; + + NSArray *keys = [classOperations allKeys]; + + // class + if ( [[aTableColumn identifier] isEqualToString:@"Class"] ){ + return [keys objectAtIndex:rowIndex]; + } + // value + else if ( [[aTableColumn identifier] isEqualToString:@"Operations"] ){ + return [classOperations objectForKey:[keys objectAtIndex:rowIndex]]; + } + } + } + return nil; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + return NO; +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldSelectTableColumn:(NSTableColumn *)aTableColumn { + return YES; +} + +@end diff --git a/StatusCondition.xib b/StatusCondition.xib new file mode 100644 index 0000000..395bfac --- /dev/null +++ b/StatusCondition.xib @@ -0,0 +1,1205 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">732</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">732</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">StatusConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="134011685"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="1045589723"> + <reference key="NSNextResponder" ref="134011685"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{136, 17}, {55, 24}}</string> + <reference key="NSSuperview" ref="134011685"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="458897528"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="793117369"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="1045589723"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">18</double> + <string key="NSSegmentItemLabel">Is</string> + <int key="NSSegmentItemTag">4</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">30</double> + <string key="NSSegmentItemLabel">Not</string> + <int key="NSSegmentItemTag">5</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSSegmentedControl" id="897215786"> + <reference key="NSNextResponder" ref="134011685"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{195, 17}, {466, 24}}</string> + <reference key="NSSuperview" ref="134011685"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="844721750"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <reference key="NSSupport" ref="793117369"/> + <reference key="NSControlView" ref="897215786"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">41</double> + <string key="NSSegmentItemLabel">Alive</string> + <int key="NSSegmentItemTag">1</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">77</double> + <string key="NSSegmentItemLabel">In Combat</string> + <int key="NSSegmentItemTag">2</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">59</double> + <string key="NSSegmentItemLabel">Casting</string> + <int key="NSSegmentItemTag">3</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">67</double> + <string key="NSSegmentItemLabel">Mounted</string> + <int key="NSSegmentItemTag">8</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">75</double> + <string key="NSSegmentItemLabel">Swimming</string> + <int key="NSSegmentItemTag">10</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">94</double> + <string key="NSSegmentItemLabel">Targeting Me</string> + <int key="NSSegmentItemTag">11</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">41</double> + <string key="NSSegmentItemLabel">Tank</string> + <int key="NSSegmentItemTag">12</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSButton" id="662227588"> + <reference key="NSNextResponder" ref="134011685"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 20}, {20, 19}}</string> + <reference key="NSSuperview" ref="134011685"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="206615665"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="662227588"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSPopUpButton" id="278588563"> + <reference key="NSNextResponder" ref="134011685"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 16}, {101, 26}}</string> + <reference key="NSSuperview" ref="134011685"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="242892112"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="793117369"/> + <reference key="NSControlView" ref="278588563"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">1</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="507771291"> + <reference key="NSMenu" ref="576378835"/> + <string key="NSTitle">Target</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="1034340872"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="825246848"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">2</int> + <reference key="NSTarget" ref="242892112"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="576378835"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="507771291"/> + <object class="NSMenuItem" id="598336984"> + <reference key="NSMenu" ref="576378835"/> + <string key="NSTitle">Player</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1034340872"/> + <reference key="NSMixedImage" ref="825246848"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">1</int> + <reference key="NSTarget" ref="242892112"/> + </object> + <object class="NSMenuItem" id="542682837"> + <reference key="NSMenu" ref="576378835"/> + <string key="NSTitle">Pet</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1034340872"/> + <reference key="NSMixedImage" ref="825246848"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">3</int> + <reference key="NSTarget" ref="242892112"/> + </object> + <object class="NSMenuItem" id="338385621"> + <reference key="NSMenu" ref="576378835"/> + <string key="NSTitle">Friendlies</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1034340872"/> + <reference key="NSMixedImage" ref="825246848"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">4</int> + <reference key="NSTarget" ref="242892112"/> + </object> + <object class="NSMenuItem" id="258582739"> + <reference key="NSMenu" ref="576378835"/> + <string key="NSTitle">Enemies</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1034340872"/> + <reference key="NSMixedImage" ref="825246848"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">5</int> + <reference key="NSTarget" ref="242892112"/> + </object> + </object> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + </object> + <string key="NSFrameSize">{679, 48}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1045589723"/> + </object> + <int key="connectionID">18</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">stateSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897215786"/> + </object> + <int key="connectionID">19</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1045589723"/> + </object> + <int key="connectionID">21</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897215786"/> + </object> + <int key="connectionID">22</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="134011685"/> + </object> + <int key="connectionID">24</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="662227588"/> + </object> + <int key="connectionID">34</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="662227588"/> + </object> + <int key="connectionID">37</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">unitPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="278588563"/> + </object> + <int key="connectionID">48</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="278588563"/> + </object> + <int key="connectionID">49</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="134011685"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="662227588"/> + <reference ref="278588563"/> + <reference ref="897215786"/> + <reference ref="1045589723"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">13</int> + <reference key="object" ref="1045589723"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="458897528"/> + </object> + <reference key="parent" ref="134011685"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">14</int> + <reference key="object" ref="897215786"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="844721750"/> + </object> + <reference key="parent" ref="134011685"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">15</int> + <reference key="object" ref="844721750"/> + <reference key="parent" ref="897215786"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">16</int> + <reference key="object" ref="458897528"/> + <reference key="parent" ref="1045589723"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">26</int> + <reference key="object" ref="662227588"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="206615665"/> + </object> + <reference key="parent" ref="134011685"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">27</int> + <reference key="object" ref="206615665"/> + <reference key="parent" ref="662227588"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">41</int> + <reference key="object" ref="278588563"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="242892112"/> + </object> + <reference key="parent" ref="134011685"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">42</int> + <reference key="object" ref="242892112"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="576378835"/> + </object> + <reference key="parent" ref="278588563"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">43</int> + <reference key="object" ref="576378835"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="598336984"/> + <reference ref="542682837"/> + <reference ref="338385621"/> + <reference ref="258582739"/> + <reference ref="507771291"/> + </object> + <reference key="parent" ref="242892112"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">44</int> + <reference key="object" ref="598336984"/> + <reference key="parent" ref="576378835"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">45</int> + <reference key="object" ref="542682837"/> + <reference key="parent" ref="576378835"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">46</int> + <reference key="object" ref="507771291"/> + <reference key="parent" ref="576378835"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">50</int> + <reference key="object" ref="338385621"/> + <reference key="parent" ref="576378835"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">51</int> + <reference key="object" ref="258582739"/> + <reference key="parent" ref="576378835"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>13.CustomClassName</string> + <string>13.IBPluginDependency</string> + <string>13.IBSegmentedControlTracker.RoundRobinState</string> + <string>13.IBSegmentedControlTracker.WasGrowing</string> + <string>14.CustomClassName</string> + <string>14.IBPluginDependency</string> + <string>14.IBSegmentedControlTracker.RoundRobinState</string> + <string>14.IBSegmentedControlTracker.WasGrowing</string> + <string>15.IBPluginDependency</string> + <string>15.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>16.IBPluginDependency</string> + <string>16.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>26.IBAttributePlaceholdersKey</string> + <string>26.IBPluginDependency</string> + <string>27.IBPluginDependency</string> + <string>41.IBPluginDependency</string> + <string>42.IBPluginDependency</string> + <string>43.IBEditorWindowLastContentRect</string> + <string>43.IBPluginDependency</string> + <string>43.editorWindowContentRectSynchronizationRect</string> + <string>44.IBPluginDependency</string> + <string>45.IBPluginDependency</string> + <string>46.IBPluginDependency</string> + <string>50.IBPluginDependency</string> + <string>51.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="1"/> + <integer value="1"/> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="4"/> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>{{469, 648}, {679, 48}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{223, 420}, {577, 36}}</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="662227588"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{490, 587}, {132, 103}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{244, 387}, {113, 63}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">51</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">StatusConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorSegment</string> + <string>stateSegment</string> + <string>unitPopUp</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BetterSegmentedControl</string> + <string>BetterSegmentedControl</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">StatusConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">StatusConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="124493260"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="89780617"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="411927047"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="1067556734"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="853478437"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="647357414"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="124493260"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="89780617"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="411927047"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="1067556734"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="853478437"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="288403379"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="647357414"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="288403379"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/StatusConditionController.h b/StatusConditionController.h new file mode 100644 index 0000000..51cd0df --- /dev/null +++ b/StatusConditionController.h @@ -0,0 +1,24 @@ +// +// StatusRuleController.h +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface StatusConditionController : ConditionController { + + IBOutlet NSPopUpButton *unitPopUp; + //IBOutlet BetterSegmentedControl *unitSegment; + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet BetterSegmentedControl *stateSegment; + + int previousState; +} + +@end diff --git a/StatusConditionController.m b/StatusConditionController.m new file mode 100644 index 0000000..1af46db --- /dev/null +++ b/StatusConditionController.m @@ -0,0 +1,69 @@ +// +// StatusRuleController.m +// Pocket Gnome +// +// Created by Jon Drummond on 1/3/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "StatusConditionController.h" +#import "ConditionController.h" +#import "BetterSegmentedControl.h" + + +@implementation StatusConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"StatusCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading StatusCondition.nib."); + previousState = 1; + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + if( ([[unitPopUp selectedItem] tag] != UnitPlayer) && ([stateSegment selectedTag] == StateIndoors)) { + NSBeep(); + if(previousState == StateIndoors) { + [unitPopUp selectItemWithTag: UnitPlayer]; + } else { + [stateSegment selectSegmentWithTag: previousState]; + } + return; + } + + previousState = [stateSegment selectedTag]; +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyStatus + unit: [[unitPopUp selectedItem] tag] + quality: QualityNone + comparator: [comparatorSegment selectedTag] + state: [stateSegment selectedTag] + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + if( [condition variety] != VarietyStatus) return; + + if(![unitPopUp selectItemWithTag: [condition unit]]) { + [unitPopUp selectItemWithTag: UnitPlayer]; + } + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + [stateSegment selectSegmentWithTag: [condition state]]; +} + +@end diff --git a/StrandStatus.xib b/StrandStatus.xib new file mode 100644 index 0000000..171599a --- /dev/null +++ b/StrandStatus.xib @@ -0,0 +1,999 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">BattlegroundStatusConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSPopUpButton" id="506212126"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{141, 6}, {145, 26}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="69190760"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <object class="NSFont" key="NSSupport" id="813217147"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="506212126"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="135219276"> + <reference key="NSMenu" ref="102618614"/> + <string key="NSTitle">Attacking</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="1069138296"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="801410745"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">31</int> + <reference key="NSTarget" ref="69190760"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="102618614"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="135219276"/> + <object class="NSMenuItem" id="648458711"> + <reference key="NSMenu" ref="102618614"/> + <string key="NSTitle">Defending</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="1069138296"/> + <reference key="NSMixedImage" ref="801410745"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">32</int> + <reference key="NSTarget" ref="69190760"/> + </object> + </object> + <reference key="NSMenuFont" ref="813217147"/> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSTextField" id="841089904"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{288, 12}, {161, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="80634624"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">in Strand of the Ancients</string> + <reference key="NSSupport" ref="813217147"/> + <reference key="NSControlView" ref="841089904"/> + <object class="NSColor" key="NSBackgroundColor" id="197651135"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="137950459"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSTextField" id="901441470"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 12}, {107, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="201985974"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">We are currently</string> + <reference key="NSSupport" ref="813217147"/> + <reference key="NSControlView" ref="901441470"/> + <reference key="NSBackgroundColor" ref="197651135"/> + <reference key="NSTextColor" ref="137950459"/> + </object> + </object> + <object class="NSButton" id="814849057"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 10}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="316740641"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="814849057"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{446, 38}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">62</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">88</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="814849057"/> + </object> + <int key="connectionID">90</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">qualityPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="506212126"/> + </object> + <int key="connectionID">129</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="901441470"/> + <reference ref="814849057"/> + <reference ref="506212126"/> + <reference ref="841089904"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">83</int> + <reference key="object" ref="814849057"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="316740641"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">86</int> + <reference key="object" ref="316740641"/> + <reference key="parent" ref="814849057"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">92</int> + <reference key="object" ref="901441470"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="201985974"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">93</int> + <reference key="object" ref="201985974"/> + <reference key="parent" ref="901441470"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">109</int> + <reference key="object" ref="841089904"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="80634624"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">110</int> + <reference key="object" ref="80634624"/> + <reference key="parent" ref="841089904"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">119</int> + <reference key="object" ref="506212126"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="69190760"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">120</int> + <reference key="object" ref="69190760"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="102618614"/> + </object> + <reference key="parent" ref="506212126"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">121</int> + <reference key="object" ref="102618614"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="135219276"/> + <reference ref="648458711"/> + </object> + <reference key="parent" ref="69190760"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">122</int> + <reference key="object" ref="135219276"/> + <reference key="parent" ref="102618614"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">123</int> + <reference key="object" ref="648458711"/> + <reference key="parent" ref="102618614"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-2.showNotes</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>109.IBPluginDependency</string> + <string>110.IBPluginDependency</string> + <string>119.IBPluginDependency</string> + <string>120.IBPluginDependency</string> + <string>121.IBEditorWindowLastContentRect</string> + <string>121.IBPluginDependency</string> + <string>122.IBPluginDependency</string> + <string>123.IBPluginDependency</string> + <string>83.IBAttributePlaceholdersKey</string> + <string>83.IBPluginDependency</string> + <string>86.IBPluginDependency</string> + <string>92.IBPluginDependency</string> + <string>93.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{695, 676}, {446, 38}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{189, 314}, {582, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{825, 665}, {145, 43}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="814849057"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">129</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BattlegroundStatusConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">qualityPopUp</string> + <string key="NS.object.0">NSPopUpButton</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BattlegroundStatusConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="475210095"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="883970323"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="939911122"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="982946997"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="400220171"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="836686933"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="475210095"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="883970323"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="939911122"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="982946997"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="400220171"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="127450342"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="836686933"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="127450342"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/StrandStatusConditionController.h b/StrandStatusConditionController.h new file mode 100644 index 0000000..d0bbac1 --- /dev/null +++ b/StrandStatusConditionController.h @@ -0,0 +1,17 @@ +// +// StrandStatusConditionController.h +// Pocket Gnome +// +// Created by Josh on 2/10/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +#import "ConditionController.h" + +@interface StrandStatusConditionController : ConditionController { + IBOutlet NSPopUpButton *qualityPopUp; +} + +@end diff --git a/StrandStatusConditionController.m b/StrandStatusConditionController.m new file mode 100644 index 0000000..e9772c9 --- /dev/null +++ b/StrandStatusConditionController.m @@ -0,0 +1,57 @@ +// +// StrandStatusConditionController.m +// Pocket Gnome +// +// Created by Josh on 2/10/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "StrandStatusConditionController.h" +#import "ConditionController.h" + +@implementation StrandStatusConditionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"StrandStatus" owner: self]) { + log(LOG_GENERAL, @"Error loading StrandStatus.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyStrandStatus + unit: UnitNone + quality: [qualityPopUp selectedTag] + comparator: CompareNone + state: StateNone + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyStrandStatus) return; + + [qualityPopUp selectItemWithTag: [condition quality]]; + + [self validateState: nil]; +} + +@end diff --git a/SwitchRouteAction.xib b/SwitchRouteAction.xib new file mode 100644 index 0000000..5f0a435 --- /dev/null +++ b/SwitchRouteAction.xib @@ -0,0 +1,1045 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">SwitchRouteActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSPopUpButton" id="852672986"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{138, 1}, {170, 26}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="545539660"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <object class="NSFont" key="NSSupport" id="567458509"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="852672986"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="806981711"> + <reference key="NSMenu" ref="1049699681"/> + <string key="NSTitle">Item 1</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="345463982"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="944698602"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="545539660"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="1049699681"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="806981711"/> + <object class="NSMenuItem" id="776060456"> + <reference key="NSMenu" ref="1049699681"/> + <string key="NSTitle">Item 2</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="345463982"/> + <reference key="NSMixedImage" ref="944698602"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="545539660"/> + </object> + <object class="NSMenuItem" id="81054269"> + <reference key="NSMenu" ref="1049699681"/> + <string key="NSTitle">Item 3</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="345463982"/> + <reference key="NSMixedImage" ref="944698602"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="545539660"/> + </object> + </object> + <reference key="NSMenuFont" ref="567458509"/> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 7}, {104, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Switch route to:</string> + <reference key="NSSupport" ref="567458509"/> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 5}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{325, 33}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + <object class="NSUserDefaultsController" id="853790461"> + <bool key="NSSharedInstance">YES</bool> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">97</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">routePopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="852672986"/> + </object> + <int key="connectionID">126</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">content: routes</string> + <reference key="source" ref="852672986"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="400463005"> + <reference key="NSSource" ref="852672986"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">content: routes</string> + <string key="NSBinding">content</string> + <string key="NSKeyPath">routes</string> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">151</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">contentObjects: routes</string> + <reference key="source" ref="852672986"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector" id="924117036"> + <reference key="NSSource" ref="852672986"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">contentObjects: routes</string> + <string key="NSBinding">contentObjects</string> + <string key="NSKeyPath">routes</string> + <reference key="NSPreviousConnector" ref="400463005"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">152</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBBindingConnection" key="connection"> + <string key="label">contentValues: routes.name</string> + <reference key="source" ref="852672986"/> + <reference key="destination" ref="1001"/> + <object class="NSNibBindingConnector" key="connector"> + <reference key="NSSource" ref="852672986"/> + <reference key="NSDestination" ref="1001"/> + <string key="NSLabel">contentValues: routes.name</string> + <string key="NSBinding">contentValues</string> + <string key="NSKeyPath">routes.name</string> + <reference key="NSPreviousConnector" ref="924117036"/> + <int key="NSNibBindingConnectorVersion">2</int> + </object> + </object> + <int key="connectionID">153</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="652240429"/> + <reference ref="867616341"/> + <reference ref="852672986"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">105</int> + <reference key="object" ref="853790461"/> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">120</int> + <reference key="object" ref="852672986"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="545539660"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">121</int> + <reference key="object" ref="545539660"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1049699681"/> + </object> + <reference key="parent" ref="852672986"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">122</int> + <reference key="object" ref="1049699681"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="806981711"/> + <reference ref="776060456"/> + <reference ref="81054269"/> + </object> + <reference key="parent" ref="545539660"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">123</int> + <reference key="object" ref="806981711"/> + <reference key="parent" ref="1049699681"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">124</int> + <reference key="object" ref="776060456"/> + <reference key="parent" ref="1049699681"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">125</int> + <reference key="object" ref="81054269"/> + <reference key="parent" ref="1049699681"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>120.IBPluginDependency</string> + <string>121.IBPluginDependency</string> + <string>122.IBPluginDependency</string> + <string>123.IBPluginDependency</string> + <string>124.IBPluginDependency</string> + <string>125.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{791, 698}, {325, 33}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">155</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SwitchRouteActionController</string> + <string key="superclassName">ActionController</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">routePopUp</string> + <string key="NS.object.0">NSPopUpButton</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SwitchRouteActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="203642501"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="203642501"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/SwitchRouteActionController.h b/SwitchRouteActionController.h new file mode 100644 index 0000000..26894ca --- /dev/null +++ b/SwitchRouteActionController.h @@ -0,0 +1,23 @@ +// +// SwitchRouteActionController.h +// Pocket Gnome +// +// Created by Josh on 1/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ActionController.h" + +@interface SwitchRouteActionController : ActionController { + + IBOutlet NSPopUpButton *routePopUp; + + NSArray *_routes; +} + ++ (id)switchRouteActionControllerWithRoutes: (NSArray*)routes; + +@property (readwrite, copy) NSArray *routes; + +@end diff --git a/SwitchRouteActionController.m b/SwitchRouteActionController.m new file mode 100644 index 0000000..16cbfb0 --- /dev/null +++ b/SwitchRouteActionController.m @@ -0,0 +1,95 @@ +// +// SwitchRouteActionController.m +// Pocket Gnome +// +// Created by Josh on 1/14/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "SwitchRouteActionController.h" +#import "ActionController.h" + +#import "RouteSet.h" + +@implementation SwitchRouteActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + _routes = nil; + if(![NSBundle loadNibNamed: @"SwitchRouteAction" owner: self]) { + log(LOG_GENERAL, @"Error loading SwitchRouteAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (id) initWithRoutes: (NSArray*)routes{ + self = [self init]; + if (self != nil) { + self.routes = routes; + + if ( [routePopUp numberOfItems] > 0 ){ + [routePopUp selectItemAtIndex:0]; + //[routePopUp removeItemWithTitle:@"No Value"]; + } + } + return self; +} + + ++ (id)switchRouteActionControllerWithRoutes: (NSArray*)routes{ + return [[[SwitchRouteActionController alloc] initWithRoutes: routes] autorelease]; +} + +// if we don't remove bindings, it won't leave! +- (void)removeBindings{ + + // no idea why we have to do this, but yea, removing anyways + NSArray *bindings = [routePopUp exposedBindings]; + for ( NSString *binding in bindings ){ + [routePopUp unbind: binding]; + } + /* + [routePopUp unbind:NSSelectedValueBinding]; + [routePopUp unbind:NSContentObjectBinding]; + [routePopUp unbind:NSContentValuesBinding]; + [routePopUp unbind:NSContentBinding];*/ +} + +@synthesize routes = _routes; + +- (void)setStateFromAction: (Action*)action{ + + for ( NSMenuItem *item in [routePopUp itemArray] ){ + + log(LOG_GENERAL, @"not equal? %@ %@", [(RouteSet*)[item representedObject] UUID], action.value); + + if ( [[(RouteSet*)[item representedObject] UUID] isEqualToString:action.value] ){ + log(LOG_GENERAL, @"ZOMG EQUAL!"); + [routePopUp selectItem:item]; + break; + } + } + + [super setStateFromAction:action]; +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_SwitchRoute value:nil]; + + [action setEnabled: self.enabled]; + [action setValue: [[[routePopUp selectedItem] representedObject] UUID]]; + + log(LOG_GENERAL, @" saving %d %@ for %@", self.enabled, [[[routePopUp selectedItem] representedObject] UUID], self); + + return action; +} + +@end diff --git a/TargetClass.xib b/TargetClass.xib new file mode 100644 index 0000000..04fc111 --- /dev/null +++ b/TargetClass.xib @@ -0,0 +1,1644 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">732</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">732</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">TargetClassConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentedControl" id="57154894"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{80, 17}, {62, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="696654500"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="896909074"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="57154894"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">22</double> + <string key="NSSegmentItemLabel">Is</string> + <int key="NSSegmentItemTag">4</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">33</double> + <string key="NSSegmentItemLabel">Not</string> + <int key="NSSegmentItemTag">5</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSButton" id="832297280"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 20}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="639699242"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="832297280"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSSegmentedControl" id="437977887"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{146, 17}, {136, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="237733953"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <reference key="NSSupport" ref="896909074"/> + <reference key="NSControlView" ref="437977887"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <string key="NSSegmentItemLabel">Creature</string> + <int key="NSSegmentItemTag">18</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">2</int> + </object> + <object class="NSSegmentItem"> + <string key="NSSegmentItemLabel">Class</string> + <int key="NSSegmentItemTag">19</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSTextField" id="668245592"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 22}, {45, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="235213304"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Target</string> + <reference key="NSSupport" ref="896909074"/> + <reference key="NSControlView" ref="668245592"/> + <object class="NSColor" key="NSBackgroundColor" id="834542304"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="495206398"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSTextField" id="278464041"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{285, 22}, {48, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="877082760"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">type of</string> + <reference key="NSSupport" ref="896909074"/> + <reference key="NSControlView" ref="278464041"/> + <reference key="NSBackgroundColor" ref="834542304"/> + <reference key="NSTextColor" ref="495206398"/> + </object> + </object> + <object class="NSPopUpButton" id="806963049"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{335, 16}, {149, 26}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="866798976"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="896909074"/> + <reference key="NSControlView" ref="806963049"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <nil key="NSMenuItem"/> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="821317113"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <int key="NSSelectedIndex">-1</int> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + </object> + <string key="NSFrameSize">{501, 48}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + <object class="NSMenu" id="706995661"> + <string key="NSTitle"/> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="871171288"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Beast</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSOnImage" id="503014839"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="543231483"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <int key="NSTag">1</int> + </object> + <object class="NSMenuItem" id="256201883"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Dragonkin</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">2</int> + </object> + <object class="NSMenuItem" id="772392527"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Demon</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">3</int> + </object> + <object class="NSMenuItem" id="474553766"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Elemental</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">4</int> + </object> + <object class="NSMenuItem" id="735883542"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Giant</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">5</int> + </object> + <object class="NSMenuItem" id="476922217"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Undead</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">6</int> + </object> + <object class="NSMenuItem" id="313871002"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Humanoid</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">7</int> + </object> + <object class="NSMenuItem" id="344626262"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Critter</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">8</int> + </object> + <object class="NSMenuItem" id="487115626"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Mechanical</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">9</int> + </object> + <object class="NSMenuItem" id="503210193"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Totem</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">11</int> + </object> + <object class="NSMenuItem" id="291557073"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Non-Combat Pet</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">12</int> + </object> + <object class="NSMenuItem" id="89159907"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Gas Cloud</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">13</int> + </object> + <object class="NSMenuItem" id="261763650"> + <reference key="NSMenu" ref="706995661"/> + <bool key="NSIsDisabled">YES</bool> + <bool key="NSIsSeparator">YES</bool> + <string key="NSTitle"/> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + </object> + <object class="NSMenuItem" id="729533960"> + <reference key="NSMenu" ref="706995661"/> + <string key="NSTitle">Unspecified</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">10</int> + </object> + </object> + </object> + <object class="NSMenu" id="79855736"> + <string key="NSTitle"/> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="351470818"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Druid</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">11</int> + </object> + <object class="NSMenuItem" id="986067981"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Hunter</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">3</int> + </object> + <object class="NSMenuItem" id="218020881"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Mage</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">8</int> + </object> + <object class="NSMenuItem" id="1058465479"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Paladin</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">2</int> + </object> + <object class="NSMenuItem" id="170487244"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Priest</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">5</int> + </object> + <object class="NSMenuItem" id="930008243"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Rogue</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">4</int> + </object> + <object class="NSMenuItem" id="1007997002"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Shaman</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">7</int> + </object> + <object class="NSMenuItem" id="746866463"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Warlock</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">9</int> + </object> + <object class="NSMenuItem" id="741216228"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Warrior</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">1</int> + </object> + <object class="NSMenuItem" id="761251364"> + <reference key="NSMenu" ref="79855736"/> + <bool key="NSIsDisabled">YES</bool> + <bool key="NSIsSeparator">YES</bool> + <string key="NSTitle"/> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + </object> + <object class="NSMenuItem" id="64577393"> + <reference key="NSMenu" ref="79855736"/> + <string key="NSTitle">Death Knight</string> + <string key="NSKeyEquiv"/> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="503014839"/> + <reference key="NSMixedImage" ref="543231483"/> + <int key="NSTag">6</int> + </object> + </object> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">44</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="832297280"/> + </object> + <int key="connectionID">45</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">qualitySegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="437977887"/> + </object> + <int key="connectionID">46</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">valuePopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="806963049"/> + </object> + <int key="connectionID">47</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">creatureTypeMenu</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="706995661"/> + </object> + <int key="connectionID">48</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">playerClassMenu</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="79855736"/> + </object> + <int key="connectionID">49</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="832297280"/> + </object> + <int key="connectionID">50</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="437977887"/> + </object> + <int key="connectionID">51</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="806963049"/> + </object> + <int key="connectionID">52</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="57154894"/> + </object> + <int key="connectionID">56</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="57154894"/> + </object> + <int key="connectionID">57</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="832297280"/> + <reference ref="668245592"/> + <reference ref="57154894"/> + <reference ref="437977887"/> + <reference ref="278464041"/> + <reference ref="806963049"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="832297280"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="639699242"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">3</int> + <reference key="object" ref="437977887"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="237733953"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">4</int> + <reference key="object" ref="668245592"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="235213304"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">5</int> + <reference key="object" ref="235213304"/> + <reference key="parent" ref="668245592"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">6</int> + <reference key="object" ref="237733953"/> + <reference key="parent" ref="437977887"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">7</int> + <reference key="object" ref="639699242"/> + <reference key="parent" ref="832297280"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">8</int> + <reference key="object" ref="278464041"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="877082760"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">9</int> + <reference key="object" ref="877082760"/> + <reference key="parent" ref="278464041"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">10</int> + <reference key="object" ref="806963049"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="866798976"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">11</int> + <reference key="object" ref="866798976"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="821317113"/> + </object> + <reference key="parent" ref="806963049"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">12</int> + <reference key="object" ref="821317113"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <reference key="parent" ref="866798976"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">16</int> + <reference key="object" ref="706995661"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="871171288"/> + <reference ref="256201883"/> + <reference ref="772392527"/> + <reference ref="474553766"/> + <reference ref="735883542"/> + <reference ref="476922217"/> + <reference ref="313871002"/> + <reference ref="344626262"/> + <reference ref="487115626"/> + <reference ref="503210193"/> + <reference ref="291557073"/> + <reference ref="89159907"/> + <reference ref="261763650"/> + <reference ref="729533960"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Creature</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">17</int> + <reference key="object" ref="871171288"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">18</int> + <reference key="object" ref="256201883"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">19</int> + <reference key="object" ref="772392527"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">20</int> + <reference key="object" ref="79855736"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="986067981"/> + <reference ref="930008243"/> + <reference ref="1007997002"/> + <reference ref="746866463"/> + <reference ref="351470818"/> + <reference ref="741216228"/> + <reference ref="218020881"/> + <reference ref="1058465479"/> + <reference ref="170487244"/> + <reference ref="761251364"/> + <reference ref="64577393"/> + </object> + <reference key="parent" ref="0"/> + <string key="objectName">Class</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">21</int> + <reference key="object" ref="741216228"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">22</int> + <reference key="object" ref="1058465479"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">23</int> + <reference key="object" ref="986067981"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">24</int> + <reference key="object" ref="474553766"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">25</int> + <reference key="object" ref="735883542"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">26</int> + <reference key="object" ref="476922217"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">27</int> + <reference key="object" ref="313871002"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">28</int> + <reference key="object" ref="344626262"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">29</int> + <reference key="object" ref="487115626"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">30</int> + <reference key="object" ref="729533960"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">31</int> + <reference key="object" ref="503210193"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">32</int> + <reference key="object" ref="291557073"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">33</int> + <reference key="object" ref="89159907"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">35</int> + <reference key="object" ref="261763650"/> + <reference key="parent" ref="706995661"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">36</int> + <reference key="object" ref="930008243"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">37</int> + <reference key="object" ref="170487244"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">38</int> + <reference key="object" ref="64577393"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">39</int> + <reference key="object" ref="1007997002"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">40</int> + <reference key="object" ref="218020881"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">41</int> + <reference key="object" ref="746866463"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">42</int> + <reference key="object" ref="351470818"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">43</int> + <reference key="object" ref="761251364"/> + <reference key="parent" ref="79855736"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">54</int> + <reference key="object" ref="57154894"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="696654500"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">55</int> + <reference key="object" ref="696654500"/> + <reference key="parent" ref="57154894"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>10.IBPluginDependency</string> + <string>11.IBPluginDependency</string> + <string>12.IBEditorWindowLastContentRect</string> + <string>12.IBPluginDependency</string> + <string>16.IBEditorWindowLastContentRect</string> + <string>16.IBPluginDependency</string> + <string>17.IBPluginDependency</string> + <string>18.IBPluginDependency</string> + <string>19.IBPluginDependency</string> + <string>2.IBAttributePlaceholdersKey</string> + <string>2.IBPluginDependency</string> + <string>20.IBEditorWindowLastContentRect</string> + <string>20.IBPluginDependency</string> + <string>21.IBPluginDependency</string> + <string>22.IBPluginDependency</string> + <string>23.IBPluginDependency</string> + <string>24.IBPluginDependency</string> + <string>25.IBPluginDependency</string> + <string>26.IBPluginDependency</string> + <string>27.IBPluginDependency</string> + <string>28.IBPluginDependency</string> + <string>29.IBPluginDependency</string> + <string>3.CustomClassName</string> + <string>3.IBPluginDependency</string> + <string>3.IBSegmentedControlTracker.RoundRobinState</string> + <string>3.IBSegmentedControlTracker.WasGrowing</string> + <string>30.IBPluginDependency</string> + <string>31.IBPluginDependency</string> + <string>32.IBPluginDependency</string> + <string>33.IBPluginDependency</string> + <string>35.IBPluginDependency</string> + <string>36.IBPluginDependency</string> + <string>37.IBPluginDependency</string> + <string>38.IBPluginDependency</string> + <string>39.IBPluginDependency</string> + <string>4.IBPluginDependency</string> + <string>40.IBPluginDependency</string> + <string>41.IBPluginDependency</string> + <string>42.IBPluginDependency</string> + <string>43.IBPluginDependency</string> + <string>5.IBPluginDependency</string> + <string>54.CustomClassName</string> + <string>54.IBPluginDependency</string> + <string>54.IBSegmentedControlTracker.RoundRobinState</string> + <string>54.IBSegmentedControlTracker.WasGrowing</string> + <string>55.IBPluginDependency</string> + <string>55.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>6.IBPluginDependency</string> + <string>6.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>7.IBPluginDependency</string> + <string>8.IBPluginDependency</string> + <string>9.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{341, 437}, {501, 48}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{357, 416}, {480, 272}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{650, 376}, {162, 4}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{288, 687}, {169, 273}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="832297280"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{575, 533}, {144, 213}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="1"/> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="1"/> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="1"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">57</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBUserSource</string> + <string key="minorKey"/> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">TargetClassConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorSegment</string> + <string>creatureTypeMenu</string> + <string>playerClassMenu</string> + <string>qualitySegment</string> + <string>valuePopUp</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BetterSegmentedControl</string> + <string>NSMenu</string> + <string>NSMenu</string> + <string>BetterSegmentedControl</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">TargetClassConditionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="249380208"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="643078263"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="990844184"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="255433658"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719301612"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="849590272"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="249380208"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="643078263"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="990844184"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="255433658"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719301612"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="198005684"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="849590272"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="198005684"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/TargetClassConditionController.h b/TargetClassConditionController.h new file mode 100644 index 0000000..df91801 --- /dev/null +++ b/TargetClassConditionController.h @@ -0,0 +1,24 @@ +// +// TargetClassConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + + +@interface TargetClassConditionController : ConditionController { + IBOutlet BetterSegmentedControl *qualitySegment; + IBOutlet BetterSegmentedControl *comparatorSegment; + IBOutlet NSPopUpButton *valuePopUp; + + IBOutlet NSMenu *creatureTypeMenu; + IBOutlet NSMenu *playerClassMenu; +} + +@end diff --git a/TargetClassConditionController.m b/TargetClassConditionController.m new file mode 100644 index 0000000..9bfcc04 --- /dev/null +++ b/TargetClassConditionController.m @@ -0,0 +1,74 @@ +// +// TargetClassConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "TargetClassConditionController.h" + + +@implementation TargetClassConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"TargetClass" owner: self]) { + log(LOG_GENERAL, @"Error loading TargetClass.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (void)awakeFromNib { + [self validateState: nil]; +} + +- (IBAction)validateState: (id)sender { + if([qualitySegment selectedTag] == QualityNPC) { + if([valuePopUp menu] != creatureTypeMenu) + [valuePopUp setMenu: creatureTypeMenu]; + } else { + if([valuePopUp menu] != playerClassMenu) + [valuePopUp setMenu: playerClassMenu]; + } + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyTargetClass + unit: UnitTarget + quality: [qualitySegment selectedTag] + comparator: [comparatorSegment selectedTag] + state: [[valuePopUp selectedItem] tag] + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyTargetClass) return; + + [comparatorSegment selectSegmentWithTag: [condition comparator]]; + + [qualitySegment selectSegmentWithTag: [condition quality]]; + [valuePopUp setMenu: creatureTypeMenu]; + + [self validateState: nil]; + + if(![valuePopUp selectItemWithTag: [condition state]]) { + [valuePopUp selectItemWithTag: 1]; + } +} + +@end diff --git a/TargetType.xib b/TargetType.xib new file mode 100644 index 0000000..ed4dc7d --- /dev/null +++ b/TargetType.xib @@ -0,0 +1,425 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.02"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">9E17</string> + <string key="IBDocument.InterfaceBuilderVersion">670</string> + <string key="IBDocument.AppKitVersion">949.33</string> + <string key="IBDocument.HIToolboxVersion">352.00</string> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">TargetTypeConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSButton" id="741659315"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="708663103"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">1.200000e+01</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="741659315"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSSegmentedControl" id="507817970"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{114, 5}, {133, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="51308542"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport" id="166128852"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">1.300000e+01</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="507817970"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">6.300000e+01</double> + <string key="NSSegmentItemLabel">NPC</string> + <int key="NSSegmentItemTag">18</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">2</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">6.300000e+01</double> + <string key="NSSegmentItemLabel">Player</string> + <int key="NSSegmentItemTag">19</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSTextField" id="512644019"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 10}, {79, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="658414076"> + <int key="NSCellFlags">68288064</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Target is a </string> + <reference key="NSSupport" ref="166128852"/> + <reference key="NSControlView" ref="512644019"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2OQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + </object> + <string key="NSFrameSize">{252, 36}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">qualitySegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="507817970"/> + </object> + <int key="connectionID">26</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">27</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="741659315"/> + </object> + <int key="connectionID">28</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">displayText</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="512644019"/> + </object> + <int key="connectionID">30</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="507817970"/> + </object> + <int key="connectionID">31</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="741659315"/> + </object> + <int key="connectionID">32</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <object class="NSArray" key="object" id="1002"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="1002"/> + <string type="base64-UTF8" key="objectName">RmlsZSdzIE93bmVyA</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="1002"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="1002"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="741659315"/> + <reference ref="512644019"/> + <reference ref="507817970"/> + </object> + <reference key="parent" ref="1002"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">6</int> + <reference key="object" ref="741659315"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708663103"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">7</int> + <reference key="object" ref="507817970"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="51308542"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">8</int> + <reference key="object" ref="51308542"/> + <reference key="parent" ref="507817970"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">9</int> + <reference key="object" ref="708663103"/> + <reference key="parent" ref="741659315"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">24</int> + <reference key="object" ref="512644019"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="658414076"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">25</int> + <reference key="object" ref="658414076"/> + <reference key="parent" ref="512644019"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBEditorWindowLastContentRect</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>24.IBPluginDependency</string> + <string>25.IBPluginDependency</string> + <string>6.IBAttributePlaceholdersKey</string> + <string>6.IBPluginDependency</string> + <string>7.CustomClassName</string> + <string>7.IBPluginDependency</string> + <string>8.IBPluginDependency</string> + <string>9.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{38, 473}, {252, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{357, 416}, {480, 272}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="741659315"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterSegmentedControl</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">32</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableCondition:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">TargetTypeConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>displayText</string> + <string>qualitySegment</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSTextField</string> + <string>BetterSegmentedControl</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">TargetTypeConditionController.h</string> + </object> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <string key="IBDocument.LastKnownRelativeProjectPath">WoWWaypoint.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/TargetTypeConditionController.h b/TargetTypeConditionController.h new file mode 100644 index 0000000..d59a7ea --- /dev/null +++ b/TargetTypeConditionController.h @@ -0,0 +1,19 @@ +// +// TargetTypeConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@class BetterSegmentedControl; + +@interface TargetTypeConditionController : ConditionController { + IBOutlet NSTextField *displayText; + IBOutlet BetterSegmentedControl *qualitySegment; +} + +@end diff --git a/TargetTypeConditionController.m b/TargetTypeConditionController.m new file mode 100644 index 0000000..b54bcc0 --- /dev/null +++ b/TargetTypeConditionController.m @@ -0,0 +1,64 @@ +// +// TargetTypeConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 8/17/08. +// Copyright 2008 Jon Drummond. All rights reserved. +// + +#import "TargetTypeConditionController.h" + + +@implementation TargetTypeConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"TargetType" owner: self]) { + log(LOG_GENERAL, @"Error loading TargetType.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (void)awakeFromNib { + [self validateState: nil]; +} + +- (IBAction)validateState: (id)sender { + if([qualitySegment selectedTag] == QualityNPC) { + [displayText setStringValue: @"Target is an"]; + } else { + [displayText setStringValue: @"Target is a"]; + } +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyTargetType + unit: UnitTarget + quality: [qualitySegment selectedTag] + comparator: CompareIs + state: StateNone + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyTargetType) return; + + [qualitySegment selectSegmentWithTag: [condition quality]]; + + [self validateState: nil]; +} + +@end diff --git a/Tauren-Female.png b/Tauren-Female.png new file mode 100644 index 0000000..c152076 Binary files /dev/null and b/Tauren-Female.png differ diff --git a/Tauren-Female_Small.gif b/Tauren-Female_Small.gif new file mode 100644 index 0000000..6891790 Binary files /dev/null and b/Tauren-Female_Small.gif differ diff --git a/Tauren-Male.png b/Tauren-Male.png new file mode 100644 index 0000000..a943551 Binary files /dev/null and b/Tauren-Male.png differ diff --git a/Tauren-Male_Small.gif b/Tauren-Male_Small.gif new file mode 100644 index 0000000..e0c094f Binary files /dev/null and b/Tauren-Male_Small.gif differ diff --git a/TempEnchantCondition.xib b/TempEnchantCondition.xib new file mode 100644 index 0000000..e0b3adb --- /dev/null +++ b/TempEnchantCondition.xib @@ -0,0 +1,733 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.01"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">9E17</string> + <string key="IBDocument.InterfaceBuilderVersion">629</string> + <string key="IBDocument.AppKitVersion">949.33</string> + <string key="IBDocument.HIToolboxVersion">352.00</string> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string id="432113897">com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">TempEnchantConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSButton" id="983345649"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="714871168"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents" id="578047455"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName" id="1025562805">LucidaGrande</string> + <double key="NSSize">1.200000e+01</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="983345649"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName" id="432702475">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <reference key="NSAlternateContents" ref="578047455"/> + <reference key="NSKeyEquivalent" ref="578047455"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSSegmentedControl" id="710875902"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{33, 5}, {185, 24}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="678102423"> + <int key="NSCellFlags">-2080244224</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport"> + <reference key="NSName" ref="1025562805"/> + <double key="NSSize">1.300000e+01</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="710875902"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">8.900000e+01</double> + <string key="NSSegmentItemLabel">Main Hand</string> + <int key="NSSegmentItemTag">16</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">8.900000e+01</double> + <string key="NSSegmentItemLabel">Off Hand</string> + <int key="NSSegmentItemTag">17</int> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSPopUpButton" id="249041459"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{221, 4}, {134, 26}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="962443878"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <object class="NSFont" key="NSSupport" id="921680653"> + <reference key="NSName" ref="1025562805"/> + <double key="NSSize">1.300000e+01</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="249041459"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">1</int> + <reference key="NSAlternateContents" ref="578047455"/> + <reference key="NSKeyEquivalent" ref="578047455"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="228341349"> + <reference key="NSMenu" ref="646606084"/> + <string key="NSTitle">Does not Have</string> + <reference key="NSKeyEquiv" ref="578047455"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="894799792"> + <reference key="NSClassName" ref="432702475"/> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="98692480"> + <reference key="NSClassName" ref="432702475"/> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">7</int> + <reference key="NSTarget" ref="962443878"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="646606084"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMenuItem" id="4757297"> + <reference key="NSMenu" ref="646606084"/> + <string key="NSTitle">Has</string> + <reference key="NSKeyEquiv" ref="578047455"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="894799792"/> + <reference key="NSMixedImage" ref="98692480"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">6</int> + <reference key="NSTarget" ref="962443878"/> + </object> + <reference ref="228341349"/> + </object> + </object> + <int key="NSSelectedIndex">1</int> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSTextField" id="850390183"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{357, 10}, {176, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="771495104"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">a temporary enchantment.</string> + <reference key="NSSupport" ref="921680653"/> + <reference key="NSControlView" ref="850390183"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName" id="890838028">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2OQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <reference key="NSCatalogName" ref="890838028"/> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + </object> + <string key="NSFrameSize">{535, 36}</string> + <reference key="NSSuperview"/> + <reference key="NSWindow"/> + <string key="NSClassName" id="717919444">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="352677357">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">35</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">comparatorPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="249041459"/> + </object> + <int key="connectionID">36</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="192505743">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="983345649"/> + </object> + <int key="connectionID">37</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label" id="181383606">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="983345649"/> + </object> + <int key="connectionID">38</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label" id="808690078">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="710875902"/> + </object> + <int key="connectionID">39</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <reference key="label" ref="808690078"/> + <reference key="source" ref="1001"/> + <reference key="destination" ref="249041459"/> + </object> + <int key="connectionID">40</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="1034142923">qualitySegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="710875902"/> + </object> + <int key="connectionID">41</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <object class="NSArray" key="object" id="1002"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="1002"/> + <string type="base64-UTF8" key="objectName">RmlsZSdzIE93bmVyA</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="1002"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="1002"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="983345649"/> + <reference ref="710875902"/> + <reference ref="249041459"/> + <reference ref="850390183"/> + </object> + <reference key="parent" ref="1002"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">15</int> + <reference key="object" ref="983345649"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="714871168"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">21</int> + <reference key="object" ref="714871168"/> + <reference key="parent" ref="983345649"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">24</int> + <reference key="object" ref="710875902"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="678102423"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">25</int> + <reference key="object" ref="678102423"/> + <reference key="parent" ref="710875902"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">26</int> + <reference key="object" ref="249041459"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="962443878"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">27</int> + <reference key="object" ref="962443878"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="646606084"/> + </object> + <reference key="parent" ref="249041459"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">28</int> + <reference key="object" ref="646606084"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="4757297"/> + <reference ref="228341349"/> + </object> + <reference key="parent" ref="962443878"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">29</int> + <reference key="object" ref="4757297"/> + <reference key="parent" ref="646606084"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">30</int> + <reference key="object" ref="228341349"/> + <reference key="parent" ref="646606084"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">32</int> + <reference key="object" ref="850390183"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="771495104"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">33</int> + <reference key="object" ref="771495104"/> + <reference key="parent" ref="850390183"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>15.IBAttributePlaceholdersKey</string> + <string>15.IBPluginDependency</string> + <string>21.IBPluginDependency</string> + <string>24.CustomClassName</string> + <string>24.IBPluginDependency</string> + <string>25.IBPluginDependency</string> + <string>26.IBPluginDependency</string> + <string>27.IBPluginDependency</string> + <string>28.IBPluginDependency</string> + <string>28.editorWindowContentRectSynchronizationRect</string> + <string>29.IBPluginDependency</string> + <string>30.IBPluginDependency</string> + <string>32.IBPluginDependency</string> + <string>33.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="432113897"/> + <reference ref="432113897"/> + <reference ref="432113897"/> + <reference ref="432113897"/> + <string>{628, 654}</string> + <string>{{266, 311}, {535, 36}}</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0" id="793026785">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <reference key="name" ref="793026785"/> + <reference key="object" ref="983345649"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string id="748708357">com.apple.InterfaceBuilder.CocoaPlugin</string> + <reference ref="748708357"/> + <string>BetterSegmentedControl</string> + <string id="599418927">com.apple.InterfaceBuilder.CocoaPlugin</string> + <reference ref="599418927"/> + <string id="640584977">com.apple.InterfaceBuilder.CocoaPlugin</string> + <reference ref="640584977"/> + <reference ref="640584977"/> + <string>{{476, 298}, {168, 43}}</string> + <reference ref="640584977"/> + <reference ref="640584977"/> + <string id="1020281769">com.apple.InterfaceBuilder.CocoaPlugin</string> + <reference ref="1020281769"/> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">41</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey" id="421335935">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">TempEnchantConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>comparatorPopUp</string> + <reference ref="1034142923"/> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>BetterSegmentedControl</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="421335935"/> + <string key="minorKey">TempEnchantConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <string key="superclassName" id="770552198">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="181383606"/> + <reference ref="808690078"/> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string id="808317617">id</string> + <reference ref="808317617"/> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <reference ref="192505743"/> + <reference ref="352677357"/> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="808317617"/> + <string>NSButton</string> + <reference ref="717919444"/> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="421335935"/> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <reference key="className" ref="770552198"/> + <nil key="superclassName"/> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="421335935"/> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <reference key="className" ref="770552198"/> + <nil key="superclassName"/> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="421335935"/> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <string key="IBDocument.LastKnownRelativeProjectPath">../WoWWaypoint.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + <object class="NSMutableData" key="IBDocument.RunnableNib"> + <bytes key="NS.bytes">YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA +AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxCVAAsADAAxADUANgA8AD0A +QQBFAFAAWABrAGwAbQB3AAsAeACGAI4AjwCSAJcAoQCiAKUAqQCqAK4AsgC1ALYAugC/AMcAyADnAOsA +7AECAQcBCAENAQ4BDwESARYBFwEYARoBGwEgASoBFwErAS0BMgE5AToBPQFCAUkBUQFSAWABZAFoAWkB +awFtAXUBdgGBAYIBiwGMAY0BkgGUAZkBmgGdAaABowALATcBpAGnAagBrQGyAbMBuAG5Ab4BvwHGAccB +yAHLAdsB3gHfAeEB8QICAhMCFAIVAhYCFwIYAhkCGgIbAhwCHQIeAh8CIAIhAiUCKQJCAlsCXAJdAl4C +XwJgAmECYgJjAmQCZQJmAmcCaAJpAIECagJrAmwCbQJuAm8CcAJzAnYCeVUkbnVsbN8QEgANAA4ADwAQ +ABEAEgATABQAFQAWABcAGAAZABoAGwAcAB0AHgAfACAAIQAiACMAJAAlACYAJwAoACkAKgArACwALQAu +AC8AMFZOU1Jvb3RWJGNsYXNzXU5TT2JqZWN0c0tleXNfEA9OU0NsYXNzZXNWYWx1ZXNfEBlOU0FjY2Vz +c2liaWxpdHlPaWRzVmFsdWVzXU5TQ29ubmVjdGlvbnNbTlNOYW1lc0tleXNbTlNGcmFtZXdvcmtdTlND +bGFzc2VzS2V5c1pOU09pZHNLZXlzXU5TTmFtZXNWYWx1ZXNfEBlOU0FjY2Vzc2liaWxpdHlDb25uZWN0 +b3JzXU5TRm9udE1hbmFnZXJfEBBOU1Zpc2libGVXaW5kb3dzXxAPTlNPYmplY3RzVmFsdWVzXxAXTlNB +Y2Nlc3NpYmlsaXR5T2lkc0tleXNZTlNOZXh0T2lkXE5TT2lkc1ZhbHVlc4ACgJSAYoB4gJOACIBngAWA +d4B5gGiAkYAAgAaAZoCSECyAetIADgAyADMANFtOU0NsYXNzTmFtZYAEgANfEB5UZW1wRW5jaGFudENv +bmRpdGlvbkNvbnRyb2xsZXLSADcAOAA5ADpYJGNsYXNzZXNaJGNsYXNzbmFtZaIAOgA7Xk5TQ3VzdG9t +T2JqZWN0WE5TT2JqZWN0XxAQSUJDb2NvYUZyYW1ld29ya9IADgA+AD8AQFpOUy5vYmplY3RzgAeg0gA3 +ADgAQgBDowBDAEQAO1xOU011dGFibGVTZXRVTlNTZXTSAA4APgBGAEeAGqgASABJAEoASwBMAE0ATgBP +gAmAH4A6gFeAWIBagFyAXtQADgBRAFIAUwBUAFUAHwBXXU5TRGVzdGluYXRpb25YTlNTb3VyY2VXTlNM +YWJlbIAegAqAAoAd2gBZAA4AWgBbAFwAXQBeAF8AMgBgAGEAYgBjAGQAZQBmAGcAaABpAGFfEA9OU05l +eHRSZXNwb25kZXJXTlNGcmFtZV8QE05TT3JpZ2luYWxDbGFzc05hbWVWTlNDZWxsWE5TdkZsYWdzWU5T +RW5hYmxlZFhOU1dpbmRvd1tOU1N1cGVydmlld4ANgByADoAMgBARAQwJgA+AC4ANXxAWQmV0dGVyU2Vn +bWVudGVkQ29udHJvbF8QEk5TU2VnbWVudGVkQ29udHJvbNgAWQAOAG4AXQBvAF8AMgBgAGgAcQByAGYA +cwBoAHUAdlpOU1N1YnZpZXdzW05TRnJhbWVTaXplgA+AVYA7gFKAD4BUgFNfEBR7ezMzLCA1fSwgezE4 +NSwgMjR9fdcAeQAOAHoAewB8AH0AfgB/AIAAgQCCAFUAhACFW05TQ2VsbEZsYWdzXk5TU2VnbWVudFN0 +eWxlWU5TU3VwcG9ydF1OU0NvbnRyb2xWaWV3XE5TQ2VsbEZsYWdzMl8QD05TU2VnbWVudEltYWdlcxP/ +////hAH+AIAbEAGAEYAKEACAFNQADgCHAIgAiQCKAIsAjACNVk5TU2l6ZVZOU05hbWVYTlNmRmxhZ3OA +EyNAKgAAAAAAAIASEBBcTHVjaWRhR3JhbmRl0gA3ADgAkACRogCRADtWTlNGb2500gAOAD4ARgCUgBqi +AJUAloAVgBjWAA4AmACZAJoAmwCcAJ0AhACeAJ8AjQBnXxAZTlNTZWdtZW50SXRlbUltYWdlU2NhbGlu +Z18QEk5TU2VnbWVudEl0ZW1XaWR0aF8QEk5TU2VnbWVudEl0ZW1MYWJlbF8QEE5TU2VnbWVudEl0ZW1U +YWdfEBVOU1NlZ21lbnRJdGVtU2VsZWN0ZWSAFyNAVkAAAAAAAIAWCVlNYWluIEhhbmTSADcAOACjAKSi +AKQAO11OU1NlZ21lbnRJdGVt1QAOAJgAmQCaAJsAnQCEAJ4ApwCogBeAGRARWE9mZiBIYW5k0gA3ADgA +qwCsowCsAK0AO15OU011dGFibGVBcnJheVdOU0FycmF50gA3ADgArwCwpACwALEAXAA7XxAPTlNTZWdt +ZW50ZWRDZWxsXE5TQWN0aW9uQ2VsbNIANwA4ALMAtKIAtAA7Xk5TQ2xhc3NTd2FwcGVyXnF1YWxpdHlT +ZWdtZW500gA3ADgAtwC4owC4ALkAO18QFE5TTmliT3V0bGV0Q29ubmVjdG9yXk5TTmliQ29ubmVjdG9y +1AAOAFEAUgBTALsAHwC9AL6AOYACgCCAONgAWQAOAFoAXABdAF4AXwBgAGEAwQDCAMMAZgBnAGgAYYAN +gDeAIYAiCYAPgA1fEBV7ezIyMSwgNH0sIHsxMzQsIDI2fX3fEBMAeQDJAMoAywDMAA4AzQDOAHsAzwB8 +ANAA0QDSANMAfQDUANUA1gDXAGcA2QDaANsA3ACBANoA3gDfAL0AgQBnAGcA4wDkAOUA5gCBXxAaTlNN +ZW51SXRlbVJlc3BlY3RBbGlnbm1lbnRfEA9OU0Fycm93UG9zaXRpb25fEBNOU0FsdGVybmF0ZUNvbnRl +bnRzXxASTlNQZXJpb2RpY0ludGVydmFsXk5TQnV0dG9uRmxhZ3MyXxAPTlNLZXlFcXVpdmFsZW50Wk5T +TWVudUl0ZW1fEA9OU1ByZWZlcnJlZEVkZ2VfEBJOU1VzZXNJdGVtRnJvbU1lbnVdTlNBbHRlcnNTdGF0 +ZV8QD05TUGVyaW9kaWNEZWxheVZOU01lbnVdTlNCdXR0b25GbGFnc18QD05TU2VsZWN0ZWRJbmRleBP/ +////hEH+QAkQAoAkEEuANoAkgCOAJYAgCQkRAZARCACAJhIGgkD/1AAOAIcAiACJAIoAiwCMAOqAE4AS +EQQUUNwA7QAOAO4A7wDwAPEA8gDzANQA9AD1APYAwwD4APkA+gDaAPwA/QD+AOUBAAEBAIFYTlNUYXJn +ZXRXTlNUaXRsZV8QEU5TS2V5RXF1aXZNb2RNYXNrWk5TS2V5RXF1aXZdTlNNbmVtb25pY0xvY1lOU09u +SW1hZ2VcTlNNaXhlZEltYWdlWE5TQWN0aW9uVU5TVGFnV05TU3RhdGWAIoAvgCcSABAAAIAkEn////+A +KIAsgCaALhAH0wAOAO4BAwEEAQUBBltOU01lbnVJdGVtc4A1gDCAMV1Eb2VzIG5vdCBIYXZl0wAOADIB +CQEKAQsBDF5OU1Jlc291cmNlTmFtZYArgCmAKldOU0ltYWdlXxAPTlNNZW51Q2hlY2ttYXJr0gA3ADgB +EAERogERADtfEBBOU0N1c3RvbVJlc291cmNl0wAOADIBCQEKAQsBFYArgCmALV8QEE5TTWVudU1peGVk +U3RhdGVfEBFfcG9wVXBJdGVtQWN0aW9uOtIANwA4ARkAz6IAzwA7Wk90aGVyVmlld3PSAA4APgBGAR2A +GqIBHgDfgDKAJdsA7QAOAO4A7wDwAPEA8gDzANQA9AD1AMMA+AEjAPoA2gD8AP0A/gDlASgBKYAigC+A +M4AkgCiALIAmgDQQBlNIYXPSADcAOAEsANSiANQAO9IANwA4AS4BL6YBLwEwATEAsQBcADtfEBFOU1Bv +cFVwQnV0dG9uQ2VsbF5OU01lbnVJdGVtQ2VsbFxOU0J1dHRvbkNlbGzSADcAOAEzATSmATQBNQE2ATcB +OAA7XU5TUG9wVXBCdXR0b25YTlNCdXR0b25ZTlNDb250cm9sVk5TVmlld1tOU1Jlc3BvbmRlcl52YWxp +ZGF0ZVN0YXRlOtIANwA4ATsBPKMBPAC5ADtfEBVOU05pYkNvbnRyb2xDb25uZWN0b3LUAA4AUQBSAFMA +VABhAB8BQYAegA2AAoBW0gAOAD4ARgFEgBqkAUUAVQC9AUiAPIAKgCCARNgAWQAOAFoAXABdAF4AXwBg +AGEBSwFMAU0AZgBnAGgAYYANgEOAPYA+CYAPgA1fEBJ7ezcsIDh9LCB7MjAsIDE5fX3dAHkADgDLAVMA +zADNAM4BVAB7AHwA0wB9ANUBVQFWANoBWADbAVkA2gDaAVwBRQDjAV4BX11OU05vcm1hbEltYWdlWk5T +Q29udGVudHMSBAH+AIBCgCSAQBCtgCSAJIA/gDwSCAAAABP/////tvRA/9QADgCHAIgAiQCKAWIAjACN +gBMjQCgAAAAAAACAEtMADgAyAQkBCgELAWeAK4ApgEFfEBZOU1N0b3BQcm9ncmVzc1RlbXBsYXRl0gA3 +ADgBagExpAExALEAXAA70gA3ADgBbAE1pQE1ATYBNwE4ADvYAFkADgBaAFwAXQBeAF8AYABhAW8BcAFx +AGYAZwBoAGGADYBRgEWARgmAD4ANXxAWe3szNTcsIDEwfSwgezE3NiwgMTd9fdgAeQAOAXcBVAB7AHwA +fQF4AXkBegF7AXwA3gFIAX8BgF8QEU5TQmFja2dyb3VuZENvbG9yW05TVGV4dENvbG9yEgQB/kCAUIBI +gEeAI4BEEhBABACATV8QGGEgdGVtcG9yYXJ5IGVuY2hhbnRtZW50LtUADgGDAYQBhQGGAYcBiAEpAYkB +ildOU0NvbG9yXE5TQ29sb3JTcGFjZVtOU0NvbG9yTmFtZV1OU0NhdGFsb2dOYW1lgEyAS4BKgElWU3lz +dGVtXGNvbnRyb2xDb2xvctMADgGEAY4BhwGQAZFXTlNXaGl0ZYBMEANLMC42NjY2NjY2OQDSADcAOAGT +AYOiAYMAO9UADgGDAYQBhQGGAYcBlgEpAZcBioBMgE+AToBJXxAQY29udHJvbFRleHRDb2xvctMADgGE +AY4BhwGQAZyATEIwANIANwA4AZ4Bn6QBnwCxAFwAO18QD05TVGV4dEZpZWxkQ2VsbNIANwA4AaEBoqUB +ogE2ATcBOAA7W05TVGV4dEZpZWxkWXs1MzUsIDM2fdIANwA4AaUBpqQBpgE3ATgAO1xOU0N1c3RvbVZp +ZXdUdmlld9QADgBRAFIAUwC7AB8AVQC+gDmAAoAKgDjUAA4AUQBSAFMAVAC9AB8BsYAegCCAAoBZXxAP +Y29tcGFyYXRvclBvcFVw1AAOAFEAUgBTALsAHwFFAbeAOYACgDyAW18QEWRpc2FibGVDb25kaXRpb246 +1AAOAFEAUgBTAFQBRQAfAb2AHoA8gAKAXV1kaXNhYmxlQnV0dG9u1AAOAFEBwAHBAcIBRQHEAcVYTlNN +YXJrZXJWTlNGaWxlgGGAPIBggF9fEBBOU1Rvb2xUaXBIZWxwS2V5XxAXRGlzYWJsZSB0aGlzIGNvbmRp +dGlvbi7SADcAOAHJAcqiAcoAO18QEU5TSUJIZWxwQ29ubmVjdG9y0gAOAD4BzAHNgGWtAN8BSAFNAOUB +HgHTAL0AYQBVAUUAZQDDAXGAJYBEgD6AJoAygGOAIIANgAqAPIAQgCKARtIADgAyADMB3YAEgGRdTlNB +cHBsaWNhdGlvbtIANwA4AeAAraIArQA70gAOAD4BzAHjgGWtAOUAYQFFAMMA5QAfAGEAHwBhAGEAVQC9 +AUiAJoANgDyAIoAmgAKADYACgA2ADYAKgCCARNIADgA+AcwB84BlrgDfAUgBTQAfAOUBHgHTAL0AYQBV +AUUBcQDDAGWAJYBEgD6AAoAmgDKAY4AggA2ACoA8gEaAIoAQ0gAOAD4BzAIEgGWuAgUCBgIHAggCCQIK +AgsCDAINAg4CDwIQAhECEoBpgGqAa4BsgG2AboBvgHCAcYBygHOAdIB1gHZfEBlNZW51IEl0ZW0gKERv +ZXMgbm90IEhhdmUpXxAmU3RhdGljIFRleHQgKGEgdGVtcG9yYXJ5IGVuY2hhbnRtZW50LilfECRCdXR0 +b24gQ2VsbCAoTlNTdG9wUHJvZ3Jlc3NUZW1wbGF0ZSlcRmlsZSdzIE93bmVyXxARTWVudSAoT3RoZXJW +aWV3cylfEA9NZW51IEl0ZW0gKEhhcylbQXBwbGljYXRpb25fEBxQb3B1cCBCdXR0b24gKERvZXMgbm90 +IEhhdmUpW0N1c3RvbSBWaWV3XxAYQmV0dGVyIFNlZ21lbnRlZCBDb250cm9sXxAoUmVjZXNzZWQgQnV0 +dG9uIChOU1N0b3BQcm9ncmVzc1RlbXBsYXRlKV8QKlRleHQgRmllbGQgQ2VsbCAoYSB0ZW1wb3Jhcnkg +ZW5jaGFudG1lbnQuKV8QIlBvcCBVcCBCdXR0b24gQ2VsbCAoRG9lcyBub3QgSGF2ZSleU2VnbWVudGVk +IENlbGzSAA4APgHMAiOAZaEAVYAK0gAOAD4BzAIngGWhAGmAC9IADgA+AcwCK4BlrxAWAEgASgDfAUgB +TQAfAEsA5QBMAE0ATgEeAdMAvQBVAGEBRQBPAEkAZQDDAXGACYA6gCWARIA+gAKAV4AmgFiAWoBcgDKA +Y4AggAqADYA8gF6AH4AQgCKARtIADgA+AcwCRIBlrxAWAkUCRgJHAkgCSQJKAksCTAJNAk4CTwJQAlEC +UgJTAlQCVQJWAlcCWAJZAlqAe4B8gH2AfoB/gICAgYCCgIOAhICFgIaAh4CIgImAioCLgIyAjYCOgI+A +kBApECMQHhAgEBUQKhAnEBwQJBAmECUQHRP//////////RAaEBgQDxArECgQGRAbECHSAA4APgBGAnKA +GqDSAA4APgHMAnWAZaDSAA4APgHMAniAZaDSADcAOAJ6AnuiAnsAO15OU0lCT2JqZWN0RGF0YQAIABkA +IgAnADEAOgA/AEQAUgBUAGYBkwGZAeQB6wHyAgACEgIuAjwCSAJUAmICbQJ7ApcCpQK4AsoC5ALuAvsC +/QL/AwEDAwMFAwcDCQMLAw0DDwMRAxMDFQMXAxkDGwMdAx8DKAM0AzYDOANZA2IDawN2A3sDigOTA6YD +rwO6A7wDvQPGA80D2gPgA+kD6wP8A/4EAAQCBAQEBgQIBAoEDAQdBCsENAQ8BD4EQARCBEQEbQR/BIcE +nQSkBK0EtwTABMwEzgTQBNIE1ATWBNkE2gTcBN4E4AT5BQ4FLwU6BUYFSAVKBUwFTgVQBVIFVAVrBYgF +lAWjBa0FuwXIBdoF4wXlBecF6QXrBe0F7wYABgcGDgYXBhkGIgYkBiYGMwY8BkEGSAZRBlMGWAZaBlwG +dQaRBqYGuwbOBuYG6AbxBvMG9Ab+BwcHDAcaBy8HMQczBzUHPgdHB04HXQdlB24HdweJB5YHnwekB7MH +wgfLB9IH6Qf4CAkICwgNCA8IEQgyCDQINgg4CDoIOwg9CD8IVwimCMMI1QjrCQAJDwkhCSwJPglTCWEJ +cwl6CYgJmgmjCaQJpgmoCaoJrAmuCbAJsgm0CbUJtgm5CbwJvgnDCdQJ1gnYCdsJ3AoNChYKHgoyCj0K +SwpVCmIKawpxCnkKewp9Cn8KhAqGCosKjQqPCpEKkwqVCqIKrgqwCrIKtArCCs8K3grgCuIK5ArsCv4L +BwsMCx8LLAsuCzALMgtFC1kLYgtnC3ILewt9C4ILhAuGC7MLtQu3C7kLuwu9C78LwQvDC8ULyQvSC9cL +4AvtDAEMEAwdDCYMMwxBDEoMVAxbDGcMdgx/DIYMngyvDLEMswy1DLcMwAzCDMsMzQzPDNEM0wz0DPYM ++Az6DPwM/Qz/DQENFg1LDVkNZA1pDWsNbQ1vDXENcw11DXcNeQ1+DYcNmA2aDaMNpQ2yDbQNtg24DdEN +2g3jDewN9w4YDhoOHA4eDiAOIQ4jDiUOPg5fDnMOfw6EDoYOiA6KDowOjg6TDpUOsA7FDs0O2g7mDvQO +9g74DvoO/A8DDxAPHQ8lDycPKQ81Dz4PQw9YD1oPXA9eD2APcw+AD4IPhQ+OD5cPqQ+yD70PyQ/TD9wP +5Q/yD/cQCBAKEAwQDhAQECEQIxAlECcQKRA7EEwQThBQEFIQVBBoEHkQexB9EH8QgRCPEKAQqRCwELIQ +tBC2ELgQyxDlEO4Q8xEHERAREhEtES8RMREzETURNxE5ETsRPRE/EUERQxFFEUcRUBFSEVQRYhFrEXAR +eRF7EZYRmBGaEZwRnhGgEaIRpBGmEagRqhGsEa4RsBG5EbsR2BHaEdwR3hHgEeIR5BHmEegR6hHsEe4R +8BHyEfQR/RH/EhwSHhIgEiISJBImEigSKhIsEi4SMBIyEjQSNhI4ElQSfRKkErESxRLXEuMTAhMOEykT +VBOBE6YTtRO+E8ATwxPFE84T0BPTE9UT3hPgFA8UERQTFBUUFxQZFBsUHRQfFCEUIxQlFCcUKRQrFC0U +LxQxFDMUNRQ3FDkUOxREFEYUdRR3FHkUexR9FH8UgRSDFIUUhxSJFIsUjRSPFJEUkxSVFJcUmRSbFJ0U +nxShFKMUpRSnFKkUqxStFK8UsRSzFLUUtxS5FMIUxBTGFMgUyhTMFM4U0BTSFNsU3RTeFOcU6RTqFPMU +9RT2FP8VBAAAAAAAAAICAAAAAAAAAnwAAAAAAAAAAAAAAAAAABUTA</bytes> + </object> + </data> +</archive> diff --git a/TempEnchantConditionController.h b/TempEnchantConditionController.h new file mode 100644 index 0000000..1050ed7 --- /dev/null +++ b/TempEnchantConditionController.h @@ -0,0 +1,18 @@ +// +// TempEnchantConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 7/20/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" +@class BetterSegmentedControl; + +@interface TempEnchantConditionController : ConditionController { + IBOutlet BetterSegmentedControl *qualitySegment; + IBOutlet NSPopUpButton *comparatorPopUp; +} + +@end diff --git a/TempEnchantConditionController.m b/TempEnchantConditionController.m new file mode 100644 index 0000000..745d662 --- /dev/null +++ b/TempEnchantConditionController.m @@ -0,0 +1,60 @@ +// +// TempEnchantConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 7/20/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "TempEnchantConditionController.h" + + +@implementation TempEnchantConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"TempEnchantCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading TempEnchantCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyTempEnchant + unit: UnitPlayer + quality: [qualitySegment selectedTag] + comparator: [[comparatorPopUp selectedItem] tag] + state: StateNone + type: TypeNone + value: nil]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyTempEnchant) return; + + [qualitySegment selectSegmentWithTag: [condition quality]]; + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareDoesNotExist]; + } + + [self validateState: nil]; +} + +@end diff --git a/ToolCommon.c b/ToolCommon.c new file mode 100755 index 0000000..a1b4037 --- /dev/null +++ b/ToolCommon.c @@ -0,0 +1,96 @@ +/* + File: SampleCommon.c + + Contains: Sample-specific code common to the app and the tool. + + Written by: DTS + + Copyright: Copyright (c) 2007 Apple Inc. All Rights Reserved. + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple, Inc. + ("Apple") in consideration of your agreement to the following terms, and your + use, installation, modification or redistribution of this Apple software + constitutes acceptance of these terms. If you do not agree with these terms, + please do not use, install, modify or redistribute this Apple software. + + In consideration of your agreement to abide by the following terms, and subject + to these terms, Apple grants you a personal, non-exclusive license, under Apple's + copyrights in this original Apple software (the "Apple Software"), to use, + reproduce, modify and redistribute the Apple Software, with or without + modifications, in source and/or binary forms; provided that if you redistribute + the Apple Software in its entirety and without modifications, you must retain + this notice and the following text and disclaimers in all such redistributions of + the Apple Software. Neither the name, trademarks, service marks or logos of + Apple, Inc. may be used to endorse or promote products derived from the + Apple Software without specific prior written permission from Apple. Except as + expressly stated in this notice, no other rights or licenses, express or implied, + are granted by Apple herein, including but not limited to any patent rights that + may be infringed by your derivative works or by other works in which the Apple + Software may be incorporated. + + The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO + WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED + WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN + COMBINATION WITH YOUR PRODUCTS. + + IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION + OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT + (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#include "ToolCommon.h" + +/* + I originally generated the "SampleAuthorizationPrompts.strings" file by running + the following command in Terminal. genstrings doesn't notice that the + CFCopyLocalizedStringFromTableInBundle is commented out, which is good for + my purposes. + + $ genstrings SampleCommon.c -o en.lproj + + CFCopyLocalizedStringFromTableInBundle(CFSTR("GetUIDsPrompt"), "SampleAuthorizationPrompts", b, "prompt included in authorization dialog for the GetUIDs command") + CFCopyLocalizedStringFromTableInBundle(CFSTR("LowNumberedPortsPrompt"), "SampleAuthorizationPrompts", b, "prompt included in authorization dialog for the LowNumberedPorts command") +*/ + +/* + IMPORTANT + --------- + This array must be exactly parallel to the kCommandProcs array + in "SampleTool.c". +*/ + +const BASCommandSpec kCommandSet[] = { + { kGetVersionCommand, // commandName + NULL, // rightName -- never authorize + NULL, // rightDefaultRule -- not applicable if rightName is NULL + NULL, // rightDescriptionKey -- not applicable if rightName is NULL + NULL // userData + }, + + { kLoadMemoryCommand, // commandName + NULL, // rightName + "default", // rightDefaultRule -- by default, anyone can acquire this right + NULL, // rightDescriptionKey -- key for custom prompt in "SampleAuthorizationPrompts.strings + NULL // userData + }, + + { kSaveMemoryCommand, // commandName + NULL, // rightName + "default", // rightDefaultRule -- by default, you have to have admin credentials (see the "default" rule in the authorization policy database, currently "/etc/authorization") + NULL, // rightDescriptionKey -- key for custom prompt in "SampleAuthorizationPrompts.strings + NULL // userData + }, + + { NULL, // the array is null terminated + NULL, + NULL, + NULL, + NULL + } +}; diff --git a/ToolCommon.h b/ToolCommon.h new file mode 100755 index 0000000..0fb7057 --- /dev/null +++ b/ToolCommon.h @@ -0,0 +1,98 @@ +/* + File: SampleCommon.h + + Contains: Sample-specific declarations common to the app and the tool. + + Written by: DTS + + Copyright: Copyright (c) 2007 Apple Inc. All Rights Reserved. + + Disclaimer: IMPORTANT: This Apple software is supplied to you by Apple, Inc. + ("Apple") in consideration of your agreement to the following terms, and your + use, installation, modification or redistribution of this Apple software + constitutes acceptance of these terms. If you do not agree with these terms, + please do not use, install, modify or redistribute this Apple software. + + In consideration of your agreement to abide by the following terms, and subject + to these terms, Apple grants you a personal, non-exclusive license, under Apple's + copyrights in this original Apple software (the "Apple Software"), to use, + reproduce, modify and redistribute the Apple Software, with or without + modifications, in source and/or binary forms; provided that if you redistribute + the Apple Software in its entirety and without modifications, you must retain + this notice and the following text and disclaimers in all such redistributions of + the Apple Software. Neither the name, trademarks, service marks or logos of + Apple, Inc. may be used to endorse or promote products derived from the + Apple Software without specific prior written permission from Apple. Except as + expressly stated in this notice, no other rights or licenses, express or implied, + are granted by Apple herein, including but not limited to any patent rights that + may be infringed by your derivative works or by other works in which the Apple + Software may be incorporated. + + The Apple Software is provided by Apple on an "AS IS" basis. APPLE MAKES NO + WARRANTIES, EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED + WARRANTIES OF NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + PURPOSE, REGARDING THE APPLE SOFTWARE OR ITS USE AND OPERATION ALONE OR IN + COMBINATION WITH YOUR PRODUCTS. + + IN NO EVENT SHALL APPLE BE LIABLE FOR ANY SPECIAL, INDIRECT, INCIDENTAL OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE + GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + ARISING IN ANY WAY OUT OF THE USE, REPRODUCTION, MODIFICATION AND/OR DISTRIBUTION + OF THE APPLE SOFTWARE, HOWEVER CAUSED AND WHETHER UNDER THEORY OF CONTRACT, TORT + (INCLUDING NEGLIGENCE), STRICT LIABILITY OR OTHERWISE, EVEN IF APPLE HAS BEEN + ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +*/ + +#ifndef _SAMPLECOMMON_H +#define _SAMPLECOMMON_H + +#include "BetterAuthorizationSampleLib.h" + +#define kToolCurrentVersion 15 + +typedef enum { + kMemToolNoError, + kMemToolBadPID, + kMemToolBadAddress, + kMemToolBadLength, + kMemToolBadContents, + kMemToolBadParameter, + kMemToolUnknown, +} MemoryToolFailCode; + +// "GetVersion" gets the version of the helper tool. This never requires authorization. +#define kGetVersionCommand "GetVersion" + // authorization right name (none) + // request keys (none) + // response keys + #define kGetVersionResponse "Version" // CFNumber + + +#define kLoadMemoryCommand "LoadMemory" + // authorization right name (none) + // request keys + #define kWarcraftPID "WarcraftPID" // CFNumber + #define kMemoryAddress "MemoryAddress" // CFNumber + #define kMemoryLength "MemoryLength" // CFNumber + // response keys + #define kLoadSuccess "LoadSuccess" // CFNumber + #define kMemoryContents "MemoryContents" // CFData + + +#define kSaveMemoryCommand "SaveMemory" + // authorization right name (none) + // request keys (defined above) + // kWarcraftPID + // kMemoryAddress + // kMemoryContents + + // response keys + #define kSaveSuccess "SaveSuccess" // CFNumber + +// The kCommandSet is used by both the app and the tool to communicate the set of +// supported commands to the BetterAuthorizationSampleLib module. + +extern const BASCommandSpec kCommandSet[]; + +#endif diff --git a/TotemCondition.xib b/TotemCondition.xib new file mode 100644 index 0000000..0876f76 --- /dev/null +++ b/TotemCondition.xib @@ -0,0 +1,731 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.01"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">9E17</string> + <string key="IBDocument.InterfaceBuilderVersion">629</string> + <string key="IBDocument.AppKitVersion">949.33</string> + <string key="IBDocument.HIToolboxVersion">352.00</string> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="1"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string id="1032693270">com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">TotemConditionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="1005"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSPopUpButton" id="934296039"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{402, 4}, {137, 26}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="75418578"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <object class="NSFont" key="NSSupport" id="446447994"> + <string key="NSName" id="80099265">LucidaGrande</string> + <double key="NSSize">1.300000e+01</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="934296039"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">1</int> + <string key="NSAlternateContents" id="438094595"/> + <reference key="NSKeyEquivalent" ref="438094595"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="134830617"> + <reference key="NSMenu" ref="331001913"/> + <string key="NSTitle">Exists</string> + <reference key="NSKeyEquiv" ref="438094595"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSOnImage" id="976259455"> + <string key="NSClassName" id="819917477">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="253090109"> + <reference key="NSClassName" ref="819917477"/> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">6</int> + <reference key="NSTarget" ref="75418578"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="331001913"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="134830617"/> + <object class="NSMenuItem" id="720260933"> + <reference key="NSMenu" ref="331001913"/> + <string key="NSTitle">Does Not Exist</string> + <reference key="NSKeyEquiv" ref="438094595"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="976259455"/> + <reference key="NSMixedImage" ref="253090109"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">7</int> + <reference key="NSTarget" ref="75418578"/> + </object> + </object> + </object> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSButton" id="702717786"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 8}, {20, 19}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="359458092"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <reference key="NSContents" ref="438094595"/> + <object class="NSFont" key="NSSupport"> + <reference key="NSName" ref="80099265"/> + <double key="NSSize">1.200000e+01</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="702717786"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <reference key="NSClassName" ref="819917477"/> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <reference key="NSAlternateContents" ref="438094595"/> + <reference key="NSKeyEquivalent" ref="438094595"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + <object class="NSTextField" id="614850059"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 10}, {140, 17}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="743519935"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string type="base64-UTF8" key="NSContents">UGxheWVyJ3MgdG90ZW0gbmFtZWQ</string> + <reference key="NSSupport" ref="446447994"/> + <reference key="NSControlView" ref="614850059"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName" id="441141116">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2OQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <reference key="NSCatalogName" ref="441141116"/> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor" id="588135257"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSTextField" id="839836151"> + <reference key="NSNextResponder" ref="1005"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{177, 7}, {220, 22}}</string> + <reference key="NSSuperview" ref="1005"/> + <reference key="NSWindow"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="546236147"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">138413056</int> + <reference key="NSContents" ref="438094595"/> + <reference key="NSSupport" ref="446447994"/> + <string key="NSPlaceholderString">Name of Totem</string> + <reference key="NSControlView" ref="839836151"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <reference key="NSCatalogName" ref="441141116"/> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <reference key="NSCatalogName" ref="441141116"/> + <string key="NSColorName">textColor</string> + <reference key="NSColor" ref="588135257"/> + </object> + </object> + </object> + </object> + <string key="NSFrameSize">{543, 36}</string> + <reference key="NSSuperview"/> + <reference key="NSWindow"/> + <string key="NSClassName" id="834145539">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label" id="764043073">disableCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="702717786"/> + </object> + <int key="connectionID">29</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="435182265">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="702717786"/> + </object> + <int key="connectionID">30</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="845427853">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1005"/> + </object> + <int key="connectionID">31</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label" id="620282733">validateState:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="934296039"/> + </object> + <int key="connectionID">32</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <reference key="label" ref="620282733"/> + <reference key="source" ref="1001"/> + <reference key="destination" ref="839836151"/> + </object> + <int key="connectionID">33</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="379587680">valueText</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="839836151"/> + </object> + <int key="connectionID">34</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label" id="994036401">comparatorPopUp</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="934296039"/> + </object> + <int key="connectionID">35</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <object class="NSArray" key="object" id="1002"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="1002"/> + <string type="base64-UTF8" key="objectName">RmlsZSdzIE93bmVyA</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="1002"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="1002"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">1</int> + <reference key="object" ref="1005"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="934296039"/> + <reference ref="702717786"/> + <reference ref="614850059"/> + <reference ref="839836151"/> + </object> + <reference key="parent" ref="1002"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="934296039"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="75418578"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">3</int> + <reference key="object" ref="702717786"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="359458092"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">4</int> + <reference key="object" ref="614850059"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="743519935"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">7</int> + <reference key="object" ref="839836151"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="546236147"/> + </object> + <reference key="parent" ref="1005"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">10</int> + <reference key="object" ref="546236147"/> + <reference key="parent" ref="839836151"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">14</int> + <reference key="object" ref="743519935"/> + <reference key="parent" ref="614850059"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">15</int> + <reference key="object" ref="359458092"/> + <reference key="parent" ref="702717786"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">16</int> + <reference key="object" ref="75418578"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="331001913"/> + </object> + <reference key="parent" ref="934296039"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">17</int> + <reference key="object" ref="331001913"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="134830617"/> + <reference ref="720260933"/> + </object> + <reference key="parent" ref="75418578"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">18</int> + <reference key="object" ref="134830617"/> + <reference key="parent" ref="331001913"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">19</int> + <reference key="object" ref="720260933"/> + <reference key="parent" ref="331001913"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>1.IBPluginDependency</string> + <string>1.WindowOrigin</string> + <string>1.editorWindowContentRectSynchronizationRect</string> + <string>10.IBPluginDependency</string> + <string>14.IBPluginDependency</string> + <string>15.IBPluginDependency</string> + <string>16.IBPluginDependency</string> + <string>17.IBPluginDependency</string> + <string>17.editorWindowContentRectSynchronizationRect</string> + <string>18.IBAttributePlaceholdersKey</string> + <string>18.IBPluginDependency</string> + <string>19.IBAttributePlaceholdersKey</string> + <string>19.IBPluginDependency</string> + <string>2.IBPluginDependency</string> + <string>3.IBAttributePlaceholdersKey</string> + <string>3.IBPluginDependency</string> + <string>4.IBPluginDependency</string> + <string>7.IBAttributePlaceholdersKey</string> + <string>7.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <string>{628, 654}</string> + <string>{{194, 425}, {543, 36}}</string> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <string>{{545, 400}, {169, 43}}</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0" id="698436957">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <reference key="name" ref="698436957"/> + <reference key="object" ref="134830617"/> + <string key="toolTip">More Than</string> + </object> + </object> + <reference ref="1032693270"/> + <object class="NSMutableDictionary"> + <reference key="NS.key.0" ref="698436957"/> + <object class="IBToolTipAttribute" key="NS.object.0"> + <reference key="name" ref="698436957"/> + <reference key="object" ref="720260933"/> + <string key="toolTip">The same number</string> + </object> + </object> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <object class="NSMutableDictionary"> + <reference key="NS.key.0" ref="698436957"/> + <object class="IBToolTipAttribute" key="NS.object.0"> + <reference key="name" ref="698436957"/> + <reference key="object" ref="702717786"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <reference ref="1032693270"/> + <reference ref="1032693270"/> + <object class="NSMutableDictionary"> + <string key="NS.key.0" id="783167434">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <reference key="name" ref="783167434"/> + <reference key="object" ref="839836151"/> + <string type="base64-UTF8" key="toolTip">VG90ZW0gbmFtZSBpcyBjYXNlLWluc2Vuc2l0aXZlIGFuZCB3aWxsIG1hdGNoIHBhcnRpYWwgbmFtZXMg +KGVnLCAiU3RyRW5nVGggb2YgRUFSIiB3aWxsIG1hdGNoIHRvdGVtICJTdHJlbmd0aCBvZiBFYXJ0aCBJ +ViIpA</string> + </object> + </object> + <reference ref="1032693270"/> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">35</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">TotemConditionController</string> + <string key="superclassName">ConditionController</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="994036401"/> + <reference ref="379587680"/> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>NSTextField</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey" id="159055303">IBProjectSource</string> + <string key="minorKey">TotemConditionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className" id="402654425">NSObject</string> + <nil key="superclassName"/> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="159055303"/> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <reference key="className" ref="402654425"/> + <nil key="superclassName"/> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="159055303"/> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ConditionController</string> + <reference key="superclassName" ref="402654425"/> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="764043073"/> + <reference ref="620282733"/> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string id="344564663">id</string> + <reference ref="344564663"/> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSMutableArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <reference ref="435182265"/> + <reference ref="845427853"/> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="344564663"/> + <string>NSButton</string> + <reference ref="834145539"/> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <reference key="majorKey" ref="159055303"/> + <string key="minorKey">ConditionController.h</string> + </object> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <string key="IBDocument.LastKnownRelativeProjectPath">../WoWWaypoint.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + <object class="NSMutableData" key="IBDocument.RunnableNib"> + <bytes key="NS.bytes">YnBsaXN0MDDUAAEAAgADAAQABQAGAAkAClgkdmVyc2lvblQkdG9wWSRhcmNoaXZlclgkb2JqZWN0cxIA +AYag0QAHAAhdSUIub2JqZWN0ZGF0YYABXxAPTlNLZXllZEFyY2hpdmVyrxCZAAsADAAxADUANgA8AD0A +QQBFAFMAWwBrAHUACwB2AJkAoQCiAKUApgC8AMEAwgDHAMgAyQDMANAA0QDSANQA1QDaAOQA0QDlAOkA +6wDxAPgA+QD9AQIBAwEGAQsBEwEUASUBJgEvATABMQE2ATgBPQE+AUEBRAFHAUgBTQFVAVYBYwFoAWwB +bQFvAXEBcgF3AXgBfQGCAYkBkQGSAZsBnAGhAaIBpQGqAasACwD2AawBrwGwAbcBuAG5AbwBwQHCAccB +yAHNAc4B3gHhAeIB5AH0AgUCFgIXAhgCGQIaAhsCHAIdAh4CHwIgAiECIgIjAiQCJwIqAkYCYgJjAI4A +igJkAmUCZgJnAmgCaQJqAmsCbAJtAm4CbwJwAOMCcQFnAnICcwE0AnQCdQJ2AnkCfAJ/VSRudWxs3xAS +AA0ADgAPABAAEQASABMAFAAVABYAFwAYABkAGgAbABwAHQAeAB8AIAAhACIAIwAkACUAJgAnACgAKQAq +ACsALAAtAC4ALwAwVk5TUm9vdFYkY2xhc3NdTlNPYmplY3RzS2V5c18QD05TQ2xhc3Nlc1ZhbHVlc18Q +GU5TQWNjZXNzaWJpbGl0eU9pZHNWYWx1ZXNdTlNDb25uZWN0aW9uc1tOU05hbWVzS2V5c1tOU0ZyYW1l +d29ya11OU0NsYXNzZXNLZXlzWk5TT2lkc0tleXNdTlNOYW1lc1ZhbHVlc18QGU5TQWNjZXNzaWJpbGl0 +eUNvbm5lY3RvcnNdTlNGb250TWFuYWdlcl8QEE5TVmlzaWJsZVdpbmRvd3NfEA9OU09iamVjdHNWYWx1 +ZXNfEBdOU0FjY2Vzc2liaWxpdHlPaWRzS2V5c1lOU05leHRPaWRcTlNPaWRzVmFsdWVzgAKAmIBjgHmA +l4AIgGiABYB4gHqAaYCVgACABoBngJYQKYB70gAOADIAMwA0W05TQ2xhc3NOYW1lgASAA18QGFRvdGVt +Q29uZGl0aW9uQ29udHJvbGxlctIANwA4ADkAOlgkY2xhc3Nlc1okY2xhc3NuYW1logA6ADteTlNDdXN0 +b21PYmplY3RYTlNPYmplY3RfEBBJQkNvY29hRnJhbWV3b3Jr0gAOAD4APwBAWk5TLm9iamVjdHOAB6DS +ADcAOABCAEOjAEMARAA7XE5TTXV0YWJsZVNldFVOU1NldNIADgA+AEYAR4AjqwBIAEkASgBLAEwATQBO +AE8AUABRAFKACYApgCyAPIBGgEiASYBZgF2AX4Bh1AAOAFQAVQBWAFcAHwBZAFpdTlNEZXN0aW5hdGlv +blhOU1NvdXJjZVdOU0xhYmVsgCiAAoAKgCfYAFwADgBdAF4AXwBgAGEAYgBjAGQAZQBmAGcAaABpAGNf +EA9OU05leHRSZXNwb25kZXJXTlNGcmFtZVZOU0NlbGxYTlN2RmxhZ3NZTlNFbmFibGVkWE5TV2luZG93 +W05TU3VwZXJ2aWV3gAuAJoAMgA4RAQwJgA2AC9gAXAAOAGwAXwBtAGEAMgBiAGkAbwBwAGcAcQBpAHMA +dFpOU1N1YnZpZXdzW05TRnJhbWVTaXplgA2AV4BKgFSADYBWgFVfEBV7ezQwMiwgNH0sIHsxMzcsIDI2 +fX3fEBIAdwB4AHkAegB7AA4AfAB9AH4AfwCAAIEAggCDAIQAhQCGAIcAiABoAIoAiwCMAI0AjgCLAJAA +kQBZAI4AaABoAJUAlgCXAJhbTlNDZWxsRmxhZ3NfEBpOU01lbnVJdGVtUmVzcGVjdEFsaWdubWVudF8Q +D05TQXJyb3dQb3NpdGlvbl8QE05TQWx0ZXJuYXRlQ29udGVudHNfEBJOU1BlcmlvZGljSW50ZXJ2YWxe +TlNCdXR0b25GbGFnczJfEA9OU0tleUVxdWl2YWxlbnRZTlNTdXBwb3J0Wk5TTWVudUl0ZW1dTlNDb250 +cm9sVmlld18QD05TUHJlZmVycmVkRWRnZV8QEk5TVXNlc0l0ZW1Gcm9tTWVudV1OU0FsdGVyc1N0YXRl +XxAPTlNQZXJpb2RpY0RlbGF5XE5TQ2VsbEZsYWdzMlZOU01lbnVdTlNCdXR0b25GbGFncxP/////hEH+ +QAkQAoASEEuAJRABgBKAD4ATgAoJCREBkBEIAIAUEgaCQP/UAA4AmgCbAJwAnQCeAJ8AoFZOU1NpemVW +TlNOYW1lWE5TZkZsYWdzgBEjQCoAAAAAAACAEBEEFFxMdWNpZGFHcmFuZGXSADcAOACjAKSiAKQAO1ZO +U0ZvbnRQ3ACnAA4AqACpAKoAqwCsAK0AhgCuAK8AsABmALIAswC0AIsAtgC3ALgAlwC6ALsAjlhOU1Rh +cmdldFdOU1RpdGxlXxARTlNLZXlFcXVpdk1vZE1hc2taTlNLZXlFcXVpdl1OU01uZW1vbmljTG9jWU5T +T25JbWFnZVxOU01peGVkSW1hZ2VYTlNBY3Rpb25VTlNUYWdXTlNTdGF0ZYAOgB2AFRIAEAAAgBISf/// +/4AWgBqAFIAcEAbTAA4AqAC9AL4AvwDAW05TTWVudUl0ZW1zgCSAHoAfVkV4aXN0c9MADgAyAMMAxADF +AMZeTlNSZXNvdXJjZU5hbWWAGYAXgBhXTlNJbWFnZV8QD05TTWVudUNoZWNrbWFya9IANwA4AMoAy6IA +ywA7XxAQTlNDdXN0b21SZXNvdXJjZdMADgAyAMMAxADFAM+AGYAXgBtfEBBOU01lbnVNaXhlZFN0YXRl +XxARX3BvcFVwSXRlbUFjdGlvbjrSADcAOADTAH+iAH8AO1pPdGhlclZpZXdz0gAOAD4ARgDXgCOiAJEA +2YATgCDbAKcADgCoAKkAqgCrAKwArQCGAK4ArwBmALIA3QC0AIsAtgC3ALgAlwDiAOOADoAdgCGAEoAW +gBqAFIAiEAdeRG9lcyBOb3QgRXhpc3TSADcAOADmAOejAOcA6AA7Xk5TTXV0YWJsZUFycmF5V05TQXJy +YXnSADcAOADqAIaiAIYAO9IANwA4AOwA7aYA7QDuAO8A8ABeADtfEBFOU1BvcFVwQnV0dG9uQ2VsbF5O +U01lbnVJdGVtQ2VsbFxOU0J1dHRvbkNlbGxcTlNBY3Rpb25DZWxs0gA3ADgA8gDzpgDzAPQA9QD2APcA +O11OU1BvcFVwQnV0dG9uWE5TQnV0dG9uWU5TQ29udHJvbFZOU1ZpZXdbTlNSZXNwb25kZXJedmFsaWRh +dGVTdGF0ZTrSADcAOAD6APujAPsA/AA7XxAVTlNOaWJDb250cm9sQ29ubmVjdG9yXk5TTmliQ29ubmVj +dG9y1AAOAFQAVQBWAP4AWQAfAQGAK4AKgAKAKl8QD2NvbXBhcmF0b3JQb3BVcNIANwA4AQQBBaMBBQD8 +ADtfEBROU05pYk91dGxldENvbm5lY3RvctQADgBUAFUAVgD+AQgAHwEKgCuALYACgDvYAFwADgBdAF4A +XwBgAGEAYgBjAQ0BDgEPAGcAaABpAGOAC4A6gC6ALwmADYALXxAVe3sxNzcsIDd9LCB7MjIwLCAyMn19 +2wB3AA4BFQEWAH4AgACFARcBGAEZARoBGwEcAR0AiwCQAQgBIQCOAGgBIwEkXxARTlNCYWNrZ3JvdW5k +Q29sb3JaTlNDb250ZW50c18QEE5TVGV4dEJlemVsU3R5bGVfEBFOU0RyYXdzQmFja2dyb3VuZF8QE05T +UGxhY2Vob2xkZXJTdHJpbmdbTlNUZXh0Q29sb3IT/////5Rx/kGAOYAxgBKAD4AtEghABAAJgDCANl1O +YW1lIG9mIFRvdGVt1QAOAScBKAEpASoBKwEsALsBLQEuV05TQ29sb3JcTlNDb2xvclNwYWNlW05TQ29s +b3JOYW1lXU5TQ2F0YWxvZ05hbWWANYA0gDOAMlZTeXN0ZW1fEBN0ZXh0QmFja2dyb3VuZENvbG9y0wAO +ASgBMgErATQBNVdOU1doaXRlgDUQA0IxANIANwA4ATcBJ6IBJwA71QAOAScBKAEpASoBKwE6ALsBOwEu +gDWAOIA3gDJZdGV4dENvbG9y0wAOASgBMgErATQBQIA1QjAA0gA3ADgBQgFDpAFDAPAAXgA7XxAPTlNU +ZXh0RmllbGRDZWxs0gA3ADgBRQFGpQFGAPUA9gD3ADtbTlNUZXh0RmllbGRZdmFsdWVUZXh01AAOAFQA +VQBWAFcAHwFLAUyAKIACgD2ARdgAXAAOAF0AXgBfAGAAYQBiAGMBTwFQAVEAZwBoAGkAY4ALgESAPoA/ +CYANgAtfEBJ7ezcsIDh9LCB7MjAsIDE5fX3dAHcADgB6AVcAewB8AH0BFgB+AIAAhACFAIcBWAFZAIsB +WwCMAVwAiwCLAV8BSwCVAWEBYl1OU05vcm1hbEltYWdlEgQB/gCAQ4ASgEEQrYASgBKAQIA9EggAAAAT +/////7b0QP/UAA4AmgCbAJwAnQFlAJ8BZ4ARI0AoAAAAAAAAgBAQENMADgAyAMMAxADFAWuAGYAXgEJf +EBZOU1N0b3BQcm9ncmVzc1RlbXBsYXRl0gA3ADgBbgDvpADvAPAAXgA70gA3ADgBcAD0pQD0APUA9gD3 +ADtfEBFkaXNhYmxlQ29uZGl0aW9uOtQADgBUAFUAVgD+AUsAHwF2gCuAPYACgEddZGlzYWJsZUJ1dHRv +btQADgBUAFUAVgBXAB8BCABagCiAAoAtgCfUAA4AVABVAFYA/gBjAB8BgYArgAuAAoBY0gAOAD4ARgGE +gCOkAFkBSwGHAQiACoA9gEuALdgAXAAOAF0AXgBfAGAAYQBiAGMBDQGMAY0AZwBoAGkAY4ALgDqATIBN +CYANgAtfEBV7ezMyLCAxMH0sIHsxNDAsIDE3fX3YAHcADgEVARYAfgCAAIUBGgGTARwBlQGWAJABhwGZ +AZoSBAH+QIA5gE+AToAPgEsSEEAEAIBSXxAUUGxheWVyJ3MgdG90ZW0gbmFtZWTVAA4BJwEoASkBKgEr +AZ4AuwGfAS6ANYBRgFCAMlxjb250cm9sQ29sb3LTAA4BKAEyASsBNAGkgDVLMC42NjY2NjY2OQDVAA4B +JwEoASkBKgErAToAuwGoAS6ANYA4gFOAMl8QEGNvbnRyb2xUZXh0Q29sb3JZezU0MywgMzZ90gA3ADgB +rQGupAGuAPYA9wA7XE5TQ3VzdG9tVmlld1R2aWV31AAOAFQBsQGyAbMBSwG1AbZYTlNNYXJrZXJWTlNG +aWxlgFyAPYBbgFpfEBBOU1Rvb2xUaXBIZWxwS2V5XxAXRGlzYWJsZSB0aGlzIGNvbmRpdGlvbi7SADcA +OAG6AbuiAbsAO18QEU5TSUJIZWxwQ29ubmVjdG9y1AAOAFQBsQGyAbMBCAG/AbaAXIAtgF6AWl8Qe1Rv +dGVtIG5hbWUgaXMgY2FzZS1pbnNlbnNpdGl2ZSBhbmQgd2lsbCBtYXRjaCBwYXJ0aWFsIG5hbWVzIChl +ZywgIlN0ckVuZ1RoIG9mIEVBUiIgd2lsbCBtYXRjaCB0b3RlbSAiU3RyZW5ndGggb2YgRWFydGggSVYi +KdQADgBUAbEBsgGzAJEBxQG2gFyAE4BggFpZTW9yZSBUaGFu1AAOAFQBsQGyAbMA2QHLAbaAXIAggGKA +Wl8QD1RoZSBzYW1lIG51bWJlctIADgA+Ac8B0IBmrQGNAdIAkQEIAGMAWQFRAYcAZgCXAQ8BSwDZgE2A +ZIATgC2AC4AKgD+AS4AOgBSAL4A9gCDSAA4AMgAzAeCABIBlXU5TQXBwbGljYXRpb27SADcAOAHjAOii +AOgAO9IADgA+Ac8B5oBmrQGHAB8AlwBjAB8AYwFLAGMAWQBmAQgAYwCXgEuAAoAUgAuAAoALgD2AC4AK +gA6ALYALgBTSAA4APgHPAfaAZq4BjQHSAJEBCABjAFkBhwFRAB8AZgCXAQ8BSwDZgE2AZIATgC2AC4AK +gEuAP4ACgA6AFIAvgD2AINIADgA+Ac8CB4BmrgIIAgkCCgILAgwCDQIOAg8CEAIRAhICEwIUAhWAaoBr +gGyAbYBugG+AcIBxgHKAc4B0gHWAdoB3XxAmVGV4dCBGaWVsZCBDZWxsIChQbGF5ZXIncyB0b3RlbSBu +YW1lZClbQXBwbGljYXRpb25fEBJNZW51IEl0ZW0gKEV4aXN0cylfEBJSb3VuZGVkIFRleHQgRmllbGRb +Q3VzdG9tIFZpZXdfEBVQb3B1cCBCdXR0b24gKEV4aXN0cylfECJTdGF0aWMgVGV4dCAoUGxheWVyJ3Mg +dG90ZW0gbmFtZWQpXxAkQnV0dG9uIENlbGwgKE5TU3RvcFByb2dyZXNzVGVtcGxhdGUpXEZpbGUncyBP +d25lcl8QG1BvcCBVcCBCdXR0b24gQ2VsbCAoRXhpc3RzKV8QEU1lbnUgKE90aGVyVmlld3MpXxAPVGV4 +dCBGaWVsZCBDZWxsXxAoUmVjZXNzZWQgQnV0dG9uIChOU1N0b3BQcm9ncmVzc1RlbXBsYXRlKV8QGk1l +bnUgSXRlbSAoRG9lcyBOb3QgRXhpc3Qp0gAOAD4BzwImgGag0gAOAD4BzwIpgGag0gAOAD4BzwIsgGav +EBkB0gCRAGMAWQFRAEkAHwBQAJcATQBMANkBjQBSAFEASgBLAQgBhwBmAE8BDwFLAEgAToBkgBOAC4AK +gD+AKYACgF2AFIBIgEaAIIBNgGGAX4AsgDyALYBLgA6AWYAvgD2ACYBJ0gAOAD4BzwJIgGavEBkCSQJK +AksCTAJNAk4CTwJQAlECUgJTAlQCVQJWAlcCWAJZAloCWwJcAl0CXgJfAmACYYB8gH2AfoB/gICAgYCC +gIOAhICFgIaAh4CIgImAioCLgIyAjYCOgI+AkICRgJKAk4CUE//////////9EBIQDxAjECQQJhARECEQ +HhATEA4QKBAnECIQHRAEECUQChAgEB/SAA4APgBGAniAI6DSAA4APgHPAnuAZqDSAA4APgHPAn6AZqDS +ADcAOAKAAoGiAoEAO15OU0lCT2JqZWN0RGF0YQAIABkAIgAnADEAOgA/AEQAUgBUAGYBmwGhAewB8wH6 +AggCGgI2AkQCUAJcAmoCdQKDAp8CrQLAAtIC7AL2AwMDBQMHAwkDCwMNAw8DEQMTAxUDFwMZAxsDHQMf +AyEDIwMlAycDMAM8Az4DQANbA2QDbQN4A30DjAOVA6gDsQO8A74DvwPIA88D3APiA+sD7QQEBAYECAQK +BAwEDgQQBBIEFAQWBBgEGgQrBDkEQgRKBEwETgRQBFIEcwSFBI0ElASdBKcEsAS8BL4EwATCBMQExwTI +BMoEzATtBPgFBAUGBQgFCgUMBQ4FEAUSBSoFdQWBBZ4FsAXGBdsF6gX8BgYGEQYfBjEGRgZUBmYGcwZ6 +BogGkQaSBpQGlgaYBpoGnAaeBqAGogakBqUGpgapBqwGrgazBsQGywbSBtsG3QbmBugG6wb4BwEHBgcN +Bw4HPwdIB1AHZAdvB30HhweUB50HowerB60HrwexB7YHuAe9B78HwQfDB8UHxwfUB+AH4gfkB+YH7Qf6 +CAkICwgNCA8IFwgpCDIINwhKCFcIWQhbCF0IcAiECI0IkgidCKYIqAitCK8IsQjeCOAI4gjkCOYI6Ajq +COwI7gjwCP8JCAkPCR4JJgkvCTQJPQlKCV4JbQl6CYcJkAmdCasJtAm+CcUJ0QngCekJ8AoIChcKKAoq +CiwKLgowCkIKSwpSCmkKegp8Cn4KgAqCCqMKpQqnCqkKqwqsCq4KsArICvULCQsUCycLOwtRC10LZgto +C2oLbAtuC3ALdQt2C3gLeguIC50LpQuyC74LzAvOC9AL0gvUC9sL8Qv+DAYMCAwKDA0MFgwbDDAMMgw0 +DDYMOAxCDE8MUQxUDF0MZgx4DIEMjAyYDKIMswy1DLcMuQy7DNwM3gzgDOIM5AzlDOcM6Qz+DTMNQQ1G +DUgNSg1MDU4NUA1SDVQNVg1bDWQNdQ13DYANgg2EDZENkw2VDZcNsA25DcINyw3WDeoN+w39Df8OAQ4D +DhEOIg4kDiYOKA4qDjsOPQ4/DkEOQw5MDk4OVw5ZDlsOXQ5fDoAOgg6EDoYOiA6JDosOjQ6lDsYOyw7N +Ds8O0Q7TDtUO2g7cDvMPCA8KDwwPDg8QDx0PKg8sDzgPTQ9PD1EPUw9VD2gPcg97D4QPkQ+WD6cPsA+3 +D7kPuw+9D78P0g/sD/UP+hAOEB8QIRAjECUQJxClELYQuBC6ELwQvhDIENkQ2xDdEN8Q4RDzEPwQ/hEZ +ERsRHREfESERIxElEScRKRErES0RLxExETMRPBE+EUARThFXEVwRZRFnEYIRhBGGEYgRihGMEY4RkBGS +EZQRlhGYEZoRnBGlEacRxBHGEcgRyhHMEc4R0BHSEdQR1hHYEdoR3BHeEeAR6RHrEggSChIMEg4SEBIS +EhQSFhIYEhoSHBIeEiASIhIkEk0SWRJuEoMSjxKnEswS8xMAEx4TMhNEE28TjBOVE5cTmBOhE6MTpBOt +E68T5BPmE+gT6hPsE+4T8BPyE/QT9hP4E/oT/BP+FAAUAhQEFAYUCBQKFAwUDhQQFBIUFBQWFB8UIRRW +FFgUWhRcFF4UYBRiFGQUZhRoFGoUbBRuFHAUchR0FHYUeBR6FHwUfhSAFIIUhBSGFIgUkRSTFJUUlxSZ +FJsUnRSfFKEUoxSlFKcUqRSrFK0UrxSxFLMUtRS3FMAUwhTDFMwUzhTPFNgU2hTbFOQU6QAAAAAAAAIC +AAAAAAAAAoIAAAAAAAAAAAAAAAAAABT4A</bytes> + </object> + </data> +</archive> diff --git a/TotemConditionController.h b/TotemConditionController.h new file mode 100644 index 0000000..1d54b72 --- /dev/null +++ b/TotemConditionController.h @@ -0,0 +1,18 @@ +// +// TotemConditionController.h +// Pocket Gnome +// +// Created by Jon Drummond on 7/8/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ConditionController.h" + +@interface TotemConditionController : ConditionController { + + IBOutlet NSTextField *valueText; + IBOutlet NSPopUpButton *comparatorPopUp; +} + +@end diff --git a/TotemConditionController.m b/TotemConditionController.m new file mode 100644 index 0000000..42a5db4 --- /dev/null +++ b/TotemConditionController.m @@ -0,0 +1,65 @@ +// +// TotemConditionController.m +// Pocket Gnome +// +// Created by Jon Drummond on 7/8/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "TotemConditionController.h" + + +@implementation TotemConditionController + +- (id) init { + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"TotemCondition" owner: self]) { + log(LOG_GENERAL, @"Error loading TotemCondition.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Condition*)condition { + [self validateState: nil]; + + Condition *condition = [Condition conditionWithVariety: VarietyTotem + unit: UnitPlayer + quality: QualityTotem + comparator: [[comparatorPopUp selectedItem] tag] + state: 0 + type: TypeString + value: [valueText stringValue]]; + [condition setEnabled: self.enabled]; + + return condition; +} + +- (void)setStateFromCondition: (Condition*)condition { + [super setStateFromCondition: condition]; + + if( [condition variety] != VarietyTotem) return; + + //[unitSegment selectSegmentWithTag: [condition unit]]; + + if(![comparatorPopUp selectItemWithTag: [condition comparator]]) { + [comparatorPopUp selectItemWithTag: CompareExists]; + } + + if([condition value]) { + [valueText setStringValue: [condition value]]; + } else { + [valueText setStringValue: @""]; + } + + [self validateState: nil]; +} +@end diff --git a/Trade_Engraving.png b/Trade_Engraving.png new file mode 100644 index 0000000..9a32ebd Binary files /dev/null and b/Trade_Engraving.png differ diff --git a/TransparentWindow.h b/TransparentWindow.h new file mode 100644 index 0000000..ebe8ed9 --- /dev/null +++ b/TransparentWindow.h @@ -0,0 +1,18 @@ +// +// TransparentWindow.h +// Pocket Gnome +// +// Created by Jon Drummond on 3/31/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@interface TransparentWindow : NSWindow +{ +} +- (id)initWithContentRect: (NSRect)contentRect + styleMask: (unsigned int)styleMask + backing: (NSBackingStoreType)bufferingType + defer: (BOOL)deferCreation; +@end \ No newline at end of file diff --git a/TransparentWindow.m b/TransparentWindow.m new file mode 100644 index 0000000..cd4eccb --- /dev/null +++ b/TransparentWindow.m @@ -0,0 +1,34 @@ +// +// TransparentWindow.m +// Pocket Gnome +// +// Created by Jon Drummond on 3/31/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "TransparentWindow.h" + + +@implementation TransparentWindow + +- (id)initWithContentRect: (NSRect)contentRect + styleMask: (unsigned int)styleMask + backing: (NSBackingStoreType)bufferingType + defer: (BOOL)deferCreation { + + if ((self = [super initWithContentRect: contentRect + styleMask: NSBorderlessWindowMask + backing: bufferingType + defer: deferCreation])) { + + [self setBackgroundColor: [NSColor clearColor]]; + [self setAlphaValue: 1.0]; + [self setOpaque: NO]; + [self setHasShadow: NO]; + [self setMovableByWindowBackground: NO]; + } + + return self; +} + +@end diff --git a/Troll-Female.png b/Troll-Female.png new file mode 100644 index 0000000..7d2cc47 Binary files /dev/null and b/Troll-Female.png differ diff --git a/Troll-Female_Small.gif b/Troll-Female_Small.gif new file mode 100644 index 0000000..42fccfa Binary files /dev/null and b/Troll-Female_Small.gif differ diff --git a/Troll-Male.png b/Troll-Male.png new file mode 100644 index 0000000..87513d4 Binary files /dev/null and b/Troll-Male.png differ diff --git a/Troll-Male_Small.gif b/Troll-Male_Small.gif new file mode 100644 index 0000000..73f2d29 Binary files /dev/null and b/Troll-Male_Small.gif differ diff --git a/TypeShortcut.png b/TypeShortcut.png new file mode 100644 index 0000000..e8a9fe6 Binary files /dev/null and b/TypeShortcut.png differ diff --git a/UKFNSubscribeFileWatcher.h b/UKFNSubscribeFileWatcher.h new file mode 100644 index 0000000..259cb83 --- /dev/null +++ b/UKFNSubscribeFileWatcher.h @@ -0,0 +1,49 @@ +/* ============================================================================= + FILE: UKFNSubscribeFileWatcher.m + PROJECT: Filie + + COPYRIGHT: (c) 2005 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Commented, added singleton. + 2005-03-02 UK Created. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import <Cocoa/Cocoa.h> +#import "UKFileWatcher.h" +#import <Carbon/Carbon.h> + +/* + NOTE: FNSubscribe has a built-in delay: If your application is in the + background while the changes happen, all notifications will be queued up + and sent to your app at once the moment it is brought to front again. If + your app really needs to do live updates in the background, use a KQueue + instead. +*/ + +// ----------------------------------------------------------------------------- +// Class declaration: +// ----------------------------------------------------------------------------- + +@interface UKFNSubscribeFileWatcher : NSObject <UKFileWatcher> +{ + id delegate; // Delegate must respond to UKFileWatcherDelegate protocol. + NSMutableDictionary* subscriptions; // List of FNSubscription pointers in NSValues, with the pathnames as their keys. +} + ++(id) sharedFileWatcher; + +// UKFileWatcher defines the methods: addPath: removePath: and delegate accessors. + +// Private: +-(void) sendDelegateMessage: (FNMessage)message forSubscription: (FNSubscriptionRef)subscription; + +@end diff --git a/UKFNSubscribeFileWatcher.m b/UKFNSubscribeFileWatcher.m new file mode 100644 index 0000000..439e16f --- /dev/null +++ b/UKFNSubscribeFileWatcher.m @@ -0,0 +1,201 @@ +/* ============================================================================= + FILE: UKFNSubscribeFileWatcher.m + PROJECT: Filie + + COPYRIGHT: (c) 2005 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Commented, added singleton, added notifications. + 2005-03-02 UK Created. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import "UKFNSubscribeFileWatcher.h" +#import <Carbon/Carbon.h> + + +// ----------------------------------------------------------------------------- +// Prototypes: +// ----------------------------------------------------------------------------- + +void UKFileSubscriptionProc(FNMessage message, OptionBits flags, void *refcon, FNSubscriptionRef subscription); + + +@implementation UKFNSubscribeFileWatcher + +// ----------------------------------------------------------------------------- +// sharedFileWatcher: +// Singleton accessor. +// ----------------------------------------------------------------------------- + ++(id) sharedFileWatcher +{ + static UKFNSubscribeFileWatcher* sSharedFileWatcher = nil; + + if( !sSharedFileWatcher ) + sSharedFileWatcher = [[UKFNSubscribeFileWatcher alloc] init]; // This is a singleton, and thus an intentional "leak". + + return sSharedFileWatcher; +} + + +// ----------------------------------------------------------------------------- +// * CONSTRUCTOR: +// ----------------------------------------------------------------------------- + +-(id) init +{ + self = [super init]; + if( !self ) + return nil; + + subscriptions = [[NSMutableDictionary alloc] init]; + + return self; +} + + +// ----------------------------------------------------------------------------- +// * DESTRUCTOR: +// ----------------------------------------------------------------------------- + +-(void) dealloc +{ + NSEnumerator* enny = [subscriptions objectEnumerator]; + NSValue* subValue = nil; + + while( (subValue = [enny nextObject]) ) + { + FNSubscriptionRef subscription = [subValue pointerValue]; + FNUnsubscribe( subscription ); + } + + [subscriptions release]; + [super dealloc]; +} + + +// ----------------------------------------------------------------------------- +// addPath: +// Start watching the object at the specified path. This only sends write +// notifications for all changes, as FNSubscribe doesn't tell what actually +// changed about our folder. +// ----------------------------------------------------------------------------- + +-(void) addPath: (NSString*)path +{ + OSStatus err = noErr; + static FNSubscriptionUPP subscriptionUPP = NULL; + FNSubscriptionRef subscription = NULL; + + if( !subscriptionUPP ) + subscriptionUPP = NewFNSubscriptionUPP( UKFileSubscriptionProc ); + + err = FNSubscribeByPath( (UInt8*) [path fileSystemRepresentation], subscriptionUPP, (void*)self, + kNilOptions, &subscription ); + if( err != noErr ) + { + NSLog( @"UKFNSubscribeFileWatcher addPath: %@ failed due to error ID=%ld.", path, err ); + return; + } + + [subscriptions setObject: [NSValue valueWithPointer: subscription] forKey: path]; +} + + +// ----------------------------------------------------------------------------- +// removePath: +// Stop watching the object at the specified path. +// ----------------------------------------------------------------------------- + +-(void) removePath: (NSString*)path +{ + NSValue* subValue = nil; + @synchronized( self ) + { + subValue = [[[subscriptions objectForKey: path] retain] autorelease]; + [subscriptions removeObjectForKey: path]; + } + + if( subValue ) + { + FNSubscriptionRef subscription = [subValue pointerValue]; + + FNUnsubscribe( subscription ); + } +} + + +// ----------------------------------------------------------------------------- +// sendDelegateMessage:forSubscription: +// Bottleneck for change notifications. This is called by our callback +// function to actually inform the delegate and send out notifications. +// +// This *only* sends out write notifications, as FNSubscribe doesn't tell +// what changed about our folder. +// ----------------------------------------------------------------------------- + +-(void) sendDelegateMessage: (FNMessage)message forSubscription: (FNSubscriptionRef)subscription +{ + NSValue* subValue = [NSValue valueWithPointer: subscription]; + NSString* path = [[subscriptions allKeysForObject: subValue] objectAtIndex: 0]; + + [[[NSWorkspace sharedWorkspace] notificationCenter] postNotificationName: UKFileWatcherWriteNotification + object: self + userInfo: [NSDictionary dictionaryWithObjectsAndKeys: path, @"path", nil]]; + + [delegate watcher: self receivedNotification: UKFileWatcherWriteNotification forPath: path]; + //NSLog( @"UKFNSubscribeFileWatcher noticed change to %@", path ); // DEBUG ONLY! +} + + + +// ----------------------------------------------------------------------------- +// delegate: +// Accessor for file watcher delegate. +// ----------------------------------------------------------------------------- + +-(id) delegate +{ + return delegate; +} + + +// ----------------------------------------------------------------------------- +// setDelegate: +// Mutator for file watcher delegate. +// ----------------------------------------------------------------------------- + +-(void) setDelegate: (id)newDelegate +{ + delegate = newDelegate; +} + + +@end + + +// ----------------------------------------------------------------------------- +// UKFileSubscriptionProc: +// Callback function we hand to Carbon so it can tell us when something +// changed about our watched folders. We set the refcon to a pointer to +// our object. This simply extracts the object and hands the info off to +// sendDelegateMessage:forSubscription: which does the actual work. +// ----------------------------------------------------------------------------- + +void UKFileSubscriptionProc( FNMessage message, OptionBits flags, void *refcon, FNSubscriptionRef subscription ) +{ + UKFNSubscribeFileWatcher* obj = (UKFNSubscribeFileWatcher*) refcon; + + if( message == kFNDirectoryModifiedMessage ) // No others exist as of 10.4 + [obj sendDelegateMessage: message forSubscription: subscription]; + else + NSLog( @"UKFileSubscriptionProc: Unknown message %d", message ); +} diff --git a/UKFileWatcher.h b/UKFileWatcher.h new file mode 100644 index 0000000..c2c4ba2 --- /dev/null +++ b/UKFileWatcher.h @@ -0,0 +1,62 @@ +/* ============================================================================= + FILE: UKFileWatcher.h + PROJECT: Filie + + COPYRIGHT: (c) 2005 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Moved notification constants to .m file. + 2005-02-25 UK Created. + ========================================================================== */ + +/* + This is a protocol that file change notification classes should adopt. + That way, no matter whether you use Carbon's FNNotify/FNSubscribe, BSD's + kqueue or whatever, the object being notified can react to change + notifications the same way, and you can easily swap one out for the other + to cater to different OS versions, target volumes etc. +*/ + +// ----------------------------------------------------------------------------- +// Protocol: +// ----------------------------------------------------------------------------- + +@protocol UKFileWatcher + +// +(id) sharedFileWatcher; // Singleton accessor. Not officially part of the protocol, but use this name if you provide a singleton. + +-(void) addPath: (NSString*)path; +-(void) removePath: (NSString*)path; + +-(id) delegate; +-(void) setDelegate: (id)newDelegate; + +@end + +// ----------------------------------------------------------------------------- +// Methods delegates need to provide: +// ----------------------------------------------------------------------------- + +@interface NSObject (UKFileWatcherDelegate) + +-(void) watcher: (id<UKFileWatcher>)kq receivedNotification: (NSString*)nm forPath: (NSString*)fpath; + +@end + + +// Notifications this sends: +/* object = the file watcher object + userInfo.path = file path watched + These notifications are sent via the NSWorkspace notification center */ +extern NSString* UKFileWatcherRenameNotification; +extern NSString* UKFileWatcherWriteNotification; +extern NSString* UKFileWatcherDeleteNotification; +extern NSString* UKFileWatcherAttributeChangeNotification; +extern NSString* UKFileWatcherSizeIncreaseNotification; +extern NSString* UKFileWatcherLinkCountChangeNotification; +extern NSString* UKFileWatcherAccessRevocationNotification; + diff --git a/UKFileWatcher.m b/UKFileWatcher.m new file mode 100644 index 0000000..952cf95 --- /dev/null +++ b/UKFileWatcher.m @@ -0,0 +1,38 @@ +/* ============================================================================= + FILE: UKKQueue.m + PROJECT: Filie + + COPYRIGHT: (c) 2005-06 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Created, moved notification constants here as exportable + symbols. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import <Cocoa/Cocoa.h> +#import "UKFileWatcher.h" + + +// ----------------------------------------------------------------------------- +// Constants: +// ----------------------------------------------------------------------------- + +// Do not rely on the actual contents of these constants. They will eventually +// be changed to be more generic and less KQueue-specific. + +NSString* UKFileWatcherRenameNotification = @"UKKQueueFileRenamedNotification"; +NSString* UKFileWatcherWriteNotification = @"UKKQueueFileWrittenToNotification"; +NSString* UKFileWatcherDeleteNotification = @"UKKQueueFileDeletedNotification"; +NSString* UKFileWatcherAttributeChangeNotification = @"UKKQueueFileAttributesChangedNotification"; +NSString* UKFileWatcherSizeIncreaseNotification = @"UKKQueueFileSizeIncreasedNotification"; +NSString* UKFileWatcherLinkCountChangeNotification = @"UKKQueueFileLinkCountChangedNotification"; +NSString* UKFileWatcherAccessRevocationNotification = @"UKKQueueFileAccessRevocationNotification"; + diff --git a/UKKQueue.h b/UKKQueue.h new file mode 100644 index 0000000..facd513 --- /dev/null +++ b/UKKQueue.h @@ -0,0 +1,122 @@ +/* ============================================================================= + FILE: UKKQueue.h + PROJECT: Filie + + COPYRIGHT: (c) 2003 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Clarified license, streamlined UKFileWatcher stuff, + Changed notifications to be useful and turned off by + default some deprecated stuff. + 2003-12-21 UK Created. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import <Foundation/Foundation.h> +#include <sys/types.h> +#include <sys/event.h> +#import "UKFileWatcher.h" + + +// ----------------------------------------------------------------------------- +// Constants: +// ----------------------------------------------------------------------------- + +// Backwards compatibility constants. Don't rely on code commented out with these constants, because it may be deleted in a future version. +#ifndef UKKQUEUE_BACKWARDS_COMPATIBLE +#define UKKQUEUE_BACKWARDS_COMPATIBLE 0 // 1 to send old-style kqueue:receivedNotification:forFile: messages to objects that accept them. +#endif + +#ifndef UKKQUEUE_SEND_STUPID_NOTIFICATIONS +#define UKKQUEUE_SEND_STUPID_NOTIFICATIONS 0 // 1 to send old-style notifications that have the path as the object and no userInfo dictionary. +#endif + +#ifndef UKKQUEUE_OLD_SINGLETON_ACCESSOR_NAME +#define UKKQUEUE_OLD_SINGLETON_ACCESSOR_NAME 0 // 1 to allow use of sharedQueue instead of sharedFileWatcher. +#endif + +#ifndef UKKQUEUE_OLD_NOTIFICATION_NAMES +#define UKKQUEUE_OLD_NOTIFICATION_NAMES 0 // 1 to allow use of old KQueue-style notification names instead of the new more generic ones in UKFileWatcher. +#endif + +// Flags for notifyingAbout: +#define UKKQueueNotifyAboutRename NOTE_RENAME // Item was renamed. +#define UKKQueueNotifyAboutWrite NOTE_WRITE // Item contents changed (also folder contents changed). +#define UKKQueueNotifyAboutDelete NOTE_DELETE // item was removed. +#define UKKQueueNotifyAboutAttributeChange NOTE_ATTRIB // Item attributes changed. +#define UKKQueueNotifyAboutSizeIncrease NOTE_EXTEND // Item size increased. +#define UKKQueueNotifyAboutLinkCountChanged NOTE_LINK // Item's link count changed. +#define UKKQueueNotifyAboutAccessRevocation NOTE_REVOKE // Access to item was revoked. + +// Notifications this sends: +// (see UKFileWatcher) +// Old names: *deprecated* +#if UKKQUEUE_OLD_NOTIFICATION_NAMES +#define UKKQueueFileRenamedNotification UKFileWatcherRenameNotification +#define UKKQueueFileWrittenToNotification UKFileWatcherWriteNotification +#define UKKQueueFileDeletedNotification UKFileWatcherDeleteNotification +#define UKKQueueFileAttributesChangedNotification UKFileWatcherAttributeChangeNotification +#define UKKQueueFileSizeIncreasedNotification UKFileWatcherSizeIncreaseNotification +#define UKKQueueFileLinkCountChangedNotification UKFileWatcherLinkCountChangeNotification +#define UKKQueueFileAccessRevocationNotification UKFileWatcherAccessRevocationNotification +#endif + + +// ----------------------------------------------------------------------------- +// UKKQueue: +// ----------------------------------------------------------------------------- + +@interface UKKQueue : NSObject <UKFileWatcher> +{ + int queueFD; // The actual queue ID (Unix file descriptor). + NSMutableArray* watchedPaths; // List of NSStrings containing the paths we're watching. + NSMutableArray* watchedFDs; // List of NSNumbers containing the file descriptors we're watching. + id delegate; // Gets messages about changes instead of notification center, if specified. + id delegateProxy; // Proxy object to which we send messages so they reach delegate on the main thread. + BOOL alwaysNotify; // Send notifications even if we have a delegate? Defaults to NO. + BOOL keepThreadRunning; // Termination criterion of our thread. +} + ++(id) sharedFileWatcher; // Returns a singleton, a shared kqueue object Handy if you're subscribing to the notifications. Use this, or just create separate objects using alloc/init. Whatever floats your boat. + +-(int) queueFD; // I know you unix geeks want this... + +// High-level file watching: (use UKFileWatcher protocol methods instead, where possible!) +-(void) addPathToQueue: (NSString*)path; +-(void) addPathToQueue: (NSString*)path notifyingAbout: (u_int)fflags; +-(void) removePathFromQueue: (NSString*)path; + +-(id) delegate; +-(void) setDelegate: (id)newDelegate; + +-(BOOL) alwaysNotify; +-(void) setAlwaysNotify: (BOOL)n; + +#if UKKQUEUE_OLD_SINGLETON_ACCESSOR_NAME ++(UKKQueue*) sharedQueue; +#endif + +// private: +-(void) watcherThread: (id)sender; +-(void) postNotification: (NSString*)nm forFile: (NSString*)fp; // Message-posting bottleneck. + +@end + + +// ----------------------------------------------------------------------------- +// Methods delegates need to provide: +// * DEPRECATED * use UKFileWatcher delegate methods instead! +// ----------------------------------------------------------------------------- + +@interface NSObject (UKKQueueDelegate) + +-(void) kqueue: (UKKQueue*)kq receivedNotification: (NSString*)nm forFile: (NSString*)fpath; + +@end diff --git a/UKKQueue.m b/UKKQueue.m new file mode 100644 index 0000000..81631a1 --- /dev/null +++ b/UKKQueue.m @@ -0,0 +1,481 @@ +/* ============================================================================= + FILE: UKKQueue.m + PROJECT: Filie + + COPYRIGHT: (c) 2003 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Clarified license, streamlined UKFileWatcher stuff, + Changed notifications to be useful and turned off by + default some deprecated stuff. + 2004-12-28 UK Several threading fixes. + 2003-12-21 UK Created. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import "UKKQueue.h" +#import "UKMainThreadProxy.h" +#import <unistd.h> +#import <fcntl.h> + + +// ----------------------------------------------------------------------------- +// Macros: +// ----------------------------------------------------------------------------- + +// @synchronized isn't available prior to 10.3, so we use a typedef so +// this class is thread-safe on Panther but still compiles on older OSs. + +#if MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_3 +#define AT_SYNCHRONIZED(n) @synchronized(n) +#else +#define AT_SYNCHRONIZED(n) +#endif + + +// ----------------------------------------------------------------------------- +// Globals: +// ----------------------------------------------------------------------------- + +static UKKQueue * gUKKQueueSharedQueueSingleton = nil; + + +@implementation UKKQueue + +// Deprecated: +#if UKKQUEUE_OLD_SINGLETON_ACCESSOR_NAME ++(UKKQueue*) sharedQueue +{ + return [self sharedFileWatcher]; +} +#endif + +// ----------------------------------------------------------------------------- +// sharedQueue: +// Returns a singleton queue object. In many apps (especially those that +// subscribe to the notifications) there will only be one kqueue instance, +// and in that case you can use this. +// +// For all other cases, feel free to create additional instances to use +// independently. +// +// REVISIONS: +// 2006-03-13 UK Renamed from sharedQueue. +// 2005-07-02 UK Created. +// ----------------------------------------------------------------------------- + ++(id) sharedFileWatcher +{ + AT_SYNCHRONIZED( self ) + { + if( !gUKKQueueSharedQueueSingleton ) + gUKKQueueSharedQueueSingleton = [[UKKQueue alloc] init]; // This is a singleton, and thus an intentional "leak". + } + + return gUKKQueueSharedQueueSingleton; +} + + +// ----------------------------------------------------------------------------- +// * CONSTRUCTOR: +// Creates a new KQueue and starts that thread we use for our +// notifications. +// +// REVISIONS: +// 2004-11-12 UK Doesn't pass self as parameter to watcherThread anymore, +// because detachNewThreadSelector retains target and args, +// which would cause us to never be released. +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(id) init +{ + self = [super init]; + if( self ) + { + queueFD = kqueue(); + if( queueFD == -1 ) + { + [self release]; + return nil; + } + + watchedPaths = [[NSMutableArray alloc] init]; + watchedFDs = [[NSMutableArray alloc] init]; + + // Start new thread that fetches and processes our events: + keepThreadRunning = YES; + [NSThread detachNewThreadSelector:@selector(watcherThread:) toTarget:self withObject:nil]; + } + + return self; +} + + +// ----------------------------------------------------------------------------- +// release: +// Since NSThread retains its target, we need this method to terminate the +// thread when we reach a retain-count of two. The thread is terminated by +// setting keepThreadRunning to NO. +// +// REVISIONS: +// 2004-11-12 UK Created. +// ----------------------------------------------------------------------------- + +-(oneway void) release +{ + AT_SYNCHRONIZED(self) + { + //NSLog(@"%@ (%d)", self, [self retainCount]); + if( [self retainCount] == 2 && keepThreadRunning ) + keepThreadRunning = NO; + } + + [super release]; +} + +// ----------------------------------------------------------------------------- +// * DESTRUCTOR: +// Releases the kqueue again. +// +// REVISIONS: +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(void) dealloc +{ + delegate = nil; + [delegateProxy release]; + + if( keepThreadRunning ) + keepThreadRunning = NO; + + // Close all our file descriptors so the files can be deleted: + NSEnumerator* enny = [watchedFDs objectEnumerator]; + NSNumber* fdNum; + while( (fdNum = [enny nextObject]) ) + { + if( close( [fdNum intValue] ) == -1 ) + NSLog(@"dealloc: Couldn't close file descriptor (%d)", errno); + } + + [watchedPaths release]; + watchedPaths = nil; + [watchedFDs release]; + watchedFDs = nil; + + [super dealloc]; + + //NSLog(@"kqueue released."); +} + + +// ----------------------------------------------------------------------------- +// queueFD: +// Returns a Unix file descriptor for the KQueue this uses. The descriptor +// is owned by this object. Do not close it! +// +// REVISIONS: +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(int) queueFD +{ + return queueFD; +} + + +// ----------------------------------------------------------------------------- +// addPathToQueue: +// Tell this queue to listen for all interesting notifications sent for +// the object at the specified path. If you want more control, use the +// addPathToQueue:notifyingAbout: variant instead. +// +// REVISIONS: +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(void) addPathToQueue: (NSString*)path +{ + [self addPath: path]; +} + + +-(void) addPath: (NSString*)path +{ + [self addPathToQueue: path notifyingAbout: UKKQueueNotifyAboutRename + | UKKQueueNotifyAboutWrite + | UKKQueueNotifyAboutDelete + | UKKQueueNotifyAboutAttributeChange]; +} + + +// ----------------------------------------------------------------------------- +// addPathToQueue:notfyingAbout: +// Tell this queue to listen for the specified notifications sent for +// the object at the specified path. +// +// REVISIONS: +// 2005-06-29 UK Files are now opened using O_EVTONLY instead of O_RDONLY +// which allows ejecting or deleting watched files/folders. +// Thanks to Phil Hargett for finding this flag in the docs. +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(void) addPathToQueue: (NSString*)path notifyingAbout: (u_int)fflags +{ + + struct timespec nullts = { 0, 0 }; + struct kevent ev; + int fd = open( [path fileSystemRepresentation], O_EVTONLY, 0 ); + + if( fd >= 0 ) + { + EV_SET( &ev, fd, EVFILT_VNODE, + EV_ADD | EV_ENABLE | EV_CLEAR, + fflags, 0, (void*)path ); + + AT_SYNCHRONIZED( self ) + { + [watchedPaths addObject: path]; + [watchedFDs addObject: [NSNumber numberWithInt: fd]]; + kevent( queueFD, &ev, 1, NULL, 0, &nullts ); + } + } +} + + +-(void) removePath: (NSString*)path +{ + [self removePathFromQueue: path]; +} + + +// ----------------------------------------------------------------------------- +// removePathFromQueue: +// Stop listening for changes to the specified path. This removes all +// notifications. Use this to balance both addPathToQueue:notfyingAbout: +// as well as addPathToQueue:. +// +// REVISIONS: +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(void) removePathFromQueue: (NSString*)path +{ + int index = 0; + int fd = -1; + + AT_SYNCHRONIZED( self ) + { + index = [watchedPaths indexOfObject: path]; + + if( index == NSNotFound ) + return; + + fd = [[watchedFDs objectAtIndex: index] intValue]; + + [watchedFDs removeObjectAtIndex: index]; + [watchedPaths removeObjectAtIndex: index]; + } + + if( close( fd ) == -1 ) + NSLog(@"removePathFromQueue: Couldn't close file descriptor (%d)", errno); +} + + +// ----------------------------------------------------------------------------- +// removeAllPathsFromQueue: +// Stop listening for changes to all paths. This removes all +// notifications. +// +// REVISIONS: +// 2004-12-28 UK Added as suggested by bbum. +// ----------------------------------------------------------------------------- + +-(void) removeAllPathsFromQueue; +{ + AT_SYNCHRONIZED( self ) + { + NSEnumerator * fdEnumerator = [watchedFDs objectEnumerator]; + NSNumber * anFD; + + while( (anFD = [fdEnumerator nextObject]) != nil ) + close( [anFD intValue] ); + + [watchedFDs removeAllObjects]; + [watchedPaths removeAllObjects]; + } +} + + +// ----------------------------------------------------------------------------- +// watcherThread: +// This method is called by our NSThread to loop and poll for any file +// changes that our kqueue wants to tell us about. This sends separate +// notifications for the different kinds of changes that can happen. +// All messages are sent via the postNotification:forFile: main bottleneck. +// +// This also calls sharedWorkspace's noteFileSystemChanged. +// +// To terminate this method (and its thread), set keepThreadRunning to NO. +// +// REVISIONS: +// 2005-08-27 UK Changed to use keepThreadRunning instead of kqueueFD +// being -1 as termination criterion, and to close the +// queue in this thread so the main thread isn't blocked. +// 2004-11-12 UK Fixed docs to include termination criterion, added +// timeout to make sure the bugger gets disposed. +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(void) watcherThread: (id)sender +{ + int n; + struct kevent ev; + struct timespec timeout = { 5, 0 }; // 5 seconds timeout. + int theFD = queueFD; // So we don't have to risk accessing iVars when the thread is terminated. + + while( keepThreadRunning ) + { + NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init]; + + NS_DURING + n = kevent( queueFD, NULL, 0, &ev, 1, &timeout ); + if( n > 0 ) + { + if( ev.filter == EVFILT_VNODE ) + { + if( ev.fflags ) + { + NSString* fpath = [[(NSString *)ev.udata retain] autorelease]; // In case one of the notified folks removes the path. + //NSLog(@"UKKQueue: Detected file change: %@", fpath); + [[NSWorkspace sharedWorkspace] noteFileSystemChanged: fpath]; + + //NSLog(@"ev.flags = %u",ev.fflags); // DEBUG ONLY! + + if( (ev.fflags & NOTE_RENAME) == NOTE_RENAME ) + [self postNotification: UKFileWatcherRenameNotification forFile: fpath]; + if( (ev.fflags & NOTE_WRITE) == NOTE_WRITE ) + [self postNotification: UKFileWatcherWriteNotification forFile: fpath]; + if( (ev.fflags & NOTE_DELETE) == NOTE_DELETE ) + [self postNotification: UKFileWatcherDeleteNotification forFile: fpath]; + if( (ev.fflags & NOTE_ATTRIB) == NOTE_ATTRIB ) + [self postNotification: UKFileWatcherAttributeChangeNotification forFile: fpath]; + if( (ev.fflags & NOTE_EXTEND) == NOTE_EXTEND ) + [self postNotification: UKFileWatcherSizeIncreaseNotification forFile: fpath]; + if( (ev.fflags & NOTE_LINK) == NOTE_LINK ) + [self postNotification: UKFileWatcherLinkCountChangeNotification forFile: fpath]; + if( (ev.fflags & NOTE_REVOKE) == NOTE_REVOKE ) + [self postNotification: UKFileWatcherAccessRevocationNotification forFile: fpath]; + } + } + } + NS_HANDLER + NSLog(@"Error in UKKQueue watcherThread: %@",localException); + NS_ENDHANDLER + + [pool release]; + } + + // Close our kqueue's file descriptor: + if( close( theFD ) == -1 ) + NSLog(@"release: Couldn't close main kqueue (%d)", errno); + + //NSLog(@"exiting kqueue watcher thread."); +} + + +// ----------------------------------------------------------------------------- +// postNotification:forFile: +// This is the main bottleneck for posting notifications. If you don't want +// the notifications to go through NSWorkspace, override this method and +// send them elsewhere. +// +// REVISIONS: +// 2004-02-27 UK Changed this to send new notification, and the old one +// only to objects that respond to it. The old category on +// NSObject could cause problems with the proxy itself. +// 2004-10-31 UK Helloween fun: Make this use a mainThreadProxy and +// allow sending the notification even if we have a +// delegate. +// 2004-03-13 UK Documented. +// ----------------------------------------------------------------------------- + +-(void) postNotification: (NSString*)nm forFile: (NSString*)fp +{ + if( delegateProxy ) + { + #if UKKQUEUE_BACKWARDS_COMPATIBLE + if( ![delegateProxy respondsToSelector: @selector(watcher:receivedNotification:forPath:)] ) + [delegateProxy kqueue: self receivedNotification: nm forFile: fp]; + else + #endif + [delegateProxy watcher: self receivedNotification: nm forPath: fp]; + } + + if( !delegateProxy || alwaysNotify ) + { + #if UKKQUEUE_SEND_STUPID_NOTIFICATIONS + [[[NSWorkspace sharedWorkspace] notificationCenter] postNotificationName: nm object: fp]; + #else + [[[NSWorkspace sharedWorkspace] notificationCenter] postNotificationName: nm object: self + userInfo: [NSDictionary dictionaryWithObjectsAndKeys: fp, @"path", nil]]; + #endif + } +} + +-(id) delegate +{ + return delegate; +} + +-(void) setDelegate: (id)newDelegate +{ + id oldProxy = delegateProxy; + delegate = newDelegate; + delegateProxy = [delegate copyMainThreadProxy]; + [oldProxy release]; +} + +// ----------------------------------------------------------------------------- +// Flag to send a notification even if we have a delegate: +// ----------------------------------------------------------------------------- + +-(BOOL) alwaysNotify +{ + return alwaysNotify; +} + + +-(void) setAlwaysNotify: (BOOL)n +{ + alwaysNotify = n; +} + + +// ----------------------------------------------------------------------------- +// description: +// This method can be used to help in debugging. It provides the value +// used by NSLog & co. when you request to print this object using the +// %@ format specifier. +// +// REVISIONS: +// 2004-11-12 UK Created. +// ----------------------------------------------------------------------------- + +-(NSString*) description +{ + return [NSString stringWithFormat: @"%@ { watchedPaths = %@, alwaysNotify = %@ }", NSStringFromClass([self class]), watchedPaths, (alwaysNotify? @"YES" : @"NO") ]; +} + +@end + + diff --git a/UKMainThreadProxy.h b/UKMainThreadProxy.h new file mode 100644 index 0000000..9fd6ff4 --- /dev/null +++ b/UKMainThreadProxy.h @@ -0,0 +1,56 @@ +/* ============================================================================= + FILE: UKMainThreadProxy.h + PROJECT: UKMainThreadProxy + + PURPOSE: Send a message to object theObject to [theObject mainThreadProxy] + instead and the message will be received on the main thread by + theObject. + + COPYRIGHT: (c) 2004 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT License + + REVISIONS: + 2006-03-13 UK Clarified license. + 2004-10-14 UK Created. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import <Cocoa/Cocoa.h> + + +// ----------------------------------------------------------------------------- +// Categories: +// ----------------------------------------------------------------------------- + +@interface NSObject (UKMainThreadProxy) + +-(id) mainThreadProxy; // You can't init or release this object. +-(id) copyMainThreadProxy; // Gives you a retained version. + +@end + + +// ----------------------------------------------------------------------------- +// Classes: +// ----------------------------------------------------------------------------- + +/* + This object is created as a proxy in a second thread for an existing object. + All messages you send to this object will automatically be sent to the other + object on the main thread, except NSObject methods like retain/release etc. +*/ + +@interface UKMainThreadProxy : NSObject +{ + IBOutlet id target; +} + +-(id) initWithTarget: (id)targ; + +@end diff --git a/UKMainThreadProxy.m b/UKMainThreadProxy.m new file mode 100644 index 0000000..c351798 --- /dev/null +++ b/UKMainThreadProxy.m @@ -0,0 +1,151 @@ +/* ============================================================================= + FILE: UKMainThreadProxy.h + PROJECT: UKMainThreadProxy + + PURPOSE: Send a message to object theObject to [theObject mainThreadProxy] + instead and the message will be received on the main thread by + theObject. + + COPYRIGHT: (c) 2004 M. Uli Kusterer, all rights reserved. + + AUTHORS: M. Uli Kusterer - UK + + LICENSES: MIT Licenseâ + + REVISIONS: + 2006-03-13 UK Clarified license. + 2004-10-14 UK Created. + ========================================================================== */ + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import "UKMainThreadProxy.h" + + +@implementation UKMainThreadProxy + +-(id) initWithTarget: (id)targ +{ + self = [super init]; + if( self ) + target = targ; + + return self; +} + + +// ----------------------------------------------------------------------------- +// Introspection overrides: +// ----------------------------------------------------------------------------- + +-(BOOL) respondsToSelector: (SEL)itemAction +{ + BOOL does = [super respondsToSelector: itemAction]; + + return( does || [target respondsToSelector: itemAction] ); +} + + +-(id) performSelector: (SEL)itemAction +{ + BOOL does = [super respondsToSelector: itemAction]; + if( does ) + return [super performSelector: itemAction]; + + if( ![target respondsToSelector: itemAction] ) + [self doesNotRecognizeSelector: itemAction]; + + [target retain]; + [target performSelectorOnMainThread: itemAction withObject: nil waitUntilDone: YES]; + [target release]; + + return nil; +} + + +-(id) performSelector: (SEL)itemAction withObject: (id)obj +{ + BOOL does = [super respondsToSelector: itemAction]; + if( does ) + return [super performSelector: itemAction withObject: obj]; + + if( ![target respondsToSelector: itemAction] ) + [self doesNotRecognizeSelector: itemAction]; + + [target retain]; + [obj retain]; + [target performSelectorOnMainThread: itemAction withObject: obj waitUntilDone: YES]; + [obj release]; + [target release]; + + return nil; +} + + +// ----------------------------------------------------------------------------- +// Forwarding unknown methods to the target: +// ----------------------------------------------------------------------------- + +-(NSMethodSignature*) methodSignatureForSelector: (SEL)itemAction +{ + NSMethodSignature* sig = [super methodSignatureForSelector: itemAction]; + + if( sig ) + return sig; + + return [target methodSignatureForSelector: itemAction]; +} + +-(void) forwardInvocation: (NSInvocation*)invocation +{ + SEL itemAction = [invocation selector]; + + if( [target respondsToSelector: itemAction] ) + { + [invocation retainArguments]; + [target retain]; + [invocation performSelectorOnMainThread: @selector(invokeWithTarget:) withObject: target waitUntilDone: YES]; + [target release]; + } + else + [self doesNotRecognizeSelector: itemAction]; +} + + +// ----------------------------------------------------------------------------- +// Safety net: +// ----------------------------------------------------------------------------- + +-(id) mainThreadProxy // Just in case someone accidentally sends this message to a main thread proxy. +{ + return self; +} + +-(id) copyMainThreadProxy // Just in case someone accidentally sends this message to a main thread proxy. +{ + return [self retain]; +} + +@end + + +// ----------------------------------------------------------------------------- +// Shorthand notation for getting a main thread proxy: +// ----------------------------------------------------------------------------- + +@implementation NSObject (UKMainThreadProxy) + +-(id) mainThreadProxy +{ + return [[[UKMainThreadProxy alloc] initWithTarget: self] autorelease]; +} + +-(id) copyMainThreadProxy +{ + return [[UKMainThreadProxy alloc] initWithTarget: self]; +} + +@end + diff --git a/Undead-Female.png b/Undead-Female.png new file mode 100644 index 0000000..7588fb1 Binary files /dev/null and b/Undead-Female.png differ diff --git a/Undead-Female_Small.gif b/Undead-Female_Small.gif new file mode 100644 index 0000000..52d976a Binary files /dev/null and b/Undead-Female_Small.gif differ diff --git a/Undead-Male.png b/Undead-Male.png new file mode 100644 index 0000000..06019f7 Binary files /dev/null and b/Undead-Male.png differ diff --git a/Undead-Male_Small.gif b/Undead-Male_Small.gif new file mode 100644 index 0000000..14569af Binary files /dev/null and b/Undead-Male_Small.gif differ diff --git a/Unit.h b/Unit.h new file mode 100644 index 0000000..83a6faa --- /dev/null +++ b/Unit.h @@ -0,0 +1,495 @@ +// +// Unit.h +// Pocket Gnome +// +// Created by Jon Drummond on 5/26/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "WoWObject.h" + +enum MovementFlags{ + + MovementFlags_InAir = 0x1000, // in air, not mounted + MovementFlags_AirMounted = 0x1000000, // on ground, on air mount + MovementFlags_AirMountedInAir = 0x2000000, // in air, on air mount + +}; + +enum eUnitBaseFields { + BaseField_XLocation = 0x870, // 3.0.9: 0x7C4 + BaseField_YLocation = 0x874, // 3.0.9: 0x7C8 + BaseField_ZLocation = 0x878, // 3.0.9: 0x7CC + BaseField_Facing_Horizontal = 0x87C, // 3.0.9: 0x7D0 // [0, 2pi] + BaseField_Facing_Vertical = 0x880, // 3.0.9: 0x7D0 // [-pi/2, pi/2] + + BaseField_MovementFlags = 0x8A0, // 3.0.9: 0x7F0 + + BaseField_RunSpeed_Current = 0x8E8, // 3.0.9: 0x838 + BaseField_RunSpeed_Walk = 0x8EC, // (you sure this is runspeed walk? - i noticed it was 2.5, yet current speed when walking was 7.0) 3.0.9: 0x83C + BaseField_RunSpeed_Max = 0x8F0, // 3.0.9: 0x840 + BaseField_RunSpeed_Back = 0x8F4, // 3.0.9: 0x844 + BaseField_AirSpeed_Max = 0x900, // 3.0.9: 0x850 + + // lua_SpellStopCasting + //BaseField_Spell_ToCast = 0xB00, // This is the spell we WANT to cast, and are waiting for the server to realize it should cast (the below will be set when it's been verified by the server) + + // lua_UnitCastingInfo + //BaseField_Spell_Casting = 0xB0C, // spell the player is casting + //BaseField_Spell_TargetGUID_Low = 0xB10, (in lua_UnitCastingInfo, but I don't use them) + //BaseField_Spell_TargetGUID_High = 0xB14, + //BaseField_Spell_TimeStart = 0xB18, + //BaseField_Spell_TimeEnd = 0xB1C, + + // lua_UnitChannelInfo + //BaseField_Spell_Channeling = 0xB20, // this is the spell ID + BaseField_Spell_ChannelTimeStart = 0xB24, // same time value as currentTime + BaseField_Spell_ChannelTimeEnd = 0xB28, + + BaseField_SelectionFlags = 0xB30, // (1 << 12) when a unit is selected, (1 << 13) when it is focused + + //BaseField_Player_CurrentTime = 0xAB0, // disappeared as of 4.x + + // BaseField_CurrentStance = 0xB40, // this seems to have dissapeared in 3.0.8 + + BaseField_Auras_ValidCount = 0xF24, + BaseField_Auras_Start = 0xCE4, + + // I'm not entirely sure what the story is behind these pointers + // but it seems that once the player hits > 16 buffs/debuffs (17 or more) + // the Aura fields in the player struct is abandoned and moves elsewhere + BaseField_Auras_OverflowValidCount = 0xCE8, + BaseField_Auras_OverflowPtr1 = 0xCEC, +}; + +// Added from: http://www.mmowned.com/forums/wow-memory-editing/257771-wow-constant-data-enums-structs-etc.html +typedef enum{ + UnitField_None = 0, + UnitField_Lootable = 0x1, + UnitField_TrackUnit = 0x2, + UnitField_TaggedByOther = 0x4, + UnitField_TaggedByMe = 0x8, + UnitField_SpecialInfo = 0x10, + UnitField_Dead = 0x20, + UnitField_ReferAFriendLinked = 0x40, + UnitField_IsTappedByAllThreatList = 0x80, +} UnitDynamicFlags; + +/* +// Value masks for UNIT_FIELD_FLAGS (UnitField_StatusFlags) +enum UnitFlags +{ + UNIT_FLAG_UNKNOWN7 = 0x00000001, + UNIT_FLAG_NON_ATTACKABLE = 0x00000002, // not attackable + UNIT_FLAG_DISABLE_MOVE = 0x00000004, + UNIT_FLAG_UNKNOWN1 = 0x00000008, // for all units, make unit attackable even it's friendly in some cases... + UNIT_FLAG_RENAME = 0x00000010, + UNIT_FLAG_RESTING = 0x00000020, + UNIT_FLAG_UNKNOWN9 = 0x00000040, + UNIT_FLAG_UNKNOWN10 = 0x00000080, + UNIT_FLAG_UNKNOWN2 = 0x00000100, // 2.0.8 + UNIT_FLAG_UNKNOWN11 = 0x00000200, + UNIT_FLAG_UNKNOWN12 = 0x00000400, // loot animation + UNIT_FLAG_PET_IN_COMBAT = 0x00000800, // in combat?, 2.0.8 + UNIT_FLAG_PVP = 0x00001000, // ok + UNIT_FLAG_SILENCED = 0x00002000, // silenced, 2.1.1 + UNIT_FLAG_UNKNOWN4 = 0x00004000, // 2.0.8 + UNIT_FLAG_UNKNOWN13 = 0x00008000, + UNIT_FLAG_UNKNOWN14 = 0x00010000, + UNIT_FLAG_PACIFIED = 0x00020000, + UNIT_FLAG_DISABLE_ROTATE = 0x00040000, // stunned, 2.1.1 + UNIT_FLAG_IN_COMBAT = 0x00080000, + UNIT_FLAG_UNKNOWN15 = 0x00100000, // mounted? 2.1.3, probably used with 0x4 flag + UNIT_FLAG_DISARMED = 0x00200000, // disable melee spells casting..., "Required melee weapon" added to melee spells tooltip. + UNIT_FLAG_CONFUSED = 0x00400000, + UNIT_FLAG_FLEEING = 0x00800000, + UNIT_FLAG_UNKNOWN5 = 0x01000000, // used in spell Eyes of the Beast for pet... + UNIT_FLAG_NOT_SELECTABLE = 0x02000000, // ok + UNIT_FLAG_SKINNABLE = 0x04000000, + UNIT_FLAG_MOUNT = 0x08000000, // the client seems to handle it perfectly + UNIT_FLAG_UNKNOWN17 = 0x10000000, + UNIT_FLAG_UNKNOWN6 = 0x20000000, // used in Feing Death spell + UNIT_FLAG_SHEATHE = 0x40000000 +}; + + private enum UnitFlags : uint + { + None = 0, + Sitting = 0x1, + //SelectableNotAttackable_1 = 0x2, + Influenced = 0x4, // Stops movement packets + PlayerControlled = 0x8, // 2.4.2 + Totem = 0x10, + Preparation = 0x20, // 3.0.3 + PlusMob = 0x40, // 3.0.2 + //SelectableNotAttackable_2 = 0x80, + NotAttackable = 0x100, + //Flag_0x200 = 0x200, + Looting = 0x400, + PetInCombat = 0x800, // 3.0.2 + PvPFlagged = 0x1000, + Silenced = 0x2000, //3.0.3 + //Flag_14_0x4000 = 0x4000, + //Flag_15_0x8000 = 0x8000, + //SelectableNotAttackable_3 = 0x10000, + Pacified = 0x20000, //3.0.3 + Stunned = 0x40000, + CanPerformAction_Mask1 = 0x60000, + Combat = 0x80000, // 3.1.1 + TaxiFlight = 0x100000, // 3.1.1 + Disarmed = 0x200000, // 3.1.1 + Confused = 0x400000, // 3.0.3 + Fleeing = 0x800000, + Possessed = 0x1000000, // 3.1.1 + NotSelectable = 0x2000000, + Skinnable = 0x4000000, + Mounted = 0x8000000, + //Flag_28_0x10000000 = 0x10000000, + Dazed = 0x20000000, + Sheathe = 0x40000000, + //Flag_31_0x80000000 = 0x80000000, + } + +*/ + // polymorph sets bits 22 and 29 + + // bit 1 - not attackable + // bit 4 - evading + // bit 10 - looting + // bit 11 - combat (for mob) + // but 18 - stunned + // bit 19 - combat (for player) + // bit 23 - running away + // bit 25 - invisible/not selectable + // bit 26 - skinnable + // bit 29 - feign death + +typedef enum { + UnitStatus_Unknown0 = 0, + UnitStatus_NotAttackable = 1, + UnitStatus_Disablemove = 2, + UnitStatus_Unknown3, + UnitStatus_Evading = 4, + UnitStatus_Resting = 5, + UnitStatus_Elite = 6, + UnitStatus_Unknown7, + UnitStatus_Unknown8, + UnitStatus_Unknown9, // most NPCs in IF have this + UnitStatus_Looting = 10, // loot animation + UnitStatus_NPC_Combat = 11, // not really sure + UnitStatus_PVP = 12, + UnitStatus_Silenced = 13, + UnitStatus_Unknown14, + UnitStatus_Unknown15, // guards in IF all have this + UnitStatus_Unknown16, + UnitStatus_Pacified = 17, + UnitStatus_Stunned = 18, + UnitStatus_InCombat = 19, + UnitStatus_Unknown20, + UnitStatus_Disarmed = 21, + UnitStatus_Confused = 22, // used in polymorph + UnitStatus_Fleeing = 23, + UnitStatus_MindControl = 24, // used in eyes of the beast... + UnitStatus_NotSelectable = 25, + UnitStatus_Skinnable = 26, + UnitStatus_Mounted = 27, + UnitStatus_Unknown28 = 28, + UnitStatus_FeignDeath = 29, + UnitStatus_Sheathe = 30, +} UnitStatusBits; + + +typedef enum { + UnitPower_Mana = 0, + UnitPower_Rage = 1, + UnitPower_Focus = 2, + UnitPower_Energy = 3, + UnitPower_Happiness = 4, + UnitPower_Runes = 5, + UnitPower_RunicPower = 6, + UnitPower_SoulShard = 7, + UnitPower_Eclipse = 8, + UnitPower_HolyPower = 9, + UnitPower_Max = 10, +} UnitPower; + +typedef enum { + UnitGender_Male = 0, + UnitGender_Female = 1, + UnitGender_Unknown = 2, +} UnitGender; + +// UnitClass must be replicated in TargetClassCondition +typedef enum { + UnitClass_Unknown = 0, + UnitClass_Warrior = 1, + UnitClass_Paladin = 2, + UnitClass_Hunter = 3, + UnitClass_Rogue = 4, + UnitClass_Priest = 5, + UnitClass_DeathKnight = 6, + UnitClass_Shaman = 7, + UnitClass_Mage = 8, + UnitClass_Warlock = 9, + UnitClass_Druid = 11, +} UnitClass; + +typedef enum { + UnitRace_Human = 1, + UnitRace_Orc, + UnitRace_Dwarf, + UnitRace_NightElf, + UnitRace_Undead, + UnitRace_Tauren, + UnitRace_Gnome, + UnitRace_Troll, + UnitRace_Goblin, + UnitRace_BloodElf, + UnitRace_Draenei, + UnitRace_FelOrc, + UnitRace_Naga, + UnitRace_Broken, + UnitRace_Skeleton = 15, +} UnitRace; + +// CreatureType must be replicated in TargetClassCondition +typedef enum CreatureType +{ + CreatureType_Unknown = 0, + CreatureType_Beast = 1, // CREATURE_TYPE_BEAST + CreatureType_Dragon = 2, + CreatureType_Demon = 3, + CreatureType_Elemental = 4, + CreatureType_Giant = 5, + CreatureType_Undead = 6, + CreatureType_Humanoid = 7, + CreatureType_Critter = 8, + CreatureType_Mechanical = 9, + CreatureType_NotSpecified = 10, + CreatureType_Totem = 11, + CreatureType_Non_Combat_Pet = 12, + CreatureType_Gas_Cloud = 13, + + CreatureType_Max, +} CreatureType; + +typedef enum MovementFlag { + // some of these may be named poorly (names were my best guess) + MovementFlag_None = 0, // 0x00000000 + MovementFlag_Forward = (1 << 0), // 0x00000001 + MovementFlag_Backward = (1 << 1), // 0x00000002 + MovementFlag_StrafeLeft = (1 << 2), // 0x00000004 + MovementFlag_StrafeRight = (1 << 3), // 0x00000008 + MovementFlag_Left = (1 << 4), // 0x00000010 + MovementFlag_Right = (1 << 5), // 0x00000020 + MovementFlag_PitchUp = (1 << 6), // 0x00000040 + MovementFlag_PitchDown = (1 << 7), // 0x00000080 + MovementFlag_WalkMode = (1 << 8), // 0x00000100 + MovementFlag_OnTransport = (1 << 9), // 0x00000200 + MovementFlag_Levitating = (1 << 10), // 0x00000400 + MovementFlag_FlyUnknown11 = (1 << 11), // 0x00000800 + MovementFlag_Jumping = (1 << 12), // 0x00001000 + MovementFlag_Unknown13 = (1 << 13), // 0x00002000 + MovementFlag_Falling = (1 << 14), // 0x00004000 + // 0x8000, 0x10000, 0x20000, 0x40000, 0x80000, 0x100000 + MovementFlag_Swimming = (1 << 21), // 0x00200000 - can appear with Fly flag? + MovementFlag_FlyUp = (1 << 22), // 0x00400000 + MovementFlag_FlyDown = (1 << 23), // 0x00800000 + MovementFlag_Flying1 = (1 << 24), // 0x01000000 - flying, but not in the air + MovementFlag_Flying2 = (1 << 25), // 0x02000000 - actually in the air + MovementFlag_Spline1 = (1 << 26), // 0x04000000 - used for flight paths + MovementFlag_Spline2 = (1 << 27), // 0x08000000 - used for flight paths + MovementFlag_WaterWalking = (1 << 28), // 0x10000000 - don't fall through water + MovementFlag_SafeFall = (1 << 29), // 0x20000000 - active rogue safe fall spell (passive)? + MovementFlag_Unknown30 = (1 << 30), // 0x40000000 + // the last bit (31) is sometimes on, sometimes not. + // i think it's fair to say that it is not used and shouldn't matter. + + + // 0x80000001 - move forward + // 0x80000002 - move backward + // 0x80000004 - strafe left + // 0x80000008 - strafe right + + // 0x80000010 - turn left + // 0x80000020 - turn left + + // 0x80001000 - jumping + + // 0x80200000 - swimming + + // 0x81000000 - air mounted, on the ground + // 0x83000400 - air mounted, in the air + // 0x83400400 - air mounted, going up (spacebar) + // 0x83800400 - air mounted, going down (sit key) + // among others... + + /*from Ascent Emulator, + enum MovementFlags + { + // Byte 1 (Resets on Movement Key Press) + MOVEFLAG_MOVE_STOP = 0x00, //verified + MOVEFLAG_MOVE_FORWARD = 0x01, //verified + MOVEFLAG_MOVE_BACKWARD = 0x02, //verified + MOVEFLAG_STRAFE_LEFT = 0x04, //verified + MOVEFLAG_STRAFE_RIGHT = 0x08, //verified + MOVEFLAG_TURN_LEFT = 0x10, //verified + MOVEFLAG_TURN_RIGHT = 0x20, //verified + MOVEFLAG_PITCH_DOWN = 0x40, //Unconfirmed + MOVEFLAG_PITCH_UP = 0x80, //Unconfirmed + + // Byte 2 (Resets on Situation Change) + MOVEFLAG_WALK = 0x100, //verified + MOVEFLAG_TAXI = 0x200, + MOVEFLAG_NO_COLLISION = 0x400, + MOVEFLAG_FLYING = 0x800, //verified + MOVEFLAG_REDIRECTED = 0x1000, //Unconfirmed + MOVEFLAG_FALLING = 0x2000, //verified + MOVEFLAG_FALLING_FAR = 0x4000, //verified + MOVEFLAG_FREE_FALLING = 0x8000, //half verified + + // Byte 3 (Set by server. TB = Third Byte. Completely unconfirmed.) + MOVEFLAG_TB_PENDING_STOP = 0x10000, // (MOVEFLAG_PENDING_STOP) + MOVEFLAG_TB_PENDING_UNSTRAFE = 0x20000, // (MOVEFLAG_PENDING_UNSTRAFE) + MOVEFLAG_TB_PENDING_FALL = 0x40000, // (MOVEFLAG_PENDING_FALL) + MOVEFLAG_TB_PENDING_FORWARD = 0x80000, // (MOVEFLAG_PENDING_FORWARD) + MOVEFLAG_TB_PENDING_BACKWARD = 0x100000, // (MOVEFLAG_PENDING_BACKWARD) + MOVEFLAG_SWIMMING = 0x200000, // verified + MOVEFLAG_FLYING_PITCH_UP = 0x400000, // (half confirmed)(MOVEFLAG_PENDING_STR_RGHT) + MOVEFLAG_TB_MOVED = 0x800000, // (half confirmed) gets called when landing (MOVEFLAG_MOVED) + + // Byte 4 (Script Based Flags. Never reset, only turned on or off.) + MOVEFLAG_AIR_SUSPENSION = 0x1000000, // confirmed allow body air suspension(good name? lol). + MOVEFLAG_AIR_SWIMMING = 0x2000000, // confirmed while flying. + MOVEFLAG_SPLINE_MOVER = 0x4000000, // Unconfirmed + MOVEFLAG_IMMOBILIZED = 0x8000000, + MOVEFLAG_WATER_WALK = 0x10000000, + MOVEFLAG_FEATHER_FALL = 0x20000000, // Does not negate fall damage. + MOVEFLAG_LEVITATE = 0x40000000, + MOVEFLAG_LOCAL = 0x80000000, // This flag defaults to on. (Assumption) + + // Masks + MOVEFLAG_MOVING_MASK = 0x03, + MOVEFLAG_STRAFING_MASK = 0x0C, + MOVEFLAG_TURNING_MASK = 0x30, + MOVEFLAG_FALLING_MASK = 0x6000, + MOVEFLAG_MOTION_MASK = 0xE00F, // Forwards, Backwards, Strafing, Falling + MOVEFLAG_PENDING_MASK = 0x7F0000, + MOVEFLAG_PENDING_STRAFE_MASK = 0x600000, + MOVEFLAG_PENDING_MOVE_MASK = 0x180000, + MOVEFLAG_FULL_FALLING_MASK = 0xE000, + }; + */ + + + + + + + + + MovementFlag_Max = (1 << 31), +} MovementFlag; + +@class PlayerDataController; + +@interface Unit : WoWObject <UnitPosition> { + + IBOutlet PlayerDataController *playerController; + +} + ++ (id)unitWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +// global +- (Position*)position; +- (float)directionFacing; + +- (GUID)petGUID; + +- (GUID)charm; +- (GUID)summon; +- (GUID)targetID; +- (GUID)createdBy; +- (GUID)charmedBy; +- (GUID)summonedBy; + +// info +- (UInt32)level; +- (UInt32)maxPower; +- (UInt32)maxHealth; +- (UInt32)currentPower; +- (UInt32)percentPower; +- (UInt32)currentHealth; +- (UInt32)percentHealth; +- (UInt32)factionTemplate; +- (UInt32)movementFlags; +- (UInt32)mountID; + +- (UInt32)unitPowerWithQuality: (int)quality andType:(int)type; +- (UInt32)maxPowerOfType: (UnitPower)powerType; +- (UInt32)currentPowerOfType: (UnitPower)powerType; +- (UInt32)percentPowerOfType: (UnitPower)powerType; + +// unit type +- (UnitRace)race; +- (UnitGender)gender; +- (UnitClass)unitClass; +- (UnitPower)powerType; + +- (CreatureType)creatureType; + +// unit type translation ++ (NSString*)stringForClass: (UnitClass)unitClass; ++ (NSString*)stringForRace: (UnitRace)unitRace; ++ (NSString*)stringForGender: (UnitGender) underGender; +- (NSImage*)iconForClass: (UnitClass)unitClass; +- (NSImage*)iconForRace: (UnitRace)unitRace gender: (UnitGender)unitGender; + +// status +- (BOOL)isPet; +- (BOOL)hasPet; +- (BOOL)isTotem; +- (BOOL)isElite; +- (BOOL)isCasting; +- (BOOL)isMounted; +- (BOOL)isOnGround; +- (BOOL)isSwimming; +- (BOOL)isTargetingMe; +- (BOOL)isFlyingMounted; + +- (UInt32)stateFlags; +- (BOOL)isPVP; +- (BOOL)isDead; +- (BOOL)isFleeing; +- (BOOL)isEvading; +- (BOOL)isInCombat; +- (BOOL)isSkinnable; +- (BOOL)isFeignDeath; +- (BOOL)isSelectable; +- (BOOL)isAttackable; + +- (UInt32)dynamicFlags; +- (UInt32)npcFlags; +- (BOOL)isLootable; // always NO (implement in subclass) +- (BOOL)isTappedByOther; // always NO (implement in subclass) + +- (void)trackUnit; +- (void)untrackUnit; + +- (UInt32)petNumber; +- (UInt32)petNameTimestamp; + +- (UInt32)createdBySpell; + +- (UInt32)unitBytes1; +- (UInt32)unitBytes2; + +- (BOOL)isSitting; + +@end + +@protocol Unit +- (Unit*)unit; +@end diff --git a/Unit.m b/Unit.m new file mode 100644 index 0000000..f61f5a5 --- /dev/null +++ b/Unit.m @@ -0,0 +1,1099 @@ +// +// Unit.m +// Pocket Gnome +// +// Created by Jon Drummond on 5/26/08. +// Copyright 2008 Savory Software, LLC. All rights reserved. +// + +#import "Unit.h" +#import "Offsets.h" +#import "Condition.h" + +#import "SpellController.h" +#import "PlayerDataController.h" +#import "OffsetController.h" + +/* +/// Non Player Character flags +enum NPCFlags +{ + UNIT_NPC_FLAG_NONE = 0x00000000, + UNIT_NPC_FLAG_GOSSIP = 0x00000001, + UNIT_NPC_FLAG_QUESTGIVER = 0x00000002, + UNIT_NPC_FLAG_VENDOR = 0x00000004, + UNIT_NPC_FLAG_TAXIVENDOR = 0x00000008, + UNIT_NPC_FLAG_TRAINER = 0x00000010, + UNIT_NPC_FLAG_SPIRITHEALER = 0x00000020, + UNIT_NPC_FLAG_SPIRITGUIDE = 0x00000040, // Spirit Guide + UNIT_NPC_FLAG_INNKEEPER = 0x00000080, + UNIT_NPC_FLAG_BANKER = 0x00000100, + UNIT_NPC_FLAG_PETITIONER = 0x00000200, // 0x600 = guild petitions, 0x200 = arena team petitions + UNIT_NPC_FLAG_TABARDDESIGNER = 0x00000400, + UNIT_NPC_FLAG_BATTLEFIELDPERSON = 0x00000800, + UNIT_NPC_FLAG_AUCTIONEER = 0x00001000, + UNIT_NPC_FLAG_STABLE = 0x00002000, + UNIT_NPC_FLAG_ARMORER = 0x00004000, + UNIT_NPC_FLAG_GUARD = 0x00010000, // custom flag +}; +*/ + +@interface Unit (Internal) +- (UInt32)infoFlags; +@end + +@implementation Unit + ++ (id)unitWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + return [[[Unit alloc] initWithAddress: address inMemory: memory] autorelease]; +} + +#pragma mark Object Global Accessors + +// 1 read +- (Position*)position { + float pos[3] = {-1.0f, -1.0f, -1.0f }; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + BaseField_XLocation) Buffer: (Byte *)&pos BufLength: sizeof(float)*3]) + return [Position positionWithX: pos[0] Y: pos[1] Z: pos[2]]; + return nil; +} + +- (float)directionFacing { + float floatValue = -1.0; + [_memory loadDataForObject: self atAddress: ([self baseAddress] + BaseField_Facing_Horizontal) Buffer: (Byte*)&floatValue BufLength: sizeof(floatValue)]; + return floatValue; +} + + +- (GUID)petGUID { + UInt64 value = 0; + + // check for summon + if( (value = [self summon]) ) { + return value; + } + + // check for charm + if( (value = [self charm]) ) { + return value; + } + return 0; +} + + +- (BOOL)hasPet { + if( [self petGUID] > 0 ) { + return YES; + } + return NO; +} + +- (BOOL)isPet { + if((GUID_HIPART([self GUID]) == HIGHGUID_PET) || [self isTotem]) + return YES; + + if( [self createdBy] || [self summonedBy] || [self charmedBy]) + return YES; + + return NO; +} + +- (BOOL)isTotem { + return NO; +} + +- (BOOL)isCasting { + UInt32 cast = 0, channel = 0; + if([self isNPC]) { + [_memory loadDataForObject: self atAddress: ([self baseAddress] + [[OffsetController sharedController] offset:@"BaseField_Spell_ToCast"]) Buffer: (Byte *)&cast BufLength: sizeof(cast)]; + [_memory loadDataForObject: self atAddress: ([self baseAddress] + [[OffsetController sharedController] offset:@"BaseField_Spell_Channeling"]) Buffer: (Byte *)&channel BufLength: sizeof(channel)]; + } else if([self isPlayer]) { + [_memory loadDataForObject: self atAddress: ([self baseAddress] + [[OffsetController sharedController] offset:@"BaseField_Spell_Casting"]) Buffer: (Byte *)&cast BufLength: sizeof(cast)]; + [_memory loadDataForObject: self atAddress: ([self baseAddress] + [[OffsetController sharedController] offset:@"BaseField_Spell_Channeling"]) Buffer: (Byte *)&channel BufLength: sizeof(channel)]; + } + + if( cast > 0 || channel > 0) + return YES; + + return NO; +} + +- (UInt32)mountID{ + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_MOUNTDISPLAYID) Buffer: (Byte*)&value BufLength: sizeof(value)] && (value > 0) && (value != 0xDDDDDDDD)) { + return value; + } + return 0; +} + + +- (BOOL)isMounted { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_MOUNTDISPLAYID) Buffer: (Byte*)&value BufLength: sizeof(value)] && (value > 0) && (value != 0xDDDDDDDD)) { + return YES; + } + + // check movement flags (mainly for the druid flight form since the mount display fails) + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + BaseField_MovementFlags) Buffer: (Byte*)&value BufLength: sizeof(value)] && (value > 0) && (value & MovementFlags_AirMounted)) { + return YES; + } + + return NO; +} + +- (BOOL)isOnGround { + UInt32 movementFlags = [self movementFlags]; + + // player is air mounted + in the air! + if ( (movementFlags & MovementFlags_AirMountedInAir) == MovementFlags_AirMountedInAir ){ + return NO; + } + + // player is in the air + if ( (movementFlags & MovementFlags_InAir) == MovementFlags_InAir ){ + return NO; + } + + // we should assume if we get here, the player must be on the ground + return YES; +} + +-(BOOL)isSwimming{ + UInt32 movementFlags = [self movementFlags]; + + if ( (movementFlags & MovementFlag_Swimming) == MovementFlag_Swimming ){ + return YES; + } + + return NO; +} + +-(BOOL)isTargetingMe{ + + if ( [self targetID] == [playerController GUID] ) return YES; + + return NO; +} + +- (BOOL)isFlyingMounted{ + UInt32 movementFlags = [self movementFlags]; + + if ( movementFlags & MovementFlag_Flying1 ){ + return YES; + } + else if ( movementFlags & MovementFlag_Flying2 ){ + return YES; + } + return NO; +} + +- (BOOL)isElite { + return NO; +} + +#pragma mark Object Field Accessors + +- (UInt64)charm { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_CHARM) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +- (UInt64)summon { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_SUMMON) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +// 1 read +- (UInt64)targetID { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_TARGET) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +- (UInt64)createdBy { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_CREATEDBY) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +- (UInt64)summonedBy { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_SUMMONEDBY) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +- (UInt64)charmedBy { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_CHARMEDBY) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +// 3 reads (2 in powerType, 1) +- (UInt32)maxPower { + return [self maxPowerOfType: [self powerType]]; +} + +// 3 reads +- (UInt32)currentPower { + return [self currentPowerOfType: [self powerType]]; +} + +// 4 reads: 2 in powerType, 2 in percentPowerOfType +- (UInt32)percentPower { + return [self percentPowerOfType: [self powerType]]; +} + + +// 1 +- (UInt32)maxHealth { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_MAXHEALTH) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +// 1 read +- (UInt32)currentHealth { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_HEALTH) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +// 2 reads +- (UInt32)percentHealth { + UInt32 maxHealth = [self maxHealth]; + if(maxHealth == 0) return 0; + return (UInt32)((((1.0)*[self currentHealth])/maxHealth) * 100); +} + +// 1 read +- (UInt32)level { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_LEVEL) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +// 1 read +- (UInt32)factionTemplate { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_FACTIONTEMPLATE) Buffer: (Byte *)&value BufLength: sizeof(value)]; + return value; +} + +// 1 read +- (UInt32)movementFlags { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self baseAddress] + BaseField_MovementFlags) Buffer: (Byte*)&value BufLength: sizeof(value)]; + return value; +} + +#pragma mark Power Helper + +// type : 0 = current, 1 = percentage +- (UInt32)unitPowerWithQuality:(int)quality andType:(int)type{ + + // check if it's power or health + if ( quality == QualityHealth ){ + return ( (type == TypeValue) ? [self currentHealth] : [self percentHealth] ); + } + else if ( quality == QualityPower ){ + return ( (type == TypeValue) ? [self currentPower] : [self percentPower] ); + } + + // otherwise check the other types! + UInt32 powerType = 0; + switch ( quality ){ + case QualityRage: + powerType = UnitPower_Rage; + break; + case QualityEnergy: + powerType = UnitPower_Energy; + break; + case QualityHappiness: + powerType = UnitPower_Happiness; + break; + case QualityFocus: + powerType = UnitPower_Focus; + break; + case QualityRunicPower: + powerType = UnitPower_RunicPower; + break; + case QualityEclipse: + powerType = UnitPower_Eclipse; + break; + case QualityHolyPower: + powerType = UnitPower_HolyPower; + break; + case QualitySoulShards: + powerType = UnitPower_SoulShard; + break; + } + + // actual value + if ( type == TypeValue ){ + return [self currentPowerOfType:powerType]; + } + // percentage + else{ + return [self maxPowerOfType:powerType]; + } + + return 0; +} + +#pragma mark - + +// 1 read +- (UInt32)maxPowerOfType: (UnitPower)powerType { + if(powerType < 0 || powerType > UnitPower_Max) return 0; + + UInt32 value; + if([_memory loadDataForObject: self atAddress: (([self unitFieldAddress] + UNIT_FIELD_MAXPOWER1) + (sizeof(value) * powerType)) Buffer: (Byte *)&value BufLength: sizeof(value)]) + { + if((powerType == UnitPower_Rage) || (powerType == UnitPower_RunicPower)) + return value/10; + else + return value; + } + return 0; +} + +// 1 read +- (UInt32)currentPowerOfType: (UnitPower)powerType { + if(powerType < 0 || powerType > UnitPower_Max) return 0; + UInt32 value; + if([_memory loadDataForObject: self atAddress: (([self unitFieldAddress] + UNIT_FIELD_POWER1) + (sizeof(value) * powerType)) Buffer: (Byte *)&value BufLength: sizeof(value)]) + { + if((powerType == UnitPower_Rage) || (powerType == UnitPower_RunicPower)) + return lrintf(floorf(value/10.0f)); + else + return value; + } + return 0; +} + +// 1 in maxP, 1 in currP +- (UInt32)percentPowerOfType: (UnitPower)powerType { + + UInt32 maxPower = [self maxPowerOfType: powerType]; + if(maxPower == 0) return 0; + return (UInt32)((((1.0)*[self currentPowerOfType: powerType])/maxPower) * 100); +} + +#pragma mark Unit Info + +// 2 read +- (UInt32)infoFlags { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_BYTES_0) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return CFSwapInt32HostToLittle(value); + } + return 0; +} + +- (UnitRace)race { + return ([self infoFlags] >> 0 & 0xFF); +} + +- (UnitClass)unitClass { + return (([self infoFlags] >> 8) & 0xFF); +} + +- (UnitGender)gender { + return (([self infoFlags] >> 16) & 0xFF); +} + +- (UnitPower)powerType { + return (([self infoFlags] >> 24) & 0xFF); +} + +- (CreatureType)creatureType { + if([self isPlayer]) { + return CreatureType_Humanoid; + } + return CreatureType_Unknown; +} + +#pragma mark Unit Info Translations + ++ (NSString*)stringForClass: (UnitClass)unitClass { + NSString *stringClass = nil; + + switch(unitClass) { + case UnitClass_Warrior: + stringClass = @"Warrior"; + break; + case UnitClass_Paladin: + stringClass = @"Paladin"; + break; + case UnitClass_Hunter: + stringClass = @"Hunter"; + break; + case UnitClass_Rogue: + stringClass = @"Rogue"; + break; + case UnitClass_Priest: + stringClass = @"Priest"; + break; + case UnitClass_Shaman: + stringClass = @"Shaman"; + break; + case UnitClass_Mage: + stringClass = @"Mage"; + break; + case UnitClass_Warlock: + stringClass = @"Warlock"; + break; + case UnitClass_Druid: + stringClass = @"Druid"; + break; + case UnitClass_DeathKnight: + stringClass = @"Death Knight"; + break; + default: + stringClass = @"Unknown"; + break; + } + return stringClass; +} + ++ (NSString*)stringForRace: (UnitRace)unitRace { + NSString *string = nil; + + switch(unitRace) { + case UnitRace_Human: + string = @"Human"; + break; + case UnitRace_Orc: + string = @"Orc"; + break; + case UnitRace_Dwarf: + string = @"Dwarf"; + break; + case UnitRace_NightElf: + string = @"Night Elf"; + break; + case UnitRace_Undead: + string = @"Undead"; + break; + case UnitRace_Tauren: + string = @"Tauren"; + break; + case UnitRace_Gnome: + string = @"Gnome"; + break; + case UnitRace_Troll: + string = @"Troll"; + break; + case UnitRace_Goblin: + string = @"Goblin"; + break; + case UnitRace_BloodElf: + string = @"Blood Elf"; + break; + case UnitRace_Draenei: + string = @"Draenei"; + break; + case UnitRace_FelOrc: + string = @"Fel Orc"; + break; + case UnitRace_Naga: + string = @"Naga"; + break; + case UnitRace_Broken: + string = @"Broken"; + break; + case UnitRace_Skeleton: + string = @"Skeleton"; + break; + default: + string = @"Unknown"; + break; + } + return string; +} + ++ (NSString*)stringForGender: (UnitGender) underGender { + NSString *string = nil; + + switch(underGender) { + case UnitGender_Male: + string = @"Male"; + break; + case UnitGender_Female: + string = @"Female"; + break; + default: + string = @"Unknown"; + break; + } + return string; +} + +- (NSImage*)iconForClass: (UnitClass)unitClass { + return [NSImage imageNamed: [[NSString stringWithFormat: @"%@_Small", [Unit stringForClass: unitClass]] stringByReplacingOccurrencesOfString: @" " withString: @""]]; + + NSImage *icon = nil; + switch(unitClass) { + case UnitClass_Warrior: + icon = [NSImage imageNamed: @"Warrior"]; + break; + case UnitClass_Paladin: + icon = [NSImage imageNamed: @"Paladin"]; + break; + case UnitClass_Hunter: + icon = [NSImage imageNamed: @"Hunter"]; + break; + case UnitClass_Rogue: + icon = [NSImage imageNamed: @"Rogue"]; + break; + case UnitClass_Priest: + icon = [NSImage imageNamed: @"Priest"]; + break; + case UnitClass_Shaman: + icon = [NSImage imageNamed: @"Shaman"]; + break; + case UnitClass_Mage: + icon = [NSImage imageNamed: @"Mage"]; + break; + case UnitClass_Warlock: + icon = [NSImage imageNamed: @"Warlock"]; + break; + case UnitClass_Druid: + icon = [NSImage imageNamed: @"Druid"]; + break; + case UnitClass_DeathKnight: + icon = [NSImage imageNamed: @"Death Knight"]; + break; + default: + icon = [NSImage imageNamed: @"UnknownSmall"]; + break; + } + return icon; +} + +- (NSImage*)iconForRace: (UnitRace)unitRace gender: (UnitGender)unitGender { + return [NSImage imageNamed: + [[NSString stringWithFormat: @"%@-%@_Small", + [Unit stringForRace: unitRace], + [Unit stringForGender: unitGender]] + stringByReplacingOccurrencesOfString: @" " withString: @""]]; +} + + +#pragma mark State Functions + +// 2 read +- (UInt32)stateFlags { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return value; + } + return 0; +} + + +- (BOOL)isPVP { + if( ([self stateFlags] & (1 << UnitStatus_PVP)) == (1 << UnitStatus_PVP)) // 0x1000 + return YES; + return NO; +} + +// 2 reads +- (BOOL)isDead { + int currentHealth = [self currentHealth]; + if ( currentHealth == 0 ) { + if([self isFeignDeath]) { + return NO; + } + return YES; + } + return NO; +} + +- (BOOL)isFleeing { + if( ([self stateFlags] & (1 << UnitStatus_Fleeing)) == (1 << UnitStatus_Fleeing)) + return YES; + return NO; +} + +- (BOOL)isEvading { + if( ([self stateFlags] & (1 << UnitStatus_Evading)) == (1 << UnitStatus_Evading)) + return YES; + return NO; +} + +- (BOOL)isInCombat { + if( ([self stateFlags] & (1 << UnitStatus_InCombat)) == (1 << UnitStatus_InCombat)) // 0x80000 + return YES; + return NO; +} + +- (BOOL)isSkinnable { + return NO; +} + +- (BOOL)isFeignDeath { + if ( ([self stateFlags] & (1 << UnitStatus_FeignDeath)) == (1 << UnitStatus_FeignDeath)) // 0x20000000 + return YES; + return NO; +} + +- (BOOL)isSelectable { + if ( ([self stateFlags] & (1 << UnitStatus_NotSelectable)) == (1 << UnitStatus_NotSelectable)) + return NO; + return YES; +} + +- (BOOL)isAttackable { + if ( ([self stateFlags] & (1 << UnitStatus_NotAttackable)) == (1 << UnitStatus_NotAttackable)) + return NO; + return YES; +} + + +- (UInt32)dynamicFlags { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_DYNAMIC_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return value; + } + return 0; +} + +- (UInt32)npcFlags { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_NPC_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return value; + } + return 0; +} + +- (BOOL)isLootable { + return NO; +} + +- (BOOL)isTappedByOther { + return NO; +} + +- (void)trackUnit { + UInt32 value = [self dynamicFlags] | 0x2; + [_memory saveDataForAddress: ([self unitFieldAddress] + UNIT_DYNAMIC_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)]; +} +- (void)untrackUnit { + UInt32 value = [self dynamicFlags] & ~0x2; + [_memory saveDataForAddress: ([self unitFieldAddress] + UNIT_DYNAMIC_FLAGS) Buffer: (Byte *)&value BufLength: sizeof(value)]; +} + +- (UInt32)petNumber { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_PETNUMBER) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (UInt32)petNameTimestamp { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_PET_NAME_TIMESTAMP) Buffer: (Byte *)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (UInt32)createdBySpell { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_CREATED_BY_SPELL) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return value; + } + return 0; +} + +- (UInt32)unitBytes1 { + // sit == 4, 5, 6 + // lie down = 0x7 + // kneel = 0x8 + // no shadow = 9 + + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_BYTES_1) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return CFSwapInt32HostToLittle(value); // not tested if CFSwapInt32HostToLittle is necessary, since unitBytes1 is not yet used anywhere + } + return 0; +} + + +- (BOOL)isSitting { + return ([self unitBytes1] & 0x1); +} + +- (UInt32)unitBytes2 { + UInt32 value = 0; + if([self isValid] && [_memory loadDataForObject: self atAddress: ([self unitFieldAddress] + UNIT_FIELD_BYTES_2) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value != 0xDDDDDDDD)) { + return CFSwapInt32HostToLittle(value); + } + return 0; +} + +/* + +// byte value (UNIT_FIELD_BYTES_1,0) +enum UnitStandStateType +{ + UNIT_STAND_STATE_STAND = 0, + UNIT_STAND_STATE_SIT = 1, + UNIT_STAND_STATE_SIT_CHAIR = 2, + UNIT_STAND_STATE_SLEEP = 3, + UNIT_STAND_STATE_SIT_LOW_CHAIR = 4, + UNIT_STAND_STATE_SIT_MEDIUM_CHAIR = 5, + UNIT_STAND_STATE_SIT_HIGH_CHAIR = 6, + UNIT_STAND_STATE_DEAD = 7, + UNIT_STAND_STATE_KNEEL = 8 +}; + +// byte flag value (UNIT_FIELD_BYTES_1,2) +enum UnitStandFlags +{ + UNIT_STAND_FLAGS_CREEP = 0x02, + UNIT_STAND_FLAGS_ALL = 0xFF +}; + +// byte flags value (UNIT_FIELD_BYTES_1,3) +enum UnitBytes1_Flags +{ + UNIT_BYTE1_FLAG_ALWAYS_STAND = 0x01, + UNIT_BYTE1_FLAG_UNTRACKABLE = 0x04, + UNIT_BYTE1_FLAG_ALL = 0xFF +}; + + +// high byte (3 from 0..3) of UNIT_FIELD_BYTES_2 +enum ShapeshiftForm +{ + FORM_NONE = 0x00, + FORM_CAT = 0x01, + FORM_TREE = 0x02, + FORM_TRAVEL = 0x03, + FORM_AQUA = 0x04, + FORM_BEAR = 0x05, + FORM_AMBIENT = 0x06, + FORM_GHOUL = 0x07, + FORM_DIREBEAR = 0x08, + FORM_CREATUREBEAR = 0x0E, + FORM_CREATURECAT = 0x0F, + FORM_GHOSTWOLF = 0x10, + FORM_BATTLESTANCE = 0x11, + FORM_DEFENSIVESTANCE = 0x12, + FORM_BERSERKERSTANCE = 0x13, + FORM_TEST = 0x14, + FORM_ZOMBIE = 0x15, + FORM_FLIGHT_EPIC = 0x1B, + FORM_SHADOW = 0x1C, + FORM_FLIGHT = 0x1D, + FORM_STEALTH = 0x1E, + FORM_MOONKIN = 0x1F, + FORM_SPIRITOFREDEMPTION = 0x20 +}; + + +// byte (2 from 0..3) of UNIT_FIELD_BYTES_2 +enum UnitRename +{ + UNIT_RENAME_NOT_ALLOWED = 0x02, + UNIT_RENAME_ALLOWED = 0x03 +}; + +// byte (1 from 0..3) of UNIT_FIELD_BYTES_2 +enum UnitBytes2_Flags +{ + UNIT_BYTE2_FLAG_PVP = 0x01, + UNIT_BYTE2_FLAG_UNK1 = 0x02, + UNIT_BYTE2_FLAG_FFA_PVP = 0x04, + UNIT_BYTE2_FLAG_SANCTUARY = 0x08, + UNIT_BYTE2_FLAG_UNK4 = 0x10, + UNIT_BYTE2_FLAG_UNK5 = 0x20, + UNIT_BYTE2_FLAG_UNK6 = 0x40, + UNIT_BYTE2_FLAG_UNK7 = 0x80 +}; + +// low byte ( 0 from 0..3 ) of UNIT_FIELD_BYTES_2 +enum SheathState +{ + SHEATH_STATE_UNARMED = 0, // non prepared weapon + SHEATH_STATE_MELEE = 1, // prepared melee weapon + SHEATH_STATE_RANGED = 2 // prepared ranged weapon +}; +*/ + +#pragma mark - + +- (NSString*)descriptionForOffset: (UInt32)offset { + NSString *desc = nil; + + if(offset < ([self infoAddress] - [self baseAddress])) { + + switch(offset) { + + case BaseField_RunSpeed_Current: + desc = @"Current Speed (float)"; + break; + case BaseField_RunSpeed_Max: + desc = @"Max Ground Speed (float)"; + break; + case BaseField_AirSpeed_Max: + desc = @"Max Air Speed (float)"; + break; + + case BaseField_XLocation: + desc = @"X Location (float)"; + break; + case BaseField_YLocation: + desc = @"Y Location (float)"; + break; + case BaseField_ZLocation: + desc = @"Z Location (float)"; + break; + + case BaseField_Facing_Horizontal: + desc = @"Direction Facing - Horizontal (float, [0, 2pi])"; + break; + case BaseField_Facing_Vertical: + desc = @"Direction Facing - Vertical (float, [-pi/2, pi/2])"; + break; + + case BaseField_MovementFlags: + desc = @"Movement Flags"; + break; + + case BaseField_Auras_Start: + desc = @"Start of Auras"; + break; + case BaseField_Auras_ValidCount: + desc = @"Auras Valid Count"; + break; + + case BaseField_Auras_OverflowPtr1: + desc = @"Start of Auras 2"; + break; + case BaseField_Auras_OverflowValidCount: + desc = @"Auras Valid Count 2"; + break; + } + + // dynamic shit + if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_Casting"] ){ + desc = @"Spell ID of casting spell"; + } + else if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_TimeEnd"] ){ + desc = @"Time of cast end"; + } + else if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_TimeStart"] ){ + desc = @"Time of cast start"; + } + else if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_ToCast"] ){ + desc = @"Spell ID to cast"; + } + else if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_Channeling"] ){ + desc = @"Spell ID channeling"; + } + else if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_ChannelTimeStart"] ){ + desc = @"Time of channel start"; + } + else if ( offset == [[OffsetController sharedController] offset:@"BaseField_Spell_ChannelTimeEnd"] ){ + desc = @"Time of channel end"; + } + + } else { + int revOffset = offset - ([self unitFieldAddress] - [self baseAddress]); + + switch(revOffset) { + case UNIT_FIELD_CHARM: + desc = @"Charm (GUID)"; + break; + case UNIT_FIELD_SUMMON: + desc = @"Summon (GUID)"; + break; + case UNIT_FIELD_CRITTER: + desc = @"Critter (GUID)"; + break; + case UNIT_FIELD_CHARMEDBY: + desc = @"Charmed By (GUID)"; + break; + case UNIT_FIELD_SUMMONEDBY: + desc = @"Summoned By (GUID)"; + break; + case UNIT_FIELD_CREATEDBY: + desc = @"Created By (GUID)"; + break; + case UNIT_FIELD_TARGET: + desc = @"Target (GUID)"; + break; + case UNIT_FIELD_CHANNEL_OBJECT: + desc = @"Channel Target (GUID)"; + break; + case UNIT_CHANNEL_SPELL: + desc = @"Channel Spell"; + break; + case UNIT_FIELD_BYTES_0: + desc = @"Info Flags (bytes_0)"; + break; + case UNIT_FIELD_HEALTH: + desc = @"Health, Current"; + break; + case UNIT_FIELD_POWER1: + desc = @"Mana, Current"; + break; + case UNIT_FIELD_POWER2: + desc = @"Rage, Current"; + break; + case UNIT_FIELD_POWER3: + desc = @"Focus, Current"; + break; + case UNIT_FIELD_POWER4: + desc = @"Energy, Current"; + break; + case UNIT_FIELD_POWER5: + desc = @"Happiness, Current"; + break; + case UNIT_FIELD_POWER6: + desc = @"Power 6"; + break; + case UNIT_FIELD_POWER7: + desc = @"Runic Power, Current"; + break; + case UNIT_FIELD_POWER8: + desc = @"Power 8"; + break; + case UNIT_FIELD_POWER9: + desc = @"Eclipse Power, Current"; + break; + case UNIT_FIELD_POWER10: + desc = @"Power 10"; + break; + case UNIT_FIELD_POWER11: + desc = @"Power 11"; + break; + + case UNIT_FIELD_MAXHEALTH: + desc = @"Health, Max"; + break; + case UNIT_FIELD_MAXPOWER1: + desc = @"Mana, Max"; + break; + case UNIT_FIELD_MAXPOWER2: + desc = @"Rage, Max"; + break; + case UNIT_FIELD_MAXPOWER3: + desc = @"Focus, Max"; + break; + case UNIT_FIELD_MAXPOWER4: + desc = @"Energy, Max"; + break; + case UNIT_FIELD_MAXPOWER5: + desc = @"Happiness, Max"; + break; + case UNIT_FIELD_MAXPOWER6: + desc = @"Power 6, Max"; + break; + case UNIT_FIELD_MAXPOWER7: + desc = @"Runic Power, Max"; + break; + case UNIT_FIELD_MAXPOWER8: + desc = @"Power 8, Max"; + break; + case UNIT_FIELD_MAXPOWER9: + desc = @"Eclipse Power, Max"; + break; + case UNIT_FIELD_MAXPOWER10: + desc = @"Power 10, Max"; + break; + case UNIT_FIELD_MAXPOWER11: + desc = @"Power 11, Max"; + break; + + case UNIT_FIELD_POWER_REGEN_FLAT_MODIFIER: + desc = @"Regen Modifier"; + break; + case UNIT_FIELD_POWER_REGEN_INTERRUPTED_FLAT_MODIFIER: + desc = @"Regen Int Modifier"; + break; + + case UNIT_FIELD_LEVEL: + desc = @"Level"; + break; + case UNIT_FIELD_FACTIONTEMPLATE: + desc = @"Faction"; + break; + case UNIT_FIELD_FLAGS: + desc = @"Info Flags (Flags)"; + break; + case UNIT_FIELD_FLAGS_2: + desc = @"Status Flags (Flags2)"; + break; + + case UNIT_FIELD_BOUNDINGRADIUS: + desc = @"Bounding Radius"; + break; + case UNIT_FIELD_COMBATREACH: + desc = @"Combat Reach"; + break; + case UNIT_FIELD_DISPLAYID: + desc = @"Display ID"; + break; + case UNIT_FIELD_NATIVEDISPLAYID: + desc = @"Native Display ID"; + break; + case UNIT_FIELD_MOUNTDISPLAYID: + desc = @"Mount Display ID"; + break; + + case UNIT_FIELD_BYTES_1: + desc = @"Unit Bytes 1"; + break; + + case UNIT_FIELD_PETNUMBER: + desc = @"Pet Number"; + break; + + case UNIT_FIELD_PETEXPERIENCE: + desc = @"Pet Experience"; + break; + case UNIT_FIELD_PETNEXTLEVELEXP: + desc = @"Pet Next Level Experience"; + break; + + case UNIT_DYNAMIC_FLAGS: + desc = @"Dynamic Flags"; + break; + case UNIT_MOD_CAST_SPEED: + desc = @"Cast Speed Modifier"; + break; + case UNIT_CREATED_BY_SPELL: + desc = @"Created by Spell"; + break; + case UNIT_NPC_FLAGS: + desc = @"NPC Flags"; + break; + + case UNIT_FIELD_BYTES_2: + desc = @"Unit Bytes 2"; + break; + } + } + + if(desc) return desc; + + return [super descriptionForOffset: offset]; +} + +@end diff --git a/UnknownSmall.png b/UnknownSmall.png new file mode 100644 index 0000000..e74844a Binary files /dev/null and b/UnknownSmall.png differ diff --git a/VendorAction.xib b/VendorAction.xib new file mode 100644 index 0000000..99c83f5 --- /dev/null +++ b/VendorAction.xib @@ -0,0 +1,801 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="2"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">VendorActionController</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSCustomView" id="897934020"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">268</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="867616341"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{32, 7}, {289, 17}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="708912579"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Coming soon...</string> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="867616341"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + </object> + <object class="NSButton" id="652240429"> + <reference key="NSNextResponder" ref="897934020"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{7, 5}, {20, 19}}</string> + <reference key="NSSuperview" ref="897934020"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="73651569"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents"/> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">12</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="652240429"/> + <int key="NSButtonFlags">-1225506561</int> + <int key="NSButtonFlags2">173</int> + <object class="NSCustomResource" key="NSNormalImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSStopProgressTemplate</string> + </object> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + </object> + </object> + </object> + <string key="NSFrameSize">{338, 33}</string> + <reference key="NSSuperview"/> + <string key="NSClassName">NSView</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">disableButton</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">94</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">disableAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="652240429"/> + </object> + <int key="connectionID">95</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">view</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="897934020"/> + </object> + <int key="connectionID">96</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">2</int> + <reference key="object" ref="897934020"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="867616341"/> + <reference ref="652240429"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">52</int> + <reference key="object" ref="867616341"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="708912579"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">53</int> + <reference key="object" ref="708912579"/> + <reference key="parent" ref="867616341"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">79</int> + <reference key="object" ref="652240429"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="73651569"/> + </object> + <reference key="parent" ref="897934020"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">80</int> + <reference key="object" ref="73651569"/> + <reference key="parent" ref="652240429"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>2.IBEditorWindowLastContentRect</string> + <string>2.IBPluginDependency</string> + <string>2.WindowOrigin</string> + <string>2.editorWindowContentRectSynchronizationRect</string> + <string>52.IBPluginDependency</string> + <string>53.IBPluginDependency</string> + <string>79.IBAttributePlaceholdersKey</string> + <string>79.IBPluginDependency</string> + <string>80.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{742, 572}, {338, 33}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{628, 654}</string> + <string>{{478, 384}, {635, 36}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <object class="NSMutableDictionary"> + <string key="NS.key.0">ToolTip</string> + <object class="IBToolTipAttribute" key="NS.object.0"> + <string key="name">ToolTip</string> + <reference key="object" ref="652240429"/> + <string key="toolTip">Disable this condition.</string> + </object> + </object> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">96</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">ActionController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>disableAction:</string> + <string>validateState:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>_delegate</string> + <string>disableButton</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>NSButton</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ActionController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">VendorActionController</string> + <string key="superclassName">ActionController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">VendorActionController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="719438336"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="655073164"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="935059400"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="508622699"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="222334903"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="719438336"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="655073164"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="935059400"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="508622699"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="222334903"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="847068275"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="847068275"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/VendorActionController.h b/VendorActionController.h new file mode 100644 index 0000000..8367bb2 --- /dev/null +++ b/VendorActionController.h @@ -0,0 +1,16 @@ +// +// VendorActionController.h +// Pocket Gnome +// +// Created by Josh on 1/22/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "ActionController.h" + +@interface VendorActionController : ActionController { + +} + +@end diff --git a/VendorActionController.m b/VendorActionController.m new file mode 100644 index 0000000..07e4c46 --- /dev/null +++ b/VendorActionController.m @@ -0,0 +1,42 @@ +// +// VendorActionController.m +// Pocket Gnome +// +// Created by Josh on 1/22/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "VendorActionController.h" +#import "ActionController.h" + +@implementation VendorActionController + +- (id) init +{ + self = [super init]; + if (self != nil) { + if(![NSBundle loadNibNamed: @"VendorAction" owner: self]) { + log(LOG_GENERAL, @"Error loading VendorAction.nib."); + + [self release]; + self = nil; + } + } + return self; +} + +- (IBAction)validateState: (id)sender { + +} + +- (Action*)action { + [self validateState: nil]; + + Action *action = [Action actionWithType:ActionType_Vendor value:nil]; + + [action setEnabled: self.enabled]; + + return action; +} + +@end diff --git a/Warlock.png b/Warlock.png new file mode 100644 index 0000000..393a7d4 Binary files /dev/null and b/Warlock.png differ diff --git a/Warlock_Small.gif b/Warlock_Small.gif new file mode 100644 index 0000000..de66e6b Binary files /dev/null and b/Warlock_Small.gif differ diff --git a/Warrior.png b/Warrior.png new file mode 100644 index 0000000..cd4493c Binary files /dev/null and b/Warrior.png differ diff --git a/Warrior_Small.gif b/Warrior_Small.gif new file mode 100644 index 0000000..69f21f7 Binary files /dev/null and b/Warrior_Small.gif differ diff --git a/Waypoint.h b/Waypoint.h new file mode 100644 index 0000000..ef85b23 --- /dev/null +++ b/Waypoint.h @@ -0,0 +1,41 @@ +// +// Waypoint.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "Position.h" + +@class Action; +@class Rule; + +@interface Waypoint : NSObject <UnitPosition, NSCoding, NSCopying> { + Position *_position; + Action *_action; + NSString *_title; // this is a description + + // list of actions (in order) + // list of conditions (procedure?) + // name for the WP Actions (i.e. repair) + NSMutableArray *_actions; + Rule *_rule; +} + +- (id)initWithPosition: (Position*)position; ++ (id)waypointWithPosition: (Position*)position; + +@property (readwrite, copy) Position *position; +@property (readwrite, copy) Action *action; +@property (readwrite, copy) NSString *title; + +@property (readonly, retain) NSArray *actions; +@property (readwrite, retain) Rule *rule; + +// actions +- (void)addAction: (Action*)action; +- (void)setActions: (NSArray*)actions; + +@end diff --git a/Waypoint.m b/Waypoint.m new file mode 100644 index 0000000..964312e --- /dev/null +++ b/Waypoint.m @@ -0,0 +1,117 @@ +// +// Waypoint.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "Waypoint.h" +#import "Action.h" +#import "Procedure.h" + +@implementation Waypoint + +- (id) init +{ + return [self initWithPosition: [Position positionWithX: -1 Y: -1 Z: -1]]; +} + +- (id)initWithPosition: (Position*)position { + + self = [super init]; + if (self != nil) { + self.position = position; + self.action = [Action action]; + self.title = @""; + self.rule = nil; + self.actions = [NSArray array]; + } + return self; +} + + ++ (id)waypointWithPosition: (Position*)position { + Waypoint *waypoint = [[Waypoint alloc] initWithPosition: position]; + + return [waypoint autorelease]; +} + +- (id)initWithCoder:(NSCoder *)decoder +{ + self = [super init]; + if(self) { + [NSKeyedUnarchiver setClass: [Action class] forClassName: @"WaypointAction"]; + self.position = [decoder decodeObjectForKey: @"Position"]; + self.action = [decoder decodeObjectForKey: @"Action"] ? [decoder decodeObjectForKey: @"Action"] : [Action action]; + self.title = [decoder decodeObjectForKey: @"Title"]; + self.rule = [decoder decodeObjectForKey: @"Rule"]; + self.actions = [decoder decodeObjectForKey: @"Actions"] ? [decoder decodeObjectForKey: @"Actions"] : [NSArray array]; + } + return self; +} + +-(void)encodeWithCoder:(NSCoder *)coder +{ + [coder encodeObject: self.position forKey: @"Position"]; + [coder encodeObject: self.title forKey: @"Title"]; + [coder encodeObject: self.rule forKey: @"Rule"]; + [coder encodeObject: self.actions forKey: @"Actions"]; + + // only encode the action if it is something other than normal + if(self.action.type > ActionType_None) { + [coder encodeObject: self.action forKey: @"Action"]; + } +} + +- (id)copyWithZone:(NSZone *)zone +{ + Waypoint *copy = [[[self class] allocWithZone: zone] initWithPosition: self.position]; + copy.action = self.action; + copy.title = self.title; + copy.rule = self.rule; + copy.actions = self.actions; + + return copy; +} + +- (void) dealloc +{ + self.position = nil; + self.action = nil; + self.title = nil; + self.actions = nil; + self.rule = nil; + [super dealloc]; +} + +- (NSString*)description { + return [NSString stringWithFormat: @"<Waypoint X: %.2f Y: %.2f Z: %.2f>", [self.position xPosition], [self.position yPosition], [self.position zPosition]]; +} + +@synthesize position = _position; +@synthesize action = _action; +@synthesize title = _title; +@synthesize rule = _rule; +@synthesize actions = _actions; + + +- (void)addAction: (Action*)action{ + + if ( action != nil ) + [_actions addObject:action]; + else + log(LOG_WAYPOINT, @"addAction: failed; action is nil"); +} + +- (void)setActions: (NSArray*)actions { + [_actions autorelease]; + if ( actions ) { + _actions = [[NSMutableArray alloc] initWithArray: actions copyItems: YES]; + } + else { + _actions = [[NSMutableArray alloc] init]; + } +} + +@end diff --git a/WaypointActionEditor.h b/WaypointActionEditor.h new file mode 100644 index 0000000..300f8ef --- /dev/null +++ b/WaypointActionEditor.h @@ -0,0 +1,57 @@ +// +// WaypointActionEditor.h +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@class Waypoint; + +@class WaypointController; +@class SpellController; +@class InventoryController; +@class MacroController; +@class ProfileController; +@class MobController; +@class NodeController; + +@interface WaypointActionEditor : NSObject { + + IBOutlet WaypointController *waypointController; + IBOutlet SpellController *spellController; + IBOutlet InventoryController *inventoryController; + IBOutlet MacroController *macroController; + IBOutlet ProfileController *profileController; + IBOutlet MobController *mobController; + IBOutlet NodeController *nodeController; + + IBOutlet NSPanel *editorPanel; + IBOutlet NSPopUpButton *addConditionDropDown; + IBOutlet NSPopUpButton *addActionDropDown; + IBOutlet NSTableView *conditionTableView; + IBOutlet NSTableView *actionTableView; + IBOutlet NSTextField *waypointDescription; + IBOutlet NSSegmentedControl *conditionMatchingSegment; + + + NSMutableArray *_conditionList; + NSMutableArray *_actionList; + + Waypoint *_waypoint; +} + ++ (WaypointActionEditor *)sharedEditor; +- (void)showEditorOnWindow: (NSWindow*)window withWaypoint: (Waypoint*)wp withAction:(int)type; + + +- (IBAction)addCondition:(id)sender; +- (IBAction)addAction:(id)sender; + +- (IBAction)closeEditor: (id)sender; +- (IBAction)saveWaypoint: (id)sender; + +- (NSArray*)routes; +@end diff --git a/WaypointActionEditor.m b/WaypointActionEditor.m new file mode 100644 index 0000000..b093429 --- /dev/null +++ b/WaypointActionEditor.m @@ -0,0 +1,366 @@ +// +// WaypointActionEditor.m +// Pocket Gnome +// +// Created by Josh on 1/13/10. +// Copyright 2010 Savory Software, LLC. All rights reserved. +// + +#import "WaypointActionEditor.h" + +#import "Waypoint.h" +#import "Rule.h" +#import "Spell.h" +#import "RouteCollection.h" +#import "RouteSet.h" +#import "MailActionProfile.h" + +#import "Action.h" +#import "Condition.h" +#import "ConditionCell.h" +#import "ConditionController.h" + +#import "DurabilityConditionController.h" +#import "InventoryConditionController.h" +#import "PlayerLevelConditionController.h" +#import "PlayerZoneConditionController.h" +#import "QuestConditionController.h" +#import "RouteRunTimeConditionController.h" +#import "RouteRunCountConditionController.h" +#import "InventoryFreeConditionController.h" +#import "MobsKilledConditionController.h" +#import "GateConditionController.h" +#import "StrandStatusConditionController.h" +#import "AuraConditionController.h" + +#import "SwitchRouteActionController.h" +#import "RepairActionController.h" +#import "SpellActionController.h" +#import "ItemActionController.h" +#import "MacroActionController.h" +#import "DelayActionController.h" +#import "JumpActionController.h" +#import "QuestTurnInActionController.h" +#import "QuestGrabActionController.h" +#import "InteractObjectActionController.h" +#import "InteractNPCActionController.h" +#import "CombatProfileActionController.h" +#import "VendorActionController.h" +#import "MailActionController.h" +#import "ReverseRouteActionController.h" +#import "JumpToWaypointActionController.h" + +#import "WaypointController.h" +#import "SpellController.h" +#import "InventoryController.h" +#import "MacroController.h" +#import "ProfileController.h" +#import "MobController.h" +#import "NodeController.h" + +@implementation WaypointActionEditor + +static WaypointActionEditor *sharedEditor = nil; + ++ (WaypointActionEditor *)sharedEditor { + if (sharedEditor == nil) + sharedEditor = [[[self class] alloc] init]; + return sharedEditor; +} + +- (id) init { + self = [super init]; + if(sharedEditor) { + [self release]; + self = sharedEditor; + } if (self != nil) { + sharedEditor = self; + + _waypoint = nil; + _conditionList = [[NSMutableArray array] retain]; + _actionList = [[NSMutableArray array] retain]; + + [NSBundle loadNibNamed: @"WaypointActionEditor" owner: self]; + } + return self; +} + + +- (void)awakeFromNib { + // set our column to use a Rule Cell + NSTableColumn *column = [conditionTableView tableColumnWithIdentifier: @"Conditions"]; + [column setDataCell: [[[ConditionCell alloc] init] autorelease]]; + [column setEditable: NO]; + + + NSTableColumn *column2 = [actionTableView tableColumnWithIdentifier: @"Actions"]; + [column2 setDataCell: [[[ConditionCell alloc] init] autorelease]]; + [column2 setEditable: NO]; +} + +#pragma mark UI + +- (IBAction)addCondition:(id)sender{ + + int type = [[addConditionDropDown selectedItem] tag]; + + ConditionController *newCondition = nil; + + if ( type == VarietyInventory ) newCondition = [[[InventoryConditionController alloc] init] autorelease]; + else if ( type == VarietyDurability ) newCondition = [[[DurabilityConditionController alloc] init] autorelease]; + else if ( type == VarietyPlayerLevel ) newCondition = [[[PlayerLevelConditionController alloc] init] autorelease]; + else if ( type == VarietyPlayerZone ) newCondition = [[[PlayerZoneConditionController alloc] init] autorelease]; + else if ( type == VarietyQuest ) newCondition = [[[QuestConditionController alloc] init] autorelease]; + else if ( type == VarietyRouteRunTime ) newCondition = [[[RouteRunTimeConditionController alloc] init] autorelease]; + else if ( type == VarietyRouteRunCount ) newCondition = [[[RouteRunCountConditionController alloc] init] autorelease]; + else if ( type == VarietyInventoryFree ) newCondition = [[[InventoryFreeConditionController alloc] init] autorelease]; + else if ( type == VarietyMobsKilled ) newCondition = [[[MobsKilledConditionController alloc] init] autorelease]; + else if ( type == VarietyGate ) newCondition = [[[GateConditionController alloc] init] autorelease]; + else if ( type == VarietyStrandStatus ) newCondition = [[[StrandStatusConditionController alloc] init] autorelease]; + else if ( type == VarietyAura ) newCondition = [[[AuraConditionController alloc] init] autorelease]; + + if ( newCondition ) { + [_conditionList addObject: newCondition]; + [conditionTableView reloadData]; + [conditionTableView selectRowIndexes: [NSIndexSet indexSetWithIndex: [_conditionList count] - 1] byExtendingSelection: NO]; + + //[sender selectItemWithTag: 0]; + } + +} + +- (void)addActionWithType:(int)type andAction:(Action*)action{ + ActionController *newAction = nil; + + RouteSet *currentRoute = [waypointController currentRouteSet]; + RouteCollection *parentRC = [currentRoute parent]; + + if ( type == ActionType_Repair ) newAction = [[[RepairActionController alloc] init] autorelease]; + else if ( type == ActionType_SwitchRoute ) newAction = [SwitchRouteActionController switchRouteActionControllerWithRoutes:[parentRC routes]]; + else if ( type == ActionType_Spell ) newAction = [SpellActionController spellActionControllerWithSpells:[spellController playerSpells]]; + else if ( type == ActionType_Item ) newAction = [ItemActionController itemActionControllerWithItems:[inventoryController useableItems]]; + else if ( type == ActionType_Macro) newAction = [MacroActionController macroActionControllerWithMacros:[macroController macros]]; + else if ( type == ActionType_Delay) newAction = [[[DelayActionController alloc] init] autorelease]; + else if ( type == ActionType_Jump) newAction = [[[JumpActionController alloc] init] autorelease]; + else if ( type == ActionType_QuestTurnIn) newAction = [[[QuestTurnInActionController alloc] init] autorelease]; + else if ( type == ActionType_QuestGrab) newAction = [[[QuestGrabActionController alloc] init] autorelease]; + else if ( type == ActionType_CombatProfile) newAction = [CombatProfileActionController combatProfileActionControllerWithProfiles:[profileController combatProfiles]]; + else if ( type == ActionType_Vendor) newAction = [[[VendorActionController alloc] init] autorelease]; + else if ( type == ActionType_Mail) newAction = [MailActionController mailActionControllerWithProfiles:[profileController profilesOfClass:[MailActionProfile class]]]; + else if ( type == ActionType_ReverseRoute) newAction = [[[ReverseRouteActionController alloc] init] autorelease]; + else if ( type == ActionType_InteractNPC){ + NSArray *nearbyMobs = [mobController mobsWithinDistance:8.0f levelRange:NSMakeRange(0,255) includeElite:YES includeFriendly:YES includeNeutral:YES includeHostile:NO]; + newAction = [InteractNPCActionController interactNPCActionControllerWithUnits:nearbyMobs]; + } + else if ( type == ActionType_InteractObject){ + NSArray *nodes = [nodeController nodesWithinDistance:8.0f ofType:AnyNode maxLevel:9000]; + newAction = [InteractObjectActionController interactObjectActionControllerWithObjects:nodes]; + } + else if ( type == ActionType_JumpToWaypoint) newAction = [JumpToWaypointActionController jumpToWaypointActionControllerWithTotalWaypoints:[[[waypointController currentRoute] waypoints] count]]; + + if ( action != nil ){ + [newAction setStateFromAction:action]; + } + + if ( newAction ) { + [_actionList addObject: newAction]; + [actionTableView reloadData]; + [actionTableView selectRowIndexes: [NSIndexSet indexSetWithIndex: [_actionList count] - 1] byExtendingSelection: NO]; + + //[sender selectItemWithTag: 0]; + } +} + +- (IBAction)addAction:(id)sender{ + [self addActionWithType:[[addActionDropDown selectedItem] tag] andAction:nil]; +} + +- (void)clearTables{ + + // remove all + [_conditionList removeAllObjects]; + [conditionTableView reloadData]; + + // for actions we need to remove bindings + for ( id actionController in _actionList ){ + [actionController removeBindings]; + } + + [_actionList removeAllObjects]; + [actionTableView reloadData]; +} + +// editor opens! Load info for a given waypoint! +- (void)showEditorOnWindow: (NSWindow*)window withWaypoint: (Waypoint*)wp withAction:(int)type { + + _waypoint = [wp retain]; + + [self clearTables]; + + // valid waypoint (not sure why it wouldn't be) + if ( wp ){ + + // add description + if ( [wp title] ){ + [waypointDescription setStringValue:[wp title]]; + } + + // add any actions + if ( [wp.actions count] > 0 ){ + for ( Action *action in wp.actions ) { + [self addActionWithType:[action type] andAction:action]; + } + + // do we need to add another? (i.e. if they chose item when spell was selected, lets add an item!) + BOOL found = NO; + for ( id actionController in _actionList ){ + if ( [[(ActionController*)actionController action] type] == type ) + found = YES; + } + if ( !found ){ + [self addActionWithType:type andAction:nil]; + } + } + // add a default + else if ( type > ActionType_None && type <= ActionType_Max ){ + + [self addActionWithType:type andAction:nil]; + } + + // add our conditions! + if ( wp.rule ){ + + for ( Condition *condition in [wp.rule conditions] ) { + [_conditionList addObject: [ConditionController conditionControllerWithCondition: condition]]; + } + + if( [wp.rule isMatchAll] ) + [conditionMatchingSegment selectSegmentWithTag: 0]; + else + [conditionMatchingSegment selectSegmentWithTag: 1]; + } + } + + // reload tables + [actionTableView reloadData]; + [conditionTableView reloadData]; + + [NSApp beginSheet: editorPanel + modalForWindow: window + modalDelegate: self + didEndSelector: nil + contextInfo: [NSNumber numberWithInt:type]]; +} + +- (IBAction)closeEditor: (id)sender { + [[sender window] makeFirstResponder: [[sender window] contentView]]; + [NSApp endSheet: editorPanel returnCode: NSOKButton]; + [editorPanel orderOut: nil]; + + // let our controller know if a change was made + [waypointController waypointActionEditorClosed:(sender==nil)]; +} + +- (IBAction)saveWaypoint: (id)sender{ + + _waypoint.title = [waypointDescription stringValue]; + + // save actions + [_waypoint setActions:nil]; + for ( id actionController in _actionList ){ + [_waypoint addAction:[(ActionController*)actionController action]]; + } + + // add the conditions to an array + NSMutableArray *conditions = [NSMutableArray array]; + for ( id conditionController in _conditionList ){ + Condition *condition = [(ConditionController*)conditionController condition]; + if ( condition ){ + [conditions addObject: condition]; + } + } + + // create a rule + Rule *newRule = nil; + if([conditions count]) { + newRule = [[Rule alloc] init]; + + [newRule setName:_waypoint.title]; + [newRule setConditions:conditions]; + [newRule setIsMatchAll: [conditionMatchingSegment isSelectedForSegment: 0]]; + [newRule setTarget: TargetNone]; + [newRule setAction:nil]; // we can have multiple actions, we'll ignore this + } + + _waypoint.rule = newRule; + + [self closeEditor:nil]; +} + +- (NSArray*)routes{ + return [waypointController routes]; +} + +#pragma mark - +#pragma mark TableView Delegate/DataSource + +- (void) tableView:(NSTableView *) tableView willDisplayCell:(id) cell forTableColumn:(NSTableColumn *) tableColumn row:(int) row +{ + if( [[tableColumn identifier] isEqualToString: @"Conditions"] ) { + NSView *view = [[_conditionList objectAtIndex: row] view]; + [(ConditionCell*)cell addSubview: view]; + } + else if( [[tableColumn identifier] isEqualToString: @"Actions"] ) { + NSView *view = [[_actionList objectAtIndex: row] view]; + [(ConditionCell*)cell addSubview: view]; + } +} + +// Methods from NSTableDataSource protocol +- (int) numberOfRowsInTableView:(NSTableView *) tableView{ + + if ( tableView == conditionTableView ) + return [_conditionList count]; + else if ( tableView == actionTableView ){ + return [_actionList count]; + } + + return 0; +} + +- (id) tableView:(NSTableView *) tableView objectValueForTableColumn:(NSTableColumn *) tableColumn row:(int) row{ + return @""; +} + +- (void)tableViewSelectionDidChange:(NSNotification *)aNotification { + //[self validateBindings]; +} + +- (void)tableView: (NSTableView*)tableView deleteKeyPressedOnRowIndexes: (NSIndexSet*)rowIndexes { + if([rowIndexes count] == 0) return; + + if ( tableView == conditionTableView ){ + int row = [rowIndexes lastIndex]; + while(row != NSNotFound) { + [_conditionList removeObjectAtIndex: row]; + row = [rowIndexes indexLessThanIndex: row]; + } + [conditionTableView reloadData]; + } + else if ( tableView == actionTableView ){ + int row = [rowIndexes lastIndex]; + while(row != NSNotFound) { + id actionController = [_actionList objectAtIndex:row]; + [actionController removeBindings]; + [_actionList removeObjectAtIndex: row]; + row = [rowIndexes indexLessThanIndex: row]; + } + [actionTableView reloadData]; + } +} + +- (BOOL)tableView:(NSTableView *)tableView shouldTypeSelectForEvent:(NSEvent *)event withCurrentSearchString:(NSString *)searchString { + return NO; +} + +@end diff --git a/WaypointActionEditor.xib b/WaypointActionEditor.xib new file mode 100644 index 0000000..b3c30d8 --- /dev/null +++ b/WaypointActionEditor.xib @@ -0,0 +1,4509 @@ +<?xml version="1.0" encoding="UTF-8"?> +<archive type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="7.10"> + <data> + <int key="IBDocument.SystemTarget">1050</int> + <string key="IBDocument.SystemVersion">10C540</string> + <string key="IBDocument.InterfaceBuilderVersion">740</string> + <string key="IBDocument.AppKitVersion">1038.25</string> + <string key="IBDocument.HIToolboxVersion">458.00</string> + <object class="NSMutableDictionary" key="IBDocument.PluginVersions"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin</string> + <string key="NS.object.0">740</string> + </object> + <object class="NSMutableArray" key="IBDocument.EditedObjectIDs"> + <bool key="EncodedWithXMLCoder">YES</bool> + <integer value="676"/> + </object> + <object class="NSArray" key="IBDocument.PluginDependencies"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + <object class="NSMutableDictionary" key="IBDocument.Metadata"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys" id="0"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <object class="NSMutableArray" key="IBDocument.RootObjects" id="1000"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSCustomObject" id="1001"> + <string key="NSClassName">WaypointActionEditor</string> + </object> + <object class="NSCustomObject" id="1003"> + <string key="NSClassName">FirstResponder</string> + </object> + <object class="NSCustomObject" id="1004"> + <string key="NSClassName">NSApplication</string> + </object> + <object class="NSUserDefaultsController" id="577796576"> + <bool key="NSSharedInstance">YES</bool> + </object> + <object class="NSWindowTemplate" id="396563676"> + <int key="NSWindowStyleMask">17</int> + <int key="NSWindowBacking">2</int> + <string key="NSWindowRect">{{593, 673}, {705, 336}}</string> + <int key="NSWTFlags">1677721600</int> + <string key="NSWindowTitle">Waypoint Action</string> + <string key="NSWindowClass">NSPanel</string> + <nil key="NSViewClass"/> + <string key="NSWindowContentMaxSize">{705, 400}</string> + <string key="NSWindowContentMinSize">{705, 330}</string> + <object class="NSView" key="NSWindowView" id="683471918"> + <reference key="NSNextResponder"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSScrollView" id="150385131"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">274</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSClipView" id="376382654"> + <reference key="NSNextResponder" ref="150385131"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableView" id="941853051"> + <reference key="NSNextResponder" ref="376382654"/> + <int key="NSvFlags">4352</int> + <string key="NSFrameSize">{663, 76}</string> + <reference key="NSSuperview" ref="376382654"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTableHeaderView" key="NSHeaderView" id="941530134"> + <reference key="NSNextResponder" ref="743558596"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{663, 17}</string> + <reference key="NSSuperview" ref="743558596"/> + <reference key="NSTableView" ref="941853051"/> + </object> + <object class="_NSCornerView" key="NSCornerView" id="666437288"> + <reference key="NSNextResponder" ref="150385131"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{-26, 0}, {16, 17}}</string> + <reference key="NSSuperview" ref="150385131"/> + </object> + <object class="NSMutableArray" key="NSTableColumns"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableColumn" id="158259765"> + <string key="NSIdentifier">Conditions</string> + <double key="NSWidth">660</double> + <double key="NSMinWidth">640</double> + <double key="NSMaxWidth">10000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Conditions</string> + <object class="NSFont" key="NSSupport" id="26"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">11</double> + <int key="NSfFlags">3100</int> + </object> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC4zMzMzMzI5ODU2AA</bytes> + </object> + <object class="NSColor" key="NSTextColor" id="739480584"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">headerTextColor</string> + <object class="NSColor" key="NSColor" id="622322234"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MAA</bytes> + </object> + </object> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="579685577"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Text Cell</string> + <object class="NSFont" key="NSSupport" id="300528464"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">1044</int> + </object> + <reference key="NSControlView" ref="941853051"/> + <bool key="NSDrawsBackground">YES</bool> + <object class="NSColor" key="NSBackgroundColor" id="898828335"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlBackgroundColor</string> + <object class="NSColor" key="NSColor" id="262225707"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC42NjY2NjY2NjY3AA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor" id="48579629"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlTextColor</string> + <reference key="NSColor" ref="622322234"/> + </object> + </object> + <int key="NSResizingMask">1</int> + <bool key="NSIsResizeable">YES</bool> + <reference key="NSTableView" ref="941853051"/> + </object> + </object> + <double key="NSIntercellSpacingWidth">3</double> + <double key="NSIntercellSpacingHeight">2</double> + <reference key="NSBackgroundColor" ref="898828335"/> + <object class="NSColor" key="NSGridColor" id="707926473"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">gridColor</string> + <object class="NSColor" key="NSColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC41AA</bytes> + </object> + </object> + <double key="NSRowHeight">36</double> + <int key="NSTvFlags">1388314624</int> + <reference key="NSDelegate"/> + <reference key="NSDataSource"/> + <int key="NSColumnAutoresizingStyle">4</int> + <int key="NSDraggingSourceMaskForLocal">15</int> + <int key="NSDraggingSourceMaskForNonLocal">0</int> + <bool key="NSAllowsTypeSelect">NO</bool> + <int key="NSTableViewDraggingDestinationStyle">1</int> + </object> + </object> + <string key="NSFrame">{{1, 17}, {663, 76}}</string> + <reference key="NSSuperview" ref="150385131"/> + <reference key="NSNextKeyView" ref="941853051"/> + <reference key="NSDocView" ref="941853051"/> + <reference key="NSBGColor" ref="898828335"/> + <int key="NScvFlags">2</int> + </object> + <object class="NSScroller" id="915235679"> + <reference key="NSNextResponder" ref="150385131"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{624, 17}, {15, 95}}</string> + <reference key="NSSuperview" ref="150385131"/> + <reference key="NSTarget" ref="150385131"/> + <string key="NSAction">_doScroller:</string> + <double key="NSCurValue">1</double> + <double key="NSPercent">0.86363639999999997</double> + </object> + <object class="NSScroller" id="737257721"> + <reference key="NSNextResponder" ref="150385131"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{1, 114}, {646, 15}}</string> + <reference key="NSSuperview" ref="150385131"/> + <int key="NSsFlags">1</int> + <reference key="NSTarget" ref="150385131"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.99222399999999999</double> + </object> + <object class="NSClipView" id="743558596"> + <reference key="NSNextResponder" ref="150385131"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="941530134"/> + </object> + <string key="NSFrame">{{1, 0}, {663, 17}}</string> + <reference key="NSSuperview" ref="150385131"/> + <reference key="NSNextKeyView" ref="941530134"/> + <reference key="NSDocView" ref="941530134"/> + <reference key="NSBGColor" ref="898828335"/> + <int key="NScvFlags">4</int> + </object> + <reference ref="666437288"/> + </object> + <string key="NSFrame">{{20, 196}, {665, 94}}</string> + <reference key="NSSuperview" ref="683471918"/> + <reference key="NSNextKeyView" ref="376382654"/> + <int key="NSsFlags">562</int> + <reference key="NSVScroller" ref="915235679"/> + <reference key="NSHScroller" ref="737257721"/> + <reference key="NSContentView" ref="376382654"/> + <reference key="NSHeaderClipView" ref="743558596"/> + <reference key="NSCornerView" ref="666437288"/> + <bytes key="NSScrollAmts">QSAAAEEgAABCGAAAQhgAAA</bytes> + </object> + <object class="NSTextField" id="533631782"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{17, 298}, {119, 17}}</string> + <reference key="NSSuperview" ref="683471918"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="672704092"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Match Conditions:</string> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="533631782"/> + <object class="NSColor" key="NSBackgroundColor" id="920079583"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">controlColor</string> + <reference key="NSColor" ref="262225707"/> + </object> + <reference key="NSTextColor" ref="48579629"/> + </object> + </object> + <object class="NSSegmentedControl" id="593712654"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{139, 293}, {99, 24}}</string> + <reference key="NSSuperview" ref="683471918"/> + <bool key="NSEnabled">YES</bool> + <object class="NSSegmentedCell" key="NSCell" id="813124667"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <object class="NSFont" key="NSSupport"> + <string key="NSName">LucidaGrande</string> + <double key="NSSize">13</double> + <int key="NSfFlags">16</int> + </object> + <reference key="NSControlView" ref="593712654"/> + <object class="NSMutableArray" key="NSSegmentImages"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">46</double> + <string key="NSSegmentItemLabel">All</string> + <int key="NSSegmentItemImageScaling">0</int> + </object> + <object class="NSSegmentItem"> + <double key="NSSegmentItemWidth">46</double> + <string key="NSSegmentItemLabel">Any</string> + <int key="NSSegmentItemTag">1</int> + <bool key="NSSegmentItemSelected">YES</bool> + <int key="NSSegmentItemImageScaling">0</int> + </object> + </object> + <int key="NSSelectedSegment">1</int> + <int key="NSSegmentStyle">1</int> + </object> + </object> + <object class="NSBox" id="301264721"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">34</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSView" id="438484710"> + <reference key="NSNextResponder" ref="301264721"/> + <int key="NSvFlags">256</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTextField" id="837592999"> + <reference key="NSNextResponder" ref="438484710"/> + <int key="NSvFlags">266</int> + <string key="NSFrame">{{101, 11}, {338, 22}}</string> + <reference key="NSSuperview" ref="438484710"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="585650194"> + <int key="NSCellFlags">-1804468671</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents"/> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="837592999"/> + <bool key="NSDrawsBackground">YES</bool> + <int key="NSTextBezelStyle">1</int> + <object class="NSColor" key="NSBackgroundColor" id="428584618"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textBackgroundColor</string> + <object class="NSColor" key="NSColor" id="147052365"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MQA</bytes> + </object> + </object> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">6</int> + <string key="NSCatalogName">System</string> + <string key="NSColorName">textColor</string> + <reference key="NSColor" ref="622322234"/> + </object> + </object> + </object> + <object class="NSTextField" id="1050068609"> + <reference key="NSNextResponder" ref="438484710"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{15, 14}, {81, 17}}</string> + <reference key="NSSuperview" ref="438484710"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTextFieldCell" key="NSCell" id="840304732"> + <int key="NSCellFlags">67239488</int> + <int key="NSCellFlags2">272630784</int> + <string key="NSContents">Description:</string> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="1050068609"/> + <reference key="NSBackgroundColor" ref="920079583"/> + <reference key="NSTextColor" ref="48579629"/> + </object> + </object> + <object class="NSButton" id="429185408"> + <reference key="NSNextResponder" ref="438484710"/> + <int key="NSvFlags">289</int> + <string key="NSFrame">{{554, 4}, {113, 32}}</string> + <reference key="NSSuperview" ref="438484710"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="559299495"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Save Action</string> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="429185408"/> + <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string type="base64-UTF8" key="NSKeyEquivalent">DQ</string> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + <object class="NSButton" id="425490699"> + <reference key="NSNextResponder" ref="438484710"/> + <int key="NSvFlags">289</int> + <string key="NSFrame">{{441, 5}, {113, 32}}</string> + <reference key="NSSuperview" ref="438484710"/> + <bool key="NSEnabled">YES</bool> + <object class="NSButtonCell" key="NSCell" id="884452612"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">134217728</int> + <string key="NSContents">Cancel</string> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="425490699"/> + <int key="NSButtonFlags">-2038284033</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string type="base64-UTF8" key="NSKeyEquivalent">Gw</string> + <int key="NSPeriodicDelay">200</int> + <int key="NSPeriodicInterval">25</int> + </object> + </object> + </object> + <string key="NSFrame">{{1, 1}, {669, 44}}</string> + <reference key="NSSuperview" ref="301264721"/> + </object> + </object> + <string key="NSFrame">{{17, 16}, {671, 46}}</string> + <reference key="NSSuperview" ref="683471918"/> + <string key="NSOffsets">{0, 0}</string> + <object class="NSTextFieldCell" key="NSTitleCell"> + <int key="NSCellFlags">67239424</int> + <int key="NSCellFlags2">0</int> + <string key="NSContents">Box</string> + <reference key="NSSupport" ref="26"/> + <reference key="NSBackgroundColor" ref="428584618"/> + <object class="NSColor" key="NSTextColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MCAwLjgwMDAwMDAxMTkAA</bytes> + </object> + </object> + <reference key="NSContentView" ref="438484710"/> + <int key="NSBorderType">1</int> + <int key="NSBoxType">0</int> + <int key="NSTitlePosition">0</int> + <bool key="NSTransparent">NO</bool> + </object> + <object class="NSPopUpButton" id="1037098557"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{537, 292}, {151, 26}}</string> + <reference key="NSSuperview" ref="683471918"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="1016011523"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="1037098557"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="358573405"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsHidden">YES</bool> + <string key="NSTitle">Add Condition</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSImage" id="449059456"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSAddTemplate</string> + </object> + <object class="NSCustomResource" key="NSOnImage" id="715644622"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuCheckmark</string> + </object> + <object class="NSCustomResource" key="NSMixedImage" id="496503712"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSMenuMixedState</string> + </object> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="1016011523"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="623131397"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="358573405"/> + <object class="NSMenuItem" id="787281135"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">General Conditions</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="363488966"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Player Level</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">17</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="39811562"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Player Aura</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">3</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="187860124"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Zone</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">18</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="465664775"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Questing</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">19</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="955093318"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Mobs Killed</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">24</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="376341888"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Route Conditions</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="624657598"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <int key="NSIndent">1</int> + <string key="NSTitle">Run Count</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">20</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="703223862"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <int key="NSIndent">1</int> + <string key="NSTitle">Run Time</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">21</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="553677474"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Item Conditions</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="1069880227"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Inventory Free</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">22</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="611791678"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Durability</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">23</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="690701568"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Item Count</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">5</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="285369580"> + <reference key="NSMenu" ref="623131397"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Battlegrounds</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="113822471"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Gate Status</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">25</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + <object class="NSMenuItem" id="663530184"> + <reference key="NSMenu" ref="623131397"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Strand Status</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">26</int> + <reference key="NSTarget" ref="1016011523"/> + </object> + </object> + <bool key="NSNoAutoenable">YES</bool> + </object> + <bool key="NSPullDown">YES</bool> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSPopUpButton" id="942781718"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">268</int> + <string key="NSFrame">{{241, 292}, {110, 26}}</string> + <reference key="NSSuperview" ref="683471918"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="510751006"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="942781718"/> + <int key="NSButtonFlags">112345343</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="396481133"> + <reference key="NSMenu" ref="517752109"/> + <bool key="NSIsHidden">YES</bool> + <string key="NSTitle">Testing</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">NSActionTemplate</string> + </object> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="510751006"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="517752109"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="396481133"/> + <object class="NSMenuItem" id="162733221"> + <reference key="NSMenu" ref="517752109"/> + <string key="NSTitle">Test Entire Rule</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">BinderGossipIcon</string> + </object> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="510751006"/> + </object> + <object class="NSMenuItem" id="840057876"> + <reference key="NSMenu" ref="517752109"/> + <string key="NSTitle">Test Selected Condition</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <object class="NSCustomResource" key="NSImage"> + <string key="NSClassName">NSImage</string> + <string key="NSResourceName">ActiveQuestIcon</string> + </object> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="510751006"/> + </object> + </object> + </object> + <bool key="NSPullDown">YES</bool> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSPopUpButton" id="813094834"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">265</int> + <string key="NSFrame">{{537, 163}, {151, 26}}</string> + <reference key="NSSuperview" ref="683471918"/> + <bool key="NSEnabled">YES</bool> + <object class="NSPopUpButtonCell" key="NSCell" id="96582565"> + <int key="NSCellFlags">-2076049856</int> + <int key="NSCellFlags2">2048</int> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="813094834"/> + <int key="NSButtonFlags">109199615</int> + <int key="NSButtonFlags2">129</int> + <string key="NSAlternateContents"/> + <string key="NSKeyEquivalent"/> + <int key="NSPeriodicDelay">400</int> + <int key="NSPeriodicInterval">75</int> + <object class="NSMenuItem" key="NSMenuItem" id="380205484"> + <reference key="NSMenu" ref="229823351"/> + <bool key="NSIsHidden">YES</bool> + <string key="NSTitle">Add Action</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <int key="NSState">1</int> + <reference key="NSImage" ref="449059456"/> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="96582565"/> + </object> + <bool key="NSMenuItemRespectAlignment">YES</bool> + <object class="NSMenu" key="NSMenu" id="229823351"> + <string key="NSTitle">OtherViews</string> + <object class="NSMutableArray" key="NSMenuItems"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="380205484"/> + <object class="NSMenuItem" id="1015828907"> + <reference key="NSMenu" ref="229823351"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Use</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="964280280"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Spell</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">1</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="168566252"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Item</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">2</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="612385610"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Macro</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">3</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="267113049"> + <reference key="NSMenu" ref="229823351"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Interact</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="433599447"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Mail</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">11</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="951348558"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">NPC</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">5</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="275977461"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Object/Node</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">15</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="329309867"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Repair</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">12</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="839995911"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Vendor</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">10</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="566260087"> + <reference key="NSMenu" ref="229823351"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Quests</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="970956018"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Grab Quests</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">9</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="906547980"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Turn in Quests</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">8</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="306450348"> + <reference key="NSMenu" ref="229823351"/> + <bool key="NSIsDisabled">YES</bool> + <string key="NSTitle">Miscellaneous</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="42569431"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Delay</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">4</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="1603"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Jump</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">6</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="247464530"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Jump to waypoint</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">16</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="791696650"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Switch Route</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">7</int> + <reference key="NSTarget" ref="96582565"/> + </object> + <object class="NSMenuItem" id="946006536"> + <reference key="NSMenu" ref="229823351"/> + <int key="NSIndent">1</int> + <string key="NSTitle">Combat Profile</string> + <string key="NSKeyEquiv"/> + <int key="NSKeyEquivModMask">1048576</int> + <int key="NSMnemonicLoc">2147483647</int> + <reference key="NSOnImage" ref="715644622"/> + <reference key="NSMixedImage" ref="496503712"/> + <string key="NSAction">_popUpItemAction:</string> + <int key="NSTag">14</int> + <reference key="NSTarget" ref="96582565"/> + </object> + </object> + <bool key="NSNoAutoenable">YES</bool> + </object> + <bool key="NSPullDown">YES</bool> + <int key="NSPreferredEdge">1</int> + <bool key="NSUsesItemFromMenu">YES</bool> + <bool key="NSAltersState">YES</bool> + <int key="NSArrowPosition">2</int> + </object> + </object> + <object class="NSScrollView" id="825441111"> + <reference key="NSNextResponder" ref="683471918"/> + <int key="NSvFlags">274</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSClipView" id="840138164"> + <reference key="NSNextResponder" ref="825441111"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableView" id="339735896"> + <reference key="NSNextResponder" ref="840138164"/> + <int key="NSvFlags">4352</int> + <string key="NSFrameSize">{663, 76}</string> + <reference key="NSSuperview" ref="840138164"/> + <bool key="NSEnabled">YES</bool> + <object class="NSTableHeaderView" key="NSHeaderView" id="914751000"> + <reference key="NSNextResponder" ref="248316710"/> + <int key="NSvFlags">256</int> + <string key="NSFrameSize">{663, 17}</string> + <reference key="NSSuperview" ref="248316710"/> + <reference key="NSTableView" ref="339735896"/> + </object> + <object class="_NSCornerView" key="NSCornerView" id="181229750"> + <reference key="NSNextResponder" ref="825441111"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{-26, 0}, {16, 17}}</string> + <reference key="NSSuperview" ref="825441111"/> + </object> + <object class="NSMutableArray" key="NSTableColumns"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSTableColumn" id="538790581"> + <string key="NSIdentifier">Actions</string> + <double key="NSWidth">660</double> + <double key="NSMinWidth">640</double> + <double key="NSMaxWidth">10000</double> + <object class="NSTableHeaderCell" key="NSHeaderCell"> + <int key="NSCellFlags">75628096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Actions</string> + <reference key="NSSupport" ref="26"/> + <object class="NSColor" key="NSBackgroundColor"> + <int key="NSColorSpace">3</int> + <bytes key="NSWhite">MC4zMzMzMzI5ODU2AA</bytes> + </object> + <reference key="NSTextColor" ref="739480584"/> + </object> + <object class="NSTextFieldCell" key="NSDataCell" id="649028878"> + <int key="NSCellFlags">337772096</int> + <int key="NSCellFlags2">2048</int> + <string key="NSContents">Text Cell</string> + <reference key="NSSupport" ref="300528464"/> + <reference key="NSControlView" ref="339735896"/> + <bool key="NSDrawsBackground">YES</bool> + <reference key="NSBackgroundColor" ref="898828335"/> + <reference key="NSTextColor" ref="48579629"/> + </object> + <int key="NSResizingMask">1</int> + <bool key="NSIsResizeable">YES</bool> + <reference key="NSTableView" ref="339735896"/> + </object> + </object> + <double key="NSIntercellSpacingWidth">3</double> + <double key="NSIntercellSpacingHeight">2</double> + <reference key="NSBackgroundColor" ref="147052365"/> + <reference key="NSGridColor" ref="707926473"/> + <double key="NSRowHeight">36</double> + <int key="NSTvFlags">1388314624</int> + <reference key="NSDelegate"/> + <reference key="NSDataSource"/> + <int key="NSColumnAutoresizingStyle">4</int> + <int key="NSDraggingSourceMaskForLocal">15</int> + <int key="NSDraggingSourceMaskForNonLocal">0</int> + <bool key="NSAllowsTypeSelect">NO</bool> + <int key="NSTableViewDraggingDestinationStyle">1</int> + </object> + </object> + <string key="NSFrame">{{1, 17}, {663, 76}}</string> + <reference key="NSSuperview" ref="825441111"/> + <reference key="NSNextKeyView" ref="339735896"/> + <reference key="NSDocView" ref="339735896"/> + <reference key="NSBGColor" ref="898828335"/> + <int key="NScvFlags">2</int> + </object> + <object class="NSScroller" id="371440371"> + <reference key="NSNextResponder" ref="825441111"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{624, 17}, {15, 95}}</string> + <reference key="NSSuperview" ref="825441111"/> + <reference key="NSTarget" ref="825441111"/> + <string key="NSAction">_doScroller:</string> + <double key="NSCurValue">1</double> + <double key="NSPercent">0.86363639999999997</double> + </object> + <object class="NSScroller" id="374640957"> + <reference key="NSNextResponder" ref="825441111"/> + <int key="NSvFlags">-2147483392</int> + <string key="NSFrame">{{1, 114}, {646, 15}}</string> + <reference key="NSSuperview" ref="825441111"/> + <int key="NSsFlags">1</int> + <reference key="NSTarget" ref="825441111"/> + <string key="NSAction">_doScroller:</string> + <double key="NSPercent">0.99222399999999999</double> + </object> + <object class="NSClipView" id="248316710"> + <reference key="NSNextResponder" ref="825441111"/> + <int key="NSvFlags">2304</int> + <object class="NSMutableArray" key="NSSubviews"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="914751000"/> + </object> + <string key="NSFrame">{{1, 0}, {663, 17}}</string> + <reference key="NSSuperview" ref="825441111"/> + <reference key="NSNextKeyView" ref="914751000"/> + <reference key="NSDocView" ref="914751000"/> + <reference key="NSBGColor" ref="898828335"/> + <int key="NScvFlags">4</int> + </object> + <reference ref="181229750"/> + </object> + <string key="NSFrame">{{20, 68}, {665, 94}}</string> + <reference key="NSSuperview" ref="683471918"/> + <reference key="NSNextKeyView" ref="840138164"/> + <int key="NSsFlags">562</int> + <reference key="NSVScroller" ref="371440371"/> + <reference key="NSHScroller" ref="374640957"/> + <reference key="NSContentView" ref="840138164"/> + <reference key="NSHeaderClipView" ref="248316710"/> + <reference key="NSCornerView" ref="181229750"/> + <bytes key="NSScrollAmts">QSAAAEEgAABCGAAAQhgAAA</bytes> + </object> + </object> + <string key="NSFrameSize">{705, 336}</string> + <reference key="NSSuperview"/> + </object> + <string key="NSScreenRect">{{0, 0}, {1920, 1178}}</string> + <string key="NSMinSize">{705, 346}</string> + <string key="NSMaxSize">{705, 416}</string> + <string key="NSFrameAutosaveName">WaypointActionWindow</string> + </object> + </object> + <object class="IBObjectContainer" key="IBDocument.Objects"> + <object class="NSMutableArray" key="connectionRecords"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">editorPanel</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="396563676"/> + </object> + <int key="connectionID">46</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">closeEditor:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="425490699"/> + </object> + <int key="connectionID">717</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">addConditionDropDown</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1037098557"/> + </object> + <int key="connectionID">718</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">addActionDropDown</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="813094834"/> + </object> + <int key="connectionID">719</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">conditionTableView</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="941853051"/> + </object> + <int key="connectionID">721</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">actionTableView</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="339735896"/> + </object> + <int key="connectionID">722</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">dataSource</string> + <reference key="source" ref="941853051"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">723</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="941853051"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">724</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">addCondition:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="1037098557"/> + </object> + <int key="connectionID">726</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">addAction:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="813094834"/> + </object> + <int key="connectionID">737</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">delegate</string> + <reference key="source" ref="339735896"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">738</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">dataSource</string> + <reference key="source" ref="339735896"/> + <reference key="destination" ref="1001"/> + </object> + <int key="connectionID">739</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBActionConnection" key="connection"> + <string key="label">saveWaypoint:</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="429185408"/> + </object> + <int key="connectionID">740</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">waypointDescription</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="837592999"/> + </object> + <int key="connectionID">741</int> + </object> + <object class="IBConnectionRecord"> + <object class="IBOutletConnection" key="connection"> + <string key="label">conditionMatchingSegment</string> + <reference key="source" ref="1001"/> + <reference key="destination" ref="593712654"/> + </object> + <int key="connectionID">742</int> + </object> + </object> + <object class="IBMutableOrderedSet" key="objectRecords"> + <object class="NSArray" key="orderedObjects"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBObjectRecord"> + <int key="objectID">0</int> + <reference key="object" ref="0"/> + <reference key="children" ref="1000"/> + <nil key="parent"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-2</int> + <reference key="object" ref="1001"/> + <reference key="parent" ref="0"/> + <string key="objectName">File's Owner</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-1</int> + <reference key="object" ref="1003"/> + <reference key="parent" ref="0"/> + <string key="objectName">First Responder</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">-3</int> + <reference key="object" ref="1004"/> + <reference key="parent" ref="0"/> + <string key="objectName">Application</string> + </object> + <object class="IBObjectRecord"> + <int key="objectID">276</int> + <reference key="object" ref="577796576"/> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">43</int> + <reference key="object" ref="396563676"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="683471918"/> + </object> + <reference key="parent" ref="0"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">44</int> + <reference key="object" ref="683471918"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="150385131"/> + <reference ref="533631782"/> + <reference ref="593712654"/> + <reference ref="301264721"/> + <reference ref="942781718"/> + <reference ref="813094834"/> + <reference ref="825441111"/> + <reference ref="1037098557"/> + </object> + <reference key="parent" ref="396563676"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">661</int> + <reference key="object" ref="150385131"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="941530134"/> + <reference ref="737257721"/> + <reference ref="915235679"/> + <reference ref="941853051"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">662</int> + <reference key="object" ref="533631782"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="672704092"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">663</int> + <reference key="object" ref="593712654"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="813124667"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">664</int> + <reference key="object" ref="301264721"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="425490699"/> + <reference ref="429185408"/> + <reference ref="1050068609"/> + <reference ref="837592999"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">665</int> + <reference key="object" ref="1037098557"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="1016011523"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">666</int> + <reference key="object" ref="942781718"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="510751006"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">667</int> + <reference key="object" ref="813094834"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="96582565"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">668</int> + <reference key="object" ref="825441111"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="339735896"/> + <reference ref="371440371"/> + <reference ref="374640957"/> + <reference ref="914751000"/> + </object> + <reference key="parent" ref="683471918"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">669</int> + <reference key="object" ref="339735896"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="538790581"/> + </object> + <reference key="parent" ref="825441111"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">670</int> + <reference key="object" ref="371440371"/> + <reference key="parent" ref="825441111"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">671</int> + <reference key="object" ref="374640957"/> + <reference key="parent" ref="825441111"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">672</int> + <reference key="object" ref="914751000"/> + <reference key="parent" ref="825441111"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">673</int> + <reference key="object" ref="538790581"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="649028878"/> + </object> + <reference key="parent" ref="339735896"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">674</int> + <reference key="object" ref="649028878"/> + <reference key="parent" ref="538790581"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">675</int> + <reference key="object" ref="96582565"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="229823351"/> + </object> + <reference key="parent" ref="813094834"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">676</int> + <reference key="object" ref="229823351"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="380205484"/> + <reference ref="566260087"/> + <reference ref="306450348"/> + <reference ref="267113049"/> + <reference ref="951348558"/> + <reference ref="906547980"/> + <reference ref="1015828907"/> + <reference ref="964280280"/> + <reference ref="168566252"/> + <reference ref="612385610"/> + <reference ref="329309867"/> + <reference ref="839995911"/> + <reference ref="433599447"/> + <reference ref="970956018"/> + <reference ref="42569431"/> + <reference ref="1603"/> + <reference ref="791696650"/> + <reference ref="946006536"/> + <reference ref="275977461"/> + <reference ref="247464530"/> + </object> + <reference key="parent" ref="96582565"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">677</int> + <reference key="object" ref="168566252"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">678</int> + <reference key="object" ref="964280280"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">679</int> + <reference key="object" ref="612385610"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">680</int> + <reference key="object" ref="791696650"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">681</int> + <reference key="object" ref="380205484"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">682</int> + <reference key="object" ref="906547980"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">683</int> + <reference key="object" ref="970956018"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">684</int> + <reference key="object" ref="433599447"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">685</int> + <reference key="object" ref="329309867"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">686</int> + <reference key="object" ref="839995911"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">687</int> + <reference key="object" ref="951348558"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">688</int> + <reference key="object" ref="510751006"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="517752109"/> + </object> + <reference key="parent" ref="942781718"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">689</int> + <reference key="object" ref="517752109"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="840057876"/> + <reference ref="162733221"/> + <reference ref="396481133"/> + </object> + <reference key="parent" ref="510751006"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">690</int> + <reference key="object" ref="840057876"/> + <reference key="parent" ref="517752109"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">691</int> + <reference key="object" ref="162733221"/> + <reference key="parent" ref="517752109"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">692</int> + <reference key="object" ref="396481133"/> + <reference key="parent" ref="517752109"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">693</int> + <reference key="object" ref="1016011523"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="623131397"/> + </object> + <reference key="parent" ref="1037098557"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">694</int> + <reference key="object" ref="623131397"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="358573405"/> + <reference ref="690701568"/> + <reference ref="1069880227"/> + <reference ref="611791678"/> + <reference ref="787281135"/> + <reference ref="376341888"/> + <reference ref="363488966"/> + <reference ref="553677474"/> + <reference ref="624657598"/> + <reference ref="703223862"/> + <reference ref="187860124"/> + <reference ref="465664775"/> + <reference ref="955093318"/> + <reference ref="285369580"/> + <reference ref="113822471"/> + <reference ref="663530184"/> + <reference ref="39811562"/> + </object> + <reference key="parent" ref="1016011523"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">695</int> + <reference key="object" ref="358573405"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">696</int> + <reference key="object" ref="624657598"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">697</int> + <reference key="object" ref="690701568"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">698</int> + <reference key="object" ref="363488966"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">699</int> + <reference key="object" ref="1069880227"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">700</int> + <reference key="object" ref="611791678"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">701</int> + <reference key="object" ref="425490699"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="884452612"/> + </object> + <reference key="parent" ref="301264721"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">702</int> + <reference key="object" ref="429185408"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="559299495"/> + </object> + <reference key="parent" ref="301264721"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">703</int> + <reference key="object" ref="1050068609"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="840304732"/> + </object> + <reference key="parent" ref="301264721"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">704</int> + <reference key="object" ref="837592999"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="585650194"/> + </object> + <reference key="parent" ref="301264721"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">705</int> + <reference key="object" ref="585650194"/> + <reference key="parent" ref="837592999"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">706</int> + <reference key="object" ref="840304732"/> + <reference key="parent" ref="1050068609"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">707</int> + <reference key="object" ref="559299495"/> + <reference key="parent" ref="429185408"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">708</int> + <reference key="object" ref="884452612"/> + <reference key="parent" ref="425490699"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">709</int> + <reference key="object" ref="813124667"/> + <reference key="parent" ref="593712654"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">710</int> + <reference key="object" ref="672704092"/> + <reference key="parent" ref="533631782"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">711</int> + <reference key="object" ref="941530134"/> + <reference key="parent" ref="150385131"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">712</int> + <reference key="object" ref="737257721"/> + <reference key="parent" ref="150385131"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">713</int> + <reference key="object" ref="915235679"/> + <reference key="parent" ref="150385131"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">714</int> + <reference key="object" ref="941853051"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="158259765"/> + </object> + <reference key="parent" ref="150385131"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">715</int> + <reference key="object" ref="158259765"/> + <object class="NSMutableArray" key="children"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference ref="579685577"/> + </object> + <reference key="parent" ref="941853051"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">716</int> + <reference key="object" ref="579685577"/> + <reference key="parent" ref="158259765"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">727</int> + <reference key="object" ref="787281135"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">728</int> + <reference key="object" ref="376341888"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">729</int> + <reference key="object" ref="553677474"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">730</int> + <reference key="object" ref="703223862"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">731</int> + <reference key="object" ref="187860124"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">732</int> + <reference key="object" ref="465664775"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">733</int> + <reference key="object" ref="267113049"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">734</int> + <reference key="object" ref="566260087"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">735</int> + <reference key="object" ref="1015828907"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">736</int> + <reference key="object" ref="306450348"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">743</int> + <reference key="object" ref="42569431"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">744</int> + <reference key="object" ref="1603"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">745</int> + <reference key="object" ref="946006536"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">746</int> + <reference key="object" ref="955093318"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">747</int> + <reference key="object" ref="275977461"/> + <reference key="parent" ref="229823351"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">748</int> + <reference key="object" ref="285369580"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">749</int> + <reference key="object" ref="113822471"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">750</int> + <reference key="object" ref="663530184"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">751</int> + <reference key="object" ref="39811562"/> + <reference key="parent" ref="623131397"/> + </object> + <object class="IBObjectRecord"> + <int key="objectID">752</int> + <reference key="object" ref="247464530"/> + <reference key="parent" ref="229823351"/> + </object> + </object> + </object> + <object class="NSMutableDictionary" key="flattenedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>-1.IBPluginDependency</string> + <string>-2.IBPluginDependency</string> + <string>-3.IBPluginDependency</string> + <string>43.IBEditorWindowLastContentRect</string> + <string>43.IBPluginDependency</string> + <string>43.IBWindowTemplateEditedContentRect</string> + <string>43.NSWindowTemplate.visibleAtLaunch</string> + <string>43.editorWindowContentRectSynchronizationRect</string> + <string>43.windowTemplate.hasMaxSize</string> + <string>43.windowTemplate.hasMinSize</string> + <string>43.windowTemplate.maxSize</string> + <string>43.windowTemplate.minSize</string> + <string>44.IBPluginDependency</string> + <string>661.IBPluginDependency</string> + <string>662.IBPluginDependency</string> + <string>663.IBPluginDependency</string> + <string>664.IBPluginDependency</string> + <string>665.IBPluginDependency</string> + <string>666.IBPluginDependency</string> + <string>667.IBPluginDependency</string> + <string>668.IBPluginDependency</string> + <string>669.CustomClassName</string> + <string>669.IBPluginDependency</string> + <string>670.IBPluginDependency</string> + <string>671.IBPluginDependency</string> + <string>672.IBPluginDependency</string> + <string>673.IBPluginDependency</string> + <string>674.IBPluginDependency</string> + <string>675.IBPluginDependency</string> + <string>676.IBEditorWindowLastContentRect</string> + <string>676.IBPluginDependency</string> + <string>677.IBPluginDependency</string> + <string>678.IBPluginDependency</string> + <string>679.IBPluginDependency</string> + <string>680.IBPluginDependency</string> + <string>681.IBPluginDependency</string> + <string>682.IBPluginDependency</string> + <string>683.IBPluginDependency</string> + <string>684.IBPluginDependency</string> + <string>685.IBPluginDependency</string> + <string>686.IBPluginDependency</string> + <string>687.IBPluginDependency</string> + <string>688.IBPluginDependency</string> + <string>689.IBEditorWindowLastContentRect</string> + <string>689.IBPluginDependency</string> + <string>690.IBPluginDependency</string> + <string>691.IBPluginDependency</string> + <string>692.IBPluginDependency</string> + <string>693.IBPluginDependency</string> + <string>694.IBEditorWindowLastContentRect</string> + <string>694.IBPluginDependency</string> + <string>695.IBPluginDependency</string> + <string>696.IBPluginDependency</string> + <string>697.IBPluginDependency</string> + <string>698.IBPluginDependency</string> + <string>699.IBPluginDependency</string> + <string>700.IBPluginDependency</string> + <string>701.IBPluginDependency</string> + <string>702.IBPluginDependency</string> + <string>703.IBPluginDependency</string> + <string>704.IBPluginDependency</string> + <string>705.IBPluginDependency</string> + <string>706.IBPluginDependency</string> + <string>707.IBPluginDependency</string> + <string>708.IBPluginDependency</string> + <string>709.IBPluginDependency</string> + <string>709.IBSegmentedControlInspectorSelectedSegmentMetadataKey</string> + <string>710.IBPluginDependency</string> + <string>711.IBPluginDependency</string> + <string>712.IBPluginDependency</string> + <string>713.IBPluginDependency</string> + <string>714.CustomClassName</string> + <string>714.IBPluginDependency</string> + <string>715.IBPluginDependency</string> + <string>716.IBPluginDependency</string> + <string>727.IBPluginDependency</string> + <string>728.IBPluginDependency</string> + <string>729.IBPluginDependency</string> + <string>730.IBPluginDependency</string> + <string>731.IBPluginDependency</string> + <string>732.IBPluginDependency</string> + <string>733.IBPluginDependency</string> + <string>734.IBPluginDependency</string> + <string>735.IBPluginDependency</string> + <string>736.IBPluginDependency</string> + <string>743.IBPluginDependency</string> + <string>744.IBPluginDependency</string> + <string>745.IBPluginDependency</string> + <string>746.IBPluginDependency</string> + <string>747.IBPluginDependency</string> + <string>748.IBPluginDependency</string> + <string>749.IBPluginDependency</string> + <string>750.IBPluginDependency</string> + <string>751.IBPluginDependency</string> + <string>752.IBPluginDependency</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{509, 268}, {705, 336}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{509, 268}, {705, 336}}</string> + <integer value="0"/> + <string>{{745, 155}, {429, 399}}</string> + <boolean value="YES"/> + <boolean value="YES"/> + <string>{705, 400}</string> + <string>{705, 330}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterTableView</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{1035, 54}, {185, 403}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{352, 987}, {230, 63}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>{{1035, 243}, {196, 343}}</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <integer value="0"/> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>BetterTableView</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + <string>com.apple.InterfaceBuilder.CocoaPlugin</string> + </object> + </object> + <object class="NSMutableDictionary" key="unlocalizedProperties"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="activeLocalization"/> + <object class="NSMutableDictionary" key="localizations"> + <bool key="EncodedWithXMLCoder">YES</bool> + <reference key="dict.sortedKeys" ref="0"/> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + </object> + </object> + <nil key="sourceID"/> + <int key="maxID">752</int> + </object> + <object class="IBClassDescriber" key="IBDocument.Classes"> + <object class="NSMutableArray" key="referencedPartialClassDescriptions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">AuraController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aurasPanel</string> + <string>aurasPanelTable</string> + <string>controller</string> + <string>mobController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">AuraController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterSegmentedControl</string> + <string key="superclassName">NSSegmentedControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BetterTableView</string> + <string key="superclassName">NSTableView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="5752308"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BetterTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BindingsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BindingsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BlacklistController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>mobController</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MobController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BlacklistController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">BotController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeHotkeyHelp:</string> + <string>closeLootHotkeyHelp:</string> + <string>doTheRelicEmanation:</string> + <string>editCombatProfiles:</string> + <string>gatheringLootingOptions:</string> + <string>gatheringLootingSelectAction:</string> + <string>hotkeyHelp:</string> + <string>login:</string> + <string>lootHotkeyHelp:</string> + <string>maltby:</string> + <string>pvpBMSelectAction:</string> + <string>pvpStartStop:</string> + <string>pvpTestWarning:</string> + <string>startBot:</string> + <string>startStopBot:</string> + <string>stopBot:</string> + <string>test2:</string> + <string>test:</string> + <string>testHotkey:</string> + <string>updateStatus:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>antiAFKButton</string> + <string>anyLevelCheckbox</string> + <string>attackWithinText</string> + <string>auraController</string> + <string>autoJoinWG</string> + <string>behaviorPopup</string> + <string>bindingsController</string> + <string>blacklistController</string> + <string>chatController</string> + <string>chatLogController</string> + <string>combatController</string> + <string>combatDisableRelease</string> + <string>combatProfileEditor</string> + <string>combatProfilePopup</string> + <string>controller</string> + <string>corpseController</string> + <string>fishController</string> + <string>fishingApplyLureCheckbox</string> + <string>fishingCheckbox</string> + <string>fishingGatherDistanceText</string> + <string>fishingLurePopUpButton</string> + <string>fishingOnlySchoolsCheckbox</string> + <string>fishingRecastCheckbox</string> + <string>fishingUseContainersCheckbox</string> + <string>gatherDistText</string> + <string>gatheringLootingPanel</string> + <string>herbalismCheckbox</string> + <string>herbalismSkillText</string> + <string>hotkeyHelpPanel</string> + <string>itemController</string> + <string>logOutAfterRunningTextField</string> + <string>logOutAfterStuckCheckbox</string> + <string>logOutDurabilityTextField</string> + <string>logOutOnBrokenItemsCheckbox</string> + <string>logOutOnFullInventoryCheckbox</string> + <string>logOutOnTimerExpireCheckbox</string> + <string>logOutUseHearthstoneCheckbox</string> + <string>lootCheckbox</string> + <string>lootController</string> + <string>lootHotkeyHelpPanel</string> + <string>lootUseItemsCheckbox</string> + <string>macroController</string> + <string>maxLevelPopup</string> + <string>maxLevelText</string> + <string>memoryViewController</string> + <string>minLevelPopup</string> + <string>minLevelText</string> + <string>miningCheckbox</string> + <string>miningSkillText</string> + <string>mobController</string> + <string>mountCheckbox</string> + <string>mountType</string> + <string>movementController</string> + <string>netherwingEggCheckbox</string> + <string>nodeController</string> + <string>nodeIgnoreFriendlyCheckbox</string> + <string>nodeIgnoreFriendlyDistanceText</string> + <string>nodeIgnoreHostileCheckbox</string> + <string>nodeIgnoreHostileDistanceText</string> + <string>nodeIgnoreMobCheckbox</string> + <string>nodeIgnoreMobDistanceText</string> + <string>offsetController</string> + <string>overlayWindow</string> + <string>playerController</string> + <string>playersController</string> + <string>procedureController</string> + <string>pvpBMSelectPanel</string> + <string>pvpBannerImage</string> + <string>pvpBehaviorPopUp</string> + <string>pvpController</string> + <string>pvpLeaveInactiveCheckbox</string> + <string>pvpPlayWarningCheckbox</string> + <string>pvpStartStopButton</string> + <string>pvpWaitForPreparationBuff</string> + <string>questController</string> + <string>routePopup</string> + <string>runningTimer</string> + <string>scanGrid</string> + <string>skinningCheckbox</string> + <string>skinningSkillText</string> + <string>spellController</string> + <string>startStopButton</string> + <string>startstopRecorder</string> + <string>statisticsController</string> + <string>statusText</string> + <string>view</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSButton</string> + <string>NSButton</string> + <string>id</string> + <string>AuraController</string> + <string>NSButton</string> + <string>id</string> + <string>BindingsController</string> + <string>BlacklistController</string> + <string>ChatController</string> + <string>ChatLogController</string> + <string>CombatController</string> + <string>NSButton</string> + <string>CombatProfileEditor</string> + <string>id</string> + <string>Controller</string> + <string>CorpseController</string> + <string>FishController</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>id</string> + <string>NSPanel</string> + <string>NSButton</string> + <string>id</string> + <string>NSPanel</string> + <string>InventoryController</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>LootController</string> + <string>NSPanel</string> + <string>NSButton</string> + <string>MacroController</string> + <string>id</string> + <string>NSTextField</string> + <string>MemoryViewController</string> + <string>id</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>id</string> + <string>MobController</string> + <string>NSButton</string> + <string>NSPopUpButton</string> + <string>MovementController</string> + <string>NSButton</string> + <string>NodeController</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>OffsetController</string> + <string>NSWindow</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>ProcedureController</string> + <string>NSPanel</string> + <string>NSImageView</string> + <string>NSPopUpButton</string> + <string>PvPController</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>QuestController</string> + <string>id</string> + <string>NSTextField</string> + <string>ScanGridView</string> + <string>NSButton</string> + <string>id</string> + <string>SpellController</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>StatisticsController</string> + <string>NSTextField</string> + <string>NSView</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">BotController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ChatLogController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRelayPanel:</string> + <string>createChatAction:</string> + <string>openRelayPanel:</string> + <string>sendEmail:</string> + <string>something:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatActionsController</string> + <string>chatLogTable</string> + <string>controller</string> + <string>enableGrowlNotifications</string> + <string>offsetController</string> + <string>relayPanel</string> + <string>ruleEditor</string> + <string>view</string> + <string>whisperLogTable</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSArrayController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSButton</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPredicateEditor</string> + <string>NSView</string> + <string>NSTableView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ChatLogController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CombatController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>blacklistController</string> + <string>botController</string> + <string>chatController</string> + <string>combatPanel</string> + <string>combatTable</string> + <string>controller</string> + <string>macroController</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>playersController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BlacklistController</string> + <string>BotController</string> + <string>ChatController</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>Controller</string> + <string>MacroController</string> + <string>MobController</string> + <string>MovementController</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CombatController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CombatProfileEditor</string> + <string key="superclassName">SaveData</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addIgnoreEntry:</string> + <string>addIgnoreFromTarget:</string> + <string>closeEditor:</string> + <string>closeRename:</string> + <string>createCombatProfile:</string> + <string>deleteCombatProfile:</string> + <string>deleteIgnoreEntry:</string> + <string>duplicateCombatProfile:</string> + <string>exportCombatProfile:</string> + <string>importCombatProfile:</string> + <string>loadCombatProfile:</string> + <string>renameCombatProfile:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>assistPopUpButton</string> + <string>botController</string> + <string>controller</string> + <string>editorPanel</string> + <string>followPopUpButton</string> + <string>ignoreTable</string> + <string>mobController</string> + <string>playersController</string> + <string>renamePanel</string> + <string>tankPopUpButton</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>BotController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSPopUpButton</string> + <string>NSTableView</string> + <string>MobController</string> + <string>PlayersController</string> + <string>NSPanel</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CombatProfileEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">Controller</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>confirmAppRename:</string> + <string>launchWebsite:</string> + <string>pidSelected:</string> + <string>renameShowHelp:</string> + <string>renameUseExisting:</string> + <string>showAbout:</string> + <string>showSettings:</string> + <string>testFront:</string> + <string>toggleGUIScripting:</string> + <string>toggleSecurePrefs:</string> + <string>toolbarItemSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>aboutValidImage</string> + <string>aboutView</string> + <string>behaviorController</string> + <string>behavsToolbarItem</string> + <string>botController</string> + <string>botToolbarItem</string> + <string>chatLogController</string> + <string>chatLogToolbarItem</string> + <string>combatProfileEditor</string> + <string>corpseController</string> + <string>currentStatusText</string> + <string>disableGUIScriptCheckbox</string> + <string>itemController</string> + <string>mainBackgroundBox</string> + <string>mainToolbar</string> + <string>mainWindow</string> + <string>matchExistingCheckbox</string> + <string>memoryAccessLight</string> + <string>memoryAccessValidText</string> + <string>memoryToolbarItem</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>newIdentifierField</string> + <string>newNameField</string> + <string>newSignatureField</string> + <string>nodeController</string> + <string>objectsController</string> + <string>objectsToolbarItem</string> + <string>offsetController</string> + <string>playerData</string> + <string>playerToolbarItem</string> + <string>playersController</string> + <string>prefsToolbarItem</string> + <string>pvpController</string> + <string>pvpToolbarItem</string> + <string>routeController</string> + <string>routesToolbarItem</string> + <string>settingsView</string> + <string>spellController</string> + <string>spellsToolbarItem</string> + <string>statisticsController</string> + <string>statisticsToolbarItem</string> + <string>versionInfoText</string> + <string>wowInstancePopUpButton</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSImageView</string> + <string>NSView</string> + <string>ProcedureController</string> + <string>NSToolbarItem</string> + <string>BotController</string> + <string>NSToolbarItem</string> + <string>ChatLogController</string> + <string>NSToolbarItem</string> + <string>CombatProfileEditor</string> + <string>CorpseController</string> + <string>id</string> + <string>NSButton</string> + <string>InventoryController</string> + <string>id</string> + <string>NSToolbar</string> + <string>id</string> + <string>NSButton</string> + <string>id</string> + <string>id</string> + <string>NSToolbarItem</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NodeController</string> + <string>ObjectsController</string> + <string>NSToolbarItem</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>NSToolbarItem</string> + <string>PlayersController</string> + <string>NSToolbarItem</string> + <string>PvPController</string> + <string>NSToolbarItem</string> + <string>WaypointController</string> + <string>NSToolbarItem</string> + <string>NSView</string> + <string>SpellController</string> + <string>NSToolbarItem</string> + <string>StatisticsController</string> + <string>NSToolbarItem</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="437834541"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">Controller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">CorpseController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">CorpseController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">FishController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>itemController</string> + <string>lootController</string> + <string>movementController</string> + <string>nodeController</string> + <string>playerController</string> + <string>spellController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>LootController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>PlayerDataController</string> + <string>SpellController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">FishController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">InventoryController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>memoryViewController</string> + <string>objectsController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MemoryViewController</string> + <string>ObjectsController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">InventoryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">LootController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>chatController</string> + <string>controller</string> + <string>itemController</string> + <string>macroController</string> + <string>offsetController</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>ChatController</string> + <string>Controller</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">LootController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MacroController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>botController</string> + <string>chatController</string> + <string>controller</string> + <string>offsetController</string> + <string>playerData</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BotController</string> + <string>ChatController</string> + <string>Controller</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MacroController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MemoryViewController</string> + <string key="superclassName">NSView</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>clearSearch:</string> + <string>clearTable:</string> + <string>clearValues:</string> + <string>menuAction:</string> + <string>offsetSelectAction:</string> + <string>openOffsetPanel:</string> + <string>openPointerPanel:</string> + <string>openSearch:</string> + <string>pointerSelectAction:</string> + <string>saveValues:</string> + <string>setCustomAddress:</string> + <string>snapshotMemory:</string> + <string>startSearch:</string> + <string>typeSelected:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>bitPanel</string> + <string>bitTableView</string> + <string>clearButton</string> + <string>controller</string> + <string>emulatePPCButton</string> + <string>maskTextField</string> + <string>memoryTable</string> + <string>memoryViewWindow</string> + <string>offsetController</string> + <string>offsetScanPanel</string> + <string>operatorPopUpButton</string> + <string>pointerScanCancelButton</string> + <string>pointerScanFindButton</string> + <string>pointerScanNumTextField</string> + <string>pointerScanPanel</string> + <string>pointerScanProgressIndicator</string> + <string>pointerScanVariationButton</string> + <string>pointerScanVariationTextField</string> + <string>resultsTextView</string> + <string>searchButton</string> + <string>searchPanel</string> + <string>searchTableView</string> + <string>searchText</string> + <string>searchTypePopUpButton</string> + <string>signMatrix</string> + <string>signatureTextField</string> + <string>valueMatrix</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSButton</string> + <string>Controller</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>id</string> + <string>id</string> + <string>OffsetController</string> + <string>NSPanel</string> + <string>NSPopUpButton</string> + <string>NSButton</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>NSTextField</string> + <string>NSTextView</string> + <string>NSButton</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSMatrix</string> + <string>NSTextField</string> + <string>NSMatrix</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MemoryViewController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MobController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">updateTracking:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>additionalList</string> + <string>auraController</string> + <string>botController</string> + <string>combatController</string> + <string>memoryViewController</string> + <string>movementController</string> + <string>objectsController</string> + <string>spellController</string> + <string>trackFriendlyMenuItem</string> + <string>trackHostileMenuItem</string> + <string>trackNeutralMenuItem</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPopUpButton</string> + <string>id</string> + <string>BotController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>ObjectsController</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MobController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">MovementController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>auraController</string> + <string>blacklistController</string> + <string>botController</string> + <string>combatProfileEditor</string> + <string>controller</string> + <string>logOutStuckAttemptsTextField</string> + <string>macroController</string> + <string>mobController</string> + <string>movementTypePopUp</string> + <string>offsetController</string> + <string>playerData</string> + <string>statisticsController</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>AuraController</string> + <string>BlacklistController</string> + <string>BotController</string> + <string>CombatProfileEditor</string> + <string>Controller</string> + <string>NSTextField</string> + <string>MacroController</string> + <string>MobController</string> + <string>NSPopUpButton</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>StatisticsController</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">MovementController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="5752308"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="437834541"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKFileWatcher.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKKQueue.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">UKMainThreadProxy.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NodeController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>memoryViewController</string> + <string>moveToList</string> + <string>movementController</string> + <string>objectsController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>NSPopUpButton</string> + <string>id</string> + <string>ObjectsController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">NodeController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ObjectController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">tableDoubleClick:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerData</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ObjectsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>faceObject:</string> + <string>filter:</string> + <string>moveToStart:</string> + <string>moveToStop:</string> + <string>refreshData:</string> + <string>reloadNames:</string> + <string>resetObjects:</string> + <string>targetObject:</string> + <string>updateTracking:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>itemController</string> + <string>itemTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>mobTable</string> + <string>moveToMobPopUpButton</string> + <string>moveToNodePopUpButton</string> + <string>movementController</string> + <string>nodeController</string> + <string>nodeTable</string> + <string>playerController</string> + <string>playersController</string> + <string>playersTable</string> + <string>tabView</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>InventoryController</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>NSTableView</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + <string>MovementController</string> + <string>NodeController</string> + <string>NSTableView</string> + <string>PlayerDataController</string> + <string>PlayersController</string> + <string>NSTableView</string> + <string>NSTabView</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ObjectsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">OffsetController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">controller</string> + <string key="NS.object.0">Controller</string> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">OffsetController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayerDataController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>setPlayerDirectionInMemory:</string> + <string>showAuraWindow:</string> + <string>showCombatWindow:</string> + <string>showCooldownWindow:</string> + <string>showPlayerStructure:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>combatController</string> + <string>combatTable</string> + <string>controller</string> + <string>healingTable</string> + <string>memoryViewController</string> + <string>mobController</string> + <string>movementController</string> + <string>nodeController</string> + <string>offsetController</string> + <string>powerNameText</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>CombatController</string> + <string>NSTableView</string> + <string>Controller</string> + <string>NSTableView</string> + <string>MemoryViewController</string> + <string>MobController</string> + <string>MovementController</string> + <string>NodeController</string> + <string>OffsetController</string> + <string>NSTextField</string> + <string>SpellController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayerDataController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PlayersController</string> + <string key="superclassName">ObjectController</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">updateTracking:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>memoryViewController</string> + <string>movementController</string> + <string>objectsController</string> + <string>playerColorByLevel</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>MemoryViewController</string> + <string>MovementController</string> + <string>ObjectsController</string> + <string>NSButton</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PlayersController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ProcedureController</string> + <string key="superclassName">SaveData</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRule:</string> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteRule:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>importBehavior:</string> + <string>loadBehavior:</string> + <string>removeBehavior:</string> + <string>renameBehavior:</string> + <string>setBehaviorEvent:</string> + <string>tableRowDoubleClicked:</string> + <string>updateOptions:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>combatPriorityTextField</string> + <string>itemController</string> + <string>procedureEventSegment</string> + <string>renamePanel</string> + <string>ruleEditor</string> + <string>ruleTable</string> + <string>spellController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>id</string> + <string>id</string> + <string>NSPanel</string> + <string>id</string> + <string>NSTableView</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ProcedureController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">PvPController</string> + <string key="superclassName">SaveData</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>closeRename:</string> + <string>createBehavior:</string> + <string>deleteBehavior:</string> + <string>duplicateBehavior:</string> + <string>exportBehavior:</string> + <string>importBehavior:</string> + <string>renameBehavior:</string> + <string>test:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>renamePanel</string> + <string>view</string> + <string>waypointController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSPanel</string> + <string>NSView</string> + <string>WaypointController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">PvPController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">QuestController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>playerDataController</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>PlayerDataController</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">QuestController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">RouteVisualizationView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">RouteVisualizationView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SaveData</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>saveAllObjects:</string> + <string>showInFinder:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SaveData.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">ScanGridView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">ScanGridView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SpellController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>reloadMenu:</string> + <string>spellLoadAllData:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>botController</string> + <string>controller</string> + <string>cooldownPanel</string> + <string>cooldownPanelTable</string> + <string>itemController</string> + <string>macroController</string> + <string>offsetController</string> + <string>playerController</string> + <string>spellDropDown</string> + <string>spellLoadingProgress</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>BotController</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSTableView</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>OffsetController</string> + <string>PlayerDataController</string> + <string>id</string> + <string>id</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">SpellController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">StatisticsController</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <string key="NS.key.0">resetStatistics:</string> + <string key="NS.object.0">id</string> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>controller</string> + <string>experienceText</string> + <string>honorGainedText</string> + <string>itemsLootedText</string> + <string>memoryOperationsTable</string> + <string>memoryReadsText</string> + <string>memoryWritesText</string> + <string>mobsKilledText</string> + <string>moneyText</string> + <string>playerController</string> + <string>view</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>Controller</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTableView</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>NSTextField</string> + <string>PlayerDataController</string> + <string>NSView</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">StatisticsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">WaypointActionEditor</string> + <string key="superclassName">NSObject</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addAction:</string> + <string>addCondition:</string> + <string>closeEditor:</string> + <string>saveWaypoint:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionTableView</string> + <string>addActionDropDown</string> + <string>addConditionDropDown</string> + <string>combatProfileEditor</string> + <string>conditionMatchingSegment</string> + <string>conditionTableView</string> + <string>editorPanel</string> + <string>inventoryController</string> + <string>macroController</string> + <string>mobController</string> + <string>nodeController</string> + <string>spellController</string> + <string>waypointController</string> + <string>waypointDescription</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSTableView</string> + <string>NSPopUpButton</string> + <string>NSPopUpButton</string> + <string>CombatProfileEditor</string> + <string>NSSegmentedControl</string> + <string>NSTableView</string> + <string>NSPanel</string> + <string>InventoryController</string> + <string>MacroController</string> + <string>MobController</string> + <string>NodeController</string> + <string>SpellController</string> + <string>WaypointController</string> + <string>NSTextField</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">WaypointActionEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">WaypointController</string> + <string key="superclassName">SaveData</string> + <object class="NSMutableDictionary" key="actions"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>addRouteCollection:</string> + <string>addRouteSet:</string> + <string>addWaypoint:</string> + <string>closeAutomatorPanel:</string> + <string>closeDescription:</string> + <string>closeHelpPanel:</string> + <string>closeVisualize:</string> + <string>closestWaypoint:</string> + <string>deleteRouteButton:</string> + <string>deleteRouteMenu:</string> + <string>duplicateRoute:</string> + <string>editWaypointAction:</string> + <string>exportRoute:</string> + <string>importRoute:</string> + <string>loadRoute:</string> + <string>moveToWaypoint:</string> + <string>openAutomatorPanel:</string> + <string>removeWaypoint:</string> + <string>renameRoute:</string> + <string>resetAllWaypoints:</string> + <string>setRouteType:</string> + <string>startStopAutomator:</string> + <string>startingRouteClicked:</string> + <string>stopMovement:</string> + <string>testWaypointSequence:</string> + <string>visualize:</string> + <string>waypointMenuAction:</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + <string>id</string> + </object> + </object> + <object class="NSMutableDictionary" key="outlets"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="NSArray" key="dict.sortedKeys"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>actionMenu</string> + <string>automatorIntervalValue</string> + <string>automatorPanel</string> + <string>automatorRecorder</string> + <string>automatorSpinner</string> + <string>automatorStartStopButton</string> + <string>automatorVizualizer</string> + <string>botController</string> + <string>combatController</string> + <string>controller</string> + <string>descriptionPanel</string> + <string>helpPanel</string> + <string>mobController</string> + <string>movementController</string> + <string>playerData</string> + <string>routeTypeSegment</string> + <string>routesTable</string> + <string>scrollWithRoute</string> + <string>shortcutRecorder</string> + <string>startingRouteButton</string> + <string>testingMenu</string> + <string>view</string> + <string>visualizePanel</string> + <string>visualizeView</string> + <string>waypointSectionTitle</string> + <string>waypointTabView</string> + <string>waypointTable</string> + <string>wpActionDelayText</string> + <string>wpActionIDPopUp</string> + <string>wpActionPanel</string> + <string>wpActionTabs</string> + <string>wpActionTypeSegments</string> + </object> + <object class="NSMutableArray" key="dict.values"> + <bool key="EncodedWithXMLCoder">YES</bool> + <string>NSMenu</string> + <string>NSTextField</string> + <string>NSPanel</string> + <string>SRRecorderControl</string> + <string>NSProgressIndicator</string> + <string>NSButton</string> + <string>RouteVisualizationView</string> + <string>BotController</string> + <string>id</string> + <string>Controller</string> + <string>NSPanel</string> + <string>NSPanel</string> + <string>id</string> + <string>id</string> + <string>PlayerDataController</string> + <string>id</string> + <string>NSOutlineView</string> + <string>NSButton</string> + <string>SRRecorderControl</string> + <string>NSButton</string> + <string>NSMenu</string> + <string>NSView</string> + <string>NSPanel</string> + <string>RouteVisualizationView</string> + <string>NSTextField</string> + <string>NSTabView</string> + <string>BetterTableView</string> + <string>NSTextField</string> + <string>NSPopUpButton</string> + <string>NSPanel</string> + <string>NSTabView</string> + <string>BetterSegmentedControl</string> + </object> + </object> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBProjectSource</string> + <string key="minorKey">WaypointController.h</string> + </object> + </object> + </object> + <object class="NSMutableArray" key="referencedPartialClassDescriptionsV3.2+"> + <bool key="EncodedWithXMLCoder">YES</bool> + <object class="IBPartialClassDescription"> + <string key="className">NSActionCell</string> + <string key="superclassName">NSCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSActionCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="96136169"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplication.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="377291637"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSApplicationScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="394533276"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSColorPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSHelpManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPageLayout.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSApplication</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserInterfaceItemSearching.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSArrayController</string> + <string key="superclassName">NSObjectController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSArrayController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSBox</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSBox.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButton</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSButtonCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSCell</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSControl</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="902986466"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSController</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSFormatter</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFormatter.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSImageView</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSImageView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSManagedObjectContext</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">CoreData.framework/Headers/NSManagedObjectContext.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMatrix</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMatrix.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenu</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="694157084"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenu.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItem</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="35888272"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSMenuItemCell</string> + <string key="superclassName">NSButtonCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSMenuItemCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSAccessibility.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="96136169"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="377291637"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="394533276"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="902986466"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDictionaryController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDragging.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSFontPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSKeyValueBinding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <reference key="sourceIdentifier" ref="694157084"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSNibLoading.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="714364676"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSOutlineView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPasteboard.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSavePanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="334989550"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="333264667"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbarItem.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="54005643"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSError.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSFileManager.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyValueObserving.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSKeyedArchiver.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObject.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSObjectScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSPortCoder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSRunLoop.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptClassDescription.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptKeyValueCoding.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptObjectSpecifiers.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSScriptWhoseTests.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSThread.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURL.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLConnection.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Foundation.framework/Headers/NSURLDownload.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Growl.framework/Headers/GrowlApplicationBridge.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier" id="215874184"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRRecorderControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">ShortcutRecorder.framework/Headers/SRValidator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUAppcast.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">Sparkle.framework/Headers/SUUpdater.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSObjectController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSObjectController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSOutlineView</string> + <string key="superclassName">NSTableView</string> + <reference key="sourceIdentifier" ref="714364676"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPanel</string> + <string key="superclassName">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPanel.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButton</string> + <string key="superclassName">NSButton</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButton.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPopUpButtonCell</string> + <string key="superclassName">NSMenuItemCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPopUpButtonCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSPredicateEditor</string> + <string key="superclassName">NSRuleEditor</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSPredicateEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSProgressIndicator</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSProgressIndicator.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSInterfaceStyle.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSResponder</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSResponder.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSRuleEditor</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRuleEditor.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScrollView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScrollView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSScroller</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSScroller.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSSegmentedControl</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSSegmentedControl.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTabView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTabView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableColumn</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableColumn.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableHeaderView</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTableHeaderView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTableView</string> + <string key="superclassName">NSControl</string> + <reference key="sourceIdentifier" ref="334989550"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSText</string> + <string key="superclassName">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSText.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextField</string> + <string key="superclassName">NSControl</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextField.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextFieldCell</string> + <string key="superclassName">NSActionCell</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextFieldCell.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSTextView</string> + <string key="superclassName">NSText</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSTextView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbar</string> + <string key="superclassName">NSObject</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSToolbar.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSToolbarItem</string> + <string key="superclassName">NSObject</string> + <reference key="sourceIdentifier" ref="333264667"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSUserDefaultsController</string> + <string key="superclassName">NSController</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSUserDefaultsController.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSClipView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <reference key="sourceIdentifier" ref="35888272"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSRulerView.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSView</string> + <string key="superclassName">NSResponder</string> + <reference key="sourceIdentifier" ref="54005643"/> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSDrawer.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <string key="superclassName">NSResponder</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindow.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">NSWindow</string> + <object class="IBClassDescriptionSource" key="sourceIdentifier"> + <string key="majorKey">IBFrameworkSource</string> + <string key="minorKey">AppKit.framework/Headers/NSWindowScripting.h</string> + </object> + </object> + <object class="IBPartialClassDescription"> + <string key="className">SRRecorderControl</string> + <string key="superclassName">NSControl</string> + <object class="NSMutableDictionary" key="outlets"> + <string key="NS.key.0">delegate</string> + <string key="NS.object.0">id</string> + </object> + <reference key="sourceIdentifier" ref="215874184"/> + </object> + </object> + </object> + <int key="IBDocument.localizationMode">0</int> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDependencyDefaults"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.macosx</string> + <integer value="1050" key="NS.object.0"/> + </object> + <object class="NSMutableDictionary" key="IBDocument.PluginDeclaredDevelopmentDependencies"> + <string key="NS.key.0">com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3</string> + <integer value="3000" key="NS.object.0"/> + </object> + <bool key="IBDocument.PluginDeclaredDependenciesTrackSystemTargetVersion">YES</bool> + <string key="IBDocument.LastKnownRelativeProjectPath">Pocket Gnome.xcodeproj</string> + <int key="IBDocument.defaultPropertyAccessControl">3</int> + </data> +</archive> diff --git a/WaypointController.h b/WaypointController.h new file mode 100644 index 0000000..099bd23 --- /dev/null +++ b/WaypointController.h @@ -0,0 +1,173 @@ +// +// WaypointController.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> + +@class Route; +@class RouteSet; +@class RouteCollection; +@class Waypoint; +@class Controller; +@class PlayerDataController; +@class BotController; +@class FileController; +@class MobController; +@class MovementController; +@class CombatController; + +@class BetterTableView; +@class PTHotKey; +@class SRRecorderControl; + +@class BetterSegmentedControl; +@class RouteVisualizationView; + +@interface WaypointController : NSObject { + + IBOutlet Controller *controller; + IBOutlet PlayerDataController *playerData; + IBOutlet MobController *mobController; + IBOutlet BotController *botController; + IBOutlet MovementController *movementController; + IBOutlet CombatController *combatController; + //IBOutlet ProfileController *profileController; + IBOutlet FileController *fileController; + + IBOutlet BetterTableView *waypointTable; + IBOutlet NSOutlineView *routesTable; + + IBOutlet NSView *view; + IBOutlet RouteVisualizationView *visualizeView; + IBOutlet NSPanel *visualizePanel; + IBOutlet NSMenu *actionMenu; + IBOutlet NSMenu *testingMenu; + + // waypoint action editor + IBOutlet NSPanel *wpActionPanel; + IBOutlet NSTabView *wpActionTabs; + IBOutlet NSTextField *wpActionDelayText; + IBOutlet BetterSegmentedControl *wpActionTypeSegments; + IBOutlet NSPopUpButton *wpActionIDPopUp; + Waypoint *_editWaypoint; + + // waypoint recording + IBOutlet NSButton *automatorStartStopButton; + IBOutlet NSPanel *automatorPanel; + IBOutlet NSTextField *automatorIntervalValue; + IBOutlet NSProgressIndicator *automatorSpinner; + IBOutlet RouteVisualizationView *automatorVizualizer; + + IBOutlet SRRecorderControl *shortcutRecorder; + IBOutlet SRRecorderControl *automatorRecorder; + + IBOutlet id routeTypeSegment; + RouteSet *_currentRouteSet; + Route *_currentRoute; + PTHotKey *addWaypointGlobalHotkey; + PTHotKey *automatorGlobalHotkey; + BOOL validSelection, validWaypointCount; + BOOL isAutomatorRunning, disableGrowl; + NSSize minSectionSize, maxSectionSize; + + IBOutlet NSPanel *descriptionPanel; + NSString *_descriptionMultiRows; + NSIndexSet *_selectedRows; + + NSString *_nameBeforeRename; + + IBOutlet NSButton *scrollWithRoute; + IBOutlet NSTextField *waypointSectionTitle; + + // temp for route collections + NSMutableArray *_routeCollectionList; + RouteCollection *_currentRouteCollection; + BOOL _validRouteSelection; + IBOutlet NSButton *startingRouteButton; + IBOutlet NSTabView *waypointTabView; + + BOOL _validRouteSetSelected; + BOOL _validRouteCollectionSelected; + + // for teh n00bs + BOOL _firstTimeEverOnTheNewRouteCollections; + IBOutlet NSPanel *helpPanel; +} + +- (void)saveRoutes; + +@property (readonly) NSView *view; +@property (readonly) NSString *sectionTitle; +@property NSSize minSectionSize; +@property NSSize maxSectionSize; + +@property BOOL validSelection; +@property BOOL validWaypointCount; +@property BOOL isAutomatorRunning; +@property BOOL disableGrowl; +@property (readonly) Route *currentRoute; +@property (readwrite, retain) RouteSet *currentRouteSet; +@property (readonly, retain) RouteCollection *currentRouteCollection; +@property (readwrite, retain) NSString *descriptionMultiRows; + +@property BOOL validRouteSelection; +@property BOOL validRouteSetSelected; +@property BOOL validRouteCollectionSelected; + +- (NSArray*)routeCollections; +- (NSArray*)routes; +- (RouteCollection*)routeCollectionForUUID: (NSString*)UUID; + +// route actions +- (IBAction)setRouteType: (id)sender; +- (IBAction)loadRoute: (id)sender; +- (IBAction)waypointMenuAction: (id)sender; +- (IBAction)closeDescription: (id)sender; + +// importing/exporting +- (void)importRouteAtPath: (NSString*)path; + +- (IBAction)visualize: (id)sender; +- (IBAction)closeVisualize: (id)sender; +- (IBAction)moveToWaypoint: (id)sender; +- (IBAction)testWaypointSequence: (id)sender; +- (IBAction)stopMovement: (id)sender; +- (IBAction)closestWaypoint: (id)sender; + +// waypoint automation +- (IBAction)openAutomatorPanel: (id)sender; +- (IBAction)closeAutomatorPanel: (id)sender; +- (IBAction)startStopAutomator: (id)sender; +- (IBAction)resetAllWaypoints: (id)sender; + +// waypoint actions +- (IBAction)addWaypoint: (id)sender; +- (IBAction)removeWaypoint: (id)sender; +- (IBAction)editWaypointAction: (id)sender; +- (void)waypointActionEditorClosed: (BOOL)change; + +// new action/conditions +- (void)selectCurrentWaypoint:(int)index; + +- (void)setCurrentRouteSet: (RouteSet*)routeSet; + +// new Route Collection stuff +- (IBAction)deleteRouteButton: (id)sender; +- (IBAction)deleteRouteMenu: (id)sender; +- (IBAction)addRouteSet: (id)sender; +- (IBAction)addRouteCollection: (id)sender; +- (IBAction)closeHelpPanel: (id)sender; +- (IBAction)startingRouteClicked: (id)sender; +- (IBAction)importRoute: (id)sender; +- (IBAction)exportRoute: (id)sender; +- (IBAction)renameRoute: (id)sender; +- (IBAction)duplicateRoute: (id)sender; +- (IBAction)showInFinder: (id)sender; + +// TO DO: add import/export/show/duplicate + +@end diff --git a/WaypointController.m b/WaypointController.m new file mode 100644 index 0000000..7f60970 --- /dev/null +++ b/WaypointController.m @@ -0,0 +1,1640 @@ +// +// WaypointController.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/16/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "WaypointController.h" +#import "Controller.h" +#import "PlayerDataController.h" +#import "MovementController.h" +#import "MobController.h" +#import "BotController.h" +#import "CombatController.h" +#import "SpellController.h" +#import "InventoryController.h" + +#import "WaypointActionEditor.h" + +#import "RouteCollection.h" +#import "RouteSet.h" +#import "Route.h" +#import "Waypoint.h" +#import "Action.h" +#import "Mob.h" +#import "ActionMenusController.h" +#import "FileController.h" + +#import "RouteVisualizationView.h" + +#import "BetterTableView.h" + +#import "PTHeader.h" +#import <Growl/GrowlApplicationBridge.h> +#import <ShortcutRecorder/ShortcutRecorder.h> + +#define AddWaypointHotkeyIdentifier @"AddWaypoint" +#define AutomatorHotkeyIdentifier @"AutomatorStartStop" + +enum AutomatorIntervalType { + AutomatorIntervalType_Time = 0, + AutomatorIntervalType_Distance = 1, +}; + +@interface WaypointController (Internal) +- (void)toggleGlobalHotKey:(id)sender; +- (void)automatorPulse; +- (id)selectedRouteObject; +- (void)selectItemInOutlineViewToEdit:(id)item; +- (void)setViewTitle; +- (void)deleteRoute:(id)selectedItem; +@end + +@interface WaypointController () +@property (readwrite, retain) RouteCollection *currentRouteCollection; +@end + +@implementation WaypointController + ++ (void) initialize { + NSDictionary *waypointDefaults = [NSDictionary dictionaryWithObjectsAndKeys: + @"0.5", @"RouteAutomatorIntervalValue", + [NSNumber numberWithInt: 0], @"RouteAutomatorIntervalTypeTag", nil]; + [[NSUserDefaults standardUserDefaults] registerDefaults: waypointDefaults]; +} + +- (id) init +{ + self = [super init]; + if (self != nil) { + + _selectedRows = nil; + _nameBeforeRename = nil; + + _firstTimeEverOnTheNewRouteCollections = NO; + _validRouteSelection = NO; + _validRouteSetSelected = NO; + _validRouteCollectionSelected = NO; + _currentRouteCollection = nil; + _routeCollectionList = [[NSMutableArray array] retain]; + + // needed since the connection hasn't been done @ this point (and we want the Bot.xib file to see the routes!) + if ( fileController == nil ){ + fileController = [[FileController sharedFileController] retain]; + } + + // pull data from the .plist file + NSArray *routes = [[fileController dataForKey:@"Routes" withClass:[RouteSet class]] retain]; + + // try to load .route files if they exist + if ( !routes ){ + routes = [[fileController getObjectsWithClass:[RouteSet class]] retain]; + } + + // delete old files! + if ( [routes count] > 0 ){ + for ( RouteSet *route in routes ){ + [fileController deleteObject:route]; + } + log(LOG_WAYPOINT, @"[Routes] Converting all routes to the new format! Removing old files!"); + } + + // then we need to convert our routes above, I love how much I change things QQ + if ( [routes count] > 0 ){ + + for ( RouteSet *route in routes ){ + RouteCollection *rc = [RouteCollection routeCollectionWithName:[route name]]; + [rc addRouteSet:route]; + [rc setStartRoute:route]; + + [_routeCollectionList addObject:rc]; + } + + // save for the first time + [fileController saveObjects:_routeCollectionList]; + + _firstTimeEverOnTheNewRouteCollections = YES; + } + else{ + _routeCollectionList = [[fileController getObjectsWithClass:[RouteCollection class]] retain]; + } + + // listen for notification + [[NSNotificationCenter defaultCenter] addObserver: self selector: @selector(applicationWillTerminate:) name: NSApplicationWillTerminateNotification object: nil]; + [[NSNotificationCenter defaultCenter] addObserver: self + selector: @selector(checkHotkeys:) + name: DidLoadViewInMainWindowNotification + object: nil]; + [NSBundle loadNibNamed: @"Routes" owner: self]; + } + return self; +} + +- (void)awakeFromNib { + + self.minSectionSize = [self.view frame].size; + self.maxSectionSize = NSZeroSize; + + [waypointTable registerForDraggedTypes: [NSArray arrayWithObjects: @"WaypointIndexesType", @"WaypointArrayType", nil]]; + [routesTable registerForDraggedTypes: [NSArray arrayWithObjects: @"RouteSets", nil]]; + + // TO DO - auto select first one? + /*if ( !self.currentRoute && [_routes count]) { + [self setCurrentRouteSet: [_routes objectAtIndex: 0]]; + [waypointTable reloadData]; + }*/ + + // Automator isn't running! + self.isAutomatorRunning = NO; + + [shortcutRecorder setCanCaptureGlobalHotKeys: YES]; + [automatorRecorder setCanCaptureGlobalHotKeys: YES]; + + KeyCombo combo = { -1, 0 }; + if([[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAdd_HotkeyCode"]) + combo.code = [[[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAdd_HotkeyCode"] intValue]; + if([[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAdd_HotkeyFlags"]) + combo.flags = [[[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAdd_HotkeyFlags"] intValue]; + + KeyCombo combo2 = {NSShiftKeyMask, kSRKeysF14}; + if([[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAutomator_HotkeyCode"]) + combo2.code = [[[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAutomator_HotkeyCode"] intValue]; + if([[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAutomator_HotkeyFlags"]) + combo2.flags = [[[NSUserDefaults standardUserDefaults] objectForKey: @"WaypointAutomator_HotkeyFlags"] intValue]; + + [shortcutRecorder setDelegate: nil]; + [shortcutRecorder setKeyCombo: combo]; + [shortcutRecorder setDelegate: self]; + + [automatorRecorder setDelegate: nil]; + [automatorRecorder setKeyCombo: combo2]; + [automatorRecorder setDelegate: self]; +} + +- (void)saveRoutes { + + // save + [fileController saveObjects:_routeCollectionList]; + + // we no longer use this anymore! Yay! + [[NSUserDefaults standardUserDefaults] removeObjectForKey: @"IgnoreRoute"]; + [[NSUserDefaults standardUserDefaults] removeObjectForKey: @"Routes"]; + [[NSUserDefaults standardUserDefaults] synchronize]; +} + +- (void)validateBindings { + [self willChangeValueForKey: @"currentRoute"]; + [self didChangeValueForKey: @"currentRoute"]; + + self.validSelection = [waypointTable numberOfSelectedRows] ? YES : NO; + self.validWaypointCount = [[self currentRoute] waypointCount] > 1 ? YES : NO; +} + +- (void)applicationWillTerminate: (NSNotification*)notification { + [self saveRoutes]; +} + +#pragma mark - +#pragma mark Current State + +@synthesize view; +@synthesize minSectionSize; +@synthesize maxSectionSize; +@synthesize currentRoute = _currentRoute; +@synthesize currentRouteSet = _currentRouteSet; +@synthesize currentRouteCollection = _currentRouteCollection; +@synthesize descriptionMultiRows = _descriptionMultiRows; + +@synthesize disableGrowl; +@synthesize validSelection; +@synthesize validWaypointCount; +@synthesize isAutomatorRunning; + +@synthesize validRouteSelection = _validRouteSelection; +@synthesize validRouteSetSelected = _validRouteSetSelected; +@synthesize validRouteCollectionSelected = _validRouteCollectionSelected; + +- (NSString*)sectionTitle { + return @"Routes & Waypoints"; +} + +- (NSString*)currentRouteKey { + if( [routeTypeSegment selectedTag] == 0 ) + return PrimaryRoute; + if( [routeTypeSegment selectedTag] == 1 ) + return CorpseRunRoute; + return @""; +} + +- (RouteCollection*)routeCollectionForUUID:(NSString*)UUID{ + for ( RouteCollection *rc in _routeCollectionList ){ + if ( [UUID isEqualToString:[rc UUID]] ){ + return [[rc retain] autorelease]; + } + } + + return nil; +} + +- (NSArray*)routeCollections{ + return [[_routeCollectionList retain] autorelease]; +} + +// this is literally a compilation of ALL routes +- (NSArray*)routes{ + + + + NSMutableArray *allRoutes = [NSMutableArray array]; + + for ( RouteCollection *rc in _routeCollectionList ){ + [allRoutes addObjectsFromArray:[rc routes]]; + } + + /*log(LOG_WAYPOINT, @"total: %d", [allRoutes count]); + + for ( id item in allRoutes ){ + log(LOG_WAYPOINT, @"%@", item); + } + + + return nil;*/ + + return allRoutes; +} + +- (Route*)currentRoute { + return [[self currentRouteSet] routeForKey: [self currentRouteKey]]; +} + +- (void)setCurrentRouteSet: (RouteSet*)routeSet { + [_currentRouteSet autorelease]; + _currentRouteSet = [routeSet retain]; + + [routeTypeSegment selectSegmentWithTag: 0]; + [self validateBindings]; + +} + +#pragma mark - +#pragma mark Route Actions + +- (IBAction)loadRoute: (id)sender { + [waypointTable reloadData]; +} + +- (IBAction)setRouteType: (id)sender { + [waypointTable reloadData]; + [self validateBindings]; +} + +- (NSString*)nonDuplicateName:(id)object{ + + // check for name conflict + rename if we need to + int numToGive = 2; + BOOL doneRenaming = NO; + NSString *originalName = [object name]; + NSString *newName = [object name]; + while ( !doneRenaming ){ + BOOL conflict = NO; + + // do we need to rename the route collection? + if ( [object isKindOfClass:[RouteCollection class]] ){ + for ( RouteCollection *rc in _routeCollectionList ){ + if ( [[rc name] isEqualToString: newName] ){ + newName = [NSString stringWithFormat:@"%@ %d", originalName, numToGive++]; + conflict = YES; + break; + } + } + if ( !conflict ) doneRenaming = YES; + } + // check for routeset! + else{ + RouteCollection *parentRC = [(RouteSet*)object parent]; + for ( RouteSet *route in [parentRC routes] ){ + if ( [[route name] isEqualToString: newName] ){ + newName = [NSString stringWithFormat:@"%@ %d", originalName, numToGive++]; + conflict = YES; + break; + } + } + if ( !conflict ) doneRenaming = YES; + } + } + + return newName; +} + +// add a new route (via import) +- (void)addRoute: (id)object { + + // not of type RouteSet or RouteCollection? not sure how we would get here + if ( ![object isKindOfClass:[RouteSet class]] && ![object isKindOfClass:[RouteCollection class]] ){ + log(LOG_WAYPOINT, @"[Routes] Unable to import route of type %@ (Obj:%@)", [object class], object); + return; + } + + // update our name if we have to! + if ( [object isKindOfClass:[RouteCollection class]] ) + [(RouteCollection*)object setName:[self nonDuplicateName:object]]; + + [self willChangeValueForKey: @"routeCollections"]; + // add a new route collection + if ( [object isKindOfClass:[RouteCollection class]] ){ + [(RouteCollection*)object setChanged:YES]; + [_routeCollectionList addObject:object]; + } + // add a new route set to a new RC + else{ + RouteCollection *newRC = [RouteCollection routeCollectionWithName:@"New Route"]; + [newRC setName:[self nonDuplicateName:newRC]]; + [newRC addRouteSet:object]; + newRC.changed = YES; + [_routeCollectionList addObject:newRC]; + + // only doing this so selection works! + object = newRC; + } + [self didChangeValueForKey: @"routeCollections"]; + + // reload data + [routesTable reloadData]; + [routesTable expandItem:object]; + + // select object + int row = [routesTable rowForItem:object]; + + // select the new item! + [routesTable selectRow:row byExtendingSelection:NO]; + [routesTable scrollRowToVisible:row]; +} + +#pragma mark - + +- (void)importRouteAtPath: (NSString*)path { + id importedRoute; + NS_DURING { + importedRoute = [NSKeyedUnarchiver unarchiveObjectWithFile: path]; + } NS_HANDLER { + importedRoute = nil; + } NS_ENDHANDLER + + id oldImportedRoute = importedRoute; + + if ( importedRoute ) { + + log(LOG_WAYPOINT, @"%@", importedRoute); + + // single RouteSet + if ( [importedRoute isKindOfClass: [RouteSet class]] ) { + [self addRoute: importedRoute]; + } + // single RouteCollection + else if ( [importedRoute isKindOfClass:[RouteCollection class]] ){ + [self addRoute: importedRoute]; + } + // single RouteSet (I'm an idiot) + else if ( [importedRoute isKindOfClass: [NSDictionary class]] ) { + [self addRoute:[importedRoute objectForKey:@"Route"]]; + } + // multiple! + else if ( [importedRoute isKindOfClass: [NSArray class]] ) { + // could be of type RouteSet or RouteCollection + for ( id route in importedRoute ) { + [self addRoute: route]; + } + } + else { + importedRoute = nil; + } + } + + if(!importedRoute) { + NSRunAlertPanel(@"Route not Valid", [NSString stringWithFormat: @"The file at %@ <%@> cannot be imported because it does not contain a valid route, route set or route collection.", path, oldImportedRoute], @"Okay", NULL, NULL); + } +} + +#pragma mark - +#pragma mark Waypoint & Other Actions + +- (void)selectCurrentWaypoint:(int)index{ + + if ( [[waypointTable window] isVisible] && [scrollWithRoute state] ) { + if ( self.currentRouteSet == botController.theRouteSet ){ + [waypointTable selectRow:index byExtendingSelection:NO]; + [waypointTable scrollRowToVisible:index]; + } + } +} + +- (IBAction)closestWaypoint: (id)sender{ + + Waypoint *wp = nil; + Position *playerPosition = [playerData position]; + float minDist = INFINITY, tempDist; + int closestWaypointRow = -1, i; + for ( i = 0; i < [[self currentRoute] waypointCount]; i++ ){ + wp = [[self currentRoute] waypointAtIndex: i]; + tempDist = [playerPosition distanceToPosition: [wp position]]; + if( (tempDist < minDist) && (tempDist >= 0.0f)) { + minDist = tempDist; + closestWaypointRow = i; + } + } + + if ( closestWaypointRow > 0 ){ + [waypointTable selectRow:closestWaypointRow byExtendingSelection:NO]; + [waypointTable scrollRowToVisible:closestWaypointRow]; + log(LOG_WAYPOINT, @"[Waypoint] Closest waypoint is %0.2f yards away", minDist); + } +} + +- (IBAction)visualize: (id)sender { + if([[self currentRouteKey] isEqualToString: PrimaryRoute]) + [visualizeView setShouldClosePath: YES]; + else + [visualizeView setShouldClosePath: NO]; + + [visualizeView setRoute: [self currentRoute]]; + [visualizeView setPlayerPosition: [playerData position]]; + [visualizeView setNeedsDisplay: YES]; + + [NSApp beginSheet: visualizePanel + modalForWindow: [waypointTable window] + modalDelegate: nil + didEndSelector: nil //@selector(sheetDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (IBAction)closeVisualize: (id)sender { + [NSApp endSheet: visualizePanel returnCode: 1]; + [visualizePanel orderOut: nil]; +} + +- (IBAction)addWaypoint: (id)sender { + log(LOG_DEV, @"addWaypoint called"); + if(![self currentRoute]) return; + if(![playerData playerIsValid:self]) return; + if(![self.view window]) return; + + Waypoint *newWP = [Waypoint waypointWithPosition: [playerData position]]; + [[self currentRoute] addWaypoint: newWP]; + [waypointTable reloadData]; + [self currentRouteSet].changed = YES; + log(LOG_WAYPOINT, @"Added: %@", newWP); + NSString *readableRoute = ([routeTypeSegment selectedTag] == 0) ? @"Primary" : @"Corpse Run"; + + BOOL dontGrowl = (!sender && self.disableGrowl); // sender is nil when this is called by the automator + if( !dontGrowl && [controller sendGrowlNotifications] && [GrowlApplicationBridge isGrowlInstalled] && [GrowlApplicationBridge isGrowlRunning]) { + // [GrowlApplicationBridge setGrowlDelegate: @""]; + [GrowlApplicationBridge notifyWithTitle: @"Added Waypoint" + description: [NSString stringWithFormat: @"Added waypoint to %@ route of \"%@\"", readableRoute, [[self currentRouteSet] name]] + notificationName: @"AddWaypoint" + iconData: [[NSImage imageNamed: @"Ability_Rogue_Sprint"] TIFFRepresentation] + priority: 0 + isSticky: NO + clickContext: nil]; + } +} + +- (IBAction)removeWaypoint: (id)sender { + NSIndexSet *rowIndexes = [waypointTable selectedRowIndexes]; + if([rowIndexes count] == 0 || ![self currentRoute]) return; + + int row = [rowIndexes lastIndex]; + while(row != NSNotFound) { + [[self currentRoute] removeWaypointAtIndex: row]; + row = [rowIndexes indexLessThanIndex: row]; + } + + [waypointTable selectRow: [rowIndexes firstIndex] byExtendingSelection: NO]; + + [waypointTable reloadData]; + [self currentRouteSet].changed = YES; +} + +- (IBAction)editWaypointAction: (id)sender { + + // make sure the clicked row is valid + if ( [waypointTable clickedRow] < 0 || [waypointTable clickedRow] >= [[self currentRoute] waypointCount] ) { + NSBeep(); + log(LOG_WAYPOINT, @"Error: invalid row (%d), cannot change action.", [waypointTable clickedRow]); + return; + } + + // get our waypoint + Waypoint *wp = [[[self currentRoute] waypointAtIndex: [waypointTable clickedRow]] retain]; + + // setting this waypoint to nothing! + if ( [sender tag] == ActionType_None ){ + [wp setActions:nil]; + wp.rule = nil; + [self currentRouteSet].changed = YES; + } + // open our editor + else{ + [[WaypointActionEditor sharedEditor] showEditorOnWindow: [self.view window] + withWaypoint: wp + withAction: [sender tag]]; + } +} + +- (void)waypointActionEditorClosed: (BOOL)change{ + if ( change ){ + [self currentRouteSet].changed = YES; + } +} + +- (IBAction)moveToWaypoint: (id)sender { + int row = [[waypointTable selectedRowIndexes] firstIndex]; + if(row == NSNotFound || ![self currentRoute]) return; + + Waypoint *waypoint = [[self currentRoute] waypointAtIndex: row]; + + [movementController moveToWaypointFromUI: waypoint]; +} + +- (IBAction)testWaypointSequence: (id)sender { + if(![self currentRoute] || ![[self currentRoute] waypointCount]) return; + + [movementController setPatrolRouteSet: [self currentRouteSet]]; + [movementController resumeMovement]; +} + +- (IBAction)stopMovement: (id)sender { + [movementController stopMovement]; +} + +#pragma mark - +#pragma mark Route Automator + +- (IBAction)openAutomatorPanel: (id)sender { + if([[self currentRouteKey] isEqualToString: PrimaryRoute]) + [automatorVizualizer setShouldClosePath: YES]; + else + [automatorVizualizer setShouldClosePath: NO]; + + [automatorVizualizer setRoute: [self currentRoute]]; + [automatorVizualizer setPlayerPosition: [playerData position]]; + [automatorVizualizer setNeedsDisplay: YES]; + + // enable automator hotkey + BOOL isAutomatorEnabled = ([[PTHotKeyCenter sharedCenter] hotKeyWithIdentifier: AutomatorHotkeyIdentifier]) ? YES : NO; + if(!isAutomatorEnabled) + [self toggleGlobalHotKey: automatorRecorder]; + + [NSApp beginSheet: automatorPanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil //@selector(sheetDidEnd: returnCode: contextInfo:) + contextInfo: nil]; +} + +- (IBAction)closeAutomatorPanel: (id)sender { + if(self.isAutomatorRunning) { + [self startStopAutomator: automatorStartStopButton]; + } + + // disable automator hotkey + BOOL isAutomatorEnabled = ([[PTHotKeyCenter sharedCenter] hotKeyWithIdentifier: AutomatorHotkeyIdentifier]) ? YES : NO; + if(isAutomatorEnabled) + [self toggleGlobalHotKey: automatorRecorder]; + + + [NSApp endSheet: automatorPanel returnCode: 1]; + [automatorPanel orderOut: nil]; +} + +- (IBAction)startStopAutomator: (id)sender { + // OK stop automator! + if ( self.isAutomatorRunning ) { + log(LOG_WAYPOINT, @"Waypoint recording stopped"); + self.isAutomatorRunning = NO; + [automatorSpinner stopAnimation: nil]; + [automatorStartStopButton setState: NSOffState]; + [automatorStartStopButton setTitle: @"Start Recording"]; + [automatorStartStopButton setImage: [NSImage imageNamed: @"off"]]; + } + else { + log(LOG_WAYPOINT, @"Waypoint recording started"); + [automatorPanel makeFirstResponder: [automatorPanel contentView]]; + self.isAutomatorRunning = YES; + [automatorSpinner startAnimation: nil]; + [automatorStartStopButton setState: NSOnState]; + [automatorStartStopButton setTitle: @"Stop Recording"]; + [automatorStartStopButton setImage: [NSImage imageNamed: @"on"]]; + } + + [self automatorPulse]; +} + +-(void)automatorPulse { + // Make sure we have valid route/player/window! + if(!self.isAutomatorRunning) return; + if(![self currentRoute]) return; + if(![self.view window]) return; + if(![playerData playerIsValid:self]) return; + + // figure out how far we've moved + Position *playerPosition = [playerData position]; + Waypoint *curWP = [Waypoint waypointWithPosition: playerPosition]; + Waypoint *lastWP = [[[self currentRoute] waypoints] lastObject]; + float distance = [curWP.position distanceToPosition: lastWP.position]; + + // if we haven't moved, we dont care! + BOOL waypointAdded = NO; + float pulseTime = 0.1f; + if(distance != 0.0f) { + float interval = [[[NSUserDefaults standardUserDefaults] objectForKey: @"RouteAutomatorIntervalValue"] floatValue]; + NSInteger type = [[NSUserDefaults standardUserDefaults] integerForKey: @"RouteAutomatorIntervalTypeTag"]; + + if(type == AutomatorIntervalType_Distance) { + // record automatically after X yards + if(distance >= interval) { + waypointAdded = YES; + [self addWaypoint: nil]; + } + } else { + // if we're recording on an time interval, we know + waypointAdded = YES; + [self addWaypoint: nil]; + pulseTime = interval; + } + } + + if(waypointAdded) { + // if we added something, have the visualizer redraw + [automatorVizualizer setPlayerPosition: playerPosition]; + [automatorVizualizer setNeedsDisplay: YES]; + } + + // Check again after the specified delay! + [self performSelector: @selector(automatorPulse) withObject: nil afterDelay: pulseTime]; +} + +// called by the X button in the Automator panel +- (IBAction)resetAllWaypoints: (id)sender { + int ret = NSRunAlertPanel(@"Remove All Waypoints?", [NSString stringWithFormat: @"Are you sure you want to delete all the waypoints in route \"%@\"? This cannot be undone.", [[self currentRouteSet] name]], @"Delete", @"Cancel", NULL); + if(ret == NSAlertDefaultReturn) { + Waypoint *wp = nil; + Route *route = [self currentRoute]; + while((wp = [route waypointAtIndex: 0])) { + [route removeWaypointAtIndex: 0]; + } + [automatorVizualizer setNeedsDisplay: YES]; + } +} + +#pragma mark TabView Delgate + +- (void)tabView:(NSTabView *)tabView didSelectTabViewItem:(NSTabViewItem *)tabViewItem{ + + [self setViewTitle]; +} + +#pragma mark - +#pragma mark NSTableView Delesource + +- (int)numberOfRowsInTableView:(NSTableView *)aTableView { + + if ( aTableView == waypointTable ) + return [[self currentRoute] waypointCount]; + + return 0; +} + +- (id)tableView:(NSTableView *)aTableView objectValueForTableColumn:(NSTableColumn *)aTableColumn row:(int)rowIndex { + if ( rowIndex == -1 ) return nil; + + if ( aTableView == waypointTable ){ + + Waypoint *wp = [[self currentRoute] waypointAtIndex: rowIndex]; + if ( [[aTableColumn identifier] isEqualToString: @"Step"] ){ + return [NSNumber numberWithInt: rowIndex+1]; + } + + if( [[aTableColumn identifier] isEqualToString: @"Type"] ){ + + int type = 0; + + // now we have a list of actions, choose the first one + if ( [wp.actions count] > 0 ){ + + Action *action = [wp.actions objectAtIndex:0]; + + if ( action.type > ActionType_None && action.type < ActionType_Max ){ + type = action.type; + } + } + + return [NSNumber numberWithInt: type]; + } + + + if ( [[aTableColumn identifier] isEqualToString: @"Coordinates"] ){ + return [NSString stringWithFormat: @"X: %.1f; Y: %.1f; Z: %.1f", [[wp position] xPosition], [[wp position] yPosition], [[wp position] zPosition]]; + } + + if ( [[aTableColumn identifier] isEqualToString: @"Distance"] ){ + Waypoint *prevWP = (rowIndex == 0) ? ([[self currentRoute] waypointAtIndex: [[self currentRoute] waypointCount] - 1]) : ([[self currentRoute] waypointAtIndex: rowIndex-1]); + float distance = [[wp position] distanceToPosition: [prevWP position]]; + return [NSString stringWithFormat: @"%.2f yards", distance]; + } + + if ( [[aTableColumn identifier] isEqualToString: @"Description"] ){ + return wp.title; + } + } + + return nil; +} + +- (void)tableView:(NSTableView *)aTableView setObjectValue:(id)anObject forTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + if ( rowIndex == -1 ) return; + + if ( aTableView == waypointTable ){ + if ( [[aTableColumn identifier] isEqualToString:@"Description"] ){ + Waypoint *wp = [[self currentRoute] waypointAtIndex: rowIndex]; + if ( wp.title != anObject ){ + wp.title = anObject; + } + } + } +} + +- (BOOL)tableView:(NSTableView *)aTableView shouldEditTableColumn:(NSTableColumn *)aTableColumn row:(NSInteger)rowIndex { + + if ( aTableView == waypointTable ){ + if([[aTableColumn identifier] isEqualToString: @"Type"] ) + return YES; + else if([[aTableColumn identifier] isEqualToString: @"Description"] ) + return YES; + } + + return NO; +} + +- (void)tableViewSelectionDidChange:(NSNotification *)aNotification { + [self validateBindings]; +} + +- (void)tableView: (NSTableView*)aTableView deleteKeyPressedOnRowIndexes: (NSIndexSet*)rowIndexes { + + if ( aTableView == waypointTable ){ + [self removeWaypoint: nil]; + } +} + +- (BOOL)tableViewCopy: (NSTableView*)aTableView { + + if ( aTableView == waypointTable ){ + NSIndexSet *rowIndexes = [aTableView selectedRowIndexes]; + if([rowIndexes count] == 0) { + return NO; + } + NSPasteboard *pboard = [NSPasteboard generalPasteboard]; + [pboard declareTypes: [NSArray arrayWithObjects: NSStringPboardType, @"WaypointArrayType", nil] owner: nil]; + + // create list of our waypoints + NSMutableArray *waypointList = [NSMutableArray arrayWithCapacity: [rowIndexes count]]; + int aRow = [rowIndexes firstIndex]; + while (aRow != NSNotFound) { + [waypointList addObject: [[self currentRoute] waypointAtIndex: aRow]]; + aRow = [rowIndexes indexGreaterThanIndex: aRow]; + } + [pboard setData: [NSKeyedArchiver archivedDataWithRootObject: waypointList] forType: @"WaypointArrayType"]; + + NSMutableString *stringVal = [NSMutableString string]; + for(Waypoint *wp in waypointList) { + [stringVal appendFormat: @"{ %.2f, %.2f, %.2f }\n", wp.position.xPosition, wp.position.yPosition, wp.position.zPosition ]; + } + [pboard setString: stringVal forType: NSStringPboardType]; + + return YES; + } + + return NO; +} + +- (BOOL)tableViewPaste: (NSTableView*)aTableView { + + if ( aTableView == waypointTable ){ + NSPasteboard* pboard = [NSPasteboard generalPasteboard]; + NSData *data = [pboard dataForType: @"WaypointArrayType"]; + if(!data) return NO; + + NSArray *copiedWaypoints = [NSKeyedUnarchiver unarchiveObjectWithData: data]; + + if( !copiedWaypoints || ![self currentRoute] ) { + return NO; + } + + int index = [[aTableView selectedRowIndexes] firstIndex]; + if(index == NSNotFound) index = [[self currentRoute] waypointCount]; + + // insert waypoints in reverse order + for (Waypoint *wp in [copiedWaypoints reverseObjectEnumerator]) { + [[self currentRoute] insertWaypoint: wp atIndex: index]; + } + + // reload and select the pasted routes + [aTableView reloadData]; + [aTableView selectRowIndexes: [NSIndexSet indexSetWithIndexesInRange: NSMakeRange(index, [copiedWaypoints count])] byExtendingSelection: NO]; + + return YES; + } + + return NO; +} + +- (BOOL)tableViewCut: (NSTableView*)aTableView { + if ( aTableView == waypointTable ){ + if ( [self tableViewCopy: aTableView] ){ + [self removeWaypoint: nil]; + return YES; + } + } + return NO; +} + +#pragma mark Table Drag & Drop + +// begin drag operation, save row index +- (BOOL)tableView:(NSTableView *)aTableView writeRowsWithIndexes:(NSIndexSet *)rowIndexes toPasteboard:(NSPasteboard*)pboard { + + if ( aTableView == waypointTable ){ + // Copy the row numbers to the pasteboard. + [pboard declareTypes: [NSArray arrayWithObjects: @"WaypointIndexesType", nil] owner: self]; + [pboard setData: [NSKeyedArchiver archivedDataWithRootObject: rowIndexes] forType: @"WaypointIndexesType"]; + + return YES; + } + + return NO; +} + +// validate drag operation +- (NSDragOperation) tableView: (NSTableView*) aTableView + validateDrop: (id ) info + proposedRow: (int) row + proposedDropOperation: (NSTableViewDropOperation) op +{ + int result = NSDragOperationNone; + + if ( aTableView == waypointTable ){ + if (op == NSTableViewDropAbove) { + result = NSDragOperationMove; + + /*NSPasteboard* pboard = [info draggingPasteboard]; + NSData* rowData = [pboard dataForType: @"WaypointType"]; + NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData:rowData]; + int dragRow = [rowIndexes firstIndex]; + + if(dragRow == row || dragRow == row-1) { + result = NSDragOperationNone; + }*/ + } + } + + return (result); +} + +// accept the drop +- (BOOL)tableView: (NSTableView *)aTableView + acceptDrop: (id <NSDraggingInfo>)info + row: (int)row + dropOperation: (NSTableViewDropOperation)operation { + + if ( aTableView == waypointTable ){ + NSPasteboard* pboard = [info draggingPasteboard]; + NSData *data = [pboard dataForType: @"WaypointIndexesType"]; + if(!data) return NO; + NSIndexSet* rowIndexes = [NSKeyedUnarchiver unarchiveObjectWithData: data]; + if(!rowIndexes ) { + log(LOG_WAYPOINT, @"Error dragging waypoints. Indexes invalid."); + return NO; + } + + // log(LOG_WAYPOINT, @"Draggin %d rows to above row %d", [rowIndexes count], row); + + Waypoint *targetWP = [[self currentRoute] waypointAtIndex: row]; + NSMutableArray *wpToInsert = [NSMutableArray arrayWithCapacity: [rowIndexes count]]; + + // save and remove all waypoints we are moving. + // do it in reverse order so as to not mess up earlier indexes + int aRow = [rowIndexes lastIndex]; + while (aRow != NSNotFound) { + [wpToInsert addObject: [[self currentRoute] waypointAtIndex: aRow]]; + [[self currentRoute] removeWaypointAtIndex: aRow]; + aRow = [rowIndexes indexLessThanIndex: aRow]; + } + + // now, find the current index of the saved waypoint + int index = [[[self currentRoute] waypoints] indexOfObjectIdenticalTo: targetWP]; + if(index == NSNotFound) index = [[self currentRoute] waypointCount]; + // log(LOG_WAYPOINT, @"Target index: %d", index); + + // don't need to reverseEnum because the order is already reversed + for (Waypoint *wp in wpToInsert) { + [[self currentRoute] insertWaypoint: wp atIndex: index]; + } + + + /* + int numIns = 0; + int dragRow = [rowIndexes firstIndex]; + if(dragRow < row) { + log(LOG_WAYPOINT, @" --> Decrementing row to %d because dragRow (%d) < row (%d)", row-1, dragRow, row); + row--; + } + + // at this point, "row" is index of the waypoint above where we want to move everything + + //while (dragRow != NSNotFound) { + // Move the specified row to its new location... + Waypoint *dragWaypoint = [[self currentRoute] waypointAtIndex: dragRow]; + [[self currentRoute] removeWaypointAtIndex: dragRow]; + [[self currentRoute] insertWaypoint: dragWaypoint atIndex: (row + numIns)]; + + log(LOG_WAYPOINT, @" --> Moving row %d to %d", dragRow, (row + numIns)); + + numIns++; + dragRow = [rowIndexes indexGreaterThanIndex: dragRow]; + //} + */ + + // reload and select rows + [aTableView reloadData]; + [aTableView selectRowIndexes: [NSIndexSet indexSetWithIndexesInRange: NSMakeRange(index, [wpToInsert count])] byExtendingSelection: NO]; + + return YES; + } + + return NO; +} + +#pragma mark Outline View + +- (NSInteger)outlineView:(NSOutlineView *)outlineView numberOfChildrenOfItem:(id)item{ + + // root + if ( item == nil ){ + return [_routeCollectionList count]; + } + // child + else if ( [item isKindOfClass:[RouteCollection class]] ){ + return [[item routes] count]; + } + + return 0; +} + +- (id)outlineView:(NSOutlineView *)outlineView child:(NSInteger)index ofItem:(id)item{ + + + // root + if ( item == nil ){ + + if ( index > [_routeCollectionList count] ){ + return nil; + } + + return [_routeCollectionList objectAtIndex:index]; + } + // child + else{ + NSArray *routes = [(RouteCollection*)item routes]; + + if ( index >= [routes count] ){ + return nil; + } + + RouteCollection *parent = [(RouteSet*)[routes objectAtIndex:index] parent]; + + if ( parent != item ){ + return nil; + } + + return [routes objectAtIndex:index]; + } + + return nil; +} + +- (BOOL)outlineView:(NSOutlineView *)outlineView isItemExpandable:(id)item{ + + if ( [item isKindOfClass:[RouteCollection class]] ){ + return YES; + } + + return NO; +} + +- (id)outlineView:(NSOutlineView *)outlineView objectValueForTableColumn:(NSTableColumn *)tableColumn byItem:(id)item{ + + if ( [item isKindOfClass:[RouteCollection class]] ){ + return [item name]; + } + + else if ( [item isKindOfClass:[RouteSet class]] ){ + return [item name]; + } + + // weird + if ( item == nil ){ + return @"WTF ERROR TELL TANARIS4!"; + } + + return nil; +} + +- (void)outlineView:(NSOutlineView *)outlineView setObjectValue:(id)object forTableColumn:(NSTableColumn *)tableColumn byItem:(id)item{ + + // in theory should always be + if ( [object isKindOfClass:[NSString class]] ){ + + // rename the object + if ( [item isKindOfClass:[RouteSet class]] ) + [(RouteSet*)item setName:object]; + else if ( [item isKindOfClass:[RouteCollection class]] ) + [(RouteCollection*)item setName:object]; + } +} + +// called whenever the selection changes! +- (void)outlineViewSelectionDidChange:(NSNotification *)notification{ + + NSOutlineView *outlineView = [notification object]; + + if ( outlineView == routesTable ){ + + id selectedItem = [self selectedRouteObject]; + + // valid selection? + if ( selectedItem ){ + + if ( [selectedItem isKindOfClass:[RouteSet class]] ){ + self.currentRouteSet = selectedItem; + [waypointTable reloadData]; + } + else{ + self.currentRouteSet = nil; + [waypointTable reloadData]; + } + + // bindings + [self willChangeValueForKey: @"validRouteSelection"]; + + // if it's of type RouteSet, yes we can delete + if ( [selectedItem isKindOfClass:[RouteSet class]] ){ + self.validRouteSelection = YES; + } + // need to make sure the route collection has NO route sets + else if ( [selectedItem isKindOfClass:[RouteCollection class]] && [[(RouteCollection*)selectedItem routes] count] == 0 ){ + self.validRouteSelection = YES; + } + // otherwise we can't delete :( + else{ + self.validRouteSelection = NO; + } + + [self didChangeValueForKey: @"validRouteSelection"]; + } + + // update our selected route collection! + if ( [selectedItem isKindOfClass:[RouteCollection class]] ){ + self.currentRouteCollection = selectedItem; + } + else{ + self.currentRouteCollection = nil; + } + + // check the box if we need to? + if ( [selectedItem isKindOfClass:[RouteSet class]] ){ + RouteCollection *parentRC = [(RouteSet*)selectedItem parent]; + + [startingRouteButton setState:[parentRC isStartingRoute:selectedItem]]; + } + + // is a RouteSet selected? + [self willChangeValueForKey: @"validRouteSetSelected"]; + if ( [selectedItem isKindOfClass:[RouteSet class]] ) + self.validRouteSetSelected = YES; + else + self.validRouteSetSelected = NO; + [self didChangeValueForKey: @"validRouteSetSelected"]; + + // is a RouteCollection selected? + [self willChangeValueForKey: @"validRouteCollectionSelected"]; + if ( [selectedItem isKindOfClass:[RouteCollection class]] ) + self.validRouteCollectionSelected = YES; + else + self.validRouteCollectionSelected = NO; + [self didChangeValueForKey: @"validRouteCollectionSelected"]; + + // update our title + [self setViewTitle]; + } +} + +// do we allow pasting? +- (BOOL)outlineView:(NSOutlineView *)outlineView writeItems:(NSArray *)items toPasteboard:(NSPasteboard *)pboard{ + + // we don't move route collections! (for now) + for ( id item in items ){ + + if ( [item isKindOfClass:[RouteCollection class]] ){ + return NO; + } + } + + if ( outlineView == routesTable ){ + [pboard declareTypes: [NSArray arrayWithObjects: @"RouteSets", nil] owner: self]; + [pboard setData: [NSKeyedArchiver archivedDataWithRootObject: items] forType: @"RouteSets"]; + + return YES; + } + + return NO; +} + +// is this a valid drop target? +- (NSDragOperation)outlineView:(NSOutlineView *)outlineView validateDrop:(id < NSDraggingInfo >)info proposedItem:(id)item proposedChildIndex:(NSInteger)index{ + + // can't copy a RouteSet into a RouteSet! + if ( [item isKindOfClass:[RouteSet class]] ){ + return NSDragOperationNone; + } + + // always allow a move! + return NSDragOperationMove; +} + +- (BOOL)outlineView:(NSOutlineView *)outlineView acceptDrop:(id < NSDraggingInfo >)info item:(id)item childIndex:(NSInteger)index{ + + + if ( outlineView == routesTable ){ + + if ( ![item isKindOfClass:[RouteCollection class]] ){ + log(LOG_WAYPOINT, @"Not doing anything with %@", item); + return NO; + } + + // note to self, the objects here are COPIES, not the originals, so act accordingly + NSPasteboard* pboard = [info draggingPasteboard]; + NSData *data = [pboard dataForType: @"RouteSets"]; + + if ( data ){ + + NSArray *routes = [NSKeyedUnarchiver unarchiveObjectWithData: data]; + + // now add these routes to their new home and remove from their old one :( + for ( id route in routes ){ + + if ( [route isKindOfClass:[RouteSet class]] ){ + + // grab the old route collection + RouteCollection *oldCollection = [(RouteSet*)route parent]; + + // actually find it in the current list + oldCollection = [self routeCollectionForUUID:[oldCollection UUID]]; + + // moving within the existing route collection + if ( [[oldCollection UUID] isEqualToString:[(RouteCollection*)item UUID]] ){ + + // it will be equal if the item is dropped after the last item + if ( index == [[(RouteCollection*)item routes] count] ){ + index--; + } + + [(RouteCollection*)item moveRouteSet:route toLocation:index]; + } + // moving to a new route collection + else{ + // remove the route + [oldCollection removeRouteSet:route]; + + // add to new! + [(RouteCollection*)item addRouteSet:route]; + } + } + } + + // reload the table + [outlineView reloadData]; + + return YES; + } + + } + + return NO; +} + +#pragma mark RouteCollection UI stuff + +// choosing the selected row +- (IBAction)deleteRouteButton: (id)sender{ + id object = [self selectedRouteObject]; + [self deleteRoute:object]; +} + +// choosing the clicked row +- (IBAction)deleteRouteMenu: (id)sender{ + id object = [routesTable itemAtRow:[routesTable clickedRow]]; + [self deleteRoute:object]; +} + +- (IBAction)addRouteSet: (id)sender{ + + id selectedItem = [self selectedRouteObject]; + + // nothing is selected + if ( selectedItem == nil ){ + NSBeep(); + NSRunAlertPanel(@"Select a Route Collection", @"Please select a route set to add your route to! (you may have to create a new route set first!)", @"Okay", NULL, NULL); + } + else{ + + // we want the collection, not the set! + if ( [selectedItem isKindOfClass:[RouteSet class]] ){ + selectedItem = [(RouteSet*)selectedItem parent]; + } + + // in theory this should always be the case + if ( [selectedItem isKindOfClass:[RouteCollection class]] ){ + RouteSet *route = [RouteSet routeSetWithName:@"New Route"]; + [selectedItem addRouteSet:route]; + [selectedItem setChanged:YES]; + [routesTable reloadData]; + + // expand our collection + [routesTable expandItem:selectedItem]; + + [self selectItemInOutlineViewToEdit:route]; + } + else{ + log(LOG_WAYPOINT, @"[Routes] Error when adding a set! Report to Tanaris4! %@", selectedItem); + NSBeep(); + NSRunAlertPanel(@"Error when adding route", @"Error when adding route! Report to Tanaris4 + give him logs!", @"Okay", NULL, NULL); + } + } +} + +- (IBAction)addRouteCollection: (id)sender{ + + [self willChangeValueForKey: @"routeCollections"]; + + // add item and reload the table! + RouteCollection *rc = [RouteCollection routeCollectionWithName:@"New Set"]; + [_routeCollectionList addObject:rc]; + [routesTable reloadData]; + + [self selectItemInOutlineViewToEdit:rc]; + + [self didChangeValueForKey: @"routeCollections"]; +} + +- (IBAction)startingRouteClicked: (id)sender{ + + RouteCollection *parentRC = [[self currentRouteSet] parent]; + + if ( [startingRouteButton state] ) + [parentRC setStartRoute:[self currentRouteSet]]; + else + [parentRC setStartRoute:nil]; +} + +#pragma mark RouteCollection helpers + +- (void)deleteRoute:(id)selectedItem{ + + [self willChangeValueForKey: @"routeCollections"]; + + if ( [selectedItem isKindOfClass:[RouteSet class]] ){ + + RouteCollection *rc = [(RouteSet*)selectedItem parent]; + + [rc removeRouteSet:selectedItem]; + + [routesTable reloadData]; + + // select the parent + int row = [routesTable rowForItem:rc]; + + // select the new item! + [routesTable selectRow:row byExtendingSelection:NO]; + [routesTable scrollRowToVisible:row]; + } + else if ( [selectedItem isKindOfClass:[RouteCollection class]] ){ + + RouteCollection *rc = selectedItem; + + if ( [[rc routes] count] == 0 ){ + [_routeCollectionList removeObject:rc]; + + // delete the file from our disk! + [fileController deleteObject:rc]; + + [routesTable reloadData]; + } + else{ + NSBeep(); + NSRunAlertPanel(@"Unable to delete", @"You cannot delete a route set until the routes within are first removed!", @"Okay", NULL, NULL); + } + } + + [self didChangeValueForKey: @"routeCollections"]; +} + +- (void)selectItemInOutlineViewToEdit:(id)item{ + + // get the row of our new route! + int row = [routesTable rowForItem:item]; + + // select the new item! + [routesTable selectRow:row byExtendingSelection:NO]; + [routesTable scrollRowToVisible:row]; + + // edit the new item! + [routesTable editColumn:0 row:row withEvent:nil select:YES]; +} + +- (id)selectedRouteObject{ + + // make sure only 1 item is selected! + if ( [routesTable numberOfSelectedRows] == 1 ){ + return [routesTable itemAtRow:[routesTable selectedRow]]; + } + + return nil; +} + +#pragma mark Route Collection UI + +- (IBAction)showInFinder: (id)sender{ + [fileController showInFinder:[self currentRoute]]; +} + +- (IBAction)duplicateRoute: (id)sender { + + // get the clicked object + id object = [routesTable itemAtRow:[routesTable clickedRow]]; + + // copy it + id newObject = [object copy]; + + // add it! + [self addRoute:newObject]; +} + +- (IBAction)renameRoute: (id)sender { + id object = [routesTable itemAtRow:[routesTable clickedRow]]; + [self selectItemInOutlineViewToEdit:object]; +} + +- (IBAction)importRoute: (id)sender { + NSOpenPanel *openPanel = [NSOpenPanel openPanel]; + + [openPanel setCanChooseDirectories: NO]; + [openPanel setCanCreateDirectories: NO]; + [openPanel setPrompt: @"Import Route"]; + [openPanel setCanChooseFiles: YES]; + [openPanel setAllowsMultipleSelection: YES]; + [openPanel setDirectory:@"~/Desktop"]; + + int ret = [openPanel runModalForTypes: [NSArray arrayWithObjects: @"route", @"routeset", @"routecollection", nil]]; + + if ( ret == NSFileHandlingPanelOKButton ) { + for ( NSString *routePath in [openPanel filenames] ) { + [self importRouteAtPath: routePath]; + } + } +} + +- (IBAction)exportRoute: (id)sender { + + NSSavePanel *savePanel = [NSSavePanel savePanel]; + [savePanel setCanCreateDirectories: YES]; + [savePanel setTitle: @"Export Route"]; + [savePanel setMessage: @"Please choose a destination for this route."]; + + id object = [routesTable itemAtRow:[routesTable clickedRow]]; + NSString *extension = @"route"; + if ( [object isKindOfClass:[RouteCollection class]] ){ + extension = @"routecollection"; + } + + int ret = [savePanel runModalForDirectory: @"~/Desktop" file: [[object name] stringByAppendingPathExtension: extension]]; + + if ( ret == NSFileHandlingPanelOKButton ) { + NSString *saveLocation = [savePanel filename]; + NSData *data = [NSKeyedArchiver archivedDataWithRootObject: object]; + [data writeToFile: saveLocation atomically: YES]; + } +} + +#pragma mark Help + +- (void)showHelpPanel{ + + [NSApp beginSheet: helpPanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil + contextInfo: nil]; +} + +- (IBAction)closeHelpPanel: (id)sender{ + [[sender window] makeFirstResponder: [[sender window] contentView]]; + [NSApp endSheet: helpPanel returnCode: 1]; + [helpPanel orderOut: nil]; +} + +#pragma mark ShortcutRecorder Delegate + +- (void)checkHotkeys: (NSNotification*)notification { + BOOL isAddWaypointEnabled = ([[PTHotKeyCenter sharedCenter] hotKeyWithIdentifier: AddWaypointHotkeyIdentifier]) ? YES : NO; + + if( [notification object] == self.view ) { + if(!isAddWaypointEnabled) { + [self toggleGlobalHotKey: shortcutRecorder]; + } + } else { + // Adding another waypoint + if(isAddWaypointEnabled) { + [self toggleGlobalHotKey: shortcutRecorder]; + } + } + + // display a guide? + if ( [notification object] == self.view && _firstTimeEverOnTheNewRouteCollections ) { + [self showHelpPanel]; + } +} + +- (void)toggleGlobalHotKey:(id)sender +{ + // Only if we come from shortcutRecorder! Can probably combine this into one function but I'm a n00b + if ( sender == shortcutRecorder ) + { + if (addWaypointGlobalHotkey != nil) { + [[PTHotKeyCenter sharedCenter] unregisterHotKey: addWaypointGlobalHotkey]; + [addWaypointGlobalHotkey release]; + addWaypointGlobalHotkey = nil; + } else { + KeyCombo keyCombo = [shortcutRecorder keyCombo]; + + if(keyCombo.code >= 0 && keyCombo.flags >= 0) { + addWaypointGlobalHotkey = [[PTHotKey alloc] initWithIdentifier: AddWaypointHotkeyIdentifier + keyCombo: [PTKeyCombo keyComboWithKeyCode: keyCombo.code + modifiers: [shortcutRecorder cocoaToCarbonFlags: keyCombo.flags]]]; + + [addWaypointGlobalHotkey setTarget: self]; + [addWaypointGlobalHotkey setAction: @selector(addWaypoint:)]; + + [[PTHotKeyCenter sharedCenter] registerHotKey: addWaypointGlobalHotkey]; + } + } + } + + // Automator only pls + if ( sender == automatorRecorder ) + { + if (automatorGlobalHotkey != nil) { + [[PTHotKeyCenter sharedCenter] unregisterHotKey: automatorGlobalHotkey]; + [automatorGlobalHotkey release]; + automatorGlobalHotkey = nil; + } else { + KeyCombo keyCombo = [automatorRecorder keyCombo]; + + if(keyCombo.code >= 0 && keyCombo.flags >= 0) { + automatorGlobalHotkey = [[PTHotKey alloc] initWithIdentifier: AutomatorHotkeyIdentifier + keyCombo: [PTKeyCombo keyComboWithKeyCode: keyCombo.code + modifiers: [automatorRecorder cocoaToCarbonFlags: keyCombo.flags]]]; + + [automatorGlobalHotkey setTarget: self]; + [automatorGlobalHotkey setAction: @selector(startStopAutomator:)]; + + [[PTHotKeyCenter sharedCenter] registerHotKey: automatorGlobalHotkey]; + } + } + + } +} + +- (void)shortcutRecorder:(SRRecorderControl *)recorder keyComboDidChange:(KeyCombo)newKeyCombo { + + if(recorder == shortcutRecorder) { + [[NSUserDefaults standardUserDefaults] setObject: [NSNumber numberWithInt: newKeyCombo.code] forKey: @"WaypointAdd_HotkeyCode"]; + [[NSUserDefaults standardUserDefaults] setObject: [NSNumber numberWithInt: newKeyCombo.flags] forKey: @"WaypointAdd_HotkeyFlags"]; + [[NSUserDefaults standardUserDefaults] synchronize]; + } + + if(recorder == automatorRecorder) { + [[NSUserDefaults standardUserDefaults] setObject: [NSNumber numberWithInt: newKeyCombo.code] forKey: @"WaypointAutomator_HotkeyCode"]; + [[NSUserDefaults standardUserDefaults] setObject: [NSNumber numberWithInt: newKeyCombo.flags] forKey: @"WaypointAutomator_HotkeyFlags"]; + [[NSUserDefaults standardUserDefaults] synchronize]; + } + + // register this hotkey globally + [self toggleGlobalHotKey: recorder]; +} + +#pragma mark Waypoint Condition/Actions - New! + +- (IBAction)waypointMenuAction: (id)sender{ + + //int clickedRow = [waypointTable clickedRow]; + + // set description + if ( [sender tag] == 0 ){ + + [_selectedRows release]; _selectedRows = nil; + _selectedRows = [[waypointTable selectedRowIndexes] retain]; + + // only one row, so ezmode to set the title + if ( [_selectedRows count] == 1 ){ + Waypoint *wp = [[self currentRoute] waypointAtIndex: [_selectedRows firstIndex]]; + self.descriptionMultiRows = wp.title; + } + // multiple rows, select the first value + else { + Waypoint *wp = nil; + int i = [_selectedRows firstIndex]; + for ( ; i <= [_selectedRows lastIndex]; i++ ){ + wp = [[self currentRoute] waypointAtIndex: i]; + + if ( wp && [wp.title length] > 0 ){ + self.descriptionMultiRows = wp.title; + break; + } + } + } + + // open up the screen! + [NSApp beginSheet: descriptionPanel + modalForWindow: [self.view window] + modalDelegate: nil + didEndSelector: nil + contextInfo: nil]; + } +} + +- (IBAction)closeDescription: (id)sender { + [[sender window] makeFirstResponder: [[sender window] contentView]]; + [NSApp endSheet: descriptionPanel returnCode: 1]; + [descriptionPanel orderOut: nil]; + + // save the new description + // only one row, so ezmode to set the title + if ( [_selectedRows count] == 1 ){ + Waypoint *wp = [[self currentRoute] waypointAtIndex: [_selectedRows firstIndex]]; + wp.title = _descriptionMultiRows; + } + // multiple rows + else{ + Waypoint *wp = nil; + int i = [_selectedRows firstIndex]; + for ( ; i <= [_selectedRows lastIndex]; i++ ){ + wp = [[self currentRoute] waypointAtIndex: i]; + + if ( wp ){ + wp.title = _descriptionMultiRows;; + } + } + } +} + +// sets our NSLabel that is above the tabs! +- (void)setViewTitle{ + + if ( [[[waypointTabView selectedTabViewItem] identifier] intValue] == 0 ) { + + if ( self.currentRouteSet ) + [waypointSectionTitle setStringValue:[NSString stringWithFormat:@"Waypoints for: %@", [self.currentRouteSet name]]]; + else + [waypointSectionTitle setStringValue:@"No route selected"]; + } + else if ( [[[waypointTabView selectedTabViewItem] identifier] intValue] == 1 ) { + + NSString *name = nil; + if ( self.currentRouteCollection ){ + name = [self.currentRouteCollection name]; + } + else if ( self.currentRouteSet ){ + RouteCollection *parentRC = [self.currentRouteSet parent]; + name = [parentRC name]; + } + + if ( name ) + [waypointSectionTitle setStringValue:[NSString stringWithFormat:@"Options for: %@", name]]; + else + [waypointSectionTitle setStringValue:@"No route set selected"]; + } +} + +@end diff --git a/WoWObject.h b/WoWObject.h new file mode 100644 index 0000000..d03bfdf --- /dev/null +++ b/WoWObject.h @@ -0,0 +1,94 @@ +// +// WoWObject.h +// Pocket Gnome +// +// Created by Jon Drummond on 12/29/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import <Cocoa/Cocoa.h> +#import "MemoryAccess.h" +#import "Position.h" + +// from Mangos, ObjectDefines.h +#define GUID_HIPART(x) (UInt32)((((UInt64)(x)) >> 48) & 0x0000FFFF) + +#define GUID_LOW32(x) (UInt32)(((UInt64)(x)) & 0x00000000FFFFFFFFULL) +#define GUID_HIGH32(x) (UInt32)(((UInt64)(x) >> 32) & 0xFFFFFFFF00000000ULL) + +enum HighGuid { + HIGHGUID_ITEM = 0x4580, // 3.1, was 0x4000 before, 0x4100 in 3.1.1, 0x4580 in 3.1.2 + HIGHGUID_CONTAINER = 0x4100, // 3.1, was 0x4000 before + HIGHGUID_PLAYER = 0x1000, // 3.1, was 0x0000 before + HIGHGUID_GAMEOBJECT = 0xF110, // 3.1 + HIGHGUID_TRANSPORT = 0xF120, // unverified + HIGHGUID_UNIT = 0xF130, // 3.1 + HIGHGUID_PET = 0xF140, // unverified + HIGHGUID_VEHICLE = 0xF150, // unverified (or or 0xF550) + HIGHGUID_DYNAMICOBJECT = 0xF100, // unverified + HIGHGUID_CORPSE = 0xF100, // unverified (or 0xF101) + HIGHGUID_MO_TRANSPORT = 0x1FC0, // unverified +}; + +@protocol WoWObjectMemory +- (NSString*)descriptionForOffset: (UInt32)offset; + +- (UInt32)memoryStart; +- (UInt32)memoryEnd; +@end + +@interface WoWObject : NSObject <WoWObjectMemory> { + NSNumber *_baseAddress, *_infoAddress; + MemoryAccess *_memory; + NSDate *_refresh; + + int _notInObjectListCounter; + + // cached + UInt32 _objectFieldAddress, _unitFieldAddress; + + UInt32 cachedEntryID; + GUID cachedGUID; +} + +- (id)initWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; ++ (id)objectWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory; + +@property (readwrite, retain) MemoryAccess *memoryAccess; +@property (readwrite, retain) NSDate *refreshDate; +@property (readwrite) int notInObjectListCounter; +@property (readonly) UInt32 cachedEntryID; +@property (readonly) GUID cachedGUID; + +- (BOOL)isEqualToObject: (WoWObject*)object; + +- (UInt32)objectBaseID; +- (UInt32)objectTypeID; + +- (BOOL)isNPC; +- (BOOL)isPlayer; +- (BOOL)isNode; + +- (GUID)GUID; +- (UInt32)lowGUID; +- (UInt32)highGUID; +- (NSNumber*)ID; // NSNumber version of [self entryID] +- (UInt32)typeMask; +- (UInt32)entryID; +- (UInt32)cachedEntryID; + +- (BOOL)isValid; +- (BOOL)isStale; +- (NSString*)name; +- (Position*)position; // placeholder, always returns nil + +- (UInt32)baseAddress; +- (UInt32)infoAddress; +- (UInt32)prevObjectAddress; +- (UInt32)nextObjectAddress; + +// field addresses +- (UInt32)objectFieldAddress; +- (UInt32)unitFieldAddress; + +@end diff --git a/WoWObject.m b/WoWObject.m new file mode 100644 index 0000000..6b9291e --- /dev/null +++ b/WoWObject.m @@ -0,0 +1,351 @@ +// +// WoWObject.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/29/07. +// Copyright 2007 Savory Software, LLC. All rights reserved. +// + +#import "WoWObject.h" +#import "Offsets.h" + +#define STALE_TIME (-10.0f) +#define MAX_NOT_IN_LIST_UNTIL_STALE 5 + +@implementation WoWObject + +- (id) init +{ + self = [super init]; + if (self != nil) { + _baseAddress = nil; + _infoAddress = nil; + _notInObjectListCounter = 0; + _objectFieldAddress = 0; + _unitFieldAddress = 0; + self.memoryAccess = nil; + self.refreshDate = [NSDate distantFuture]; + } + return self; +} + +- (id)initWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + + self = [self init]; + if (self != nil) { + _baseAddress = [address copy]; + _memory = [memory retain]; + cachedEntryID = 0; + _notInObjectListCounter = 0; + cachedGUID = [self GUID]; + } + return self; +} + ++ (id)objectWithAddress: (NSNumber*)address inMemory: (MemoryAccess*)memory { + if(!address || ![address unsignedIntValue]) return nil; + + return [[[WoWObject alloc] initWithAddress: address inMemory: memory] autorelease]; +} + + +- (void) dealloc +{ + [_baseAddress release]; + [_infoAddress release]; + [_memory release]; + self.refreshDate = nil; + + [super dealloc]; +} + +#pragma mark - +#pragma mark NSObject + +- (unsigned)hash { + return [self baseAddress]; +} + +- (BOOL)isEqual: (id)object { + if( [object isKindOfClass: [WoWObject class]] ) + return ([self baseAddress] == [object baseAddress]); + return NO; +} + +- (BOOL)isEqualToObject: (WoWObject*)unit { + return (([self baseAddress] == [unit baseAddress]) && ([self GUID] == [unit GUID])); +} + +- (NSString*)description { + return [NSString stringWithFormat: @"<%@: %d; Addr: %@>", + [self className], + [self entryID], + [NSString stringWithFormat: @"0x%X", [self baseAddress]]]; +} + +#pragma mark - +#pragma mark Internal + +- (UInt32)baseAddress { + return [_baseAddress unsignedIntValue]; +} + +// 1 read, cached +- (UInt32)infoAddress { + if(!_infoAddress) { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + OBJECT_FIELDS_PTR) Buffer: (Byte *)&value BufLength: sizeof(value)] && (value >= 0)) { + [_infoAddress autorelease]; + _infoAddress = [[NSNumber numberWithUnsignedInt: value] retain]; + } + } + + return _infoAddress ? [_infoAddress unsignedIntValue] : 0; +} + +- (UInt32)objectFieldAddress{ + + if ( _objectFieldAddress ){ + return _objectFieldAddress; + } + + // read it + [_memory loadDataForObject: self atAddress: ([self baseAddress] + OBJECT_FIELDS_PTR) Buffer: (Byte *)&_objectFieldAddress BufLength: sizeof(_objectFieldAddress)]; + return _objectFieldAddress; +} + +- (UInt32)unitFieldAddress{ + + if ( _unitFieldAddress ){ + return _unitFieldAddress; + } + + // read it + [_memory loadDataForObject: self atAddress: ([self baseAddress] + OBJECT_UNIT_FIELDS_PTR) Buffer: (Byte *)&_unitFieldAddress BufLength: sizeof(_unitFieldAddress)]; + + return _unitFieldAddress; +} + +#pragma mark - +#pragma mark Accessors + +@synthesize memoryAccess = _memory; +@synthesize refreshDate = _refresh; +@synthesize notInObjectListCounter = _notInObjectListCounter; +@synthesize cachedEntryID; +@synthesize cachedGUID; + +- (BOOL)isNPC { + if([self objectTypeID] == TYPEID_UNIT) + return YES; + return NO; +} + +- (BOOL)isPlayer { + if([self objectTypeID] == TYPEID_PLAYER) + return YES; + return NO; +} + +- (BOOL)isNode { + if([self objectTypeID] == TYPEID_GAMEOBJECT) + return YES; + return NO; +} + +- (NSNumber*)ID { + return [NSNumber numberWithUnsignedInt: [self entryID]]; +} + +- (UInt32)objectBaseID { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + OBJECT_BASE_ID) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +- (UInt32)objectTypeID { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + OBJECT_TYPE_ID) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +// 1 read +- (UInt64)GUID { + UInt64 value = 0; + if([_memory loadDataForObject: self atAddress: [self infoAddress] Buffer: (Byte *)&value BufLength: sizeof(value)]){ + return value; + } + return 0; +} + +- (UInt32)lowGUID { + return (UInt32)([self GUID] & 0x00000000FFFFFFFFULL); +} + +- (UInt32)highGUID { + return (UInt32)(([self GUID] >> 32) & 0x00000000FFFFFFFFULL); +} + +- (UInt32)typeMask { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self infoAddress] + OBJECT_FIELD_TYPE) Buffer: (Byte *)&value BufLength: sizeof(value)]) + return value; + return 0; +} + +- (UInt32)entryID { + UInt32 value = 0; + [_memory loadDataForObject: self atAddress: ([self infoAddress] + OBJECT_FIELD_ENTRY) Buffer: (Byte *)&value BufLength: sizeof(value)]; + + if(value && (cachedEntryID != value)) { + cachedEntryID = value; + } + + return cachedEntryID; +} + +- (UInt32)cachedEntryID{ + + if ( cachedEntryID == 0 ){ + return [self entryID]; + } + + return cachedEntryID; +} + +// 2 reads (object type, GUID) +- (BOOL)isValid { + // is the item stale? + if([self isStale]) return NO; + + // check for valid object type + // verify GUID + UInt32 typeID = [self objectTypeID]; + + if( (typeID > TYPEID_UNKNOWN) && (typeID < TYPEID_MAX)) + return (cachedGUID == [self GUID]); + return NO; +} + +- (BOOL)isStale { + if( [self.refreshDate timeIntervalSinceNow] < STALE_TIME) + return YES; + if ( _notInObjectListCounter >= MAX_NOT_IN_LIST_UNTIL_STALE ) + return YES; + + return NO; +} + +- (Position*)position { + return nil; +} + +- (NSString*)name { + return @""; +} + +// 3 reads +- (UInt32)prevObjectAddress { + UInt32 value = 0, value2 = 0; + if([_memory loadDataForObject: self atAddress: [self baseAddress] + OBJECT_STRUCT3_POINTER Buffer: (Byte *)&value BufLength: sizeof(value)]) { + value = value - OBJECT_STRUCT3_POINTER; + if([_memory loadDataForObject: self atAddress: value Buffer: (Byte *)&value2 BufLength: sizeof(value2)]) { + if( value2 == [self objectBaseID]) + return value; + } + } + return 0; +} + +// 3 reads +- (UInt32)nextObjectAddress { + UInt32 value = 0, value2 = 0; + if([_memory loadDataForObject: self atAddress: [self baseAddress] + OBJECT_STRUCT4_POINTER Buffer: (Byte *)&value BufLength: sizeof(value)]) { + if([_memory loadDataForObject: self atAddress: value Buffer: (Byte *)&value2 BufLength: sizeof(value2)]) { + if( value2 == [self objectBaseID]) + return value; + } + } + return 0; +} + +#pragma mark - +#pragma mark Memory Protocol + +- (UInt32)memoryStart { + return [self baseAddress]; +} + +- (UInt32)memoryEnd { + UInt32 value = 0; + if([_memory loadDataForObject: self atAddress: ([self baseAddress] + OBJECT_FIELDS_END_PTR) Buffer: (Byte*)&value BufLength: sizeof(value)]) { + return value; + } + return 0; +} + +- (NSString*)descriptionForOffset: (UInt32)offset { + NSString *desc = nil; + + if(offset < ([self infoAddress] - [self baseAddress])) { + switch(offset) { + case OBJECT_BASE_ID: + desc = @"Object Structure"; + break; + case OBJECT_FIELDS_PTR: + desc = @"Object Fields Pointer"; + break; + case OBJECT_FIELDS_END_PTR: + desc = @"Object Fields End"; + break; + case OBJECT_TYPE_ID: + desc = @"Object Type ID"; + break; + case OBJECT_GUID_LOW32: + desc = @"Object GUID (low 32 bits)"; + break; + + case OBJECT_STRUCT1_POINTER: + desc = @"Other Structure Pointer (?)"; + break; + case OBJECT_STRUCT2_POINTER: + desc = @"Parent Structure Pointer (?)"; + break; + case OBJECT_STRUCT3_POINTER: + desc = @"Previous Structure Pointer"; + break; + case OBJECT_STRUCT4_POINTER:; + desc = @"Next Structure Pointer"; + break; + case OBJECT_UNIT_FIELDS_PTR:; + desc = @"Unit Fields Pointer"; + break; + case ITEM_FIELDS_PTR:; + desc = @"Item Fields Pointer"; + break; + } + } else { + offset = offset - ([self infoAddress] - [self baseAddress]); + + switch(offset) { + case OBJECT_FIELD_GUID: + desc = @"Object GUID"; + break; + case OBJECT_FIELD_TYPE: + desc = @"Object Type"; + break; + case OBJECT_FIELD_ENTRY: + desc = @"Object Entry ID"; + break; + case OBJECT_FIELD_SCALE_X: + desc = @"Object Scale (float)"; + break; + } + } + + return desc; +} + +@end diff --git a/alarm.mp3 b/alarm.mp3 new file mode 100755 index 0000000..dd0636c Binary files /dev/null and b/alarm.mp3 differ diff --git a/appcast.xml b/appcast.xml new file mode 100644 index 0000000..ffadb6e --- /dev/null +++ b/appcast.xml @@ -0,0 +1,121 @@ +<?xml version="1.0" encoding="utf-8"?> +<rss version="2.0" xmlns:sparkle="http://www.andymatuschak.org/xml-namespaces/sparkle" xmlns:dc="http://purl.org/dc/elements/1.1/"> + <channel> + <title>Pocket Gnome Appcast + http://pg.savorydeviate.com/appcast.xml + Appcast for PocketGnome + en + + + Pocket Gnome 1.5.1.1 (Build 566) + Wed, 23 June 2010 09:07:00 -0400 + Pocket Gnome 1.5.1.1 (Build 566) Release Notes

+
    +
  • Fishing + Applying lure now works correctly
  • +
  • Untested: Added options for Holy Power, Eclipse, and Soul Shards for behaviors
  • +
  • Untested: Fixed combo points rule
  • +
  • Re-wrote how some conditions were calculated (/annoyed)
  • +
  • Untested: Rune checks should now function correctly, except death runes (are those still around?)
  • +
  • Security tab removed from Settings (it was pointless)
  • +
  • Updated base fields to use offset signatures (more likely for things to NOT break between patches)
  • +
+ ]]> +
+ +
+ + Pocket Gnome 1.5.1 (Build 551) + Wed, 23 June 2010 09:07:00 -0400 + Pocket Gnome 1.5.1 (Build 551) Release Notes

+
    +
  • Updated for 4.0.1!
  • +
  • Offset controller completely re-written, gnome should no longer crash withe goblin!
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.2 (Build 516) + Tue, 1 June 2010 13:44:00 -0400 + Pocket Gnome 1.5.0.2 (Build 516) Release Notes

+
    +
  • Strand of the Ancients - Updated for Horde to walk you off of the boat
  • +
  • PvP - Queue preparation weight update
  • +
  • PvP - Crash fixed w/respect to PvP route switching and following
  • +
  • Bug fix - Deleting an ignore entry no longer delete the combat profile, sorry!
  • +
  • Casting - Update on casting when items/spells are no longer usable/available
  • +
  • UI - Gathering/Looting/PvP Options moved to combat profiles
  • +
  • UI - PvP/Normal is now separated on the main screen
  • +
  • UI - Click and drag support added to the rule editor
  • +
  • Combat - /startattack option added in behaviors, you no longer have to create a macro
  • +
  • Spells - Error handling re-written
  • +
  • Movement - Large portion of the movement controller was re-written, should be smoother
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.3 (Build 518) + Wed, 23 June 2010 09:07:00 -0400 + Pocket Gnome 1.5.0.3 (Build 518) Release Notes

+
    +
  • Updated for 3.3.5
  • +
  • WARNING: This has NOT been tested with the new Warden (nor has it been confirmed on mac), use at your own risk
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.2 (Build 516) + Tue, 1 June 2010 13:44:00 -0400 + Pocket Gnome 1.5.0.2 (Build 516) Release Notes

+
    +
  • Strand of the Ancients - Updated for Horde to walk you off of the boat
  • +
  • PvP - Queue preparation weight update
  • +
  • PvP - Crash fixed w/respect to PvP route switching and following
  • +
  • Bug fix - Deleting an ignore entry no longer delete the combat profile, sorry!
  • +
  • Casting - Update on casting when items/spells are no longer usable/available
  • +
  • UI - Gathering/Looting/PvP Options moved to combat profiles
  • +
  • UI - PvP/Normal is now separated on the main screen
  • +
  • UI - Click and drag support added to the rule editor
  • +
  • Combat - /startattack option added in behaviors, you no longer have to create a macro
  • +
  • Spells - Error handling re-written
  • +
  • Movement - Large portion of the movement controller was re-written, should be smoother
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.1 (Build 506) + Sun, 24 May 2010 13:44:00 -0400 + Pocket Gnome 1.5.0.1 (Build 506) Release Notes

+
    +
  • Mail Actions should actually function now
  • +
  • Dropdowns within combat profiles actually populate players now
  • +
  • PvP route handling updates
  • +
  • Follow updates
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0 (Build 501) + Sun, 23 May 2010 15:44:00 -0400 + Pocket Gnome 1.5.0 (Build 501) Release Notes

+
Get all of the release notes here!]]> +
+ +
+ + + \ No newline at end of file diff --git a/bad.tif b/bad.tif new file mode 100644 index 0000000..6590dad Binary files /dev/null and b/bad.tif differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/categories.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/categories.pbxbtree new file mode 100644 index 0000000..bfd9c78 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/categories.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/cdecls.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/cdecls.pbxbtree new file mode 100644 index 0000000..3a542c3 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/cdecls.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/decls.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/decls.pbxbtree new file mode 100644 index 0000000..c8b8421 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/decls.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/files.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/files.pbxbtree new file mode 100644 index 0000000..6c6b9b7 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/files.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/imports.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/imports.pbxbtree new file mode 100644 index 0000000..757bcaf Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/imports.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/pbxindex.header b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/pbxindex.header new file mode 100644 index 0000000..ac485c4 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/pbxindex.header differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/protocols.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/protocols.pbxbtree new file mode 100644 index 0000000..1deb12c Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/protocols.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/refs.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/refs.pbxbtree new file mode 100644 index 0000000..05e9e7c Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/refs.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/strings.pbxstrings/control b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/strings.pbxstrings/control new file mode 100644 index 0000000..8dd2237 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/strings.pbxstrings/control differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/strings.pbxstrings/strings b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/strings.pbxstrings/strings new file mode 100644 index 0000000..bd42dd9 Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/strings.pbxstrings/strings differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/subclasses.pbxbtree b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/subclasses.pbxbtree new file mode 100644 index 0000000..974fede Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/subclasses.pbxbtree differ diff --git a/build/Pocket Gnome.build/Pocket Gnome.pbxindex/symbols0.pbxsymbols b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/symbols0.pbxsymbols new file mode 100644 index 0000000..8b9e1eb Binary files /dev/null and b/build/Pocket Gnome.build/Pocket Gnome.pbxindex/symbols0.pbxsymbols differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h b/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h new file mode 100644 index 0000000..4eed643 --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h @@ -0,0 +1,671 @@ +/* + * Mail.h + */ + +#import +#import + + +@class MailItem, MailApplication, MailColor, MailDocument, MailWindow, MailText, MailAttachment, MailParagraph, MailWord, MailCharacter, MailAttributeRun, MailOutgoingMessage, MailLdapServer, MailMessageViewer, MailSignature, MailMessage, MailAccount, MailImapAccount, MailMobileMeAccount, MailPopAccount, MailSmtpServer, MailMailbox, MailRule, MailRuleCondition, MailRecipient, MailBccRecipient, MailCcRecipient, MailToRecipient, MailContainer, MailHeader, MailMailAttachment, MailOLDMessageEditor; + +enum MailSavo { + MailSavoYes = 'yes ' /* Save the file. */, + MailSavoNo = 'no ' /* Do not save the file. */, + MailSavoAsk = 'ask ' /* Ask the user whether or not to save the file. */ +}; +typedef enum MailSavo MailSavo; + +enum MailEdmf { + MailEdmfPlainText = 'dmpt' /* Plain Text */, + MailEdmfRichText = 'dmrt' /* Rich Text */ +}; +typedef enum MailEdmf MailEdmf; + +enum MailHede { + MailHedeAll = 'hdal' /* All */, + MailHedeCustom = 'hdcu' /* Custom */, + MailHedeDefault = 'hdde' /* Default */, + MailHedeNoHeaders = 'hdnn' /* No headers */ +}; +typedef enum MailHede MailHede; + +enum MailLdas { + MailLdasBase = 'lsba' /* LDAP scope of 'Base' */, + MailLdasOneLevel = 'lsol' /* LDAP scope of 'One Level' */, + MailLdasSubtree = 'lsst' /* LDAP scope of 'Subtree' */ +}; +typedef enum MailLdas MailLdas; + +enum MailQqcl { + MailQqclBlue = 'ccbl' /* Blue */, + MailQqclGreen = 'ccgr' /* Green */, + MailQqclOrange = 'ccor' /* Orange */, + MailQqclOther = 'ccot' /* Other */, + MailQqclPurple = 'ccpu' /* Purple */, + MailQqclRed = 'ccre' /* Red */, + MailQqclYellow = 'ccye' /* Yellow */ +}; +typedef enum MailQqcl MailQqcl; + +enum MailMvcl { + MailMvclAttachmentsColumn = 'ecat' /* Column containing the number of attachments a message contains */, + MailMvclBuddyAvailabilityColumn = 'ecba' /* Column indicating whether the sender of a message is online or not */, + MailMvclMessageColor = 'eccl' /* Used to indicate sorting should be done by color */, + MailMvclDateReceivedColumn = 'ecdr' /* Column containing the date a message was received */, + MailMvclDateSentColumn = 'ecds' /* Column containing the date a message was sent */, + MailMvclFlagsColumn = 'ecfl' /* Column containing the flags of a message */, + MailMvclFromColumn = 'ecfr' /* Column containing the sender's name */, + MailMvclMailboxColumn = 'ecmb' /* Column containing the name of the mailbox or account a message is in */, + MailMvclMessageStatusColumn = 'ecms' /* Column indicating a messages status (read, unread, replied to, forwarded, etc) */, + MailMvclNumberColumn = 'ecnm' /* Column containing the number of a message in a mailbox */, + MailMvclSizeColumn = 'ecsz' /* Column containing the size of a message */, + MailMvclSubjectColumn = 'ecsu' /* Column containing the subject of a message */, + MailMvclToColumn = 'ecto' /* Column containing the recipients of a message */ +}; +typedef enum MailMvcl MailMvcl; + +enum MailExut { + MailExutPassword = 'axct' /* Clear text password */, + MailExutApop = 'aapo' /* APOP */, + MailExutKerberos5 = 'axk5' /* Kerberos 5 */, + MailExutNtlm = 'axnt' /* NTLM */, + MailExutMd5 = 'axmd' /* MD5 */, + MailExutNone = 'ccno' /* None */ +}; +typedef enum MailExut MailExut; + +enum MailCclr { + MailCclrBlue = 'ccbl' /* Blue */, + MailCclrGray = 'ccgy' /* Gray */, + MailCclrGreen = 'ccgr' /* Green */, + MailCclrNone = 'ccno' /* None */, + MailCclrOrange = 'ccor' /* Orange */, + MailCclrOther = 'ccot' /* Other */, + MailCclrPurple = 'ccpu' /* Purple */, + MailCclrRed = 'ccre' /* Red */, + MailCclrYellow = 'ccye' /* Yellow */ +}; +typedef enum MailCclr MailCclr; + +enum MailE9xp { + MailE9xpAllMessagesAndTheirAttachments = 'x9al' /* All messages and their attachments */, + MailE9xpAllMessagesButOmitAttachments = 'x9bo' /* All messages but omit attachments */, + MailE9xpDoNotKeepCopiesOfAnyMessages = 'x9no' /* Do not keep copies of any messages */, + MailE9xpOnlyMessagesIHaveRead = 'x9wr' /* Only messages I have read */ +}; +typedef enum MailE9xp MailE9xp; + +enum MailEnrq { + MailEnrqBeginsWithValue = 'rqbw' /* Begins with value */, + MailEnrqDoesContainValue = 'rqco' /* Does contain value */, + MailEnrqDoesNotContainValue = 'rqdn' /* Does not contain value */, + MailEnrqEndsWithValue = 'rqew' /* Ends with value */, + MailEnrqEqualToValue = 'rqie' /* Equal to value */, + MailEnrqLessThanValue = 'rqlt' /* Less than value */, + MailEnrqGreaterThanValue = 'rqgt' /* Greater than value */, + MailEnrqNone = 'rqno' /* Indicates no qualifier is applicable */ +}; +typedef enum MailEnrq MailEnrq; + +enum MailErut { + MailErutAccount = 'tacc' /* Account */, + MailErutAnyRecipient = 'tanr' /* Any recipient */, + MailErutCcHeader = 'tccc' /* Cc header */, + MailErutMatchesEveryMessage = 'tevm' /* Every message */, + MailErutFromHeader = 'tfro' /* From header */, + MailErutHeaderKey = 'thdk' /* An arbitrary header key */, + MailErutMessageContent = 'tmec' /* Message content */, + MailErutMessageIsJunkMail = 'tmij' /* Message is junk mail */, + MailErutSenderIsInMyAddressBook = 'tsii' /* Sender is in my address book */, + MailErutSenderIsMemberOfGroup = 'tsim' /* Sender is member of group */, + MailErutSenderIsNotInMyAddressBook = 'tsin' /* Sender is not in my address book */, + MailErutSenderIsNotMemberOfGroup = 'tsig' /* Sender is not member of group */, + MailErutSubjectHeader = 'tsub' /* Subject header */, + MailErutToHeader = 'ttoo' /* To header */, + MailErutToOrCcHeader = 'ttoc' /* To or Cc header */ +}; +typedef enum MailErut MailErut; + +enum MailEtoc { + MailEtocPop = 'etpo' /* POP */, + MailEtocSmtp = 'etsm' /* SMTP */, + MailEtocImap = 'etim' /* IMAP */, + MailEtocMac = 'etit' /* .Mac */, + MailEtocMobileMe = 'etit' /* MobileMe */ +}; +typedef enum MailEtoc MailEtoc; + + + +/* + * Standard Suite + */ + +// Abstract object provides a base class for scripting classes. It is never used directly. +@interface MailItem : SBObject + +@property (copy) NSDictionary *properties; // All of the object's properties. + +- (void) open; // Open an object. +- (void) print; // Print an object. +- (void) closeSaving:(MailSavo)saving savingIn:(NSURL *)savingIn; // Close an object. +- (void) delete; // Delete an object. +- (void) duplicateTo:(SBObject *)to; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (void) moveTo:(SBObject *)to; // Move object(s) to a new location. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save an object. + +@end + +// An application's top level scripting object. +@interface MailApplication : SBApplication ++ (MailApplication *) application; + +- (SBElementArray *) documents; +- (SBElementArray *) windows; + +@property (copy, readonly) NSString *name; // The name of the application. +@property (readonly) BOOL frontmost; // Is this the frontmost (active) application? +@property (copy, readonly) NSString *version; // The version of the application. + +- (void) quitSaving:(MailSavo)saving; // Quit an application. +- (void) checkForNewMailFor:(MailAccount *)for_; // Triggers a check for email. +- (NSString *) extractNameFrom:(NSString *)x; // Command to get the full name out of a fully specified email address. E.g. Calling this with "John Doe " as the direct object would return "John Doe" +- (NSString *) extractAddressFrom:(NSString *)x; // Command to get just the email address of a fully specified email address. E.g. Calling this with "John Doe " as the direct object would return "jdoe@example.com" +- (void) GetURL:(NSString *)x; // Opens a mailto URL. +- (void) importMailMailboxAt:(NSURL *)at; // Imports a mailbox created by Mail. +- (void) mailto:(NSString *)x; // Opens a mailto URL. +- (void) performMailActionWithMessages:(NSArray *)x inMailboxes:(MailMailbox *)inMailboxes forRule:(MailRule *)forRule; // Script handler invoked by rules and menus that execute AppleScripts. The direct parameter of this handler is a list of messages being acted upon. +- (void) synchronizeWith:(MailAccount *)with; // Command to trigger synchronizing of an IMAP account with the server. + +@end + +// A color. +@interface MailColor : SBObject + +- (void) open; // Open an object. +- (void) print; // Print an object. +- (void) closeSaving:(MailSavo)saving savingIn:(NSURL *)savingIn; // Close an object. +- (void) delete; // Delete an object. +- (void) duplicateTo:(SBObject *)to; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (void) moveTo:(SBObject *)to; // Move object(s) to a new location. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save an object. + +@end + +// A document. +@interface MailDocument : SBObject + +@property (copy) NSString *path; // The document's path. +@property (readonly) BOOL modified; // Has the document been modified since the last save? +@property (copy) NSString *name; // The document's name. + +- (void) open; // Open an object. +- (void) print; // Print an object. +- (void) closeSaving:(MailSavo)saving savingIn:(NSURL *)savingIn; // Close an object. +- (void) delete; // Delete an object. +- (void) duplicateTo:(SBObject *)to; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (void) moveTo:(SBObject *)to; // Move object(s) to a new location. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save an object. + +@end + +// A window. +@interface MailWindow : SBObject + +@property (copy) NSString *name; // The full title of the window. +- (NSInteger) id; // The unique identifier of the window. +@property NSRect bounds; // The bounding rectangle of the window. +@property (readonly) BOOL closeable; // Whether the window has a close box. +@property (readonly) BOOL titled; // Whether the window has a title bar. +@property NSInteger index; // The index of the window in the back-to-front window ordering. +@property (readonly) BOOL floating; // Whether the window floats. +@property (readonly) BOOL miniaturizable; // Whether the window can be miniaturized. +@property BOOL miniaturized; // Whether the window is currently miniaturized. +@property (readonly) BOOL modal; // Whether the window is the application's current modal window. +@property (readonly) BOOL resizable; // Whether the window can be resized. +@property BOOL visible; // Whether the window is currently visible. +@property (readonly) BOOL zoomable; // Whether the window can be zoomed. +@property BOOL zoomed; // Whether the window is currently zoomed. + +- (void) open; // Open an object. +- (void) print; // Print an object. +- (void) closeSaving:(MailSavo)saving savingIn:(NSURL *)savingIn; // Close an object. +- (void) delete; // Delete an object. +- (void) duplicateTo:(SBObject *)to; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (void) moveTo:(SBObject *)to; // Move object(s) to a new location. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save an object. + +@end + + + +/* + * Text Suite + */ + +// Rich (styled) text +@interface MailText : SBObject + +- (SBElementArray *) paragraphs; +- (SBElementArray *) words; +- (SBElementArray *) characters; +- (SBElementArray *) attributeRuns; +- (SBElementArray *) attachments; + +@property (copy) NSColor *color; // The color of the first character. +@property (copy) NSString *font; // The name of the font of the first character. +@property (copy) NSNumber *size; // The size in points of the first character. + +- (void) open; // Open an object. +- (void) print; // Print an object. +- (void) closeSaving:(MailSavo)saving savingIn:(NSURL *)savingIn; // Close an object. +- (void) delete; // Delete an object. +- (void) duplicateTo:(SBObject *)to; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (void) moveTo:(SBObject *)to; // Move object(s) to a new location. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save an object. +- (NSString *) extractNameFrom; // Command to get the full name out of a fully specified email address. E.g. Calling this with "John Doe " as the direct object would return "John Doe" +- (NSString *) extractAddressFrom; // Command to get just the email address of a fully specified email address. E.g. Calling this with "John Doe " as the direct object would return "jdoe@example.com" +- (void) GetURL; // Opens a mailto URL. +- (void) mailto; // Opens a mailto URL. + +@end + +// Represents an inline text attachment. This class is used mainly for make commands. +@interface MailAttachment : MailText + +@property (copy) NSString *fileName; // The path to the file for the attachment + + +@end + +// This subdivides the text into paragraphs. +@interface MailParagraph : MailText + + +@end + +// This subdivides the text into words. +@interface MailWord : MailText + + +@end + +// This subdivides the text into characters. +@interface MailCharacter : MailText + + +@end + +// This subdivides the text into chunks that all have the same attributes. +@interface MailAttributeRun : MailText + + +@end + + + +/* + * Mail + */ + +// A new email message +@interface MailOutgoingMessage : MailItem + +- (SBElementArray *) bccRecipients; +- (SBElementArray *) ccRecipients; +- (SBElementArray *) recipients; +- (SBElementArray *) toRecipients; + +@property (copy) NSString *sender; // The sender of the message +@property (copy) NSString *subject; // The subject of the message +@property (copy) MailText *content; // The contents of the message +@property BOOL visible; // Controls whether the message window is shown on the screen. The default is false +@property (copy) MailSignature *messageSignature; // The signature of the message +- (NSInteger) id; // The unique identifier of the message + +- (BOOL) send; // Sends a message. + +@end + +// LDAP servers for use in type completion in Mail +@interface MailLdapServer : MailItem + +@property BOOL enabled; // Indicates whether this LDAP server will be used for type completion in Mail +@property (copy) NSString *name; // Name of LDAP server configuration to be displayed in Composing preferences +@property NSInteger port; // Port number for the LDAP server (default is 389) +@property MailLdas scope; // Scope setting for the LDAP server +@property (copy) NSString *searchBase; // Search base for this LDAP server (not required by all LDAP servers) +@property (copy) NSString *hostName; // Internet address (myldapserver.company.com) for LDAP server + + +@end + +// Mail's top level scripting object. +@interface MailApplication (Mail) + +- (SBElementArray *) accounts; +- (SBElementArray *) popAccounts; +- (SBElementArray *) imapAccounts; +- (SBElementArray *) MobileMeAccounts; +- (SBElementArray *) smtpServers; +- (SBElementArray *) outgoingMessages; +- (SBElementArray *) ldapServers; +- (SBElementArray *) mailboxes; +- (SBElementArray *) messageViewers; +- (SBElementArray *) rules; +- (SBElementArray *) signatures; + +@property (copy, readonly) NSString *version; // The version of the application. +@property BOOL alwaysBccMyself; // Indicates whether you will be included in the Bcc: field of messages which you are composing +@property BOOL alwaysCcMyself; // Indicates whether you will be included in the Cc: field of messages which you are composing +@property (copy, readonly) NSArray *selection; // List of messages that the user has selected +@property (copy, readonly) NSString *applicationVersion; // The build number for the Mail application bundle +@property NSInteger fetchInterval; // The interval (in minutes) between automatic fetches of new mail +@property (readonly) NSInteger backgroundActivityCount; // Number of background activities currently running in Mail, according to the Activity Viewer +@property BOOL chooseSignatureWhenComposing; // Indicates whether user can choose a signature directly in a new compose window +@property BOOL colorQuotedText; // Indicates whether quoted text should be colored +@property MailEdmf defaultMessageFormat; // Default format for messages being composed or message replies +@property BOOL downloadHtmlAttachments; // Indicates whether images and attachments in HTML messages should be downloaded and displayed +@property (copy, readonly) MailMailbox *draftsMailbox; // The top level Drafts mailbox +@property BOOL expandGroupAddresses; // Indicates whether group addresses will be expanded when entered into the address fields of a new compose message +@property (copy) NSString *fixedWidthFont; // Font for plain text messages, only used if 'use fixed width font' is set to true +@property double fixedWidthFontSize; // Font size for plain text messages, only used if 'use fixed width font' is set to true +@property (copy, readonly) NSString *frameworkVersion; // The build number for the Message framework, used by Mail +@property MailHede headerDetail; // The level of detail shown for headers on incoming messages +@property (copy, readonly) MailMailbox *inbox; // The top level In mailbox +@property BOOL includeAllOriginalMessageText; // Indicates whether all of the original message will be quoted or only the text you have selected (if any) +@property BOOL quoteOriginalMessage; // Indicates whether the text of the original message will be included in replies +@property BOOL checkSpellingWhileTyping; // Indicates whether spelling will be checked automatically in messages being composed +@property (copy, readonly) MailMailbox *junkMailbox; // The top level Junk mailbox +@property MailQqcl levelOneQuotingColor; // Color for quoted text with one level of indentation +@property MailQqcl levelTwoQuotingColor; // Color for quoted text with two levels of indentation +@property MailQqcl levelThreeQuotingColor; // Color for quoted text with three levels of indentation +@property (copy) NSString *messageFont; // Font for messages (proportional font) +@property double messageFontSize; // Font size for messages (proportional font) +@property (copy) NSString *messageListFont; // Font for message list +@property double messageListFontSize; // Font size for message list +@property (copy) NSString *newMailSound; // Name of new mail sound or 'None' if no sound is selected +@property (copy, readonly) MailMailbox *outbox; // The top level Out mailbox +@property BOOL shouldPlayOtherMailSounds; // Indicates whether sounds will be played for various things such as when a messages is sent or if no mail is found when manually checking for new mail or if there is a fetch error +@property BOOL sameReplyFormat; // Indicates whether replies will be in the same text format as the message to which you are replying +@property (copy) NSString *selectedSignature; // Name of current selected signature (or 'randomly', 'sequentially', or 'none') +@property (copy, readonly) MailMailbox *sentMailbox; // The top level Sent mailbox +@property BOOL fetchesAutomatically; // Indicates whether mail will automatically be fetched at a specific interval +@property BOOL highlightSelectedThread; // Indicates whether threads should be highlighted in the Mail viewer window +@property BOOL showOnlineBuddyStatus; // Indicates whether Mail will show online buddy status +@property (copy, readonly) MailMailbox *trashMailbox; // The top level Trash mailbox +@property BOOL useAddressCompletion; // Indicates whether network directories (LDAP) and Address Book will be used for address completion +@property BOOL useFixedWidthFont; // Should fixed-width font be used for plain text messages? +@property (copy, readonly) NSString *primaryEmail; // The user's primary email address + +@end + +// Represents the object responsible for managing a viewer window +@interface MailMessageViewer : MailItem + +- (SBElementArray *) messages; + +@property (copy, readonly) MailMailbox *draftsMailbox; // The top level Drafts mailbox +@property (copy, readonly) MailMailbox *inbox; // The top level In mailbox +@property (copy, readonly) MailMailbox *junkMailbox; // The top level Junk mailbox +@property (copy, readonly) MailMailbox *outbox; // The top level Out mailbox +@property (copy, readonly) MailMailbox *sentMailbox; // The top level Sent mailbox +@property (copy, readonly) MailMailbox *trashMailbox; // The top level Trash mailbox +@property MailMvcl sortColumn; // The column that is currently sorted in the viewer +@property BOOL sortedAscending; // Whether the viewer is sorted ascending or not +@property BOOL mailboxListVisible; // Controls whether the list of mailboxes is visible or not +@property BOOL previewPaneIsVisible; // Controls whether the preview pane of the message viewer window is visible or not +@property MailMvcl visibleColumns; // List of columns that are visible. The subject column and the message status column will always be visible +- (NSInteger) id; // The unique identifier of the message viewer +@property (copy) NSArray *visibleMessages; // List of messages currently being displayed in the viewer +@property (copy) NSArray *selectedMessages; // List of messages currently selected +@property (copy) NSArray *selectedMailboxes; // List of mailboxes currently selected in the list of mailboxes +@property (copy) MailWindow *window; // The window for the message viewer + + +@end + +// Email signatures +@interface MailSignature : MailItem + +@property (copy) NSString *content; // Contents of email signature. If there is a version with fonts and/or styles, that will be returned over the plain text version +@property (copy) NSString *name; // Name of the signature + + +@end + + + +/* + * Message + */ + +// An email message +@interface MailMessage : MailItem + +- (SBElementArray *) bccRecipients; +- (SBElementArray *) ccRecipients; +- (SBElementArray *) recipients; +- (SBElementArray *) toRecipients; +- (SBElementArray *) headers; +- (SBElementArray *) mailAttachments; + +- (NSInteger) id; // The unique identifier of the message. +@property (copy, readonly) NSString *allHeaders; // All the headers of the message +@property MailCclr backgroundColor; // The background color of the message +@property (copy) MailMailbox *mailbox; // The mailbox in which this message is filed +@property (copy, readonly) MailText *content; // Contents of an email message +@property (copy, readonly) NSDate *dateReceived; // The date a message was received +@property (copy, readonly) NSDate *dateSent; // The date a message was sent +@property BOOL deletedStatus; // Indicates whether the message is deleted or not +@property BOOL flaggedStatus; // Indicates whether the message is flagged or not +@property BOOL junkMailStatus; // Indicates whether the message has been marked junk or evaluated to be junk by the junk mail filter. +@property BOOL readStatus; // Indicates whether the message is read or not +@property (copy, readonly) NSString *messageId; // The unique message ID string +@property (copy, readonly) NSString *source; // Raw source of the message +@property (copy, readonly) NSString *replyTo; // The address that replies should be sent to +@property (readonly) NSInteger messageSize; // The size (in bytes) of a message +@property (copy, readonly) NSString *sender; // The sender of the message +@property (copy, readonly) NSString *subject; // The subject of the message +@property (readonly) BOOL wasForwarded; // Indicates whether the message was forwarded or not +@property (readonly) BOOL wasRedirected; // Indicates whether the message was redirected or not +@property (readonly) BOOL wasRepliedTo; // Indicates whether the message was replied to or not + +- (void) bounce; // Bounces a message back to the sender. +- (void) delete; // Delete a message. +- (void) duplicateTo:(MailMailbox *)to; // Copy message(s) and put the copies in the specified mailbox. +- (MailOutgoingMessage *) forwardOpeningWindow:(BOOL)openingWindow; // Creates a forwarded message. +- (void) moveTo:(MailMailbox *)to; // Move message(s) to a new mailbox. +- (MailOutgoingMessage *) redirectOpeningWindow:(BOOL)openingWindow; // Creates a redirected message. +- (MailOutgoingMessage *) replyOpeningWindow:(BOOL)openingWindow replyToAll:(BOOL)replyToAll; // Creates a reply message. + +@end + +// A Mail account for receiving messages (POP/IMAP/MobileMe). To create a new receiving account, use the 'pop account', 'imap account', and 'MobileMe account' objects +@interface MailAccount : MailItem + +- (SBElementArray *) mailboxes; + +@property (copy) MailSmtpServer *deliveryAccount; // The delivery account used when sending mail from this account +@property (copy) NSString *name; // The name of an account +@property (copy) NSString *password; // Password for this account. Can be set, but not read via scripting +@property MailExut authentication; // Preferred authentication scheme for account +@property (readonly) MailEtoc accountType; // The type of an account +@property (copy) NSArray *emailAddresses; // The list of email addresses configured for an account +@property (copy) NSString *fullName; // The users full name configured for an account +@property NSInteger emptyJunkMessagesFrequency; // Number of days before junk messages are deleted (0 = delete on quit, -1 = never delete) +@property NSInteger emptySentMessagesFrequency; // Number of days before archived sent messages are deleted (0 = delete on quit, -1 = never delete) +@property NSInteger emptyTrashFrequency; // Number of days before messages in the trash are permanently deleted (0 = delete on quit, -1 = never delete) +@property BOOL emptyJunkMessagesOnQuit; // Indicates whether the messages in the junk messages mailboxes will be deleted on quit +@property BOOL emptySentMessagesOnQuit; // Indicates whether the messages in the sent messages mailboxes will be deleted on quit +@property BOOL emptyTrashOnQuit; // Indicates whether the messages in deleted messages mailboxes will be permanently deleted on quit +@property BOOL enabled; // Indicates whether the account is enabled or not +@property (copy) NSString *userName; // The user name used to connect to an account +@property (copy, readonly) NSURL *accountDirectory; // The directory where the account stores things on disk +@property NSInteger port; // The port used to connect to an account +@property (copy) NSString *serverName; // The host name used to connect to an account +@property BOOL includeWhenGettingNewMail; // Indicates whether the account will be included when getting new mail +@property BOOL moveDeletedMessagesToTrash; // Indicates whether messages that are deleted will be moved to the trash mailbox +@property BOOL usesSsl; // Indicates whether SSL is enabled for this receiving account + + +@end + +// An IMAP email account +@interface MailImapAccount : MailAccount + +@property BOOL compactMailboxesWhenClosing; // Indicates whether an IMAP mailbox is automatically compacted when you quit Mail or switch to another mailbox +@property MailE9xp messageCaching; // Message caching setting for this account +@property BOOL storeDraftsOnServer; // Indicates whether drafts will be stored on the IMAP server +@property BOOL storeJunkMailOnServer; // Indicates whether junk mail will be stored on the IMAP server +@property BOOL storeSentMessagesOnServer; // Indicates whether sent messages will be stored on the IMAP server +@property BOOL storeDeletedMessagesOnServer; // Indicates whether deleted messages will be stored on the IMAP server + + +@end + +// A MobileMe email account +@interface MailMobileMeAccount : MailImapAccount + + +@end + +// A POP email account +@interface MailPopAccount : MailAccount + +@property NSInteger bigMessageWarningSize; // If message size (in bytes) is over this amount, Mail will prompt you asking whether you want to download the message (-1 = do not prompt) +@property NSInteger delayedMessageDeletionInterval; // Number of days before messages that have been downloaded will be deleted from the server (0 = delete immediately after downloading) +@property BOOL deleteMailOnServer; // Indicates whether POP account deletes messages on the server after downloading +@property BOOL deleteMessagesWhenMovedFromInbox; // Indicates whether messages will be deleted from the server when moved from your POP inbox + + +@end + +// An SMTP account (for sending email) +@interface MailSmtpServer : MailItem + +@property (copy, readonly) NSString *name; // The name of an account +@property (copy) NSString *password; // Password for this account. Can be set, but not read via scripting +@property (readonly) MailEtoc accountType; // The type of an account +@property MailExut authentication; // Preferred authentication scheme for account +@property BOOL enabled; // Indicates whether the account is enabled or not +@property (copy) NSString *userName; // The user name used to connect to an account +@property NSInteger port; // The port used to connect to an account +@property (copy) NSString *serverName; // The host name used to connect to an account +@property BOOL usesSsl; // Indicates whether SSL is enabled for this receiving account + + +@end + +// A mailbox that holds messages +@interface MailMailbox : MailItem + +- (SBElementArray *) mailboxes; +- (SBElementArray *) messages; + +@property (copy) NSString *name; // The name of a mailbox +@property (readonly) NSInteger unreadCount; // The number of unread messages in the mailbox +@property (copy, readonly) MailAccount *account; +@property (copy, readonly) MailMailbox *container; + + +@end + +// Class for message rules +@interface MailRule : MailItem + +- (SBElementArray *) ruleConditions; + +@property MailCclr colorMessage; // If rule matches, apply this color +@property BOOL deleteMessage; // If rule matches, delete message +@property (copy) NSString *forwardText; // If rule matches, prepend this text to the forwarded message. Set to empty string to include no prepended text +@property (copy) NSString *forwardMessage; // If rule matches, forward message to this address, or multiple addresses, separated by commas. Set to empty string to disable this action +@property BOOL markFlagged; // If rule matches, mark message as flagged +@property BOOL markRead; // If rule matches, mark message as read +@property (copy) NSString *playSound; // If rule matches, play this sound (specify name of sound or path to sound) +@property (copy) NSArray *redirectMessage; // If rule matches, redirect message to this address or multiple addresses, separate by commas. Set to empty string to disable this action +@property (copy) NSString *replyText; // If rule matches, reply to message and prepend with this text. Set to empty string to disable this action +@property (copy) NSURL *runScript; // If rule matches, run this compiled AppleScript file. Set to empty string to disable this action +@property BOOL allConditionsMustBeMet; // Indicates whether all conditions must be met for rule to execute +@property (copy) MailMailbox *copyMessage; // If rule matches, copy to this mailbox +@property (copy) MailMailbox *moveMessage; // If rule matches, move to this mailbox +@property BOOL highlightTextUsingColor; // Indicates whether the color will be used to highlight the text or background of a message in the message list +@property BOOL enabled; // Indicates whether the rule is enabled +@property (copy) NSString *name; // Name of rule +@property BOOL shouldCopyMessage; // Indicates whether the rule has a copy action +@property BOOL shouldMoveMessage; // Indicates whether the rule has a transfer action +@property BOOL stopEvaluatingRules; // If rule matches, stop rule evaluation for this message + + +@end + +// Class for conditions that can be attached to a single rule +@interface MailRuleCondition : MailItem + +@property (copy) NSString *expression; // Rule expression field +@property (copy) NSString *header; // Rule header key +@property MailEnrq qualifier; // Rule qualifier +@property MailErut ruleType; // Rule type + + +@end + +// An email recipient +@interface MailRecipient : MailItem + +@property (copy) NSString *address; // The recipients email address +@property (copy) NSString *name; // The name used for display + + +@end + +// An email recipient in the Bcc: field +@interface MailBccRecipient : MailRecipient + + +@end + +// An email recipient in the Cc: field +@interface MailCcRecipient : MailRecipient + + +@end + +// An email recipient in the To: field +@interface MailToRecipient : MailRecipient + + +@end + +// A mailbox that contains other mailboxes. +@interface MailContainer : MailMailbox + + +@end + +// A header value for a message. E.g. To, Subject, From. +@interface MailHeader : MailItem + +@property (copy) NSString *content; // Contents of the header +@property (copy) NSString *name; // Name of the header value + + +@end + +// A file attached to a received message. +@interface MailMailAttachment : MailItem + +@property (copy, readonly) NSString *name; // Name of the attachment +@property (copy, readonly) NSString *MIMEType; // MIME type of the attachment E.g. text/plain. +@property (readonly) NSInteger fileSize; // Approximate size in bytes. +@property (readonly) BOOL downloaded; // Indicates whether the attachment has been downloaded. +- (NSString *) id; // The unique identifier of the attachment. + + +@end + diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h b/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h new file mode 100644 index 0000000..05caaf8 --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h @@ -0,0 +1,488 @@ +/* + * iChat.h + */ + +#import +#import + + +@class iChatItem, iChatApplication, iChatColor, iChatDocument, iChatWindow, iChatRichText, iChatCharacter, iChatParagraph, iChatWord, iChatAttributeRun, iChatAttachment, iChatApplication, iChatBuddy, iChatService, iChatChat, iChatTextChat, iChatAudioChat, iChatVideoChat, iChatAuthorizationRequest, iChatFileTransfer; + +enum iChatSaveOptions { + iChatSaveOptionsYes = 'yes ' /* Save the file. */, + iChatSaveOptionsNo = 'no ' /* Do not save the file. */, + iChatSaveOptionsAsk = 'ask ' /* Ask the user whether or not to save the file. */ +}; +typedef enum iChatSaveOptions iChatSaveOptions; + +enum iChatInviteType { + iChatInviteTypeAudioInvitation = 'acon', + iChatInviteTypeTextChatInvitation = 'tcon', + iChatInviteTypeVideoInvitation = 'vcon' +}; +typedef enum iChatInviteType iChatInviteType; + +enum iChatAccountStatus { + iChatAccountStatusAvailable = 'aval', + iChatAccountStatusAway = 'away', + iChatAccountStatusOffline = 'offl', + iChatAccountStatusInvisible = 'invs', + iChatAccountStatusIdle = 'idle', + iChatAccountStatusUnknown = 'unkn' +}; +typedef enum iChatAccountStatus iChatAccountStatus; + +enum iChatMyStatus { + iChatMyStatusAway = 'away', + iChatMyStatusAvailable = 'aval', + iChatMyStatusOffline = 'offl', + iChatMyStatusInvisible = 'invs' +}; +typedef enum iChatMyStatus iChatMyStatus; + +enum iChatConnectionStatus { + iChatConnectionStatusDisconnecting = 'dcng', + iChatConnectionStatusConnected = 'conn', + iChatConnectionStatusConnecting = 'cong', + iChatConnectionStatusDisconnected = 'dcon' +}; +typedef enum iChatConnectionStatus iChatConnectionStatus; + +enum iChatCapabilities { + iChatCapabilitiesVideoChat = 'vcon', + iChatCapabilitiesAudioChat = 'acon', + iChatCapabilitiesMultipersonVideo = 'mwvc', + iChatCapabilitiesMultipersonAudio = 'mwac' +}; +typedef enum iChatCapabilities iChatCapabilities; + +enum iChatScreenSharing { + iChatScreenSharingNone = 'ssns', + iChatScreenSharingLocalScreen = 'ssls', + iChatScreenSharingRemoteScreen = 'ssrs' +}; +typedef enum iChatScreenSharing iChatScreenSharing; + +enum iChatServiceType { + iChatServiceTypeAIM = 'saim', + iChatServiceTypeBonjour = 'ssub', + iChatServiceTypeJabber = 'sjab' +}; +typedef enum iChatServiceType iChatServiceType; + +enum iChatDirection { + iChatDirectionIncoming = 'FTic', + iChatDirectionOutgoing = 'FTog' +}; +typedef enum iChatDirection iChatDirection; + +enum iChatTransferStatus { + iChatTransferStatusPreparing = 'FTsp', + iChatTransferStatusWaiting = 'FTsw', + iChatTransferStatusTransferring = 'FTsg', + iChatTransferStatusFinalizing = 'FTsz', + iChatTransferStatusFinished = 'FTsf', + iChatTransferStatusFailed = 'FTse' +}; +typedef enum iChatTransferStatus iChatTransferStatus; + +enum iChatAvType { + iChatAvTypeAudio = 'ICAa', + iChatAvTypeVideo = 'ICAv' +}; +typedef enum iChatAvType iChatAvType; + +enum iChatChatType { + iChatChatTypeInstantMessage = 'ICim', + iChatChatTypeDirectInstantMessage = 'ICdi', + iChatChatTypeChatRoom = 'ICcr' +}; +typedef enum iChatChatType iChatChatType; + +enum iChatJoinState { + iChatJoinStateNotJoined = 'ICJc', + iChatJoinStateJoining = 'ICJg', + iChatJoinStateJoined = 'ICJj' +}; +typedef enum iChatJoinState iChatJoinState; + +enum iChatAvConnectionStatus { + iChatAvConnectionStatusInvited = 'ICAi', + iChatAvConnectionStatusWaiting = 'ICAw', + iChatAvConnectionStatusConnecting = 'ICAx', + iChatAvConnectionStatusConnected = 'ICAc', + iChatAvConnectionStatusEnded = 'ICAn' +}; +typedef enum iChatAvConnectionStatus iChatAvConnectionStatus; + + + +/* + * Standard Suite + */ + +// A scriptable object. +@interface iChatItem : SBObject + +@property (copy) NSDictionary *properties; // All of the object's properties. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// The application's top-level scripting object. +@interface iChatApplication : SBApplication ++ (iChatApplication *) application; + +- (SBElementArray *) documents; +- (SBElementArray *) windows; + +@property (copy, readonly) NSString *name; // The name of the application. +@property (readonly) BOOL frontmost; // Is this the frontmost (active) application? +@property (copy, readonly) NSString *version; // The version of the application. + +- (void) open:(NSArray *)x; // Open a document. +- (void) print:(NSURL *)x; // Print an object. +- (void) quitSaving:(iChatSaveOptions)saving; // Quit the application. +- (void) invite:(NSArray *)x to:(id)to withMessage:(NSString *)withMessage; // Invites a buddy to join an existing chat. +- (void) logIn; // Log in to the specified service, or all services if none is specified. If the account password is not in the keychain the user will be prompted to enter one. +- (void) logOut; // Logs out of a service, or all services if none is specified. +- (void) send:(id)x to:(id)to; // Sends a message or file to a buddy or to a chat. +- (void) storeRecentPicture; // Stores the currently set buddy picture into your recent pictures. +- (void) showChatChooserFor:(iChatBuddy *)for_; // displays a dialog in iChat to start a new chat with the specified buddy + +@end + +// A color. +@interface iChatColor : SBObject + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// An iChat document. +@interface iChatDocument : SBObject + +@property (copy, readonly) NSString *name; // The document's name. +@property (readonly) BOOL modified; // Has the document been modified since the last save? +@property (copy, readonly) NSURL *file; // The document's location on disk. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// A window. +@interface iChatWindow : SBObject + +@property (copy, readonly) NSString *name; // The full title of the window. +- (NSInteger) id; // The unique identifier of the window. +@property NSInteger index; // The index of the window, ordered front to back. +@property NSRect bounds; // The bounding rectangle of the window. +@property (readonly) BOOL closeable; // Whether the window has a close box. +@property (readonly) BOOL minimizable; // Whether the window can be minimized. +@property BOOL minimized; // Whether the window is currently minimized. +@property (readonly) BOOL resizable; // Whether the window can be resized. +@property BOOL visible; // Whether the window is currently visible. +@property (readonly) BOOL zoomable; // Whether the window can be zoomed. +@property BOOL zoomed; // Whether the window is currently zoomed. +@property (copy, readonly) iChatDocument *document; // The document whose contents are being displayed in the window. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + + + +/* + * Text Suite + */ + +// Rich (styled) text +@interface iChatRichText : SBObject + +- (SBElementArray *) characters; +- (SBElementArray *) paragraphs; +- (SBElementArray *) words; +- (SBElementArray *) attributeRuns; +- (SBElementArray *) attachments; + +@property (copy) NSColor *color; // The color of the first character. +@property (copy) NSString *font; // The name of the font of the first character. +@property double size; // The size in points of the first character. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// This subdivides the text into characters. +@interface iChatCharacter : SBObject + +- (SBElementArray *) characters; +- (SBElementArray *) paragraphs; +- (SBElementArray *) words; +- (SBElementArray *) attributeRuns; +- (SBElementArray *) attachments; + +@property (copy) NSColor *color; // The color of the first character. +@property (copy) NSString *font; // The name of the font of the first character. +@property NSInteger size; // The size in points of the first character. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// This subdivides the text into paragraphs. +@interface iChatParagraph : SBObject + +- (SBElementArray *) characters; +- (SBElementArray *) paragraphs; +- (SBElementArray *) words; +- (SBElementArray *) attributeRuns; +- (SBElementArray *) attachments; + +@property (copy) NSColor *color; // The color of the first character. +@property (copy) NSString *font; // The name of the font of the first character. +@property NSInteger size; // The size in points of the first character. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// This subdivides the text into words. +@interface iChatWord : SBObject + +- (SBElementArray *) characters; +- (SBElementArray *) paragraphs; +- (SBElementArray *) words; +- (SBElementArray *) attributeRuns; +- (SBElementArray *) attachments; + +@property (copy) NSColor *color; // The color of the first character. +@property (copy) NSString *font; // The name of the font of the first character. +@property NSInteger size; // The size in points of the first character. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// This subdivides the text into chunks that all have the same attributes. +@interface iChatAttributeRun : SBObject + +- (SBElementArray *) characters; +- (SBElementArray *) paragraphs; +- (SBElementArray *) words; +- (SBElementArray *) attributeRuns; +- (SBElementArray *) attachments; + +@property (copy) NSColor *color; // The color of the first character. +@property (copy) NSString *font; // The name of the font of the first character. +@property NSInteger size; // The size in points of the first character. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. + +@end + +// Represents an inline text attachment. This class is used mainly for make commands. +@interface iChatAttachment : iChatRichText + +@property (copy, readonly) NSURL *file; // The path to the file for the attachment + + +@end + + + +/* + * iChat Suite + */ + +// iChat application. +@interface iChatApplication (IChatSuite) + +- (SBElementArray *) buddies; +- (SBElementArray *) services; +- (SBElementArray *) fileTransfers; +- (SBElementArray *) chats; +- (SBElementArray *) textChats; +- (SBElementArray *) audioChats; +- (SBElementArray *) videoChats; +- (SBElementArray *) authorizationRequests; + +@property (readonly) NSInteger idleTime; // Time in seconds that I have been idle. +@property (copy) NSImage *image; // My image as it appears in all services. +@property iChatMyStatus status; // My status on all services. +@property (copy) NSString *statusMessage; // My status message, visible to other people while I am online. +@property (copy) iChatAudioChat *activeAvChat; // The currently active audio or video chat. + +@end + +// A buddy on a service. +@interface iChatBuddy : iChatItem + +- (NSString *) id; // The buddy's service and handle. For example: AIM:JohnDoe007 +@property (copy, readonly) iChatService *service; // The service on which this buddy exists. +@property (copy, readonly) NSString *name; // The buddy's name as it appears in the buddy list. +@property (copy, readonly) NSString *handle; // The buddy's online account name. +@property (readonly) iChatAccountStatus status; // The buddy's current status. +@property (copy, readonly) NSString *statusMessage; // The buddy's current status message. +@property (readonly) NSInteger idleTime; // The time in seconds the buddy has been idle. +@property (copy, readonly) NSArray *capabilities; // The buddy's messaging capabilities. +@property (copy, readonly) NSImage *image; // The buddy's custom image. +@property (copy, readonly) NSString *firstName; // The first name from this buddy's Address Book card, if available +@property (copy, readonly) NSString *lastName; // The last name from this buddy's Address Book card, if available +@property (copy, readonly) NSString *fullName; // The full name from this buddy's Address Book card, if available + + +@end + +// A service that can be logged in from this system +@interface iChatService : iChatItem + +- (SBElementArray *) buddies; +- (SBElementArray *) chats; + +- (NSString *) id; // A guid identifier for this service. +@property (copy) NSString *name; // The name of this service as defined in Account preferences description field +@property BOOL enabled; // Is the service enabled? +@property (readonly) iChatConnectionStatus connectionStatus; // The connection status for this account. +@property iChatMyStatus status; // My status on this service. +@property (copy) NSString *statusMessage; // My status message, visible to other people on this service while I am online. +@property (readonly) iChatServiceType serviceType; // The type of protocol for this service + +- (void) logIn; // Log in to the specified service, or all services if none is specified. If the account password is not in the keychain the user will be prompted to enter one. +- (void) logOut; // Logs out of a service, or all services if none is specified. + +@end + +// An audio, video, or text chat. +@interface iChatChat : SBObject + +- (NSString *) id; // A guid identifier for this chat. +@property (copy, readonly) iChatService *service; // The service which is participating in this chat. +@property (copy, readonly) NSArray *participants; // Other participants of this chat. This property may be specified at time of creation. +@property (readonly) BOOL secure; // Is this chat secure? +@property (readonly) BOOL invitation; // Is this an invitation to a chat? +@property (readonly) BOOL active; // Is this chat currently active? +@property (copy, readonly) NSDate *started; // The date on which this chat started. +@property (copy, readonly) NSDate *updated; // The date when this chat was last updated. + +- (void) closeSaving:(iChatSaveOptions)saving savingIn:(NSURL *)savingIn; // Close a document. +- (void) saveIn:(NSURL *)in_ as:(NSString *)as; // Save a document. +- (void) delete; // Delete an object. +- (SBObject *) duplicateTo:(SBObject *)to withProperties:(NSDictionary *)withProperties; // Copy object(s) and put the copies at a new location. +- (BOOL) exists; // Verify if an object exists. +- (SBObject *) moveTo:(SBObject *)to; // Move object(s) to a new location. +- (void) accept; // Accepts an incoming text, audio, or video chat invitation, or file transfer +- (void) decline; // Declines an incoming text, audio, or video chat invitation, or file transfer + +@end + +// A text chat. +@interface iChatTextChat : iChatChat + +@property (copy, readonly) NSString *subject; // The subject of this chat, if available. +@property (copy, readonly) NSString *invitationMessage; // An invitation message. This may only be specified at the time of creation. This message will be sent to chat participants when the chat is created. +@property (readonly) iChatJoinState joinState; // How you are joined to this chat +@property (copy, readonly) NSString *name; // The address or room name of this chat. This property may be specified at time of creation. +@property (readonly) iChatChatType chatType; // The type of this chat. + + +@end + +// An audio or video chat. +@interface iChatAudioChat : iChatChat + +@property (readonly) iChatScreenSharing screenSharing; // Type of screen sharing session taking place within this chat. +@property BOOL muted; // Is the chat muted? +@property (readonly) iChatAvConnectionStatus avConnectionStatus; // The connection state for this av chat. + +- (void) requestRecording; // Sends a recording request to all participants of an audio or video chat. Recording will not start until all participants have agreed to allow recording. +- (void) stopRecording; // Ends recording of an audio or video chat. + +@end + +@interface iChatVideoChat : iChatAudioChat + +@property BOOL paused; // Is the chat paused? +@property BOOL showingFullScreen; // Is the chat being displayed in full screen mode? +@property BOOL showingLocalVideo; // Is the local video preview being displayed? + +- (void) takeSnapshot; // Takes a snapshot of a video chat and saves it to a desktop. + +@end + +// A request to be added to someone else's buddy list +@interface iChatAuthorizationRequest : iChatItem + +- (NSString *) id; // The guid for this authorization request +@property (copy, readonly) iChatService *service; // The service on which authorization was requested. +@property (copy, readonly) iChatBuddy *buddy; // The buddy requesting authorization + + +@end + +// A file being sent or received +@interface iChatFileTransfer : iChatItem + +- (NSString *) id; // The guid for this file transfer +@property (copy, readonly) NSString *name; // The name of this file +@property (copy, readonly) NSURL *file; // The local path to this file transfer +@property (readonly) iChatDirection direction; // The direction in which this file is being sent +@property (copy, readonly) iChatService *service; // The service on which this file transfer is taking place +@property (copy, readonly) iChatBuddy *buddy; // The account participating in this file transfer +@property (readonly) BOOL secure; // Is this file transfer secure? +@property (readonly) NSInteger fileSize; // The total size in bytes of the completed file transfer +@property (readonly) NSInteger fileProgress; // The number of bytes that have been transferred +@property (readonly) iChatTransferStatus transferStatus; // The current status of this file transfer +@property (copy, readonly) NSDate *started; // The date that this file transfer started + +- (void) accept; // Accepts an incoming text, audio, or video chat invitation, or file transfer +- (void) decline; // Declines an incoming text, audio, or video chat invitation, or file transfer + +@end + diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o new file mode 100644 index 0000000..73b39ed Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o new file mode 100644 index 0000000..adc7f8d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o new file mode 100644 index 0000000..5df39b4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o new file mode 100644 index 0000000..a499405 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o new file mode 100644 index 0000000..f3edd4d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o new file mode 100644 index 0000000..c9f5ffd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o new file mode 100644 index 0000000..62317af Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o new file mode 100644 index 0000000..18df8f8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o new file mode 100644 index 0000000..77ba9a1 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o new file mode 100644 index 0000000..a584827 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o new file mode 100644 index 0000000..664dd1d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o new file mode 100644 index 0000000..f889db3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o new file mode 100644 index 0000000..102c732 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o new file mode 100644 index 0000000..d5c48d8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o new file mode 100644 index 0000000..b5ae8a4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o new file mode 100644 index 0000000..cf88ad4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o new file mode 100644 index 0000000..2e9de29 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o new file mode 100644 index 0000000..c897b96 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o new file mode 100644 index 0000000..c5971a4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o new file mode 100644 index 0000000..67acfa5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o new file mode 100644 index 0000000..f9bb72d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o new file mode 100644 index 0000000..5d00b45 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o new file mode 100644 index 0000000..088b0c2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o new file mode 100644 index 0000000..0f362f7 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o new file mode 100644 index 0000000..32a3421 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o new file mode 100644 index 0000000..e8a57e7 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o new file mode 100644 index 0000000..41f9ccc Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o new file mode 100644 index 0000000..f249a33 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o new file mode 100644 index 0000000..fe81442 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o new file mode 100644 index 0000000..d530022 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o new file mode 100644 index 0000000..5be2fe6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o new file mode 100644 index 0000000..3e341d0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o new file mode 100644 index 0000000..ea145c4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o new file mode 100644 index 0000000..ff19d05 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o new file mode 100644 index 0000000..d1641d1 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o new file mode 100644 index 0000000..052450b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o new file mode 100644 index 0000000..281110b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o new file mode 100644 index 0000000..61825b8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o new file mode 100644 index 0000000..487d59f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o new file mode 100644 index 0000000..1717b12 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o new file mode 100644 index 0000000..e1d558b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o new file mode 100644 index 0000000..460839f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o new file mode 100644 index 0000000..bc9ae19 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o new file mode 100644 index 0000000..265459d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o new file mode 100644 index 0000000..c81989b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o new file mode 100644 index 0000000..bbfbfda Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o new file mode 100644 index 0000000..29fa5c8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o new file mode 100644 index 0000000..6a73c09 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o new file mode 100644 index 0000000..3c050cc Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o new file mode 100644 index 0000000..71df5d3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o new file mode 100644 index 0000000..61ff0c7 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o new file mode 100644 index 0000000..e3c439d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o new file mode 100644 index 0000000..3be0242 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o new file mode 100644 index 0000000..d2b8812 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o new file mode 100644 index 0000000..06f10e1 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o new file mode 100644 index 0000000..7994f7e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o new file mode 100644 index 0000000..675b7f6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o new file mode 100644 index 0000000..7715669 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o new file mode 100644 index 0000000..9cbb665 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o new file mode 100644 index 0000000..b1e04ec Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o new file mode 100644 index 0000000..b157ffd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o new file mode 100644 index 0000000..141b417 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o new file mode 100644 index 0000000..8b610f6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o new file mode 100644 index 0000000..152b6bb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o new file mode 100644 index 0000000..01d3940 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o new file mode 100644 index 0000000..f76f82e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o new file mode 100644 index 0000000..fe013e6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o new file mode 100644 index 0000000..d418665 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o new file mode 100644 index 0000000..b33730b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o new file mode 100644 index 0000000..7e6ab93 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o new file mode 100644 index 0000000..a99be63 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o new file mode 100644 index 0000000..906c31d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o new file mode 100644 index 0000000..5e5dfc8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o new file mode 100644 index 0000000..159f3f0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o new file mode 100644 index 0000000..545e52a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o new file mode 100644 index 0000000..5516822 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o new file mode 100644 index 0000000..869d42c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o new file mode 100644 index 0000000..573d449 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o new file mode 100644 index 0000000..326f10e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o new file mode 100644 index 0000000..61af870 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o new file mode 100644 index 0000000..6c56453 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o new file mode 100644 index 0000000..1a5c638 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o new file mode 100644 index 0000000..790edef Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o new file mode 100644 index 0000000..b98710d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o new file mode 100644 index 0000000..e28028b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o new file mode 100644 index 0000000..88ef81c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o new file mode 100644 index 0000000..0e77226 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome new file mode 100755 index 0000000..f9ed940 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList new file mode 100644 index 0000000..729d889 --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList @@ -0,0 +1,168 @@ +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o new file mode 100644 index 0000000..0a2d8ca Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o new file mode 100644 index 0000000..20f6180 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o new file mode 100644 index 0000000..f415ffd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o new file mode 100644 index 0000000..74e8aab Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o new file mode 100644 index 0000000..f72c7d8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o new file mode 100644 index 0000000..08e7423 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o new file mode 100644 index 0000000..27a6f59 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o new file mode 100644 index 0000000..0c63bb0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o new file mode 100644 index 0000000..4b330f6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o new file mode 100644 index 0000000..48dae7b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o new file mode 100644 index 0000000..38b848c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o new file mode 100644 index 0000000..d6a10cc Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o new file mode 100644 index 0000000..4fe971a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o new file mode 100644 index 0000000..c91d8b3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o new file mode 100644 index 0000000..83b419d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o new file mode 100644 index 0000000..e7eb1c6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o new file mode 100644 index 0000000..5ac0f68 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o new file mode 100644 index 0000000..a906ac2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o new file mode 100644 index 0000000..10a64e3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o new file mode 100644 index 0000000..fb61c29 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o new file mode 100644 index 0000000..120bc87 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o new file mode 100644 index 0000000..5daa41c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o new file mode 100644 index 0000000..00e04fc Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o new file mode 100644 index 0000000..a369d3a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o new file mode 100644 index 0000000..f799001 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o new file mode 100644 index 0000000..9c74a45 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o new file mode 100644 index 0000000..2b2bffb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o new file mode 100644 index 0000000..7dc4aa5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o new file mode 100644 index 0000000..9117ef0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o new file mode 100644 index 0000000..4cd7bfb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o new file mode 100644 index 0000000..8e9b8bd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o new file mode 100644 index 0000000..1b6b642 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o new file mode 100644 index 0000000..545ccf5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o new file mode 100644 index 0000000..4762c93 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o new file mode 100644 index 0000000..b60114e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o new file mode 100644 index 0000000..9b09c2c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o new file mode 100644 index 0000000..b64dbe1 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o new file mode 100644 index 0000000..ceeea80 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o new file mode 100644 index 0000000..6093153 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o new file mode 100644 index 0000000..a5badba Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o new file mode 100644 index 0000000..e310500 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o new file mode 100644 index 0000000..ee7a887 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o new file mode 100644 index 0000000..4ae1df2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o new file mode 100644 index 0000000..cc83634 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o new file mode 100644 index 0000000..fb020fe Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o new file mode 100644 index 0000000..5ec3621 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o new file mode 100644 index 0000000..01f1421 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o new file mode 100644 index 0000000..3e996e4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o new file mode 100644 index 0000000..b21814c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o new file mode 100644 index 0000000..18c42cb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o new file mode 100644 index 0000000..705a090 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o new file mode 100644 index 0000000..5281ef6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o new file mode 100644 index 0000000..6bb907b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o new file mode 100644 index 0000000..4548738 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o new file mode 100644 index 0000000..e092995 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o new file mode 100644 index 0000000..c8393c3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o new file mode 100644 index 0000000..325e79a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o new file mode 100644 index 0000000..677236c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o new file mode 100644 index 0000000..acc3807 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o new file mode 100644 index 0000000..c202905 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o new file mode 100644 index 0000000..f028951 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o new file mode 100644 index 0000000..43d4c82 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o new file mode 100644 index 0000000..5cc3aa7 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o new file mode 100644 index 0000000..b87c5ed Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o new file mode 100644 index 0000000..7796e1f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o new file mode 100644 index 0000000..0db8bd4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o new file mode 100644 index 0000000..2796fb8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o new file mode 100644 index 0000000..22de05c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o new file mode 100644 index 0000000..e9ce8b3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o new file mode 100644 index 0000000..3e89baf Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o new file mode 100644 index 0000000..b630418 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o new file mode 100644 index 0000000..ecd44ee Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o new file mode 100644 index 0000000..b0a0225 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o new file mode 100644 index 0000000..5d32101 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o new file mode 100644 index 0000000..dcb9731 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o new file mode 100644 index 0000000..15753a6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o new file mode 100644 index 0000000..8d6ba51 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o new file mode 100644 index 0000000..22d724a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o new file mode 100644 index 0000000..862d9ea Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o new file mode 100644 index 0000000..4536d86 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o new file mode 100644 index 0000000..dd437b8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o new file mode 100644 index 0000000..dbc7579 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o new file mode 100644 index 0000000..5c9e0a8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o new file mode 100644 index 0000000..6697f8a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o new file mode 100644 index 0000000..46fad6b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o new file mode 100644 index 0000000..1459fbd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o new file mode 100644 index 0000000..e747e83 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o new file mode 100644 index 0000000..26ac234 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o new file mode 100644 index 0000000..933c840 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o new file mode 100644 index 0000000..ffee836 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o new file mode 100644 index 0000000..33d940d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o new file mode 100644 index 0000000..cf4f989 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o new file mode 100644 index 0000000..da06a0a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o new file mode 100644 index 0000000..c27a26e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o new file mode 100644 index 0000000..fb2e303 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o new file mode 100644 index 0000000..e4d7421 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o new file mode 100644 index 0000000..837375c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o new file mode 100644 index 0000000..a90bafe Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o new file mode 100644 index 0000000..35e8567 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o new file mode 100644 index 0000000..7e0f13d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o new file mode 100644 index 0000000..a251551 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o new file mode 100644 index 0000000..bf2fbd9 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o new file mode 100644 index 0000000..b934cb5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o new file mode 100644 index 0000000..c467422 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o new file mode 100644 index 0000000..7e1cfe8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o new file mode 100644 index 0000000..9be24f2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o new file mode 100644 index 0000000..96879fc Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o new file mode 100644 index 0000000..de95479 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o new file mode 100644 index 0000000..ac8397a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o new file mode 100644 index 0000000..0c4dec7 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o new file mode 100644 index 0000000..9e738fb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o new file mode 100644 index 0000000..df92d11 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o new file mode 100644 index 0000000..b2f0531 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o new file mode 100644 index 0000000..1a22be5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o new file mode 100644 index 0000000..4359129 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o new file mode 100644 index 0000000..d6a313e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o new file mode 100644 index 0000000..a869737 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o new file mode 100644 index 0000000..b994cb3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o new file mode 100644 index 0000000..40538aa Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o new file mode 100644 index 0000000..715a8dc Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o new file mode 100644 index 0000000..dfee404 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o new file mode 100644 index 0000000..31f8938 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o new file mode 100644 index 0000000..a405902 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o new file mode 100644 index 0000000..615f918 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o new file mode 100644 index 0000000..759ee34 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o new file mode 100644 index 0000000..fe5ee22 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o new file mode 100644 index 0000000..d356ceb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o new file mode 100644 index 0000000..fa85885 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o new file mode 100644 index 0000000..971b0ca Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o new file mode 100644 index 0000000..ab9bb6f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o new file mode 100644 index 0000000..b51da24 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o new file mode 100644 index 0000000..4975f10 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o new file mode 100644 index 0000000..a5995a5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o new file mode 100644 index 0000000..6add386 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o new file mode 100644 index 0000000..68bcf0c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o new file mode 100644 index 0000000..54a43eb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o new file mode 100644 index 0000000..2f57852 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o new file mode 100644 index 0000000..3f6831b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o new file mode 100644 index 0000000..ba50fe9 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o new file mode 100644 index 0000000..0d25ef9 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o new file mode 100644 index 0000000..33980ce Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o new file mode 100644 index 0000000..f96278f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o new file mode 100644 index 0000000..46a5d22 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o new file mode 100644 index 0000000..c6aabb1 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o new file mode 100644 index 0000000..7ab34c3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o new file mode 100644 index 0000000..6df8ff0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o new file mode 100644 index 0000000..728b055 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o new file mode 100644 index 0000000..97b13b6 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o new file mode 100644 index 0000000..18e6995 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o new file mode 100644 index 0000000..95f7707 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o new file mode 100644 index 0000000..239886c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o new file mode 100644 index 0000000..07d1809 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o new file mode 100644 index 0000000..d0ef38e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o new file mode 100644 index 0000000..6e73d97 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o new file mode 100644 index 0000000..8de044a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o new file mode 100644 index 0000000..19b84a5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o new file mode 100644 index 0000000..7f9a407 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o new file mode 100644 index 0000000..e9cb512 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o new file mode 100644 index 0000000..e57c476 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o new file mode 100644 index 0000000..9ef8203 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o new file mode 100644 index 0000000..f7ef6bb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o new file mode 100644 index 0000000..d32a7b5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o new file mode 100644 index 0000000..c080dc3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o new file mode 100644 index 0000000..8ae8168 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o new file mode 100644 index 0000000..b5fb491 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o new file mode 100644 index 0000000..060916c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o new file mode 100644 index 0000000..802af32 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o new file mode 100644 index 0000000..03e10e0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome new file mode 100755 index 0000000..c1f9cca Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList new file mode 100644 index 0000000..53f110c --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList @@ -0,0 +1,168 @@ +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o new file mode 100644 index 0000000..f305ca8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o new file mode 100644 index 0000000..39d8efd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o new file mode 100644 index 0000000..ab1dfa2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o new file mode 100644 index 0000000..76c2531 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o new file mode 100644 index 0000000..f1c4ef9 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o new file mode 100644 index 0000000..ba0553b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o new file mode 100644 index 0000000..213de83 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o new file mode 100644 index 0000000..6ef0155 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o new file mode 100644 index 0000000..0c4d18b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o new file mode 100644 index 0000000..45c295c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o new file mode 100644 index 0000000..cc1e021 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o new file mode 100644 index 0000000..eeb0a3f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o new file mode 100644 index 0000000..62e5625 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o new file mode 100644 index 0000000..6fdff94 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o new file mode 100644 index 0000000..22791fe Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o new file mode 100644 index 0000000..cc2f1c8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o new file mode 100644 index 0000000..ce41ec8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o new file mode 100644 index 0000000..dd01b95 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o new file mode 100644 index 0000000..cb4b15e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o new file mode 100644 index 0000000..e921b89 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o new file mode 100644 index 0000000..508e283 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o new file mode 100644 index 0000000..1bf21de Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o new file mode 100644 index 0000000..df81dbf Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o new file mode 100644 index 0000000..42a66a5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o new file mode 100644 index 0000000..721cf1d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o new file mode 100644 index 0000000..606d34e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o new file mode 100644 index 0000000..e8a1da4 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o new file mode 100644 index 0000000..f9e3c6c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o new file mode 100644 index 0000000..438a618 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o new file mode 100644 index 0000000..9a782c8 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o new file mode 100644 index 0000000..ea7691b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o new file mode 100644 index 0000000..c4cc867 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o new file mode 100644 index 0000000..c228ba2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o new file mode 100644 index 0000000..43a9e7e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o new file mode 100644 index 0000000..d42eb92 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o new file mode 100644 index 0000000..6543b89 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o new file mode 100644 index 0000000..e4bf588 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o new file mode 100644 index 0000000..8ed1002 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o new file mode 100644 index 0000000..bdb6f52 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o new file mode 100644 index 0000000..4652269 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o new file mode 100644 index 0000000..aa32278 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o new file mode 100644 index 0000000..360c787 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o new file mode 100644 index 0000000..3943ba5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o new file mode 100644 index 0000000..4ae338c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o new file mode 100644 index 0000000..c1f0f47 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o new file mode 100644 index 0000000..b9d692e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o new file mode 100644 index 0000000..a476c51 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o new file mode 100644 index 0000000..b78c8e3 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o new file mode 100644 index 0000000..3603242 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o new file mode 100644 index 0000000..eb82a73 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o new file mode 100644 index 0000000..78e418b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o new file mode 100644 index 0000000..6651e12 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o new file mode 100644 index 0000000..ae961bb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o new file mode 100644 index 0000000..c036e40 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o new file mode 100644 index 0000000..35b5164 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o new file mode 100644 index 0000000..56ebc0a Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o new file mode 100644 index 0000000..1e478d5 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o new file mode 100644 index 0000000..b6c9e70 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o new file mode 100644 index 0000000..1a98b5c Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o new file mode 100644 index 0000000..3ea69eb Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o new file mode 100644 index 0000000..adb8d6e Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o new file mode 100644 index 0000000..9c1ae4b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o new file mode 100644 index 0000000..40122b1 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o new file mode 100644 index 0000000..40bcc85 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o new file mode 100644 index 0000000..ed1fc4f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o new file mode 100644 index 0000000..f1ac8ac Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o new file mode 100644 index 0000000..740c70d Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o new file mode 100644 index 0000000..fc3cf36 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o new file mode 100644 index 0000000..cc055be Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o new file mode 100644 index 0000000..ebd2343 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o new file mode 100644 index 0000000..981e97f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o new file mode 100644 index 0000000..c3eecc2 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o new file mode 100644 index 0000000..d4e7710 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o new file mode 100644 index 0000000..b4f2c50 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o new file mode 100644 index 0000000..433cf5b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o new file mode 100644 index 0000000..6934187 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o new file mode 100644 index 0000000..7fb29fd Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o new file mode 100644 index 0000000..2f2b78b Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o new file mode 100644 index 0000000..2384098 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o new file mode 100644 index 0000000..807324f Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o new file mode 100644 index 0000000..ee82330 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.dep b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.dep new file mode 100644 index 0000000..53a1a7f --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.dep @@ -0,0 +1,569 @@ +ffffffffffffffffffffffffffffffff 4d1711a0036f2da8ee724616b3e0877b ffffffffffffffffffffffffffffffff 774064 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +ffffffffffffffffffffffffffffffff 2b54452dc5c28988c63321b5d8a2851a ffffffffffffffffffffffffffffffff 561700 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +ffffffffffffffffffffffffffffffff 80a25aa8af607a7373519cb29c75b59a ffffffffffffffffffffffffffffffff 102 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM +ffffffffffffffffffffffffffffffff 2e14c84c0b33f07c7b0ae820787b1659 ffffffffffffffffffffffffffffffff 102 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app +ffffffffffffffffffffffffffffffff b6f8a5b9f18ddef4823c3c1d2157354b ffffffffffffffffffffffffffffffff 3556668 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +ffffffffffffffffffffffffffffffff 2a18ed780c72977a6cb6fc025721caf7 ffffffffffffffffffffffffffffffff 1828156 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome +ffffffffffffffffffffffffffffffff 75805a6f746b271d57b5aaf6711d1d79 ffffffffffffffffffffffffffffffff 1722476 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome +00000000000000000000000000000000 741868bc6b8e91a3f1a6e2e8e8b88244 ffffffffffffffffffffffffffffffff 7683 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml +a054ae3e94aa05e52c2f8570f1113a9e e643bab5c84179136a84fc3249ddc218 ffffffffffffffffffffffffffffffff 5052 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +e30d355a7cd0eb4d4d07e2300593474d 9d495f2ece56e314d46908abf4d3ea0a ffffffffffffffffffffffffffffffff 4224 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +adb2e9d1a2f5d9b5c276ed0c8b98bf9f 1ffb70a4c170a5024311e7f31e4334ae ffffffffffffffffffffffffffffffff 68220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +eeeb72b54a8f371da35e8a4c7f1ac24c ec7af23b92a96138e0cac061826b9fd8 ffffffffffffffffffffffffffffffff 46956 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +000000004c1c06420000000000000066 30cdf6b6dfcbf281cba60d48d0ecb7a7 ffffffffffffffffffffffffffffffff 20877 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h +000000004c1c06410000000000000066 a3742c983bc8b72adf80975b9c40e1cc ffffffffffffffffffffffffffffffff 32841 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h +a054ae3e93eece272c2f8570f1116964 d2fd8ec4a05afb94c29bf33fd9228440 ffffffffffffffffffffffffffffffff 1116 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o +e30d355a7b94208f4d07e230059314b7 5fc577c28aaa0f58e4ee12b15a18d305 ffffffffffffffffffffffffffffffff 980 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o +a6696dd40a6569c3381b734a970b0c11 ec03fc350aa80e345dd6c59540c6a0d1 ffffffffffffffffffffffffffffffff 9340 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +9bc9f87bb80d7bd0ca52f65d589ff04b e151286df1c50c05e4c93cd254125caa ffffffffffffffffffffffffffffffff 7176 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +a6696dd446ca1c9c381b734a970b781c 6145bc7cf64448d1af6ceb1415947951 ffffffffffffffffffffffffffffffff 3928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +9bc9f87bf4a20e8fca52f65d589f8446 b82e7278b555a5dc0b3d339856fabd7f ffffffffffffffffffffffffffffffff 3220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +a6696dd44ddff0f8381b734a970b6669 04c46077c14b0b24298244575e3e1b07 ffffffffffffffffffffffffffffffff 26404 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +9bc9f87bffb7e2ebca52f65d589f9a33 7431f5fe8bad89e7802376a2f39519f8 ffffffffffffffffffffffffffffffff 21272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +a6696dd40a6569cb381b734a970b0973 4432598772df25e52f2243390ef7a381 ffffffffffffffffffffffffffffffff 13684 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +9bc9f87bb80d7bd8ca52f65d589ff529 0cb4ba668e593c290d3f8621f904460b ffffffffffffffffffffffffffffffff 12236 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +a6696dd40a656881381b734a970b5905 9b8b6beaedc8cf90cd4ecd8e82c8860c ffffffffffffffffffffffffffffffff 9732 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +9bc9f87bb80d7a92ca52f65d589fa55f 10ac6094a8b86428a5a4d52e8c3f21af ffffffffffffffffffffffffffffffff 8052 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +a6696dd44ddff1b7381b734a970b5beb c1a61f62bf347f479068fdd7809b96b5 ffffffffffffffffffffffffffffffff 11772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +9bc9f87bffb7e3a4ca52f65d589fa7b1 97b00cc383ea8ca30094a95544850372 ffffffffffffffffffffffffffffffff 10136 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +a6696dd44ddff1b0381b734a970b20c7 a83ceec0747f7a4d9c5eafa1e6b11500 ffffffffffffffffffffffffffffffff 18592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +9bc9f87bffb7e3a3ca52f65d589fdc9d 23a6290dcc2f6bf293ada66f5e24ce82 ffffffffffffffffffffffffffffffff 16308 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +a6696dd44ddff1b4381b734a970b3092 5d082a976a9221f850c16c28b1ad480c ffffffffffffffffffffffffffffffff 27380 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +9bc9f87bffb7e3a7ca52f65d589fccc8 fd00144553d3adf40cf1b122bb3cc00c ffffffffffffffffffffffffffffffff 23928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +a6696dd44ddff1b3381b734a970b4caa dfd8c2c61b325e1f471a44f0e424f825 ffffffffffffffffffffffffffffffff 9832 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +9bc9f87bffb7e3a0ca52f65d589fb0f0 0b73e632967f494d00c36df50c599339 ffffffffffffffffffffffffffffffff 8392 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +a6696dd446ca1c91381b734a970b7999 a9c81b92c6afcef2f8ce71f7ca9c2a3b ffffffffffffffffffffffffffffffff 11276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +9bc9f87bf4a20e82ca52f65d589f85c3 ecd4b794f9d15528d04f55690efb021f ffffffffffffffffffffffffffffffff 11740 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +a6696dd40a6569ca381b734a970bbf29 a6591c8fe660ae10f1725adb4eb1d4e4 ffffffffffffffffffffffffffffffff 36592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +9bc9f87bb80d7bd9ca52f65d589f4373 f57f14b5916e7e11082d6e15ff3d291e ffffffffffffffffffffffffffffffff 35736 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +a6696dd44ddff1b8381b734a970b65f5 ef6e65e9f1f74d31f5ad1e980d5f58dc ffffffffffffffffffffffffffffffff 13348 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +9bc9f87bffb7e3abca52f65d589f99af c23bd15f99ad1ea6b92fec4f009d9ec5 ffffffffffffffffffffffffffffffff 10424 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +a6696dd40a656881381b734a970b756b e57f2023336a6edb3dc28c6d43e17e81 ffffffffffffffffffffffffffffffff 1396 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +9bc9f87bb80d7a92ca52f65d589f8931 49d85bf18ab929417d7d050bb674afb4 ffffffffffffffffffffffffffffffff 1260 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +a6696dd44ddff1be381b734a970b693f 0cd8f19871e679375087e9c9374f9da5 ffffffffffffffffffffffffffffffff 8564 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +9bc9f87bffb7e3adca52f65d589f9565 44aacbe57c23518a48089920158a87bb ffffffffffffffffffffffffffffffff 6908 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +a6696dd40a65688b381b734a970b12ab d40c537b96c222c2e5a94ba9e80904c9 ffffffffffffffffffffffffffffffff 18924 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +9bc9f87bb80d7a98ca52f65d589feef1 db84689d3c2842c814e552d36bfd3103 ffffffffffffffffffffffffffffffff 15488 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +a6696dd40a6569c3381b734a970b1849 bec8a27db8173c755ff94c5f9462de30 ffffffffffffffffffffffffffffffff 3260 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +9bc9f87bb80d7bd0ca52f65d589fe413 0234299016adebf9d48f9cc84c5d6e39 ffffffffffffffffffffffffffffffff 2776 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +a6696dd40a6569ca381b734a970b6b49 925ca72d6eebba35d8135156fee0adf6 ffffffffffffffffffffffffffffffff 14552 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +9bc9f87bb80d7bd9ca52f65d589f9713 7bdaa2092b9d1f11c6d6e090425280cd ffffffffffffffffffffffffffffffff 12340 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +a6696dd44ddff0ff381b734a970b2f10 b43a4539a3e8ce726ccfc8e8cb98d923 ffffffffffffffffffffffffffffffff 23384 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +9bc9f87bffb7e2ecca52f65d589fd34a a51ab26b44491c4db54fd145e3dfdca6 ffffffffffffffffffffffffffffffff 20432 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +a6696dd40a656888381b734a970b64a0 b7a5a1b7aceefe2be508581be87efc6a ffffffffffffffffffffffffffffffff 25144 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +9bc9f87bb80d7a9bca52f65d589f98fa 31cd07ea247b266944f9628d2a0bfb84 ffffffffffffffffffffffffffffffff 20984 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +a6696dd40a65688a381b734a970b51bd 6a8266995f6f509c7d3cbf50fc551091 ffffffffffffffffffffffffffffffff 2880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +9bc9f87bb80d7a99ca52f65d589fade7 ae3131f3c7602feefb91500506d63b75 ffffffffffffffffffffffffffffffff 2428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +a6696dd4017084e5381b734a970b534e 03b9cecf5cab3a5d3df4abede59eb061 ffffffffffffffffffffffffffffffff 19784 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +9bc9f87bb31896f6ca52f65d589faf14 8fbbdf4855c94dbaad5319039c714068 ffffffffffffffffffffffffffffffff 18300 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +a6696dd446ca1c9f381b734a970b5824 03123911d4f450bca01acfe36ea6bcf6 ffffffffffffffffffffffffffffffff 10428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +9bc9f87bf4a20e8cca52f65d589fa47e 0d982c6bc05dee8732255146f51db2f7 ffffffffffffffffffffffffffffffff 10780 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +a6696dd4017084ec381b734a970b0488 87e8ff825aeb0d9241353dba849e9d42 ffffffffffffffffffffffffffffffff 4764 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +9bc9f87bb31896ffca52f65d589ff8d2 31e4ff866679d933e86ac6c37bd760c3 ffffffffffffffffffffffffffffffff 4808 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +a6696dd44ddff0f5381b734a970b3bd1 c6d5828d253ec7ec608a3e2e49618864 ffffffffffffffffffffffffffffffff 20072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +9bc9f87bffb7e2e6ca52f65d589fc78b 7f4e49254fa7c9510d3a338f524fa36e ffffffffffffffffffffffffffffffff 19324 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +a6696dd40a6569c1381b734a970b4eff f7b238a46706275fea1441bb4601e7fc ffffffffffffffffffffffffffffffff 20584 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +9bc9f87bb80d7bd2ca52f65d589fb2a5 6b34493a1c4339cde2888884e819f9ed ffffffffffffffffffffffffffffffff 19116 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +a6696dd44ddff1be381b734a970b7440 85c5ef1563e5f0515e067eddef643dfe ffffffffffffffffffffffffffffffff 19604 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +9bc9f87bffb7e3adca52f65d589f881a a693e13548754c048ccf1e5e28f910a2 ffffffffffffffffffffffffffffffff 16700 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +a6696dd40a6569c4381b734a970b5925 f4d72666e2e5d477e076d899430752db ffffffffffffffffffffffffffffffff 23548 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +9bc9f87bb80d7bd7ca52f65d589fa57f 858e34fa4eb44912ba1ec1246fd994ac ffffffffffffffffffffffffffffffff 25316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +a6696dd40a65688c381b734a970b3db9 5e71806ec215dbde2d397b1313f15511 ffffffffffffffffffffffffffffffff 30216 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +9bc9f87bb80d7a9fca52f65d589fc1e3 9847745f15f4d4e887569788b5e8ce4b ffffffffffffffffffffffffffffffff 26508 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +a6696dd446ca1dd7381b734a970b5b5a 56344c650f4c3a27418dae867fa7c9d1 ffffffffffffffffffffffffffffffff 25084 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +9bc9f87bf4a20fc4ca52f65d589fa700 485ac472ddda942f97c409acfe49f983 ffffffffffffffffffffffffffffffff 21072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +a6696dd446ca1c96381b734a970b68f4 a427bf35ab268a97fec0be8fa4c2e30f ffffffffffffffffffffffffffffffff 33208 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +9bc9f87bf4a20e85ca52f65d589f94ae 5a396ec7986a7081a40e30ebb7ec79b3 ffffffffffffffffffffffffffffffff 31616 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +a054ae3ed83e8f332c2f8570f1112c9a 2a00b5839bfbba85991a239740c59002 ffffffffffffffffffffffffffffffff 125768 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +e30d355a3044619b4d07e23005935149 0fd36172f676c5eaa4292de5a274dfab ffffffffffffffffffffffffffffffff 95428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +a054ae3e93c582c22c2f8570f1113962 30ba69068aa1e6dbe46173bd51ac3283 ffffffffffffffffffffffffffffffff 7316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +e30d355a7bbf6c6a4d07e230059344b1 84826dca1c4cc24b7e25cdb230a296dc ffffffffffffffffffffffffffffffff 6152 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +a054ae3e9ca3dce92c2f8570f111725e 21940794a7fb4fa83db7ccffcab5497d ffffffffffffffffffffffffffffffff 89800 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +e30d355a74d932414d07e23005930f8d ae84925f51ee5a7619014c52eb00413b ffffffffffffffffffffffffffffffff 55340 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +a054ae3e93eef2972c2f8570f111287d 9ac59f7f4a244946e995eaff7be40f01 ffffffffffffffffffffffffffffffff 25168 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +e30d355a7b941c3f4d07e230059355ae 4eb361beb24236b26abae9b0957bdc32 ffffffffffffffffffffffffffffffff 19556 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +a054ae3ed31314842c2f8570f1114520 46f7eba9f6fcfb971346f5d10fe58520 ffffffffffffffffffffffffffffffff 13472 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +e30d355a3b69fa2c4d07e230059338f3 56c8bbc4af15b98339e35881737557b6 ffffffffffffffffffffffffffffffff 8356 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +a054ae3e90eb299e2c2f8570f1111a10 f405910dc7af896b113a7acac0be08f4 ffffffffffffffffffffffffffffffff 22220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +e30d355a7891c7364d07e230059367c3 12c9347b52457fbf92393d288b33a935 ffffffffffffffffffffffffffffffff 18932 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +a054ae3e93eecf8c2c2f8570f111301b b272a5fb20267191cf5af125181e031d ffffffffffffffffffffffffffffffff 11084 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +e30d355a7b9421244d07e23005934dc8 f5d5729f4cace53d5628a135c37f08a5 ffffffffffffffffffffffffffffffff 8512 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +a054ae3e9f2f23ad2c2f8570f111176b d67750cbaf3b2882a66ad9467c40d3cf ffffffffffffffffffffffffffffffff 41216 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +e30d355a7755cd054d07e23005936ab8 7bb47319cc5e5cf0fc0aebb02c09b15d ffffffffffffffffffffffffffffffff 32412 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +a054ae3e93eecf8f2c2f8570f11126fe ae101375172580c6ea97b94c11e95179 ffffffffffffffffffffffffffffffff 15772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +e30d355a7b9421274d07e23005935b2d 4f30d24e42b3dcad316743d186579922 ffffffffffffffffffffffffffffffff 13120 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +a054ae3e9c98b8ad2c2f8570f11116dc 5a7a0aa03d0d90f97685c8e9235eefb6 ffffffffffffffffffffffffffffffff 48708 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +e30d355a74e256054d07e23005936b0f 0977dcac9bbb8456da66a8c0a18657bd ffffffffffffffffffffffffffffffff 29952 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +a054ae3edf446ef52c2f8570f110b432 d25e9562aa762e8e5e76a94737a83393 ffffffffffffffffffffffffffffffff 219760 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +e30d355a373e805d4d07e2300592c9e1 e529b21cb8877e87bf929683e2c99d5b ffffffffffffffffffffffffffffffff 156704 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +a054ae3e98d33e702c2f8570f11127ec 36743487aad36a603dfba04dfb53eb3f ffffffffffffffffffffffffffffffff 22180 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +e30d355a70a9d0d84d07e23005935a3f d902b98f8add11fa0ad729df86b02928 ffffffffffffffffffffffffffffffff 18264 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +a054ae3e93eecf8c2c2f8570f1113300 3031b2afdb32cb742f67a49db14eaab1 ffffffffffffffffffffffffffffffff 11012 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +e30d355a7b9421244d07e23005934ed3 a0f0bbea3ba28a8d73e0203c7970cda2 ffffffffffffffffffffffffffffffff 8616 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +a054ae3e93eecf8c2c2f8570f11133ee 9ad420715c808a48478a1cce9f77f92b ffffffffffffffffffffffffffffffff 11132 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +e30d355a7b9421244d07e23005934e3d c745c96cf2265b9ae3cbe85504108bf0 ffffffffffffffffffffffffffffffff 8708 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +a054ae3e94ad6b0f2c2f8570f11166ff e451f1f04a6940b234f938decc5cc2ee ffffffffffffffffffffffffffffffff 36420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +e30d355a7cd785a74d07e23005931b2c c2496e90307c84b65740291a692410b8 ffffffffffffffffffffffffffffffff 22172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +a054ae3e987db6282c2f8570f1111a2c 2c44fc7dcc394fdf715c2aa5d6a5a8a6 ffffffffffffffffffffffffffffffff 67360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +e30d355a700758804d07e230059367ff be71085ec46946c28f45ba674074481f ffffffffffffffffffffffffffffffff 47780 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +a054ae3e9bf073e02c2f8570f1116e1a 3629ac77575f1c0c4326af33eebf0217 ffffffffffffffffffffffffffffffff 41692 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +e30d355a738a9d484d07e230059313c9 bd5a3c4bd3515af83d2bb7519f98ce07 ffffffffffffffffffffffffffffffff 31480 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +a054ae3e93c4abe02c2f8570f1113c1a d15cc574aab12b334251354df5c4134b ffffffffffffffffffffffffffffffff 13664 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +e30d355a7bbe45484d07e230059341c9 bd403cf656468ef8a61d4cc2dca13878 ffffffffffffffffffffffffffffffff 11316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +a054ae3e9fbaed682c2f8570f1113164 8f299caef96f3f1600d958d0f41d6a27 ffffffffffffffffffffffffffffffff 14972 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +e30d355a77c003c04d07e23005934cb7 721802099ec4178bb7630de43089047b ffffffffffffffffffffffffffffffff 11488 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +a054ae3e93eecf8c2c2f8570f1113aad 2cef0d6cde3ba5a0e1de1eb141fd54f9 ffffffffffffffffffffffffffffffff 14788 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +e30d355a7b9421244d07e2300593477e 95020612fd653ea5bc3004aafe79d0df ffffffffffffffffffffffffffffffff 11316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +a054ae3e98f97a7a2c2f8570f1113e3b b39a185192490b44df6b7ae4f009b0e3 ffffffffffffffffffffffffffffffff 12548 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +e30d355a708394d24d07e230059343e8 9af06e9322d3251c274c04e5ebc770fb ffffffffffffffffffffffffffffffff 9908 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +a054ae3e93eecf8c2c2f8570f1113616 a694415f2f11ab115f8161e6b94c2388 ffffffffffffffffffffffffffffffff 8172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +e30d355a7b9421244d07e23005934bc5 639ff5f58695759d263ff5955c004c43 ffffffffffffffffffffffffffffffff 5900 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +a054ae3e93eecf8c2c2f8570f111365e 5bf31cbfbc03b26f13e87b40e7830e2f ffffffffffffffffffffffffffffffff 8028 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +e30d355a7b9421244d07e23005934b8d 2f5c290cb453b21c9054a7d9541eb926 ffffffffffffffffffffffffffffffff 5796 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +a054ae3e98f9788b2c2f8570f1113b10 6897a39bd4bf0e9a138507c51005204e ffffffffffffffffffffffffffffffff 14104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +e30d355a708396234d07e230059346c3 e7190323da0579f66495a3164202c778 ffffffffffffffffffffffffffffffff 10960 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +a054ae3e9f2f23ae2c2f8570f1112ff3 6281b952d0263121c2284bcbc23899aa ffffffffffffffffffffffffffffffff 14276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +e30d355a7755cd064d07e23005935220 f0d43a6b0737b393aced59b9457c12b7 ffffffffffffffffffffffffffffffff 10620 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +a054ae3e93eecf8c2c2f8570f1113662 0d1c295b0e7b02752d6d334d8476690c ffffffffffffffffffffffffffffffff 8152 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +e30d355a7b9421244d07e23005934bb1 b52205c55a6d2d293bc1522c7fa068bc ffffffffffffffffffffffffffffffff 5888 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +a054ae3e93eecf8c2c2f8570f1113672 4bcae67b4d12e32d329c4eb7883caa8a ffffffffffffffffffffffffffffffff 8104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +e30d355a7b9421244d07e23005934ba1 7d674b70f41304aeac8c12675e2afc26 ffffffffffffffffffffffffffffffff 5848 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +a054ae3e93eecf8c2c2f8570f1113656 a18de9368178ab44ef2c802c766317ea ffffffffffffffffffffffffffffffff 8004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +e30d355a7b9421244d07e23005934b85 1822cc09abb531dc13649f2035db0c7a ffffffffffffffffffffffffffffffff 5772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +a054ae3e93eecf8c2c2f8570f1113176 c3c4f983b55eb4df5179183c9ef58d2b ffffffffffffffffffffffffffffffff 9344 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +e30d355a7b9421244d07e23005934ca5 d4be4340bbc6029e55c1f17c123df5ad ffffffffffffffffffffffffffffffff 6892 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +a054ae3e948af0ee2c2f8570f1113a2c 43259fe91ce38a1871bd8b8739f2c7d3 ffffffffffffffffffffffffffffffff 14956 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +e30d355a7cf01e464d07e230059347ff 56fe3c6745475180f2d73ff6f4488f0a ffffffffffffffffffffffffffffffff 11504 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +a054ae3e948ae2c62c2f8570f111303a 9daed1c7fc65044f8a281f4bfdb98384 ffffffffffffffffffffffffffffffff 14880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +e30d355a7cf00c6e4d07e23005934de9 2442ba6d52a685b0d0e99164d31fe5e1 ffffffffffffffffffffffffffffffff 11448 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +a054ae3e93eecc732c2f8570f1113e88 102cf2fe319b7326dc6d83d9efd7cd92 ffffffffffffffffffffffffffffffff 15704 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +e30d355a7b9422db4d07e2300593435b fa2131d2a5b4da7290e5ead72af03f1a ffffffffffffffffffffffffffffffff 11536 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +a054ae3e98f97a792c2f8570f1113cae df9dd2cecaaea0c70757fbd732074327 ffffffffffffffffffffffffffffffff 15652 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +e30d355a708394d14d07e2300593417d 8a1f2dc2189553bb8e8854014dde1d1a ffffffffffffffffffffffffffffffff 11636 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +a054ae3e93eecf8c2c2f8570f111365e 841966327abb4afea7b3f941034474f9 ffffffffffffffffffffffffffffffff 8028 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +e30d355a7b9421244d07e23005934b8d e05e78d0c0f853a9be353b80e6e66125 ffffffffffffffffffffffffffffffff 5796 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +a054ae3e93c4a8d72c2f8570f1113d52 ae5ad66d43679e40026dd965aba0aafc ffffffffffffffffffffffffffffffff 22428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +e30d355a7bbe467f4d07e23005934081 b02e7f4f9de6a74ae352d7da6c191bcc ffffffffffffffffffffffffffffffff 18016 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +a054ae3e9486896a2c2f8570f1113e9a 6b0a5f4db9497a32e51170183793dd49 ffffffffffffffffffffffffffffffff 11612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +e30d355a7cfc67c24d07e23005934349 c344d1d6b07350e1ae894d710d0cd8df ffffffffffffffffffffffffffffffff 9104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +a054ae3e9486896a2c2f8570f1113da8 d729060ca3d6871990df96685f2bbdee ffffffffffffffffffffffffffffffff 11576 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +e30d355a7cfc67c24d07e2300593407b 3721e7cf3ea2b50b74c5b45447efeb5e ffffffffffffffffffffffffffffffff 9064 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +a054ae3e9486896a2c2f8570f1113da7 25f450afaf810796309d3ec29b00133f ffffffffffffffffffffffffffffffff 11612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +e30d355a7cfc67c24d07e23005934074 e2f33ac668db95f3bad48ceb0fb1f7f2 ffffffffffffffffffffffffffffffff 9104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +a054ae3e9486896a2c2f8570f1113d32 c9daf7d0e521ccb8f96d63b9fafa7188 ffffffffffffffffffffffffffffffff 10324 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +e30d355a7cfc67c24d07e230059340e1 aa08de5013003f873bbe5320074ba66d ffffffffffffffffffffffffffffffff 8048 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +a054ae3e9486896a2c2f8570f1113d1c 132cb3960c1db35f53ea41f680bd5d8d ffffffffffffffffffffffffffffffff 11728 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +e30d355a7cfc67c24d07e230059340cf 2db00e4772b7826847f865540e2c13ff ffffffffffffffffffffffffffffffff 9212 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +a054ae3e9486896a2c2f8570f1113db3 ff8ddb906c5a4b48e802bfd7c10b102a ffffffffffffffffffffffffffffffff 11548 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +e30d355a7cfc67c24d07e23005934060 f6db91acf1ea07bee667512d288fc475 ffffffffffffffffffffffffffffffff 9036 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +a054ae3e948689692c2f8570f1113dd3 38784dc5d5510c84ea2e435e929b0591 ffffffffffffffffffffffffffffffff 11544 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +e30d355a7cfc67c14d07e23005934000 82edd835f4910fd12e250b1be2e03a8b ffffffffffffffffffffffffffffffff 9032 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +a054ae3e98cfed482c2f8570f1115730 32a278b22a1088a43deb5b23f21e77b5 ffffffffffffffffffffffffffffffff 77264 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +e30d355a70b503e04d07e23005932ae3 d6c1500e32ec79bf0072a62feeb9c825 ffffffffffffffffffffffffffffffff 54460 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +a054ae3e93eecf8c2c2f8570f11132ca 645f0906ae1ad022eb2d912fb7e7aa78 ffffffffffffffffffffffffffffffff 11840 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +e30d355a7b9421244d07e23005934f19 54ba3e010e4f5393d5bcdfb569109776 ffffffffffffffffffffffffffffffff 9308 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +a054ae3e948689692c2f8570f1113f51 41fa757c45da8bd14e60aac47ef93501 ffffffffffffffffffffffffffffffff 12388 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +e30d355a7cfc67c14d07e23005934282 1362d921fa112c1a31b35486ae5cc553 ffffffffffffffffffffffffffffffff 9840 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +a054ae3e9f3ff8702c2f8570f110583d 2d28ab504fdcd6d876b569630b98b367 ffffffffffffffffffffffffffffffff 200580 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +e30d355a774516d84d07e230059225ee 36798e800574a718f731495a734d5a4f ffffffffffffffffffffffffffffffff 156020 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +a054ae3e98f89aeb2c2f8570f11114b7 df3642ce4ce9e374f87db71eb2ecd34b ffffffffffffffffffffffffffffffff 35240 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +e30d355a708274434d07e23005936964 8883ca850ba2fb6a7eaad6f512a4f061 ffffffffffffffffffffffffffffffff 21976 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +a054ae3e9486896a2c2f8570f1113f0c f4af8dd5982d50b51bd04841d85f9b36 ffffffffffffffffffffffffffffffff 12172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +e30d355a7cfc67c24d07e230059342df fe56b1516c444cf696d428ab6cc45c3d ffffffffffffffffffffffffffffffff 9648 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +a054ae3e93ca801c2c2f8570f1110ab3 623aac04933ea97fdc00b20389302cc4 ffffffffffffffffffffffffffffffff 15356 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +e30d355a7bb06eb44d07e23005937760 4a12990924bec923485c79f8f9f9397d ffffffffffffffffffffffffffffffff 10164 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +a054ae3e9faa63a22c2f8570f1111eef 36d943ae6f559bca93a20a41823e12b7 ffffffffffffffffffffffffffffffff 32880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +e30d355a77d08d0a4d07e2300593633c b24f09d1fe1e3621323dc71d69ff9d42 ffffffffffffffffffffffffffffffff 19412 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +a054ae3edbae3eaa2c2f8570f1112466 01ebc8596b89219655571bb2e9ef8a11 ffffffffffffffffffffffffffffffff 28648 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +e30d355a33d4d0024d07e230059359b5 1f581992b89ff7921d2abafb9d1fb273 ffffffffffffffffffffffffffffffff 20680 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +a054ae3e9f917ab52c2f8570f1115379 d226b9c26f2b79212e9f9f3c72b43dfd ffffffffffffffffffffffffffffffff 44712 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +e30d355a77eb941d4d07e23005932eaa fc91ace38251e0973bb051f6b4fb4be9 ffffffffffffffffffffffffffffffff 33944 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +a054ae3e972d638c2c2f8570f11106a3 4ea3efb5b79bbe3a4ea9ad63c257d721 ffffffffffffffffffffffffffffffff 22592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +e30d355a7f578d244d07e23005937b70 54983e474f9bc4da486580f710e51499 ffffffffffffffffffffffffffffffff 15752 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +a054ae3e98d2ec422c2f8570f11167d5 e28454601214876dc6293d573d7d952e ffffffffffffffffffffffffffffffff 12884 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +e30d355a70a802ea4d07e23005931a06 2aa04ea8f290220701e727b99c27fea8 ffffffffffffffffffffffffffffffff 7880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +a054ae3e93eecf8c2c2f8570f111363a 1f65b02f49dac9032857cf3cc68aac70 ffffffffffffffffffffffffffffffff 8192 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +e30d355a7b9421244d07e23005934be9 d05f9ebc4a8e8e26e25cff49ed0affd6 ffffffffffffffffffffffffffffffff 6312 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +a054ae3e93c524572c2f8570f1112b30 9e22f676c7bb103d31348577a1805e1b ffffffffffffffffffffffffffffffff 13420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +e30d355a7bbfcaff4d07e230059356e3 4afc32b12ad220bede4b66911e233cc9 ffffffffffffffffffffffffffffffff 7752 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +a054ae3e93eecf8c2c2f8570f1113644 d13bd4836f3c17479542b0323a434338 ffffffffffffffffffffffffffffffff 7596 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +e30d355a7b9421244d07e23005934b97 45c0778fc9f82b5b3e5211ac6bbc8bec ffffffffffffffffffffffffffffffff 6272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +a054ae3e9f9d40bd2c2f8570f1111c9e f8d52203c6d0ae3a22a08545179d49e5 ffffffffffffffffffffffffffffffff 30836 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +e30d355a77e7ae154d07e2300593614d cc774a35f137c2a4453a0d7386623dc6 ffffffffffffffffffffffffffffffff 24632 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +a054ae3e93eecf8c2c2f8570f11137b6 976db673f958fd892b66c861ba689ed8 ffffffffffffffffffffffffffffffff 16612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +e30d355a7b9421244d07e23005934a65 de7410836ea473d1696fa1cff479d610 ffffffffffffffffffffffffffffffff 13036 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +a054ae3e948a42982c2f8570f11110f9 a05f276648dc2b3d3fe88283969395a9 ffffffffffffffffffffffffffffffff 33644 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +e30d355a7cf0ac304d07e23005936d2a 00cc97fd75ce2aa4acab02ad6f618b02 ffffffffffffffffffffffffffffffff 25540 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +a054ae3ed7c1e40a2c2f8570f1112f97 85705079250429218770d6a5aa62a47d ffffffffffffffffffffffffffffffff 40528 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +e30d355a3fbb0aa24d07e23005935244 d0f4f8d2099d839e6957ffdbd22c1a99 ffffffffffffffffffffffffffffffff 28144 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +a054ae3e93eecf8f2c2f8570f11133bc 7a5906fc8e9cd3748fe02f73164b2df7 ffffffffffffffffffffffffffffffff 11816 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +e30d355a7b9421274d07e23005934e6f 96f90de33494482dc9cec574615efd11 ffffffffffffffffffffffffffffffff 8328 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +a054ae3e98f4e9f62c2f8570f11103f2 94e21cea67a9bb25fa16e142f663eb55 ffffffffffffffffffffffffffffffff 57100 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +e30d355a708e075e4d07e23005937e21 fc1175a6f589a3efc60f26ac7dfc87dd ffffffffffffffffffffffffffffffff 40172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +a054ae3e94b01caa2c2f8570f1113f4e 2b7af604cb111f0454de6e6b29a52b19 ffffffffffffffffffffffffffffffff 14948 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +e30d355a7ccaf2024d07e2300593429d 15ea1ec87c51dab5e05c6c71583734de ffffffffffffffffffffffffffffffff 11988 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +a054ae3ed83dd0112c2f8570f1112047 525edc69b03c891b831027574eddd7b3 ffffffffffffffffffffffffffffffff 13104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +e30d355a30473eb94d07e23005935d94 d5fe6261dec7a9b6bc248c31eabd1f0b ffffffffffffffffffffffffffffffff 10524 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +a054ae3edb8a6e592c2f8570f1115e27 d9566b77bf5258b65a47eea6a22d74d5 ffffffffffffffffffffffffffffffff 20828 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +e30d355a33f080f14d07e230059323f4 7f1d0cb5e9f3a19c9571f7c427f47cf6 ffffffffffffffffffffffffffffffff 17768 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +a054ae3e93eecf8c2c2f8570f1113a83 730c4ddd3bebc87f6597932e58a27272 ffffffffffffffffffffffffffffffff 1688 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +e30d355a7b9421244d07e23005934750 7efc8ceaba7a9b73e6bf8719cac63683 ffffffffffffffffffffffffffffffff 1644 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +a054ae3e93eecf8c2c2f8570f1113d9d 4e6fb726e6083fdd4d47322f1bb8016b ffffffffffffffffffffffffffffffff 11032 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +e30d355a7b9421244d07e2300593404e c2cbc48bd1f55a31bfff104d2867f7ac ffffffffffffffffffffffffffffffff 9556 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +a054ae3e9486896a2c2f8570f1113304 93692e7ebb7153d5f942dafbf8d4e05d ffffffffffffffffffffffffffffffff 12688 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +e30d355a7cfc67c24d07e23005934ed7 c5f4b9e090398b1fb46c93fe0c3d6422 ffffffffffffffffffffffffffffffff 10096 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +a054ae3e9486896a2c2f8570f1113309 a4927e10e5898b32995cbe6cccf1cec3 ffffffffffffffffffffffffffffffff 12792 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +e30d355a7cfc67c24d07e23005934eda c8ec9f85e722d9b75f78e57ebef93c13 ffffffffffffffffffffffffffffffff 10048 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +a054ae3e9486896a2c2f8570f1113f4c c3630ff81f045183909fb2a787d243da ffffffffffffffffffffffffffffffff 12084 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +e30d355a7cfc67c24d07e2300593429f 5bcf109caae319a8af813fa0e9f58c1e ffffffffffffffffffffffffffffffff 9520 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +a054ae3e9486896a2c2f8570f1113e09 9db33d00c00e9a7062ada822f415065d ffffffffffffffffffffffffffffffff 11828 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +e30d355a7cfc67c24d07e230059343da 73e3cef9d3a290ef6c55377b1063b0ab ffffffffffffffffffffffffffffffff 9368 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +a054ae3e90596e2c2c2f8570f11133d1 060ccf1b1ddfce550d228edf868e4eec ffffffffffffffffffffffffffffffff 16116 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +e30d355a782380844d07e23005934e02 508944ee67835a62f1624d46db31a116 ffffffffffffffffffffffffffffffff 14220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +a054ae3e9dc9e8802c2f8570f1113659 f553c16d6f71e3dc604e5b60dfecb680 ffffffffffffffffffffffffffffffff 7920 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +e30d355a75b306284d07e23005934b8a 3724e9f37f531b12e16e57008b5fa58e ffffffffffffffffffffffffffffffff 4864 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +a054ae3e9486896a2c2f8570f1113e58 c7723e5fb54185c8db7060eb8352311b ffffffffffffffffffffffffffffffff 11476 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +e30d355a7cfc67c24d07e2300593438b 6fe723028b5bbf93de253dc1340a6233 ffffffffffffffffffffffffffffffff 9032 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +a054ae3e93eecf8c2c2f8570f111308c 6020b6138969a3da6984c6252a489b55 ffffffffffffffffffffffffffffffff 10228 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +e30d355a7b9421244d07e23005934d5f b47b02d3301975ad035d3ac51534923e ffffffffffffffffffffffffffffffff 8588 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +a054ae3e93eecf8c2c2f8570f11136e8 4bff471acf18c35173eafb93bcec30a1 ffffffffffffffffffffffffffffffff 4988 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +e30d355a7b9421244d07e23005934b3b 4052bc2f990d79b23523e2c95f6c2841 ffffffffffffffffffffffffffffffff 3464 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +a054ae3e9486896a2c2f8570f1113f20 6b24b249f5bdd7f7b27e404cc068aa57 ffffffffffffffffffffffffffffffff 11440 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +e30d355a7cfc67c24d07e230059342f3 53480cb1622533c658703c08d3d06308 ffffffffffffffffffffffffffffffff 9016 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +a054ae3e9486896a2c2f8570f11132e5 7589499e8df946b5046970b5dabb2439 ffffffffffffffffffffffffffffffff 13360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +e30d355a7cfc67c24d07e23005934f36 11b809ad29750ea4066810c6bf9ba838 ffffffffffffffffffffffffffffffff 10688 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +a054ae3e93eecf8c2c2f8570f11135ad f0aa4f9174b7b2c3d73c223ed415dfb1 ffffffffffffffffffffffffffffffff 9256 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +e30d355a7b9421244d07e2300593487e 99307e1e8d3f6d072a556c2eb693e21b ffffffffffffffffffffffffffffffff 7284 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +a054ae3e93eecf8c2c2f8570f1113792 0a16525357c4247fc903114da22ebf50 ffffffffffffffffffffffffffffffff 10256 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +e30d355a7b9421244d07e23005934a41 2d1659f6bd9a2000c06c25dccdd2f7fb ffffffffffffffffffffffffffffffff 5504 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +a054ae3e93eecf8c2c2f8570f111349c 619c93a0a2effeec98c82a4068ee903a ffffffffffffffffffffffffffffffff 3656 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +e30d355a7b9421244d07e2300593494f 2d479cd56fad5cdf2464242938731347 ffffffffffffffffffffffffffffffff 3320 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +a054ae3e93eecf8c2c2f8570f11136cb 5cf5547ec055de6b25ddef5fc78bf88c ffffffffffffffffffffffffffffffff 7928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +e30d355a7b9421244d07e23005934b18 ae18ca4a9f6c81d05152a9cd5ead6c7d ffffffffffffffffffffffffffffffff 3916 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +a054ae3e93eecf8c2c2f8570f1113d2d 8d56a0191249a3184ac32916b3c53401 ffffffffffffffffffffffffffffffff 12360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +e30d355a7b9421244d07e230059340fe c95dacaa7b2222926efab7c323ea528f ffffffffffffffffffffffffffffffff 8624 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +a054ae3edf4410c62c2f8570f1117a00 741e8d5d7eae83ac788119dc31975ac2 ffffffffffffffffffffffffffffffff 58580 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +e30d355a373efe6e4d07e230059307d3 fea1c94c804a849e7737272a5fd6fa7a ffffffffffffffffffffffffffffffff 46584 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +a054ae3e93eecf8c2c2f8570f1113e7b 05e5af954bfd62d0ebacdd661208ad34 ffffffffffffffffffffffffffffffff 16208 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +e30d355a7b9421244d07e230059343a8 df492c39321de5797a6ba80895037820 ffffffffffffffffffffffffffffffff 11652 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +a054ae3edf7ee48d2c2f8570f11149ea c4a7fa0102317563bc4a8078d1a448a1 ffffffffffffffffffffffffffffffff 14252 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +e30d355a37040a254d07e23005933439 45ee9db5e5c8f2c90e55cd864d1b23af ffffffffffffffffffffffffffffffff 10008 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +a054ae3ed4fdef4c2c2f8570f111292f a5c49fff5291415ea49363c41102a58f ffffffffffffffffffffffffffffffff 82844 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +e30d355a3c8701e44d07e230059354fc 99cff75f85c69c5502debb078b2be980 ffffffffffffffffffffffffffffffff 59172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +a054ae3e9486896a2c2f8570f1113127 ae00718a3447e001e7b6ddf96d6afbde ffffffffffffffffffffffffffffffff 12328 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +e30d355a7cfc67c24d07e23005934cf4 6d1e9bf4483c75008ce484a5e8c37b8b ffffffffffffffffffffffffffffffff 9736 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +a054ae3e9b624a0b2c2f8570f111540b fcb668b0817c82c4689b36e63cea7c71 ffffffffffffffffffffffffffffffff 18308 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +e30d355a7318a4a34d07e230059329d8 1b188a9bba98cb9e3e39509cb3f5a1da ffffffffffffffffffffffffffffffff 12848 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +a054ae3edf43ae6b2c2f8570f1113746 9563c9aa4be95084d78509dc6e2c853d ffffffffffffffffffffffffffffffff 9880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +e30d355a373940c34d07e23005934a95 6e6c97be20fa14c2e496f4882917618e ffffffffffffffffffffffffffffffff 8624 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +a054ae3e98f97a7a2c2f8570f11133cb fd8bce41ac8ab3e1f187be79fa78ae8f ffffffffffffffffffffffffffffffff 9416 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +e30d355a708394d24d07e23005934e18 e2538e351a922881804b844996d21c0e ffffffffffffffffffffffffffffffff 9208 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +a054ae3e9c30a5a02c2f8570f1113d57 660ccb69effb511923b0e2f622c1e473 ffffffffffffffffffffffffffffffff 9476 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +e30d355a744a4b084d07e23005934084 2619ef86cd6038db55091f21f6c8e236 ffffffffffffffffffffffffffffffff 7740 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +a054ae3ed09dc4442c2f8570f11126f0 04e7c93bf04222bc59e6d05aabb8e56c ffffffffffffffffffffffffffffffff 23092 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +e30d355a38e72aec4d07e23005935b23 7ad21768dfc646dc37d9d453ab5216eb ffffffffffffffffffffffffffffffff 16608 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +a054ae3ed09dc4472c2f8570f11135a9 65371f3cb008ebef7f1aa55a19456903 ffffffffffffffffffffffffffffffff 10360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +e30d355a38e72aef4d07e2300593487a 0b354208694fe13ed7d7ad2d531545cc ffffffffffffffffffffffffffffffff 6072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +a054ae3e98f97a792c2f8570f11124d8 e28069d2057b8a146c8c2bc3ef950c4b ffffffffffffffffffffffffffffffff 17664 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +e30d355a708394d14d07e2300593590b 1a16aa2c199daa6e1d07e25e551ce403 ffffffffffffffffffffffffffffffff 13312 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +a6696dd44bc563d7381b734a970bbc81 caf7a4b3ecfc6185f7e3d63bc66391ad ffffffffffffffffffffffffffffffff 720 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +9bc9f87bf9ad71c4ca52f65d589f40db f080a078f3f67518a9c73c6e0cb22362 ffffffffffffffffffffffffffffffff 584 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +a6696dd40324608f381b734a97084719 bf083a308a84916820f3dfecd85b5a05 ffffffffffffffffffffffffffffffff 32944 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +9bc9f87bb14c729cca52f65d589cbb43 6ef099384c435be0d0d8a343d82d0bb0 ffffffffffffffffffffffffffffffff 24852 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +a054ae3e98f97a7a2c2f8570f1113c84 9327e025d6159a5f17f18a6b215d83a3 ffffffffffffffffffffffffffffffff 15244 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +e30d355a708394d24d07e23005934157 dde8482055ebda367bd0af480181554b ffffffffffffffffffffffffffffffff 12384 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +a054ae3e98f97a7a2c2f8570f1113c4d 255ce6759cfa51a119c19d2b391fbb85 ffffffffffffffffffffffffffffffff 13316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +e30d355a708394d24d07e2300593419e 0c6754b2793bd88911c0b7794c8cee57 ffffffffffffffffffffffffffffffff 10596 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +a054ae3e98f97a7a2c2f8570f1113eee aa47a20c3b3a0a55f4b1b99694d10997 ffffffffffffffffffffffffffffffff 11748 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +e30d355a708394d24d07e2300593433d 3530083fe3fbf0b881f1b0b0fb56a716 ffffffffffffffffffffffffffffffff 9276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +a054ae3e9f9d451b2c2f8570f111211d b01da7c16e80a4801460fa1a0626a78b ffffffffffffffffffffffffffffffff 21008 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +e30d355a77e7abb34d07e23005935cce b1743e53df0c4cf7afe7a41f652cab4c ffffffffffffffffffffffffffffffff 17004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +a054ae3e9fb7356c2c2f8570f1113a80 4e07af8a653459109dc821d199f18a57 ffffffffffffffffffffffffffffffff 17928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +e30d355a77cddbc44d07e23005934753 2fe948546d05d85a109315b84d310908 ffffffffffffffffffffffffffffffff 14892 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +a054ae3e90f669152c2f8570f11178e4 56def9e19b8edccd11b73c9ddff555cf ffffffffffffffffffffffffffffffff 76312 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +e30d355a788c87bd4d07e23005930537 d1a3e67d083a1d6b06cfe1c3d7691074 ffffffffffffffffffffffffffffffff 48364 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +a054ae3e9486896a2c2f8570f1112b67 658e2386bd2c6723593ff8eb2f489115 ffffffffffffffffffffffffffffffff 20528 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +e30d355a7cfc67c24d07e230059356b4 f9c39724754ee5d4ff06904d5a193f37 ffffffffffffffffffffffffffffffff 15104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +a054ae3e93eecf8c2c2f8570f1113faf 5a865e8d6e120ef928c468194eb52ae8 ffffffffffffffffffffffffffffffff 18096 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +e30d355a7b9421244d07e2300593427c 77966f48369e8ccf40712e2504752642 ffffffffffffffffffffffffffffffff 14592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +a054ae3e9f2ec1d12c2f8570f11121f6 20b6dab0ebb96ece6c30f93aecafa82f ffffffffffffffffffffffffffffffff 55452 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +e30d355a77542f794d07e23005935c25 d6b4515d869373151790f0ed54503656 ffffffffffffffffffffffffffffffff 37404 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +a054ae3e93eecf8c2c2f8570f1113d79 5884b6f5147b51bc0c2899772f4d83cd ffffffffffffffffffffffffffffffff 10276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +e30d355a7b9421244d07e230059340aa cfe1ada258ed26df7f8f9472c3b8c127 ffffffffffffffffffffffffffffffff 5388 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +a054ae3e98f97a7a2c2f8570f1113bef 1c69bb522d5a7979a4fd09e326382b93 ffffffffffffffffffffffffffffffff 13816 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +e30d355a708394d24d07e2300593463c d464500a15e0a1e6c11fa0d02396cc14 ffffffffffffffffffffffffffffffff 11168 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +a054ae3e98f97a7a2c2f8570f1113eca 87768b5b1fee0d3454c04049a334a645 ffffffffffffffffffffffffffffffff 12132 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +e30d355a708394d24d07e23005934319 3680cb0d0e6043925a5bd98c1062942c ffffffffffffffffffffffffffffffff 9448 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +a054ae3e93eecf8c2c2f8570f1113152 dd8b52b2547acbf024a09ce2e013a7d4 ffffffffffffffffffffffffffffffff 5808 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +e30d355a7b9421244d07e23005934c81 e94775f5212c8ea54c0b688e20c9e76a ffffffffffffffffffffffffffffffff 3932 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +a054ae3e948681e22c2f8570f11121e6 6069ff37b2367e25838c48721053c77e ffffffffffffffffffffffffffffffff 26984 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +e30d355a7cfc6f4a4d07e23005935c35 8d3b8a6c454304c29529dd4149dd7042 ffffffffffffffffffffffffffffffff 21556 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +a054ae3e93eecf8c2c2f8570f11137ab e93b3676c91181eddb9499f57418a26e ffffffffffffffffffffffffffffffff 14716 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +e30d355a7b9421244d07e23005934a78 b4baf7ad20dd92b9e52e9322a52bc8af ffffffffffffffffffffffffffffffff 10516 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +a054ae3e9f9134142c2f8570f1113c4a 2db8e4b1653e13ccf1b781b258169f1e ffffffffffffffffffffffffffffffff 12868 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +e30d355a77ebdabc4d07e23005934199 c9a4c703aea7f55373874406f00d84f5 ffffffffffffffffffffffffffffffff 10140 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +a054ae3edf7d3c2d2c2f8570f1117f90 d016c010bef075f9d049a9ee3bb12084 ffffffffffffffffffffffffffffffff 30012 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +e30d355a3707d2854d07e23005930243 6ba2840a1e31d19bb07212bfa7a9bed9 ffffffffffffffffffffffffffffffff 23180 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +a054ae3ed32a4c4a2c2f8570f1116255 b92c71ed089409851607fc78d602e259 ffffffffffffffffffffffffffffffff 49972 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +e30d355a3b50a2e24d07e23005931f86 73a41f2967fa09309533fd9f6ba15e51 ffffffffffffffffffffffffffffffff 35964 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +a054ae3e93d7d3fc2c2f8570f1114abd 668d25b1e189b617a03b5e4798278234 ffffffffffffffffffffffffffffffff 27804 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +e30d355a7bad3d544d07e2300593376e e9093e9c0a472816738fd044dc3ba33e ffffffffffffffffffffffffffffffff 19428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +a054ae3ed328337c2c2f8570f111143e ca7e43e26c9bf88b7288d136539fdb44 ffffffffffffffffffffffffffffffff 114068 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +e30d355a3b52ddd44d07e230059369ed afbb1f129a073c62d39f0da0a8b4f46c ffffffffffffffffffffffffffffffff 87140 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +a054ae3e94890dfe2c2f8570f111177d 143646ee1aa0c71bcd6dd05b3f8a33aa ffffffffffffffffffffffffffffffff 49392 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +e30d355a7cf3e3564d07e23005936aae 239e1ed5c051cf140cb5b5d2ee2de5c3 ffffffffffffffffffffffffffffffff 35868 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +a054ae3edf6c39532c2f8570f11160b2 3aa2d9be88e00b713ae644e243a23901 ffffffffffffffffffffffffffffffff 75268 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +e30d355a3716d7fb4d07e23005931d61 c77093af58d1cab3820844e91027726f ffffffffffffffffffffffffffffffff 55060 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +a054ae3e93eec97b2c2f8570f1117fc2 9d1d692f66fce020bfb40864a3ac001a ffffffffffffffffffffffffffffffff 48808 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +e30d355a7b9427d34d07e23005930211 184692f11276fc500aebe4ad7d1f7bd0 ffffffffffffffffffffffffffffffff 39804 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +a054ae3e9cbe550a2c2f8570f111ad64 9820696fff1de75415fa37d751ecc078 ffffffffffffffffffffffffffffffff 105004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +e30d355a74c4bba24d07e2300593d0b7 5a9b0c58c0d262621f5ab49f56ec1da9 ffffffffffffffffffffffffffffffff 80224 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +a054ae3e93eecf8c2c2f8570f1112a69 9072eb01aadc8bd97906c9b514569681 ffffffffffffffffffffffffffffffff 21024 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +e30d355a7b9421244d07e230059357ba c94104362c729964da2074239cd63946 ffffffffffffffffffffffffffffffff 18816 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +a054ae3e9c994d392c2f8570f1116d85 82c5f0aa85a3cc7a317b8c5adff54eeb ffffffffffffffffffffffffffffffff 110272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +e30d355a74e3a3914d07e23005931056 d1aa63ea69231fdb387e11c6ca08ed1e ffffffffffffffffffffffffffffffff 82872 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +a054ae3e98f97a792c2f8570f1113fbf 9affff0df57a684dafe74eceaadbc5b9 ffffffffffffffffffffffffffffffff 19180 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +e30d355a708394d14d07e2300593426c 9ac845ba096976ed3074f1f38fc69c23 ffffffffffffffffffffffffffffffff 14588 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +a054ae3e93eecf8c2c2f8570f1113cda f1b047f7433b4deb3a06f0dbf603828b ffffffffffffffffffffffffffffffff 17248 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +e30d355a7b9421244d07e23005934109 1c74d29965862991ea09ffd1d37ba92b ffffffffffffffffffffffffffffffff 14768 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +a054ae3e907f6a362c2f8570f111cd95 ff955f5fae246408cd632d73031d8a83 ffffffffffffffffffffffffffffffff 143520 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +e30d355a7805849e4d07e2300593b046 07368d8e875c5d27a4892d3ad2bbd579 ffffffffffffffffffffffffffffffff 102772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +a054ae3e9fbb9b8c2c2f8570f111883a 0cb9ddf6b5a9b4a337a3dcb50930f142 ffffffffffffffffffffffffffffffff 95336 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +e30d355a77c175244d07e2300593f5e9 133c36b141204ced7f7373da7fc8a83e ffffffffffffffffffffffffffffffff 71336 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +a054ae3ed313b4422c2f8570f1113bdb f36a830a25d43af1e579f348f279858e ffffffffffffffffffffffffffffffff 24256 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +e30d355a3b695aea4d07e23005934608 e118936ce7c95595d48f2034d0c9f370 ffffffffffffffffffffffffffffffff 22068 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +a054ae3e93eecf8c2c2f8570f11135d2 ed76f50add5b59e852eb5d31b76937bf ffffffffffffffffffffffffffffffff 5424 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +e30d355a7b9421244d07e23005934801 e6afac0e2e4d98fa47264e0f2223251a ffffffffffffffffffffffffffffffff 4432 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +a054ae3ed44c99f22c2f8570f111f428 fbd3568bb493776cd62dce8db25407f0 ffffffffffffffffffffffffffffffff 151612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +e30d355a3c36775a4d07e230059389fb 96972307e2e420616a518b60af550fab ffffffffffffffffffffffffffffffff 124464 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +a054ae3ed358db7f2c2f8570f1117c80 aabf7ae6e19b11842acab05fcbcf256b ffffffffffffffffffffffffffffffff 26836 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +e30d355a3b2235d74d07e23005930153 7d37cda27e0af4d5d69a47062f0d86cc ffffffffffffffffffffffffffffffff 21400 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +a054ae3ed94994a12c2f8570f111b02a a673d363b2ed758ed8348245c7f0b6d6 ffffffffffffffffffffffffffffffff 177100 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +e30d355a31337a094d07e2300593cdf9 f8e34651f8d4ece0c54dcfa08f0ac3cd ffffffffffffffffffffffffffffffff 145948 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +a054ae3ed532d6d42c2f8570f11132d2 b4f209553355e2cf4351938105afd690 ffffffffffffffffffffffffffffffff 4120 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +e30d355a3d48387c4d07e23005934f01 a35708f360ae6439ec6e4a533102658a ffffffffffffffffffffffffffffffff 3492 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +000000004bd31f9300000000000000ee d7bca44e02fbecf124381541d8914315 ffffffffffffffffffffffffffffffff 204 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework +000000004bd31f9c00000000000000ee b4f1a27bcc686507c3e912396fef34c3 ffffffffffffffffffffffffffffffff 204 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework +000000004bf983270000000000000110 a42637acffec1ce290aa27c82f29466d ffffffffffffffffffffffffffffffff 204 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework +000000004c91953b00000000000003bf a6696dd40a5b88ee381b734a970b0c0a ffffffffffffffffffffffffffffffff 1409392 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf a054ae3e9fbbf0df2c2f8570f1113615 ffffffffffffffffffffffffffffffff 36544784 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf 9bc9f87bb8339afdca52f65d589ff050 ffffffffffffffffffffffffffffffff 55464 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth +000000004c91953b00000000000003bf e30d355a77c11e774d07e23005934bc6 ffffffffffffffffffffffffffffffff 7265724 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth +00000000000000000000000000000000 ed0cccd54620342af3949794d0dcc0b4 ffffffffffffffffffffffffffffffff 20 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig +000000004c05464900000000000b29d3 5e96fa5e665f4c1bd77ad9f979f2ffd1 ffffffffffffffffffffffffffffffff 155671 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib +000000004bd31f9d000000000000acc8 95aad70961ec918b1b9dd72bd5364a28 ffffffffffffffffffffffffffffffff 6387 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib +00000000000000000000000000000000 d4cf67f47787bf21ea2919b0b1c5cda8 ffffffffffffffffffffffffffffffff 11637 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png +000000004c054649000000000003b733 8d2d76e1efb524c96ced1eb92bf90383 ffffffffffffffffffffffffffffffff 32828 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib +00000000000000000000000000000000 3764e24dc2b149337eb6b94ae9ac4921 ffffffffffffffffffffffffffffffff 1182 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem +000000004bd31f9d000000000000ae8b fc5d3cfdc3e214de502dc785d44f69d8 ffffffffffffffffffffffffffffffff 6064 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib +000000004bd31f9d000000000000c610 4ccff96b311a32381fee2a8639520288 ffffffffffffffffffffffffffffffff 7649 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib +000000004bd31f9d000000000005a57a f78c3e592828ac9889f22b4e2a7138a0 ffffffffffffffffffffffffffffffff 72765 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib +000000004bd31f9e000000000000b772 d341eb40caf43ef99aa2e636f5afd692 ffffffffffffffffffffffffffffffff 6690 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib +000000004bd31f9d000000000000b753 9fb5353111c1a4aab693a50411f89822 ffffffffffffffffffffffffffffffff 6673 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib +000000004bd31f9d000000000000d34a 70ae5ae13a8f000a6cfbbdf8ed7e616a ffffffffffffffffffffffffffffffff 8751 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib +000000004bcc9972000000000000b0cc 265ef1fd683e47eeb6eebd7dfd53f9fe ffffffffffffffffffffffffffffffff 5881 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib +000000004bd31f9d0000000000008c3b 093bb5137912a9c0d03cd57c6c5c0c33 ffffffffffffffffffffffffffffffff 4068 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib +000000004bd31f9e0000000000008c4d c3d8950b29fa65236eaaec1647929e5a ffffffffffffffffffffffffffffffff 4074 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib +000000004bd31f9e000000000000b75d 04d5876ef50717b1ad5951f8340dab59 ffffffffffffffffffffffffffffffff 6666 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib +000000004cbb41b800000000000474f0 abbe623011e86459fd357aa90004c75d ffffffffffffffffffffffffffffffff 51715 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib +000000004bd31f9e0000000000008c58 bec3bf189557331745669612c60b52df ffffffffffffffffffffffffffffffff 4117 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib +000000004bd31f9d0000000000008c56 7fcb698c0fafb15ce4bdd969a700b8de ffffffffffffffffffffffffffffffff 4127 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib +000000004bd31f9d0000000000008c28 3fc20e9fe05d86caefa7307e1216c319 ffffffffffffffffffffffffffffffff 4034 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib +000000004bd31f9d000000000000b02b 618fe7350da11714b0ce04d46334f92a ffffffffffffffffffffffffffffffff 6685 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib +000000004bd31f9d000000000000c17e b67786b2035a064a17dc897521636f2a ffffffffffffffffffffffffffffffff 7267 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib +000000004bd31f9d000000000000c188 881460938d903664444a2669facc54fa ffffffffffffffffffffffffffffffff 7272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib +000000004bd31f9d000000000000c16a 44ce30150df391416a86639d9bf2cf56 ffffffffffffffffffffffffffffffff 7247 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib +000000004bd31f9d000000000000b74a 07283d0e40790c9f3167c7866b1c8b82 ffffffffffffffffffffffffffffffff 6673 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib +000000004bd31f9d0000000000008c5a 16e56657b2711d276cb0efc9ef11f52a ffffffffffffffffffffffffffffffff 4163 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib +000000004bd31f9d000000000000bed6 780a4bc433f1378087e879892ab5826c ffffffffffffffffffffffffffffffff 7710 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib +000000004bd31f9d000000000000be6c 4be6d192f01baec7da3452097cd8efa6 ffffffffffffffffffffffffffffffff 7585 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib +000000004bd31f9e0000000000008dc7 48213a990c6cc45bdd3d75bdeb456ea7 ffffffffffffffffffffffffffffffff 4111 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib +000000004bd31f9e000000000000b70d 1792439d20d69de272d2b4cdc2bdffaf ffffffffffffffffffffffffffffffff 6729 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib +000000004bd31f9d000000000000b7bb fab73f1a1b14f4b0a49dfc0f0cfa9dc4 ffffffffffffffffffffffffffffffff 7221 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib +000000004bd31f9d000000000000bb84 817dc723a402934726d980cdfa733c0f ffffffffffffffffffffffffffffffff 7370 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib +000000004bd31f9e000000000000bdfd 6891ccd0234dcdf27a8bbab966ee1b84 ffffffffffffffffffffffffffffffff 7581 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib +000000004bd31f9d000000000002fb48 f61e725ef53fc0899b3445b077398e13 ffffffffffffffffffffffffffffffff 25228 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib +000000004bd31f9e000000000000dcc5 6824a6e17f810c05dfaa7196c316a53a ffffffffffffffffffffffffffffffff 8682 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib +000000004bd31f9d000000000000cde8 feeb9036931f749f2b9086b0ec462ea3 ffffffffffffffffffffffffffffffff 7839 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib +000000004bd31f9d000000000000bdab fe0f145dc704602ee2412dda8d67856d ffffffffffffffffffffffffffffffff 6822 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib +000000004bd31f9e0000000000025d5e e6ba538bd9388c07df960eb3bf6225bb ffffffffffffffffffffffffffffffff 18778 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib +000000004c054649000000000000229c ab0e118f3d5af5a41f9f918450f33c17 ffffffffffffffffffffffffffffffff 8860 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist +000000004cbb5cef0000000000006135 e2f58fb92593889397b5e400f2538388 ffffffffffffffffffffffffffffffff 24885 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist +00000000000000000000000000000000 e8c8bad9dee712cda9f5bd7f81d1c494 ffffffffffffffffffffffffffffffff 12613 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png +00000000000000000000000000000000 3f1a65ea8f1d0c94bc5a74f9f7e507d6 ffffffffffffffffffffffffffffffff 112117 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png +00000000000000000000000000000000 3a1c92650c49f749987df3e6d7ae3ee4 ffffffffffffffffffffffffffffffff 1697 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png +00000000000000000000000000000000 301a1ce29d7125b752e7f8a4d6df2ced ffffffffffffffffffffffffffffffff 2888 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png +00000000000000000000000000000000 40f165436d36307ff6e9b218022385b6 ffffffffffffffffffffffffffffffff 5653 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png +000000004bd31f9e000000000006828a 83b93f684d68f8bc32b573eda010404e ffffffffffffffffffffffffffffffff 61951 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib +00000000000000000000000000000000 c570a7ecf76ac51462681050799dee8d ffffffffffffffffffffffffffffffff 1159 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif +00000000000000000000000000000000 1d6c85c7d268d20efe72aa2f9c052366 ffffffffffffffffffffffffffffffff 7534 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png +00000000000000000000000000000000 11893d0f0b5196f3ee22078ca5e3dc2f ffffffffffffffffffffffffffffffff 7502 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png +00000000000000000000000000000000 edd3bd4aa1b473f4cdbe49176cfd21f4 ffffffffffffffffffffffffffffffff 94283 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 +00000000000000000000000000000000 16e264d6426a5867bf5aaeb304309f3d ffffffffffffffffffffffffffffffff 8909 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png +000000004bd31f9e0000000000011618 4e9d46adedda8170b7ae1d386bd20467 ffffffffffffffffffffffffffffffff 11534 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib +000000004bd31f9d0000000000008ff2 b339ac4c27d08fc1af4b4e947a2c7bd6 ffffffffffffffffffffffffffffffff 10028 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib +000000004bd31f9d000000000000bfb8 05a6f641ebb2d8bb992eec0a7bc9a63b ffffffffffffffffffffffffffffffff 7847 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib +000000004bd31f9e00000000000044ba 8258ea8c40c7d855c5298de6af2b62f5 ffffffffffffffffffffffffffffffff 5238 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib +000000004bd31f9d00000000000088d0 d0364f84a014fbbbbb269fc8b2871ce0 ffffffffffffffffffffffffffffffff 6950 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib +000000004bd31f9d0000000000008839 f2a8079aaf18429ba12cc4aedbb8f2bc ffffffffffffffffffffffffffffffff 6810 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib +00000000000000000000000000000000 1fdbe4cd3a4776f43c8ee8705f3647e6 ffffffffffffffffffffffffffffffff 6006 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 +00000000000000000000000000000000 ba530f0f15d32f2fa1b8c05848d71680 ffffffffffffffffffffffffffffffff 7108 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png +00000000000000000000000000000000 db8e3ccbca8cd02a6745c4ab249c6d1a ffffffffffffffffffffffffffffffff 6451 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png +00000000000000000000000000000000 c0ce10821fd899eadbbba86c244fb47a ffffffffffffffffffffffffffffffff 6280 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png +00000000000000000000000000000000 939aa4712feee33839f864c561db71b5 ffffffffffffffffffffffffffffffff 9321 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png +00000000000000000000000000000000 f347a640b15ff044a6152582150558a2 ffffffffffffffffffffffffffffffff 4647 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png +00000000000000000000000000000000 b1306e43d44f3a47a18df780ba44f4e0 ffffffffffffffffffffffffffffffff 4884 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png +000000004bd31f9d0000000000011eb0 19028df4fca7770bab42f6702b0a6ef0 ffffffffffffffffffffffffffffffff 12616 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib +000000004bd31f9d000000000000cf51 1f423d7893156cce0a64b014aee726c7 ffffffffffffffffffffffffffffffff 10343 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib +000000004cbb58f30000000000010ee1 a1d0c7d4bee0925221c3dc4e5c1ff2be ffffffffffffffffffffffffffffffff 12046 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib +000000004bd31f9e000000000000a666 b4cade5266514f9ab28407a7ac568f38 ffffffffffffffffffffffffffffffff 8562 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib +000000004bd31f9d000000000000d1ec 2416e6f1d61a918cf3968f158a9c0390 ffffffffffffffffffffffffffffffff 7695 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib +000000004bd31f9d0000000000011f0b c6e9aca4ab855357497278f09d1143c6 ffffffffffffffffffffffffffffffff 11854 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib +000000004cbb0ad000000000000d3833 e7b48f78819e28e61d50d7e4a8b83ec4 ffffffffffffffffffffffffffffffff 208599 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib +00000000000000000000000000000000 e44705da8616fbfa4ca7887c08b892a0 ffffffffffffffffffffffffffffffff 427718 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns +00000000000000000000000000000000 395267cfa833daa6a9780fb96f440f55 ffffffffffffffffffffffffffffffff 160946 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns +00000000000000000000000000000000 5aa323f605828f04d4c9e3113947d503 ffffffffffffffffffffffffffffffff 489006 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns +00000000000000000000000000000000 fe8c7001e42de95311175e7057588569 ffffffffffffffffffffffffffffffff 356 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif +00000000000000000000000000000000 6d069b3329ae0a30a66546d45814c8b2 ffffffffffffffffffffffffffffffff 420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif +00000000000000000000000000000000 3444f3c69457e14913a9e88b15f820f8 ffffffffffffffffffffffffffffffff 354 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif +00000000000000000000000000000000 344c6c4605294c1c9e7d4b67bc7234fa ffffffffffffffffffffffffffffffff 937 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png +00000000000000000000000000000000 599e27fe6200e24c772582c96db7ffc1 ffffffffffffffffffffffffffffffff 913 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png +00000000000000000000000000000000 3149935acb9a48d4f584b9fe5c8dfb5e ffffffffffffffffffffffffffffffff 530 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png +00000000000000000000000000000000 298fe72c7bc0a092432d694d73cffefb ffffffffffffffffffffffffffffffff 821 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png +00000000000000000000000000000000 54d7a4d0f061967bf7346ecc166e791f ffffffffffffffffffffffffffffffff 369 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png +00000000000000000000000000000000 77ec4bf588397bc30b2c1aac4a34a9e6 ffffffffffffffffffffffffffffffff 585 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png +00000000000000000000000000000000 4e7b892eec37882693210e3d40160863 ffffffffffffffffffffffffffffffff 1090 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png +00000000000000000000000000000000 74f077f8cdce439b7314a41a4a39368f ffffffffffffffffffffffffffffffff 789 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png +00000000000000000000000000000000 0c1d98faad6746df49eaafc2728ff84e ffffffffffffffffffffffffffffffff 527 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png +00000000000000000000000000000000 fbd818c8828011b7bc036be1e92e19d5 ffffffffffffffffffffffffffffffff 593 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png +00000000000000000000000000000000 3f55a8634aea53b13cd28a8368da65c6 ffffffffffffffffffffffffffffffff 540 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png +00000000000000000000000000000000 c3e17d6ebfdfb36f50110363fbea7428 ffffffffffffffffffffffffffffffff 421 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png +00000000000000000000000000000000 a8d08e505708248780968144fe153c69 ffffffffffffffffffffffffffffffff 891 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png +00000000000000000000000000000000 a8ab75231e29c9f055720c454fd7b262 ffffffffffffffffffffffffffffffff 429 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png +00000000000000000000000000000000 0d7333331c97b2213255fa1d6cc40ea8 ffffffffffffffffffffffffffffffff 421 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png +00000000000000000000000000000000 cb08eacb771e3b0022a784ddb1016b9f ffffffffffffffffffffffffffffffff 708 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png +00000000000000000000000000000000 2f86dff7a8abb6bdffc08d546556c901 ffffffffffffffffffffffffffffffff 581 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png +00000000000000000000000000000000 b42fb9138c7aae6631120a31e207ab39 ffffffffffffffffffffffffffffffff 342 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png +00000000000000000000000000000000 73208182a8bfcf753dd2ae625f5c1cc5 ffffffffffffffffffffffffffffffff 373 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png +00000000000000000000000000000000 a73f3357719182f3d42463d1456a9bba ffffffffffffffffffffffffffffffff 371 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif +00000000000000000000000000000000 f533192353ad3767bf7b6a9e88d0da65 ffffffffffffffffffffffffffffffff 352 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif +00000000000000000000000000000000 6f30014eef28e40b1fc788abc95df863 ffffffffffffffffffffffffffffffff 360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif +00000000000000000000000000000000 2ff2f13ca8a9ffde41d80ea0bf9f99a5 ffffffffffffffffffffffffffffffff 352 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif +00000000000000000000000000000000 6bf1d40ea174d7527659d067ddb87388 ffffffffffffffffffffffffffffffff 330 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif +00000000000000000000000000000000 48b602c4d70bf3b059bafc34c9d3976a ffffffffffffffffffffffffffffffff 350 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif +00000000000000000000000000000000 e19356b00e44b1056400181320c9a351 ffffffffffffffffffffffffffffffff 373 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif +00000000000000000000000000000000 c2783cce01c95802f579b6b86ac53a97 ffffffffffffffffffffffffffffffff 362 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif +00000000000000000000000000000000 f8aac15c2a704790b02bfcb81f777b35 ffffffffffffffffffffffffffffffff 350 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif +00000000000000000000000000000000 422143215933366b6eb3b407f95713cd ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif +00000000000000000000000000000000 1b4151fb798684cdfcb970dabf63c0a9 ffffffffffffffffffffffffffffffff 378 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif +00000000000000000000000000000000 4cb20da2eb705893f80558dd9b0a6bb8 ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif +00000000000000000000000000000000 26f5df00bef4aa1a6ae3acb9903d800f ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif +00000000000000000000000000000000 feeed281cf8dd9409186bf64a03e1a5a ffffffffffffffffffffffffffffffff 363 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif +00000000000000000000000000000000 872ea49ff2efb9752b4f912c05f1b487 ffffffffffffffffffffffffffffffff 365 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif +00000000000000000000000000000000 b958fc99cdfdcf4fb0492b3f061bc6a4 ffffffffffffffffffffffffffffffff 373 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif +00000000000000000000000000000000 95f81ce1634a5ef4dfc605960e733317 ffffffffffffffffffffffffffffffff 347 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif +00000000000000000000000000000000 29fd38b01d5e8f0e6cc39d54f6741161 ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif +00000000000000000000000000000000 0697faf4123c0a104d8de0f3a4e8b051 ffffffffffffffffffffffffffffffff 346 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif +00000000000000000000000000000000 34b7bf2fb1935a5cfd6d27abb27bcdac ffffffffffffffffffffffffffffffff 325 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif +00000000000000000000000000000000 15020ce4297d9d309567f5624475d255 ffffffffffffffffffffffffffffffff 412 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png +00000000000000000000000000000000 6b5bee190ad1145ac57945b9c1865dd2 ffffffffffffffffffffffffffffffff 7054 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png +00000000000000000000000000000000 81b6fe291069f92697f68f1153a7ac11 ffffffffffffffffffffffffffffffff 5620 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png +00000000000000000000000000000000 de17b34e2855b1be9b56c67d787b0411 ffffffffffffffffffffffffffffffff 45335 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Result.png +00000000000000000000000000000000 4bf11767e40a065a1bb7bd37d637aec8 ffffffffffffffffffffffffffffffff 149242 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png +00000000000000000000000000000000 953cd0ac38c942533d6a82da0bcc887a ffffffffffffffffffffffffffffffff 65525 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png +00000000000000000000000000000000 68921772721fbc684827060c7e7a59dc ffffffffffffffffffffffffffffffff 6742 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Female.png +00000000000000000000000000000000 6389968d9296ea2ac2d6d10c9985dbaa ffffffffffffffffffffffffffffffff 6571 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Male.png +00000000000000000000000000000000 4db171bcfa78692b597c313365b0a9a8 ffffffffffffffffffffffffffffffff 344 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif +00000000000000000000000000000000 8026d7d9d038e0d79752898e1e6c7baa ffffffffffffffffffffffffffffffff 372 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif +00000000000000000000000000000000 5e796662897ea0bcf4426fd900afbcc3 ffffffffffffffffffffffffffffffff 301 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif +00000000000000000000000000000000 816e4441c929427fab343eb89bdd7a4b ffffffffffffffffffffffffffffffff 336 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif +00000000000000000000000000000000 4a59d243adccba187d779e6ff2f63a30 ffffffffffffffffffffffffffffffff 342 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif +00000000000000000000000000000000 80505ada1060fc93c5c54db0dcc0558e ffffffffffffffffffffffffffffffff 372 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif +00000000000000000000000000000000 7d2f18a42aa49bebcc3bef8c1f0b0fda ffffffffffffffffffffffffffffffff 370 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif +00000000000000000000000000000000 a8a7359bd27e74f2bd17930b1f514ac8 ffffffffffffffffffffffffffffffff 355 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif +00000000000000000000000000000000 a58694893b0e57a9a245893b9226e91b ffffffffffffffffffffffffffffffff 332 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif +00000000000000000000000000000000 bc21e51de77a4a9a86691781bac7280b ffffffffffffffffffffffffffffffff 8097 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png +00000000000000000000000000000000 07b2771a352697e2a0370c9187234c64 ffffffffffffffffffffffffffffffff 9620 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png +00000000000000000000000000000000 088ea2f3e8d791a49be0659646cb40d3 ffffffffffffffffffffffffffffffff 8169 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png +00000000000000000000000000000000 935d758f94159d5e3d5636f9de50c06a ffffffffffffffffffffffffffffffff 8211 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png +00000000000000000000000000000000 2fe9ae94e22e7ec9521b23b47e89b7e7 ffffffffffffffffffffffffffffffff 7016 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png +00000000000000000000000000000000 9d12b7a6642807b2e4a857e788b96c9e ffffffffffffffffffffffffffffffff 8901 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png +00000000000000000000000000000000 9ca12a07c0867ee1f0d55242beb279fa ffffffffffffffffffffffffffffffff 8880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png +00000000000000000000000000000000 c3a40f191c3665c71f74d2e1fa9d06cf ffffffffffffffffffffffffffffffff 6169 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png +00000000000000000000000000000000 75d087701f80c561ce20adf5bd25ba4f ffffffffffffffffffffffffffffffff 8676 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png +00000000000000000000000000000000 1967d8a36e94f4a3aa4c257494a4bf15 ffffffffffffffffffffffffffffffff 8272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png +00000000000000000000000000000000 d230287e8be57fd5580844cadb84fca3 ffffffffffffffffffffffffffffffff 8715 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png +00000000000000000000000000000000 7ed49bfccdbaab72a5619c94a1ddd4a8 ffffffffffffffffffffffffffffffff 9501 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png +00000000000000000000000000000000 bd2f4ebdaa887d7f2177c5ee3982dc2b ffffffffffffffffffffffffffffffff 9193 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png +00000000000000000000000000000000 ee8f479e61610856c477a29ddede7922 ffffffffffffffffffffffffffffffff 9786 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png +00000000000000000000000000000000 98025076e3b88fdfcf0b7b5dc5a40b8d ffffffffffffffffffffffffffffffff 8661 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png +00000000000000000000000000000000 c7507fae88fb6fb6675bba58f3781f9d ffffffffffffffffffffffffffffffff 9239 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png +00000000000000000000000000000000 188e82f44f1261907ceba3922476ef55 ffffffffffffffffffffffffffffffff 8493 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png +00000000000000000000000000000000 4d70f6f49c452f092b29826d954855c6 ffffffffffffffffffffffffffffffff 9747 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png +00000000000000000000000000000000 9b1fd48a56ba3a8f1a9454589cf7d6f6 ffffffffffffffffffffffffffffffff 9622 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png +00000000000000000000000000000000 c84175e6b9c4eae46dbb47f2a5c7861b ffffffffffffffffffffffffffffffff 9599 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png +00000000000000000000000000000000 39e51eb5964982be1910cf2b161e2abb ffffffffffffffffffffffffffffffff 9298 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png +00000000000000000000000000000000 da8f7fd40dc66c12aa0007be4d6f0b38 ffffffffffffffffffffffffffffffff 9813 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png +00000000000000000000000000000000 0d657e86b3eb3758af4b1fdff9808a8c ffffffffffffffffffffffffffffffff 8367 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png +00000000000000000000000000000000 1ac1c60b51f8472f5ee529623d5ec5df ffffffffffffffffffffffffffffffff 9487 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png +00000000000000000000000000000000 c356937d7be20e6965cccbf189bce2c0 ffffffffffffffffffffffffffffffff 7917 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png +00000000000000000000000000000000 134232bee0bc1dc33518ca9da130a949 ffffffffffffffffffffffffffffffff 9857 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png +00000000000000000000000000000000 f6a656882cf0f3872e0177c9eaead86d ffffffffffffffffffffffffffffffff 9759 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png +00000000000000000000000000000000 d8b685f76197cb3ac704de3aa0a02a70 ffffffffffffffffffffffffffffffff 9458 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png +00000000000000000000000000000000 2c12b7c129be979ffc61f21c8972841d ffffffffffffffffffffffffffffffff 9394 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png +00000000000000000000000000000000 1c7ebb535999e48f69d9b7e926d3c8a5 ffffffffffffffffffffffffffffffff 6207 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png +00000000000000000000000000000000 dfd90c7519df66fba278a6dc39cabebf ffffffffffffffffffffffffffffffff 1111 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png +00000000000000000000000000000000 23507d259ad92824fead41021d4498e3 ffffffffffffffffffffffffffffffff 379 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png +00000000000000000000000000000000 6ed3bdb7703ab5ee7531b9ecdad0f15d ffffffffffffffffffffffffffffffff 608 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png +00000000000000000000000000000000 fb6c6cbc80e87b7f6b6e76c2cebea3e2 ffffffffffffffffffffffffffffffff 1078 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png +00000000000000000000000000000000 5b4fcedf5eb74ad1f372ec0bc5719b43 ffffffffffffffffffffffffffffffff 1081 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png +000000004bd31f9d000000000000ac63 30d70e72f8157570e415512ab594d7a7 ffffffffffffffffffffffffffffffff 8721 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib +000000004bd31f990000000000006594 08af1002b9d6dba0c436a574b90039bf ffffffffffffffffffffffffffffffff 26004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff +000000004bd31f9900000000000001a4 8a076c8eba6b3d3857535ca7d025a983 ffffffffffffffffffffffffffffffff 420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif +000000004bd31f9900000000000001a6 0cd789bf976e6f156175e0c9743eeac2 ffffffffffffffffffffffffffffffff 422 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif +000000004bd31f9900000000000001a4 720744004e0904c2d6ea7c64fb02efb0 ffffffffffffffffffffffffffffffff 420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif +000000004bd31f9d0000000000000266 9c172013c60427627f38e3985b98614f ffffffffffffffffffffffffffffffff 614 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif +000000004bd31f9d0000000000000218 f6963d463f51eb1d92a024441ac1241f ffffffffffffffffffffffffffffffff 536 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif +00000000000000000000000000000000 76211e89b8e647cb084a295c9cb951d1 ffffffffffffffffffffffffffffffff 3201 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png +00000000000000000000000000000000 bfb3d36f8dfc9ae568dd3e9f047e2840 ffffffffffffffffffffffffffffffff 3209 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/on.png +00000000000000000000000000000000 0e4bb3849d352d422d1219f3037d0987 ffffffffffffffffffffffffffffffff 3192 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/off.png +000000004bfbe6d40000000000051155 2437e8403246f0000bbc9890a41a383f ffffffffffffffffffffffffffffffff 63524 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib +00000000000000000000000000000000 853437618b85835f21913e1111c43dcd ffffffffffffffffffffffffffffffff 5469 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png +00000000000000000000000000000000 b41a274512e2e0fe4adc91f9e479a79b ffffffffffffffffffffffffffffffff 5325 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png +00000000000000000000000000000000 bcb5b089630b10434e32608e0df15381 ffffffffffffffffffffffffffffffff 5870 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png +00000000000000000000000000000000 35353d87630dbcf5b5a57afa2d4f8c85 ffffffffffffffffffffffffffffffff 5241 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png +00000000000000000000000000000000 9a550cc959da1999a5c102ca60e17a26 ffffffffffffffffffffffffffffffff 5484 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png +00000000000000000000000000000000 79b85f0459e44d7a415b180225758389 ffffffffffffffffffffffffffffffff 5569 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png +00000000000000000000000000000000 c4a9506fcc30f8f13c5e138853a6d1b0 ffffffffffffffffffffffffffffffff 6912 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png +00000000000000000000000000000000 1795f8d2691ab0f8be4acdbafba8b3b6 ffffffffffffffffffffffffffffffff 5958 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png +00000000000000000000000000000000 75223c90d010226f5ac722300cc912b8 ffffffffffffffffffffffffffffffff 5195 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png +00000000000000000000000000000000 4c8c3bd3a76860c65903a5c867725b1b ffffffffffffffffffffffffffffffff 6217 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png +00000000000000000000000000000000 ab85cc26f4180a73510f2713822cf3c5 ffffffffffffffffffffffffffffffff 5696 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png +000000004c054881000000000002c560 4a4396ad7e203126c78c8e4c23c7f635 ffffffffffffffffffffffffffffffff 41519 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib +000000004cb77645000000000004e4d9 ff4d9937c76d44fccbcfc4082b7d23db ffffffffffffffffffffffffffffffff 56072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib +000000004cb728230000000000027e95 94c55ef6ae62a0346ad6e70071663bc2 ffffffffffffffffffffffffffffffff 17102 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib +000000004bd31f9e000000000002f800 454872913d5fd706e467caf1d8e1621c ffffffffffffffffffffffffffffffff 25342 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib +000000004bd31f970000000000002bd2 976aaa9f739a760295f3717d9a37c37d ffffffffffffffffffffffffffffffff 11218 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist +000000004bd31f980000000000002d8d 1430a7ad4f4d08b2a3b984f63fa90257 ffffffffffffffffffffffffffffffff 11661 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist +000000004cb7999100000000000000d8 6e377520c925fc825a878783dab24ee0 ffffffffffffffffffffffffffffffff 216 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings +000000004bd31f9d000000000003a721 d38572d57003b5ef0e386c73375ee2e4 ffffffffffffffffffffffffffffffff 239393 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist +00000000000000000000000000000000 26e7a9c30085995c3429b93a3c8a28cb ffffffffffffffffffffffffffffffff 946 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict +00000000000000000000000000000000 e73d30d7c680113b744e0c0baa3bb7ed ffffffffffffffffffffffffffffffff 8 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/PkgInfo +00000000000000000000000000000000 e73d30d7c680113b744e0c0baa3bb7ed ffffffffffffffffffffffffffffffff 4723 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist +000000004c91953b00000000000003bf 05c6e6b30cec1136d3e3d197fd57c327 ffffffffffffffffffffffffffffffff 1409392 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf 162ecdb19b5527e5465a7f8ed21b765c ffffffffffffffffffffffffffffffff 36544784 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf eefdc083377ad03e5ffa888be38b5354 ffffffffffffffffffffffffffffffff 55464 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth +000000004c91953b00000000000003bf 3bdf9aa40fe312ed51daae376c75e47e ffffffffffffffffffffffffffffffff 7265724 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth +ffffffffffffffffffffffffffffffff 5583cd71c90bb2395a12e4d5aaedde02 ffffffffffffffffffffffffffffffff 15592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o +ffffffffffffffffffffffffffffffff ee17d918409947e3bf0c80517b5ebbf4 ffffffffffffffffffffffffffffffff 12492 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o +162ecdb1db80539e465a7f8ed21b6b14 6b59b3ccdd21459b84707337f0d0cfba ffffffffffffffffffffffffffffffff 38944 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o +3bdf9aa44f36669651daae376c75f936 834afa7c20ef62da909fee1da6e64c09 ffffffffffffffffffffffffffffffff 28328 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o +0000000040efc04f00000000000002e2 8625accb149c496c273f39da11ec82e0 ffffffffffffffffffffffffffffffff 1409392 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch +0000000040efc04f00000000000002e2 7f62b0f5c0bee843dfc3c2d3bbbedc59 ffffffffffffffffffffffffffffffff 36548912 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch +0000000040efc04f00000000000002e2 75ac69dec00545b7e7ffbab987b5c7cc ffffffffffffffffffffffffffffffff 55464 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth +0000000040efc04f00000000000002e2 af1e78b70fec8259cd4647e5589560f3 ffffffffffffffffffffffffffffffff 7254688 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth +000000004bf95b95000000000007ba1b 76be6a1ad8e58a94329e3880997c1e3e ffffffffffffffffffffffffffffffff 102236 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfile.nib +7f62b0f5cb823791dfc3c2d3bbbefb3c 9bbafccb828b99dfe401637daac01f6d ffffffffffffffffffffffffffffffff 25924 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o +af1e78b704d05d8bcd4647e558954796 9abcbc6c0e988c333339bd8bf1173ab2 ffffffffffffffffffffffffffffffff 20044 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o +7f62b0f5cb929a9adfc3c2d3bbbebc13 37922f5bd9010dca3337b4f96c841627 ffffffffffffffffffffffffffffffff 364 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o +af1e78b704c0f080cd4647e5589500b9 ed1561cc948810c454f7a549b2d71bb6 ffffffffffffffffffffffffffffffff 392 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap new file mode 100644 index 0000000..8ea20a0 Binary files /dev/null and b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap differ diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome~.dep b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome~.dep new file mode 100644 index 0000000..4f5603e --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome~.dep @@ -0,0 +1,569 @@ +bb406206c60c7aba9edb31b047a2d034 2e14c84c0b33f07c7b0ae820787b1659 ffffffffffffffffffffffffffffffff 102 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app +000000004bd31f9300000000000000ee d7bca44e02fbecf124381541d8914315 ffffffffffffffffffffffffffffffff 204 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework +000000004bd31f9c00000000000000ee b4f1a27bcc686507c3e912396fef34c3 ffffffffffffffffffffffffffffffff 204 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework +000000004bf983270000000000000110 a42637acffec1ce290aa27c82f29466d ffffffffffffffffffffffffffffffff 204 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework +00000000000000000000000000000000 741868bc6b8e91a3f1a6e2e8e8b88244 ffffffffffffffffffffffffffffffff 7683 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml +000000004c05464900000000000b29d3 5e96fa5e665f4c1bd77ad9f979f2ffd1 ffffffffffffffffffffffffffffffff 155671 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib +000000004bd31f9d000000000000acc8 95aad70961ec918b1b9dd72bd5364a28 ffffffffffffffffffffffffffffffff 6387 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib +00000000000000000000000000000000 d4cf67f47787bf21ea2919b0b1c5cda8 ffffffffffffffffffffffffffffffff 11637 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png +000000004c054649000000000003b733 8d2d76e1efb524c96ced1eb92bf90383 ffffffffffffffffffffffffffffffff 32828 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib +00000000000000000000000000000000 3764e24dc2b149337eb6b94ae9ac4921 ffffffffffffffffffffffffffffffff 1182 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem +000000004bd31f9d000000000000ae8b fc5d3cfdc3e214de502dc785d44f69d8 ffffffffffffffffffffffffffffffff 6064 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib +000000004bd31f9d000000000000c610 4ccff96b311a32381fee2a8639520288 ffffffffffffffffffffffffffffffff 7649 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib +000000004bd31f9d000000000005a57a f78c3e592828ac9889f22b4e2a7138a0 ffffffffffffffffffffffffffffffff 72765 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib +000000004bd31f9e000000000000b772 d341eb40caf43ef99aa2e636f5afd692 ffffffffffffffffffffffffffffffff 6690 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib +000000004bd31f9d000000000000b753 9fb5353111c1a4aab693a50411f89822 ffffffffffffffffffffffffffffffff 6673 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib +000000004bd31f9d000000000000d34a 70ae5ae13a8f000a6cfbbdf8ed7e616a ffffffffffffffffffffffffffffffff 8751 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib +000000004bcc9972000000000000b0cc 265ef1fd683e47eeb6eebd7dfd53f9fe ffffffffffffffffffffffffffffffff 5881 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib +000000004bd31f9d0000000000008c3b 093bb5137912a9c0d03cd57c6c5c0c33 ffffffffffffffffffffffffffffffff 4068 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib +000000004bd31f9e0000000000008c4d c3d8950b29fa65236eaaec1647929e5a ffffffffffffffffffffffffffffffff 4074 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib +000000004bd31f9e000000000000b75d 04d5876ef50717b1ad5951f8340dab59 ffffffffffffffffffffffffffffffff 6666 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib +000000004cbb41b800000000000474f0 abbe623011e86459fd357aa90004c75d ffffffffffffffffffffffffffffffff 51715 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib +000000004bd31f9e0000000000008c58 bec3bf189557331745669612c60b52df ffffffffffffffffffffffffffffffff 4117 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib +000000004bd31f9d0000000000008c56 7fcb698c0fafb15ce4bdd969a700b8de ffffffffffffffffffffffffffffffff 4127 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib +000000004bd31f9d0000000000008c28 3fc20e9fe05d86caefa7307e1216c319 ffffffffffffffffffffffffffffffff 4034 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib +000000004bd31f9d000000000000b02b 618fe7350da11714b0ce04d46334f92a ffffffffffffffffffffffffffffffff 6685 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib +000000004bd31f9d000000000000c17e b67786b2035a064a17dc897521636f2a ffffffffffffffffffffffffffffffff 7267 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib +000000004bd31f9d000000000000c188 881460938d903664444a2669facc54fa ffffffffffffffffffffffffffffffff 7272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib +000000004bd31f9d000000000000c16a 44ce30150df391416a86639d9bf2cf56 ffffffffffffffffffffffffffffffff 7247 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib +000000004bd31f9d000000000000b74a 07283d0e40790c9f3167c7866b1c8b82 ffffffffffffffffffffffffffffffff 6673 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib +000000004bd31f9d0000000000008c5a 16e56657b2711d276cb0efc9ef11f52a ffffffffffffffffffffffffffffffff 4163 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib +000000004bd31f9d000000000000bed6 780a4bc433f1378087e879892ab5826c ffffffffffffffffffffffffffffffff 7710 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib +000000004bd31f9d000000000000be6c 4be6d192f01baec7da3452097cd8efa6 ffffffffffffffffffffffffffffffff 7585 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib +000000004bd31f9e0000000000008dc7 48213a990c6cc45bdd3d75bdeb456ea7 ffffffffffffffffffffffffffffffff 4111 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib +000000004bd31f9e000000000000b70d 1792439d20d69de272d2b4cdc2bdffaf ffffffffffffffffffffffffffffffff 6729 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib +000000004bd31f9d000000000000b7bb fab73f1a1b14f4b0a49dfc0f0cfa9dc4 ffffffffffffffffffffffffffffffff 7221 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib +000000004bd31f9d000000000000bb84 817dc723a402934726d980cdfa733c0f ffffffffffffffffffffffffffffffff 7370 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib +000000004bd31f9e000000000000bdfd 6891ccd0234dcdf27a8bbab966ee1b84 ffffffffffffffffffffffffffffffff 7581 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib +000000004bd31f9d000000000002fb48 f61e725ef53fc0899b3445b077398e13 ffffffffffffffffffffffffffffffff 25228 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib +000000004bd31f9e000000000000dcc5 6824a6e17f810c05dfaa7196c316a53a ffffffffffffffffffffffffffffffff 8682 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib +000000004bd31f9d000000000000cde8 feeb9036931f749f2b9086b0ec462ea3 ffffffffffffffffffffffffffffffff 7839 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib +000000004bd31f9d000000000000bdab fe0f145dc704602ee2412dda8d67856d ffffffffffffffffffffffffffffffff 6822 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib +000000004bd31f9e0000000000025d5e e6ba538bd9388c07df960eb3bf6225bb ffffffffffffffffffffffffffffffff 18778 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib +000000004c054649000000000000229c ab0e118f3d5af5a41f9f918450f33c17 ffffffffffffffffffffffffffffffff 8860 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist +000000004cbb5cef0000000000006135 e2f58fb92593889397b5e400f2538388 ffffffffffffffffffffffffffffffff 24885 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist +00000000000000000000000000000000 e8c8bad9dee712cda9f5bd7f81d1c494 ffffffffffffffffffffffffffffffff 12613 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png +00000000000000000000000000000000 3f1a65ea8f1d0c94bc5a74f9f7e507d6 ffffffffffffffffffffffffffffffff 112117 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png +00000000000000000000000000000000 3a1c92650c49f749987df3e6d7ae3ee4 ffffffffffffffffffffffffffffffff 1697 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png +00000000000000000000000000000000 301a1ce29d7125b752e7f8a4d6df2ced ffffffffffffffffffffffffffffffff 2888 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png +00000000000000000000000000000000 40f165436d36307ff6e9b218022385b6 ffffffffffffffffffffffffffffffff 5653 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png +000000004bd31f9e000000000006828a 83b93f684d68f8bc32b573eda010404e ffffffffffffffffffffffffffffffff 61951 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib +00000000000000000000000000000000 c570a7ecf76ac51462681050799dee8d ffffffffffffffffffffffffffffffff 1159 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif +00000000000000000000000000000000 1d6c85c7d268d20efe72aa2f9c052366 ffffffffffffffffffffffffffffffff 7534 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png +00000000000000000000000000000000 11893d0f0b5196f3ee22078ca5e3dc2f ffffffffffffffffffffffffffffffff 7502 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png +00000000000000000000000000000000 edd3bd4aa1b473f4cdbe49176cfd21f4 ffffffffffffffffffffffffffffffff 94283 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 +00000000000000000000000000000000 16e264d6426a5867bf5aaeb304309f3d ffffffffffffffffffffffffffffffff 8909 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png +000000004bd31f9e0000000000011618 4e9d46adedda8170b7ae1d386bd20467 ffffffffffffffffffffffffffffffff 11534 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib +000000004bd31f9d0000000000008ff2 b339ac4c27d08fc1af4b4e947a2c7bd6 ffffffffffffffffffffffffffffffff 10028 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib +000000004bd31f9d000000000000bfb8 05a6f641ebb2d8bb992eec0a7bc9a63b ffffffffffffffffffffffffffffffff 7847 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib +000000004bd31f9e00000000000044ba 8258ea8c40c7d855c5298de6af2b62f5 ffffffffffffffffffffffffffffffff 5238 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib +000000004bd31f9d00000000000088d0 d0364f84a014fbbbbb269fc8b2871ce0 ffffffffffffffffffffffffffffffff 6950 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib +000000004bd31f9d0000000000008839 f2a8079aaf18429ba12cc4aedbb8f2bc ffffffffffffffffffffffffffffffff 6810 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib +00000000000000000000000000000000 1fdbe4cd3a4776f43c8ee8705f3647e6 ffffffffffffffffffffffffffffffff 6006 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 +00000000000000000000000000000000 ba530f0f15d32f2fa1b8c05848d71680 ffffffffffffffffffffffffffffffff 7108 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png +00000000000000000000000000000000 db8e3ccbca8cd02a6745c4ab249c6d1a ffffffffffffffffffffffffffffffff 6451 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png +00000000000000000000000000000000 c0ce10821fd899eadbbba86c244fb47a ffffffffffffffffffffffffffffffff 6280 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png +00000000000000000000000000000000 939aa4712feee33839f864c561db71b5 ffffffffffffffffffffffffffffffff 9321 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png +00000000000000000000000000000000 f347a640b15ff044a6152582150558a2 ffffffffffffffffffffffffffffffff 4647 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png +00000000000000000000000000000000 b1306e43d44f3a47a18df780ba44f4e0 ffffffffffffffffffffffffffffffff 4884 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png +000000004bd31f9d0000000000011eb0 19028df4fca7770bab42f6702b0a6ef0 ffffffffffffffffffffffffffffffff 12616 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib +000000004bd31f9d000000000000cf51 1f423d7893156cce0a64b014aee726c7 ffffffffffffffffffffffffffffffff 10343 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib +000000004cbb58f30000000000010ee1 a1d0c7d4bee0925221c3dc4e5c1ff2be ffffffffffffffffffffffffffffffff 12046 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib +000000004bd31f9e000000000000a666 b4cade5266514f9ab28407a7ac568f38 ffffffffffffffffffffffffffffffff 8562 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib +000000004bd31f9d000000000000d1ec 2416e6f1d61a918cf3968f158a9c0390 ffffffffffffffffffffffffffffffff 7695 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib +000000004bd31f9d0000000000011f0b c6e9aca4ab855357497278f09d1143c6 ffffffffffffffffffffffffffffffff 11854 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib +000000004cbb0ad000000000000d3833 e7b48f78819e28e61d50d7e4a8b83ec4 ffffffffffffffffffffffffffffffff 208599 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib +00000000000000000000000000000000 e44705da8616fbfa4ca7887c08b892a0 ffffffffffffffffffffffffffffffff 427718 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns +00000000000000000000000000000000 395267cfa833daa6a9780fb96f440f55 ffffffffffffffffffffffffffffffff 160946 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns +00000000000000000000000000000000 5aa323f605828f04d4c9e3113947d503 ffffffffffffffffffffffffffffffff 489006 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns +00000000000000000000000000000000 fe8c7001e42de95311175e7057588569 ffffffffffffffffffffffffffffffff 356 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif +00000000000000000000000000000000 6d069b3329ae0a30a66546d45814c8b2 ffffffffffffffffffffffffffffffff 420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif +00000000000000000000000000000000 3444f3c69457e14913a9e88b15f820f8 ffffffffffffffffffffffffffffffff 354 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif +00000000000000000000000000000000 344c6c4605294c1c9e7d4b67bc7234fa ffffffffffffffffffffffffffffffff 937 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png +00000000000000000000000000000000 599e27fe6200e24c772582c96db7ffc1 ffffffffffffffffffffffffffffffff 913 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png +00000000000000000000000000000000 3149935acb9a48d4f584b9fe5c8dfb5e ffffffffffffffffffffffffffffffff 530 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png +00000000000000000000000000000000 298fe72c7bc0a092432d694d73cffefb ffffffffffffffffffffffffffffffff 821 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png +00000000000000000000000000000000 54d7a4d0f061967bf7346ecc166e791f ffffffffffffffffffffffffffffffff 369 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png +00000000000000000000000000000000 77ec4bf588397bc30b2c1aac4a34a9e6 ffffffffffffffffffffffffffffffff 585 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png +00000000000000000000000000000000 4e7b892eec37882693210e3d40160863 ffffffffffffffffffffffffffffffff 1090 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png +00000000000000000000000000000000 74f077f8cdce439b7314a41a4a39368f ffffffffffffffffffffffffffffffff 789 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png +00000000000000000000000000000000 0c1d98faad6746df49eaafc2728ff84e ffffffffffffffffffffffffffffffff 527 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png +00000000000000000000000000000000 fbd818c8828011b7bc036be1e92e19d5 ffffffffffffffffffffffffffffffff 593 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png +00000000000000000000000000000000 3f55a8634aea53b13cd28a8368da65c6 ffffffffffffffffffffffffffffffff 540 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png +00000000000000000000000000000000 c3e17d6ebfdfb36f50110363fbea7428 ffffffffffffffffffffffffffffffff 421 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png +00000000000000000000000000000000 a8d08e505708248780968144fe153c69 ffffffffffffffffffffffffffffffff 891 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png +00000000000000000000000000000000 a8ab75231e29c9f055720c454fd7b262 ffffffffffffffffffffffffffffffff 429 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png +00000000000000000000000000000000 0d7333331c97b2213255fa1d6cc40ea8 ffffffffffffffffffffffffffffffff 421 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png +00000000000000000000000000000000 cb08eacb771e3b0022a784ddb1016b9f ffffffffffffffffffffffffffffffff 708 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png +00000000000000000000000000000000 2f86dff7a8abb6bdffc08d546556c901 ffffffffffffffffffffffffffffffff 581 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png +00000000000000000000000000000000 b42fb9138c7aae6631120a31e207ab39 ffffffffffffffffffffffffffffffff 342 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png +00000000000000000000000000000000 73208182a8bfcf753dd2ae625f5c1cc5 ffffffffffffffffffffffffffffffff 373 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png +00000000000000000000000000000000 a73f3357719182f3d42463d1456a9bba ffffffffffffffffffffffffffffffff 371 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif +00000000000000000000000000000000 f533192353ad3767bf7b6a9e88d0da65 ffffffffffffffffffffffffffffffff 352 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif +00000000000000000000000000000000 6f30014eef28e40b1fc788abc95df863 ffffffffffffffffffffffffffffffff 360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif +00000000000000000000000000000000 2ff2f13ca8a9ffde41d80ea0bf9f99a5 ffffffffffffffffffffffffffffffff 352 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif +00000000000000000000000000000000 6bf1d40ea174d7527659d067ddb87388 ffffffffffffffffffffffffffffffff 330 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif +00000000000000000000000000000000 48b602c4d70bf3b059bafc34c9d3976a ffffffffffffffffffffffffffffffff 350 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif +00000000000000000000000000000000 e19356b00e44b1056400181320c9a351 ffffffffffffffffffffffffffffffff 373 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif +00000000000000000000000000000000 c2783cce01c95802f579b6b86ac53a97 ffffffffffffffffffffffffffffffff 362 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif +00000000000000000000000000000000 f8aac15c2a704790b02bfcb81f777b35 ffffffffffffffffffffffffffffffff 350 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif +00000000000000000000000000000000 422143215933366b6eb3b407f95713cd ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif +00000000000000000000000000000000 1b4151fb798684cdfcb970dabf63c0a9 ffffffffffffffffffffffffffffffff 378 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif +00000000000000000000000000000000 4cb20da2eb705893f80558dd9b0a6bb8 ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif +00000000000000000000000000000000 26f5df00bef4aa1a6ae3acb9903d800f ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif +00000000000000000000000000000000 feeed281cf8dd9409186bf64a03e1a5a ffffffffffffffffffffffffffffffff 363 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif +00000000000000000000000000000000 872ea49ff2efb9752b4f912c05f1b487 ffffffffffffffffffffffffffffffff 365 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif +00000000000000000000000000000000 b958fc99cdfdcf4fb0492b3f061bc6a4 ffffffffffffffffffffffffffffffff 373 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif +00000000000000000000000000000000 95f81ce1634a5ef4dfc605960e733317 ffffffffffffffffffffffffffffffff 347 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif +00000000000000000000000000000000 29fd38b01d5e8f0e6cc39d54f6741161 ffffffffffffffffffffffffffffffff 1514 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif +00000000000000000000000000000000 0697faf4123c0a104d8de0f3a4e8b051 ffffffffffffffffffffffffffffffff 346 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif +00000000000000000000000000000000 34b7bf2fb1935a5cfd6d27abb27bcdac ffffffffffffffffffffffffffffffff 325 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif +00000000000000000000000000000000 15020ce4297d9d309567f5624475d255 ffffffffffffffffffffffffffffffff 412 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png +00000000000000000000000000000000 6b5bee190ad1145ac57945b9c1865dd2 ffffffffffffffffffffffffffffffff 7054 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png +00000000000000000000000000000000 81b6fe291069f92697f68f1153a7ac11 ffffffffffffffffffffffffffffffff 5620 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png +00000000000000000000000000000000 de17b34e2855b1be9b56c67d787b0411 ffffffffffffffffffffffffffffffff 45335 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Result.png +00000000000000000000000000000000 4bf11767e40a065a1bb7bd37d637aec8 ffffffffffffffffffffffffffffffff 149242 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png +00000000000000000000000000000000 953cd0ac38c942533d6a82da0bcc887a ffffffffffffffffffffffffffffffff 65525 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png +00000000000000000000000000000000 68921772721fbc684827060c7e7a59dc ffffffffffffffffffffffffffffffff 6742 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Female.png +00000000000000000000000000000000 6389968d9296ea2ac2d6d10c9985dbaa ffffffffffffffffffffffffffffffff 6571 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Male.png +00000000000000000000000000000000 4db171bcfa78692b597c313365b0a9a8 ffffffffffffffffffffffffffffffff 344 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif +00000000000000000000000000000000 8026d7d9d038e0d79752898e1e6c7baa ffffffffffffffffffffffffffffffff 372 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif +00000000000000000000000000000000 5e796662897ea0bcf4426fd900afbcc3 ffffffffffffffffffffffffffffffff 301 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif +00000000000000000000000000000000 816e4441c929427fab343eb89bdd7a4b ffffffffffffffffffffffffffffffff 336 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif +00000000000000000000000000000000 4a59d243adccba187d779e6ff2f63a30 ffffffffffffffffffffffffffffffff 342 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif +00000000000000000000000000000000 80505ada1060fc93c5c54db0dcc0558e ffffffffffffffffffffffffffffffff 372 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif +00000000000000000000000000000000 7d2f18a42aa49bebcc3bef8c1f0b0fda ffffffffffffffffffffffffffffffff 370 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif +00000000000000000000000000000000 a8a7359bd27e74f2bd17930b1f514ac8 ffffffffffffffffffffffffffffffff 355 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif +00000000000000000000000000000000 a58694893b0e57a9a245893b9226e91b ffffffffffffffffffffffffffffffff 332 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif +00000000000000000000000000000000 bc21e51de77a4a9a86691781bac7280b ffffffffffffffffffffffffffffffff 8097 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png +00000000000000000000000000000000 07b2771a352697e2a0370c9187234c64 ffffffffffffffffffffffffffffffff 9620 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png +00000000000000000000000000000000 088ea2f3e8d791a49be0659646cb40d3 ffffffffffffffffffffffffffffffff 8169 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png +00000000000000000000000000000000 935d758f94159d5e3d5636f9de50c06a ffffffffffffffffffffffffffffffff 8211 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png +00000000000000000000000000000000 2fe9ae94e22e7ec9521b23b47e89b7e7 ffffffffffffffffffffffffffffffff 7016 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png +00000000000000000000000000000000 9d12b7a6642807b2e4a857e788b96c9e ffffffffffffffffffffffffffffffff 8901 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png +00000000000000000000000000000000 9ca12a07c0867ee1f0d55242beb279fa ffffffffffffffffffffffffffffffff 8880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png +00000000000000000000000000000000 c3a40f191c3665c71f74d2e1fa9d06cf ffffffffffffffffffffffffffffffff 6169 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png +00000000000000000000000000000000 75d087701f80c561ce20adf5bd25ba4f ffffffffffffffffffffffffffffffff 8676 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png +00000000000000000000000000000000 1967d8a36e94f4a3aa4c257494a4bf15 ffffffffffffffffffffffffffffffff 8272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png +00000000000000000000000000000000 d230287e8be57fd5580844cadb84fca3 ffffffffffffffffffffffffffffffff 8715 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png +00000000000000000000000000000000 7ed49bfccdbaab72a5619c94a1ddd4a8 ffffffffffffffffffffffffffffffff 9501 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png +00000000000000000000000000000000 bd2f4ebdaa887d7f2177c5ee3982dc2b ffffffffffffffffffffffffffffffff 9193 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png +00000000000000000000000000000000 ee8f479e61610856c477a29ddede7922 ffffffffffffffffffffffffffffffff 9786 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png +00000000000000000000000000000000 98025076e3b88fdfcf0b7b5dc5a40b8d ffffffffffffffffffffffffffffffff 8661 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png +00000000000000000000000000000000 c7507fae88fb6fb6675bba58f3781f9d ffffffffffffffffffffffffffffffff 9239 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png +00000000000000000000000000000000 188e82f44f1261907ceba3922476ef55 ffffffffffffffffffffffffffffffff 8493 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png +00000000000000000000000000000000 4d70f6f49c452f092b29826d954855c6 ffffffffffffffffffffffffffffffff 9747 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png +00000000000000000000000000000000 9b1fd48a56ba3a8f1a9454589cf7d6f6 ffffffffffffffffffffffffffffffff 9622 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png +00000000000000000000000000000000 c84175e6b9c4eae46dbb47f2a5c7861b ffffffffffffffffffffffffffffffff 9599 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png +00000000000000000000000000000000 39e51eb5964982be1910cf2b161e2abb ffffffffffffffffffffffffffffffff 9298 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png +00000000000000000000000000000000 da8f7fd40dc66c12aa0007be4d6f0b38 ffffffffffffffffffffffffffffffff 9813 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png +00000000000000000000000000000000 0d657e86b3eb3758af4b1fdff9808a8c ffffffffffffffffffffffffffffffff 8367 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png +00000000000000000000000000000000 1ac1c60b51f8472f5ee529623d5ec5df ffffffffffffffffffffffffffffffff 9487 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png +00000000000000000000000000000000 c356937d7be20e6965cccbf189bce2c0 ffffffffffffffffffffffffffffffff 7917 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png +00000000000000000000000000000000 134232bee0bc1dc33518ca9da130a949 ffffffffffffffffffffffffffffffff 9857 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png +00000000000000000000000000000000 f6a656882cf0f3872e0177c9eaead86d ffffffffffffffffffffffffffffffff 9759 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png +00000000000000000000000000000000 d8b685f76197cb3ac704de3aa0a02a70 ffffffffffffffffffffffffffffffff 9458 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png +00000000000000000000000000000000 2c12b7c129be979ffc61f21c8972841d ffffffffffffffffffffffffffffffff 9394 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png +00000000000000000000000000000000 1c7ebb535999e48f69d9b7e926d3c8a5 ffffffffffffffffffffffffffffffff 6207 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png +00000000000000000000000000000000 dfd90c7519df66fba278a6dc39cabebf ffffffffffffffffffffffffffffffff 1111 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png +00000000000000000000000000000000 23507d259ad92824fead41021d4498e3 ffffffffffffffffffffffffffffffff 379 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png +00000000000000000000000000000000 6ed3bdb7703ab5ee7531b9ecdad0f15d ffffffffffffffffffffffffffffffff 608 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png +00000000000000000000000000000000 fb6c6cbc80e87b7f6b6e76c2cebea3e2 ffffffffffffffffffffffffffffffff 1078 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png +00000000000000000000000000000000 5b4fcedf5eb74ad1f372ec0bc5719b43 ffffffffffffffffffffffffffffffff 1081 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png +000000004bd31f9d000000000000ac63 30d70e72f8157570e415512ab594d7a7 ffffffffffffffffffffffffffffffff 8721 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib +000000004bd31f990000000000006594 08af1002b9d6dba0c436a574b90039bf ffffffffffffffffffffffffffffffff 26004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff +000000004bd31f9900000000000001a4 8a076c8eba6b3d3857535ca7d025a983 ffffffffffffffffffffffffffffffff 420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif +000000004bd31f9900000000000001a6 0cd789bf976e6f156175e0c9743eeac2 ffffffffffffffffffffffffffffffff 422 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif +000000004bd31f9900000000000001a4 720744004e0904c2d6ea7c64fb02efb0 ffffffffffffffffffffffffffffffff 420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif +000000004bd31f9d0000000000000266 9c172013c60427627f38e3985b98614f ffffffffffffffffffffffffffffffff 614 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif +000000004bd31f9d0000000000000218 f6963d463f51eb1d92a024441ac1241f ffffffffffffffffffffffffffffffff 536 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif +00000000000000000000000000000000 76211e89b8e647cb084a295c9cb951d1 ffffffffffffffffffffffffffffffff 3201 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png +00000000000000000000000000000000 bfb3d36f8dfc9ae568dd3e9f047e2840 ffffffffffffffffffffffffffffffff 3209 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/on.png +00000000000000000000000000000000 0e4bb3849d352d422d1219f3037d0987 ffffffffffffffffffffffffffffffff 3192 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/off.png +000000004bfbe6d40000000000051155 2437e8403246f0000bbc9890a41a383f ffffffffffffffffffffffffffffffff 63524 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib +00000000000000000000000000000000 853437618b85835f21913e1111c43dcd ffffffffffffffffffffffffffffffff 5469 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png +00000000000000000000000000000000 b41a274512e2e0fe4adc91f9e479a79b ffffffffffffffffffffffffffffffff 5325 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png +00000000000000000000000000000000 bcb5b089630b10434e32608e0df15381 ffffffffffffffffffffffffffffffff 5870 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png +00000000000000000000000000000000 35353d87630dbcf5b5a57afa2d4f8c85 ffffffffffffffffffffffffffffffff 5241 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png +00000000000000000000000000000000 9a550cc959da1999a5c102ca60e17a26 ffffffffffffffffffffffffffffffff 5484 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png +00000000000000000000000000000000 79b85f0459e44d7a415b180225758389 ffffffffffffffffffffffffffffffff 5569 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png +00000000000000000000000000000000 c4a9506fcc30f8f13c5e138853a6d1b0 ffffffffffffffffffffffffffffffff 6912 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png +00000000000000000000000000000000 1795f8d2691ab0f8be4acdbafba8b3b6 ffffffffffffffffffffffffffffffff 5958 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png +00000000000000000000000000000000 75223c90d010226f5ac722300cc912b8 ffffffffffffffffffffffffffffffff 5195 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png +00000000000000000000000000000000 4c8c3bd3a76860c65903a5c867725b1b ffffffffffffffffffffffffffffffff 6217 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png +00000000000000000000000000000000 ab85cc26f4180a73510f2713822cf3c5 ffffffffffffffffffffffffffffffff 5696 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png +000000004c054881000000000002c560 4a4396ad7e203126c78c8e4c23c7f635 ffffffffffffffffffffffffffffffff 41519 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib +000000004cb77645000000000004e4d9 ff4d9937c76d44fccbcfc4082b7d23db ffffffffffffffffffffffffffffffff 56072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib +000000004cb728230000000000027e95 94c55ef6ae62a0346ad6e70071663bc2 ffffffffffffffffffffffffffffffff 17102 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib +000000004bd31f9e000000000002f800 454872913d5fd706e467caf1d8e1621c ffffffffffffffffffffffffffffffff 25342 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib +000000004bd31f970000000000002bd2 976aaa9f739a760295f3717d9a37c37d ffffffffffffffffffffffffffffffff 11218 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist +000000004bd31f980000000000002d8d 1430a7ad4f4d08b2a3b984f63fa90257 ffffffffffffffffffffffffffffffff 11661 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist +000000004cb7999100000000000000d8 6e377520c925fc825a878783dab24ee0 ffffffffffffffffffffffffffffffff 216 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings +000000004bd31f9d000000000003a721 d38572d57003b5ef0e386c73375ee2e4 ffffffffffffffffffffffffffffffff 239393 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist +00000000000000000000000000000000 26e7a9c30085995c3429b93a3c8a28cb ffffffffffffffffffffffffffffffff 946 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict +00000000000000000000000000000000 e73d30d7c680113b744e0c0baa3bb7ed ffffffffffffffffffffffffffffffff 8 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/PkgInfo +00000000000000000000000000000000 e73d30d7c680113b744e0c0baa3bb7ed ffffffffffffffffffffffffffffffff 4717 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist +00000000000000000000000000000000 80a25aa8af607a7373519cb29c75b59a ffffffffffffffffffffffffffffffff 102 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM +1a32c6b82b9747135dcc9a24a552be24 b6f8a5b9f18ddef4823c3c1d2157354b ffffffffffffffffffffffffffffffff 3556660 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +581f010fcd09a2d9de1566c5f4ab2df6 2a18ed780c72977a6cb6fc025721caf7 ffffffffffffffffffffffffffffffff 1828148 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome +1db570a09e8755adb8daaa1577c5445c 75805a6f746b271d57b5aaf6711d1d79 ffffffffffffffffffffffffffffffff 1722468 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome +a054ae3e93eece272c2f8570f1116964 d2fd8ec4a05afb94c29bf33fd9228440 ffffffffffffffffffffffffffffffff 1116 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o +e30d355a7b94208f4d07e230059314b7 5fc577c28aaa0f58e4ee12b15a18d305 ffffffffffffffffffffffffffffffff 980 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o +a6696dd40a6569c3381b734a970b0c11 ec03fc350aa80e345dd6c59540c6a0d1 ffffffffffffffffffffffffffffffff 9340 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +9bc9f87bb80d7bd0ca52f65d589ff04b e151286df1c50c05e4c93cd254125caa ffffffffffffffffffffffffffffffff 7176 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +a6696dd446ca1c9c381b734a970b781c 6145bc7cf64448d1af6ceb1415947951 ffffffffffffffffffffffffffffffff 3928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +9bc9f87bf4a20e8fca52f65d589f8446 b82e7278b555a5dc0b3d339856fabd7f ffffffffffffffffffffffffffffffff 3220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +a6696dd44ddff0f8381b734a970b6669 04c46077c14b0b24298244575e3e1b07 ffffffffffffffffffffffffffffffff 26404 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +9bc9f87bffb7e2ebca52f65d589f9a33 7431f5fe8bad89e7802376a2f39519f8 ffffffffffffffffffffffffffffffff 21272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +a6696dd40a6569cb381b734a970b0973 4432598772df25e52f2243390ef7a381 ffffffffffffffffffffffffffffffff 13684 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +9bc9f87bb80d7bd8ca52f65d589ff529 0cb4ba668e593c290d3f8621f904460b ffffffffffffffffffffffffffffffff 12236 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +a6696dd40a656881381b734a970b5905 9b8b6beaedc8cf90cd4ecd8e82c8860c ffffffffffffffffffffffffffffffff 9732 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +9bc9f87bb80d7a92ca52f65d589fa55f 10ac6094a8b86428a5a4d52e8c3f21af ffffffffffffffffffffffffffffffff 8052 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +a6696dd44ddff1b7381b734a970b5beb c1a61f62bf347f479068fdd7809b96b5 ffffffffffffffffffffffffffffffff 11772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +9bc9f87bffb7e3a4ca52f65d589fa7b1 97b00cc383ea8ca30094a95544850372 ffffffffffffffffffffffffffffffff 10136 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +a6696dd44ddff1b0381b734a970b20c7 a83ceec0747f7a4d9c5eafa1e6b11500 ffffffffffffffffffffffffffffffff 18592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +9bc9f87bffb7e3a3ca52f65d589fdc9d 23a6290dcc2f6bf293ada66f5e24ce82 ffffffffffffffffffffffffffffffff 16308 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +a6696dd44ddff1b4381b734a970b3092 5d082a976a9221f850c16c28b1ad480c ffffffffffffffffffffffffffffffff 27380 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +9bc9f87bffb7e3a7ca52f65d589fccc8 fd00144553d3adf40cf1b122bb3cc00c ffffffffffffffffffffffffffffffff 23928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +a6696dd44ddff1b3381b734a970b4caa dfd8c2c61b325e1f471a44f0e424f825 ffffffffffffffffffffffffffffffff 9832 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +9bc9f87bffb7e3a0ca52f65d589fb0f0 0b73e632967f494d00c36df50c599339 ffffffffffffffffffffffffffffffff 8392 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +a6696dd446ca1c91381b734a970b7999 a9c81b92c6afcef2f8ce71f7ca9c2a3b ffffffffffffffffffffffffffffffff 11276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +9bc9f87bf4a20e82ca52f65d589f85c3 ecd4b794f9d15528d04f55690efb021f ffffffffffffffffffffffffffffffff 11740 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +a6696dd40a6569ca381b734a970bbf29 a6591c8fe660ae10f1725adb4eb1d4e4 ffffffffffffffffffffffffffffffff 36592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +9bc9f87bb80d7bd9ca52f65d589f4373 f57f14b5916e7e11082d6e15ff3d291e ffffffffffffffffffffffffffffffff 35736 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +a6696dd44ddff1b8381b734a970b65f5 ef6e65e9f1f74d31f5ad1e980d5f58dc ffffffffffffffffffffffffffffffff 13348 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +9bc9f87bffb7e3abca52f65d589f99af c23bd15f99ad1ea6b92fec4f009d9ec5 ffffffffffffffffffffffffffffffff 10424 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +a6696dd40a656881381b734a970b756b e57f2023336a6edb3dc28c6d43e17e81 ffffffffffffffffffffffffffffffff 1396 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +9bc9f87bb80d7a92ca52f65d589f8931 49d85bf18ab929417d7d050bb674afb4 ffffffffffffffffffffffffffffffff 1260 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +a6696dd44ddff1be381b734a970b693f 0cd8f19871e679375087e9c9374f9da5 ffffffffffffffffffffffffffffffff 8564 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +9bc9f87bffb7e3adca52f65d589f9565 44aacbe57c23518a48089920158a87bb ffffffffffffffffffffffffffffffff 6908 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +a6696dd40a65688b381b734a970b12ab d40c537b96c222c2e5a94ba9e80904c9 ffffffffffffffffffffffffffffffff 18924 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +9bc9f87bb80d7a98ca52f65d589feef1 db84689d3c2842c814e552d36bfd3103 ffffffffffffffffffffffffffffffff 15488 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +a6696dd40a6569c3381b734a970b1849 bec8a27db8173c755ff94c5f9462de30 ffffffffffffffffffffffffffffffff 3260 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +9bc9f87bb80d7bd0ca52f65d589fe413 0234299016adebf9d48f9cc84c5d6e39 ffffffffffffffffffffffffffffffff 2776 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +a6696dd40a6569ca381b734a970b6b49 925ca72d6eebba35d8135156fee0adf6 ffffffffffffffffffffffffffffffff 14552 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +9bc9f87bb80d7bd9ca52f65d589f9713 7bdaa2092b9d1f11c6d6e090425280cd ffffffffffffffffffffffffffffffff 12340 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +a6696dd44ddff0ff381b734a970b2f10 b43a4539a3e8ce726ccfc8e8cb98d923 ffffffffffffffffffffffffffffffff 23384 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +9bc9f87bffb7e2ecca52f65d589fd34a a51ab26b44491c4db54fd145e3dfdca6 ffffffffffffffffffffffffffffffff 20432 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +a6696dd40a656888381b734a970b64a0 b7a5a1b7aceefe2be508581be87efc6a ffffffffffffffffffffffffffffffff 25144 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +9bc9f87bb80d7a9bca52f65d589f98fa 31cd07ea247b266944f9628d2a0bfb84 ffffffffffffffffffffffffffffffff 20984 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +a6696dd40a65688a381b734a970b51bd 6a8266995f6f509c7d3cbf50fc551091 ffffffffffffffffffffffffffffffff 2880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +9bc9f87bb80d7a99ca52f65d589fade7 ae3131f3c7602feefb91500506d63b75 ffffffffffffffffffffffffffffffff 2428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +a6696dd4017084e5381b734a970b534e 03b9cecf5cab3a5d3df4abede59eb061 ffffffffffffffffffffffffffffffff 19784 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +9bc9f87bb31896f6ca52f65d589faf14 8fbbdf4855c94dbaad5319039c714068 ffffffffffffffffffffffffffffffff 18300 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +a6696dd446ca1c9f381b734a970b5824 03123911d4f450bca01acfe36ea6bcf6 ffffffffffffffffffffffffffffffff 10428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +9bc9f87bf4a20e8cca52f65d589fa47e 0d982c6bc05dee8732255146f51db2f7 ffffffffffffffffffffffffffffffff 10780 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +a6696dd4017084ec381b734a970b0488 87e8ff825aeb0d9241353dba849e9d42 ffffffffffffffffffffffffffffffff 4764 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +9bc9f87bb31896ffca52f65d589ff8d2 31e4ff866679d933e86ac6c37bd760c3 ffffffffffffffffffffffffffffffff 4808 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +a6696dd44ddff0f5381b734a970b3bd1 c6d5828d253ec7ec608a3e2e49618864 ffffffffffffffffffffffffffffffff 20072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +9bc9f87bffb7e2e6ca52f65d589fc78b 7f4e49254fa7c9510d3a338f524fa36e ffffffffffffffffffffffffffffffff 19324 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +a6696dd40a6569c1381b734a970b4eff f7b238a46706275fea1441bb4601e7fc ffffffffffffffffffffffffffffffff 20584 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +9bc9f87bb80d7bd2ca52f65d589fb2a5 6b34493a1c4339cde2888884e819f9ed ffffffffffffffffffffffffffffffff 19116 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +a6696dd44ddff1be381b734a970b7440 85c5ef1563e5f0515e067eddef643dfe ffffffffffffffffffffffffffffffff 19604 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +9bc9f87bffb7e3adca52f65d589f881a a693e13548754c048ccf1e5e28f910a2 ffffffffffffffffffffffffffffffff 16700 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +a6696dd40a6569c4381b734a970b5925 f4d72666e2e5d477e076d899430752db ffffffffffffffffffffffffffffffff 23548 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +9bc9f87bb80d7bd7ca52f65d589fa57f 858e34fa4eb44912ba1ec1246fd994ac ffffffffffffffffffffffffffffffff 25316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +a6696dd40a65688c381b734a970b3db9 5e71806ec215dbde2d397b1313f15511 ffffffffffffffffffffffffffffffff 30216 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +9bc9f87bb80d7a9fca52f65d589fc1e3 9847745f15f4d4e887569788b5e8ce4b ffffffffffffffffffffffffffffffff 26508 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +a6696dd446ca1dd7381b734a970b5b5a 56344c650f4c3a27418dae867fa7c9d1 ffffffffffffffffffffffffffffffff 25084 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +9bc9f87bf4a20fc4ca52f65d589fa700 485ac472ddda942f97c409acfe49f983 ffffffffffffffffffffffffffffffff 21072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +a6696dd446ca1c96381b734a970b68f4 a427bf35ab268a97fec0be8fa4c2e30f ffffffffffffffffffffffffffffffff 33208 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +9bc9f87bf4a20e85ca52f65d589f94ae 5a396ec7986a7081a40e30ebb7ec79b3 ffffffffffffffffffffffffffffffff 31616 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +a054ae3ed83e8f332c2f8570f1112c9a 2a00b5839bfbba85991a239740c59002 ffffffffffffffffffffffffffffffff 125768 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +e30d355a3044619b4d07e23005935149 0fd36172f676c5eaa4292de5a274dfab ffffffffffffffffffffffffffffffff 95428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +a054ae3e93c582c22c2f8570f1113962 30ba69068aa1e6dbe46173bd51ac3283 ffffffffffffffffffffffffffffffff 7316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +e30d355a7bbf6c6a4d07e230059344b1 84826dca1c4cc24b7e25cdb230a296dc ffffffffffffffffffffffffffffffff 6152 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +a054ae3e9ca3dce92c2f8570f111725e 21940794a7fb4fa83db7ccffcab5497d ffffffffffffffffffffffffffffffff 89800 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +e30d355a74d932414d07e23005930f8d ae84925f51ee5a7619014c52eb00413b ffffffffffffffffffffffffffffffff 55340 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +a054ae3e93eef2972c2f8570f111287d 9ac59f7f4a244946e995eaff7be40f01 ffffffffffffffffffffffffffffffff 25168 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +e30d355a7b941c3f4d07e230059355ae 4eb361beb24236b26abae9b0957bdc32 ffffffffffffffffffffffffffffffff 19556 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +a054ae3ed31314842c2f8570f1114520 46f7eba9f6fcfb971346f5d10fe58520 ffffffffffffffffffffffffffffffff 13472 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +e30d355a3b69fa2c4d07e230059338f3 56c8bbc4af15b98339e35881737557b6 ffffffffffffffffffffffffffffffff 8356 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +a054ae3e90eb299e2c2f8570f1111a10 f405910dc7af896b113a7acac0be08f4 ffffffffffffffffffffffffffffffff 22220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +e30d355a7891c7364d07e230059367c3 12c9347b52457fbf92393d288b33a935 ffffffffffffffffffffffffffffffff 18932 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +a054ae3e93eecf8c2c2f8570f111301b b272a5fb20267191cf5af125181e031d ffffffffffffffffffffffffffffffff 11084 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +e30d355a7b9421244d07e23005934dc8 f5d5729f4cace53d5628a135c37f08a5 ffffffffffffffffffffffffffffffff 8512 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +a054ae3e9f2f23ad2c2f8570f111176b d67750cbaf3b2882a66ad9467c40d3cf ffffffffffffffffffffffffffffffff 41216 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +e30d355a7755cd054d07e23005936ab8 7bb47319cc5e5cf0fc0aebb02c09b15d ffffffffffffffffffffffffffffffff 32412 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +a054ae3e93eecf8f2c2f8570f11126fe ae101375172580c6ea97b94c11e95179 ffffffffffffffffffffffffffffffff 15772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +e30d355a7b9421274d07e23005935b2d 4f30d24e42b3dcad316743d186579922 ffffffffffffffffffffffffffffffff 13120 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +a054ae3e9c98b8ad2c2f8570f11116dc 5a7a0aa03d0d90f97685c8e9235eefb6 ffffffffffffffffffffffffffffffff 48708 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +e30d355a74e256054d07e23005936b0f 0977dcac9bbb8456da66a8c0a18657bd ffffffffffffffffffffffffffffffff 29952 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +a054ae3e942232682c2f8570f1113a89 e643bab5c84179136a84fc3249ddc218 ffffffffffffffffffffffffffffffff 7164 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +e30d355a7c58dcc04d07e2300593475a 9d495f2ece56e314d46908abf4d3ea0a ffffffffffffffffffffffffffffffff 5780 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +a054ae3edf446ef52c2f8570f110b432 d25e9562aa762e8e5e76a94737a83393 ffffffffffffffffffffffffffffffff 219760 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +e30d355a373e805d4d07e2300592c9e1 e529b21cb8877e87bf929683e2c99d5b ffffffffffffffffffffffffffffffff 156704 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +a054ae3e98d33e702c2f8570f11127ec 36743487aad36a603dfba04dfb53eb3f ffffffffffffffffffffffffffffffff 22180 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +e30d355a70a9d0d84d07e23005935a3f d902b98f8add11fa0ad729df86b02928 ffffffffffffffffffffffffffffffff 18264 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +a054ae3e93eecf8c2c2f8570f1113300 3031b2afdb32cb742f67a49db14eaab1 ffffffffffffffffffffffffffffffff 11012 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +e30d355a7b9421244d07e23005934ed3 a0f0bbea3ba28a8d73e0203c7970cda2 ffffffffffffffffffffffffffffffff 8616 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +a054ae3e93eecf8c2c2f8570f11133ee 9ad420715c808a48478a1cce9f77f92b ffffffffffffffffffffffffffffffff 11132 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +e30d355a7b9421244d07e23005934e3d c745c96cf2265b9ae3cbe85504108bf0 ffffffffffffffffffffffffffffffff 8708 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +a054ae3e94ad6b0f2c2f8570f11166ff e451f1f04a6940b234f938decc5cc2ee ffffffffffffffffffffffffffffffff 36420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +e30d355a7cd785a74d07e23005931b2c c2496e90307c84b65740291a692410b8 ffffffffffffffffffffffffffffffff 22172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +a054ae3e987db6282c2f8570f1111a2c 2c44fc7dcc394fdf715c2aa5d6a5a8a6 ffffffffffffffffffffffffffffffff 67360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +e30d355a700758804d07e230059367ff be71085ec46946c28f45ba674074481f ffffffffffffffffffffffffffffffff 47780 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +a054ae3e9bf073e02c2f8570f1116e1a 3629ac77575f1c0c4326af33eebf0217 ffffffffffffffffffffffffffffffff 41692 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +e30d355a738a9d484d07e230059313c9 bd5a3c4bd3515af83d2bb7519f98ce07 ffffffffffffffffffffffffffffffff 31480 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +a054ae3e93c4abe02c2f8570f1113c1a d15cc574aab12b334251354df5c4134b ffffffffffffffffffffffffffffffff 13664 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +e30d355a7bbe45484d07e230059341c9 bd403cf656468ef8a61d4cc2dca13878 ffffffffffffffffffffffffffffffff 11316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +a054ae3e9fbaed682c2f8570f1113164 8f299caef96f3f1600d958d0f41d6a27 ffffffffffffffffffffffffffffffff 14972 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +e30d355a77c003c04d07e23005934cb7 721802099ec4178bb7630de43089047b ffffffffffffffffffffffffffffffff 11488 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +a054ae3e93eecf8c2c2f8570f1113aad 2cef0d6cde3ba5a0e1de1eb141fd54f9 ffffffffffffffffffffffffffffffff 14788 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +e30d355a7b9421244d07e2300593477e 95020612fd653ea5bc3004aafe79d0df ffffffffffffffffffffffffffffffff 11316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +a054ae3e98f97a7a2c2f8570f1113e3b b39a185192490b44df6b7ae4f009b0e3 ffffffffffffffffffffffffffffffff 12548 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +e30d355a708394d24d07e230059343e8 9af06e9322d3251c274c04e5ebc770fb ffffffffffffffffffffffffffffffff 9908 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +a054ae3e93eecf8c2c2f8570f1113616 a694415f2f11ab115f8161e6b94c2388 ffffffffffffffffffffffffffffffff 8172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +e30d355a7b9421244d07e23005934bc5 639ff5f58695759d263ff5955c004c43 ffffffffffffffffffffffffffffffff 5900 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +a054ae3e93eecf8c2c2f8570f111365e 5bf31cbfbc03b26f13e87b40e7830e2f ffffffffffffffffffffffffffffffff 8028 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +e30d355a7b9421244d07e23005934b8d 2f5c290cb453b21c9054a7d9541eb926 ffffffffffffffffffffffffffffffff 5796 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +a054ae3e98f9788b2c2f8570f1113b10 6897a39bd4bf0e9a138507c51005204e ffffffffffffffffffffffffffffffff 14104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +e30d355a708396234d07e230059346c3 e7190323da0579f66495a3164202c778 ffffffffffffffffffffffffffffffff 10960 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +a054ae3e9f2f23ae2c2f8570f1112ff3 6281b952d0263121c2284bcbc23899aa ffffffffffffffffffffffffffffffff 14276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +e30d355a7755cd064d07e23005935220 f0d43a6b0737b393aced59b9457c12b7 ffffffffffffffffffffffffffffffff 10620 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +a054ae3e93eecf8c2c2f8570f1113662 0d1c295b0e7b02752d6d334d8476690c ffffffffffffffffffffffffffffffff 8152 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +e30d355a7b9421244d07e23005934bb1 b52205c55a6d2d293bc1522c7fa068bc ffffffffffffffffffffffffffffffff 5888 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +a054ae3e93eecf8c2c2f8570f1113672 4bcae67b4d12e32d329c4eb7883caa8a ffffffffffffffffffffffffffffffff 8104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +e30d355a7b9421244d07e23005934ba1 7d674b70f41304aeac8c12675e2afc26 ffffffffffffffffffffffffffffffff 5848 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +a054ae3e93eecf8c2c2f8570f1113656 a18de9368178ab44ef2c802c766317ea ffffffffffffffffffffffffffffffff 8004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +e30d355a7b9421244d07e23005934b85 1822cc09abb531dc13649f2035db0c7a ffffffffffffffffffffffffffffffff 5772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +a054ae3e93eecf8c2c2f8570f1113176 c3c4f983b55eb4df5179183c9ef58d2b ffffffffffffffffffffffffffffffff 9344 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +e30d355a7b9421244d07e23005934ca5 d4be4340bbc6029e55c1f17c123df5ad ffffffffffffffffffffffffffffffff 6892 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +a054ae3e948af0ee2c2f8570f1113a2c 43259fe91ce38a1871bd8b8739f2c7d3 ffffffffffffffffffffffffffffffff 14956 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +e30d355a7cf01e464d07e230059347ff 56fe3c6745475180f2d73ff6f4488f0a ffffffffffffffffffffffffffffffff 11504 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +a054ae3e948ae2c62c2f8570f111303a 9daed1c7fc65044f8a281f4bfdb98384 ffffffffffffffffffffffffffffffff 14880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +e30d355a7cf00c6e4d07e23005934de9 2442ba6d52a685b0d0e99164d31fe5e1 ffffffffffffffffffffffffffffffff 11448 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +a054ae3e93eecc732c2f8570f1113e88 102cf2fe319b7326dc6d83d9efd7cd92 ffffffffffffffffffffffffffffffff 15704 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +e30d355a7b9422db4d07e2300593435b fa2131d2a5b4da7290e5ead72af03f1a ffffffffffffffffffffffffffffffff 11536 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +a054ae3e98f97a792c2f8570f1113cae df9dd2cecaaea0c70757fbd732074327 ffffffffffffffffffffffffffffffff 15652 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +e30d355a708394d14d07e2300593417d 8a1f2dc2189553bb8e8854014dde1d1a ffffffffffffffffffffffffffffffff 11636 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +a054ae3e93eecf8c2c2f8570f111365e 841966327abb4afea7b3f941034474f9 ffffffffffffffffffffffffffffffff 8028 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +e30d355a7b9421244d07e23005934b8d e05e78d0c0f853a9be353b80e6e66125 ffffffffffffffffffffffffffffffff 5796 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +a054ae3e93c4a8d72c2f8570f1113d52 ae5ad66d43679e40026dd965aba0aafc ffffffffffffffffffffffffffffffff 22428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +e30d355a7bbe467f4d07e23005934081 b02e7f4f9de6a74ae352d7da6c191bcc ffffffffffffffffffffffffffffffff 18016 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +a054ae3e9486896a2c2f8570f1113e9a 6b0a5f4db9497a32e51170183793dd49 ffffffffffffffffffffffffffffffff 11612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +e30d355a7cfc67c24d07e23005934349 c344d1d6b07350e1ae894d710d0cd8df ffffffffffffffffffffffffffffffff 9104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +a054ae3e9486896a2c2f8570f1113da8 d729060ca3d6871990df96685f2bbdee ffffffffffffffffffffffffffffffff 11576 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +e30d355a7cfc67c24d07e2300593407b 3721e7cf3ea2b50b74c5b45447efeb5e ffffffffffffffffffffffffffffffff 9064 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +a054ae3e9486896a2c2f8570f1113da7 25f450afaf810796309d3ec29b00133f ffffffffffffffffffffffffffffffff 11612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +e30d355a7cfc67c24d07e23005934074 e2f33ac668db95f3bad48ceb0fb1f7f2 ffffffffffffffffffffffffffffffff 9104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +a054ae3e9486896a2c2f8570f1113d32 c9daf7d0e521ccb8f96d63b9fafa7188 ffffffffffffffffffffffffffffffff 10324 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +e30d355a7cfc67c24d07e230059340e1 aa08de5013003f873bbe5320074ba66d ffffffffffffffffffffffffffffffff 8048 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +a054ae3e9486896a2c2f8570f1113d1c 132cb3960c1db35f53ea41f680bd5d8d ffffffffffffffffffffffffffffffff 11728 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +e30d355a7cfc67c24d07e230059340cf 2db00e4772b7826847f865540e2c13ff ffffffffffffffffffffffffffffffff 9212 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +a054ae3e9486896a2c2f8570f1113db3 ff8ddb906c5a4b48e802bfd7c10b102a ffffffffffffffffffffffffffffffff 11548 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +e30d355a7cfc67c24d07e23005934060 f6db91acf1ea07bee667512d288fc475 ffffffffffffffffffffffffffffffff 9036 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +a054ae3e948689692c2f8570f1113dd3 38784dc5d5510c84ea2e435e929b0591 ffffffffffffffffffffffffffffffff 11544 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +e30d355a7cfc67c14d07e23005934000 82edd835f4910fd12e250b1be2e03a8b ffffffffffffffffffffffffffffffff 9032 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +a054ae3e98cfed482c2f8570f1115730 32a278b22a1088a43deb5b23f21e77b5 ffffffffffffffffffffffffffffffff 77264 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +e30d355a70b503e04d07e23005932ae3 d6c1500e32ec79bf0072a62feeb9c825 ffffffffffffffffffffffffffffffff 54460 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +a054ae3e93eecf8c2c2f8570f11132ca 645f0906ae1ad022eb2d912fb7e7aa78 ffffffffffffffffffffffffffffffff 11840 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +e30d355a7b9421244d07e23005934f19 54ba3e010e4f5393d5bcdfb569109776 ffffffffffffffffffffffffffffffff 9308 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +a054ae3e948689692c2f8570f1113f51 41fa757c45da8bd14e60aac47ef93501 ffffffffffffffffffffffffffffffff 12388 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +e30d355a7cfc67c14d07e23005934282 1362d921fa112c1a31b35486ae5cc553 ffffffffffffffffffffffffffffffff 9840 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +a054ae3e9f3ff8702c2f8570f110583d 2d28ab504fdcd6d876b569630b98b367 ffffffffffffffffffffffffffffffff 200580 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +e30d355a774516d84d07e230059225ee 36798e800574a718f731495a734d5a4f ffffffffffffffffffffffffffffffff 156020 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +a054ae3e98f89aeb2c2f8570f11114b7 df3642ce4ce9e374f87db71eb2ecd34b ffffffffffffffffffffffffffffffff 35240 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +e30d355a708274434d07e23005936964 8883ca850ba2fb6a7eaad6f512a4f061 ffffffffffffffffffffffffffffffff 21976 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +a054ae3e9486896a2c2f8570f1113f0c f4af8dd5982d50b51bd04841d85f9b36 ffffffffffffffffffffffffffffffff 12172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +e30d355a7cfc67c24d07e230059342df fe56b1516c444cf696d428ab6cc45c3d ffffffffffffffffffffffffffffffff 9648 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +a054ae3e93ca801c2c2f8570f1110ab3 623aac04933ea97fdc00b20389302cc4 ffffffffffffffffffffffffffffffff 15356 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +e30d355a7bb06eb44d07e23005937760 4a12990924bec923485c79f8f9f9397d ffffffffffffffffffffffffffffffff 10164 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +a054ae3e9faa63a22c2f8570f1111eef 36d943ae6f559bca93a20a41823e12b7 ffffffffffffffffffffffffffffffff 32880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +e30d355a77d08d0a4d07e2300593633c b24f09d1fe1e3621323dc71d69ff9d42 ffffffffffffffffffffffffffffffff 19412 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +a054ae3edbae3eaa2c2f8570f1112466 01ebc8596b89219655571bb2e9ef8a11 ffffffffffffffffffffffffffffffff 28648 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +e30d355a33d4d0024d07e230059359b5 1f581992b89ff7921d2abafb9d1fb273 ffffffffffffffffffffffffffffffff 20680 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +a054ae3e9f917ab52c2f8570f1115379 d226b9c26f2b79212e9f9f3c72b43dfd ffffffffffffffffffffffffffffffff 44712 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +e30d355a77eb941d4d07e23005932eaa fc91ace38251e0973bb051f6b4fb4be9 ffffffffffffffffffffffffffffffff 33944 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +a054ae3e972d638c2c2f8570f11106a3 4ea3efb5b79bbe3a4ea9ad63c257d721 ffffffffffffffffffffffffffffffff 22592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +e30d355a7f578d244d07e23005937b70 54983e474f9bc4da486580f710e51499 ffffffffffffffffffffffffffffffff 15752 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +a054ae3e98d2ec422c2f8570f11167d5 e28454601214876dc6293d573d7d952e ffffffffffffffffffffffffffffffff 12884 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +e30d355a70a802ea4d07e23005931a06 2aa04ea8f290220701e727b99c27fea8 ffffffffffffffffffffffffffffffff 7880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +a054ae3e93eecf8c2c2f8570f111363a 1f65b02f49dac9032857cf3cc68aac70 ffffffffffffffffffffffffffffffff 8192 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +e30d355a7b9421244d07e23005934be9 d05f9ebc4a8e8e26e25cff49ed0affd6 ffffffffffffffffffffffffffffffff 6312 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +a054ae3e93c524572c2f8570f1112b30 9e22f676c7bb103d31348577a1805e1b ffffffffffffffffffffffffffffffff 13420 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +e30d355a7bbfcaff4d07e230059356e3 4afc32b12ad220bede4b66911e233cc9 ffffffffffffffffffffffffffffffff 7752 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +a054ae3e93eecf8c2c2f8570f1113644 d13bd4836f3c17479542b0323a434338 ffffffffffffffffffffffffffffffff 7596 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +e30d355a7b9421244d07e23005934b97 45c0778fc9f82b5b3e5211ac6bbc8bec ffffffffffffffffffffffffffffffff 6272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +a054ae3e9f9d40bd2c2f8570f1111c9e f8d52203c6d0ae3a22a08545179d49e5 ffffffffffffffffffffffffffffffff 30836 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +e30d355a77e7ae154d07e2300593614d cc774a35f137c2a4453a0d7386623dc6 ffffffffffffffffffffffffffffffff 24632 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +a054ae3e93eecf8c2c2f8570f11137b6 976db673f958fd892b66c861ba689ed8 ffffffffffffffffffffffffffffffff 16612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +e30d355a7b9421244d07e23005934a65 de7410836ea473d1696fa1cff479d610 ffffffffffffffffffffffffffffffff 13036 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +a054ae3e948a42982c2f8570f11110f9 a05f276648dc2b3d3fe88283969395a9 ffffffffffffffffffffffffffffffff 33644 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +e30d355a7cf0ac304d07e23005936d2a 00cc97fd75ce2aa4acab02ad6f618b02 ffffffffffffffffffffffffffffffff 25540 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +adb2e9d1a2f5d9b5c276ed0c8b98bf9f 1ffb70a4c170a5024311e7f31e4334ae ffffffffffffffffffffffffffffffff 68220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +eeeb72b54a8f371da35e8a4c7f1ac24c ec7af23b92a96138e0cac061826b9fd8 ffffffffffffffffffffffffffffffff 46956 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +a054ae3ed7c1e40a2c2f8570f1112f97 85705079250429218770d6a5aa62a47d ffffffffffffffffffffffffffffffff 40528 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +e30d355a3fbb0aa24d07e23005935244 d0f4f8d2099d839e6957ffdbd22c1a99 ffffffffffffffffffffffffffffffff 28144 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +a054ae3e93eecf8f2c2f8570f11133bc 7a5906fc8e9cd3748fe02f73164b2df7 ffffffffffffffffffffffffffffffff 11816 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +e30d355a7b9421274d07e23005934e6f 96f90de33494482dc9cec574615efd11 ffffffffffffffffffffffffffffffff 8328 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +a054ae3e98f4e9f62c2f8570f11103f2 94e21cea67a9bb25fa16e142f663eb55 ffffffffffffffffffffffffffffffff 57100 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +e30d355a708e075e4d07e23005937e21 fc1175a6f589a3efc60f26ac7dfc87dd ffffffffffffffffffffffffffffffff 40172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +a054ae3e94b01caa2c2f8570f1113f4e 2b7af604cb111f0454de6e6b29a52b19 ffffffffffffffffffffffffffffffff 14948 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +e30d355a7ccaf2024d07e2300593429d 15ea1ec87c51dab5e05c6c71583734de ffffffffffffffffffffffffffffffff 11988 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +a054ae3ed83dd0112c2f8570f1112047 525edc69b03c891b831027574eddd7b3 ffffffffffffffffffffffffffffffff 13104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +e30d355a30473eb94d07e23005935d94 d5fe6261dec7a9b6bc248c31eabd1f0b ffffffffffffffffffffffffffffffff 10524 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +a054ae3edb8a6e592c2f8570f1115e27 d9566b77bf5258b65a47eea6a22d74d5 ffffffffffffffffffffffffffffffff 20828 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +e30d355a33f080f14d07e230059323f4 7f1d0cb5e9f3a19c9571f7c427f47cf6 ffffffffffffffffffffffffffffffff 17768 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +a054ae3e93eecf8c2c2f8570f1113a83 730c4ddd3bebc87f6597932e58a27272 ffffffffffffffffffffffffffffffff 1688 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +e30d355a7b9421244d07e23005934750 7efc8ceaba7a9b73e6bf8719cac63683 ffffffffffffffffffffffffffffffff 1644 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +a054ae3e93eecf8c2c2f8570f1113d9d 4e6fb726e6083fdd4d47322f1bb8016b ffffffffffffffffffffffffffffffff 11032 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +e30d355a7b9421244d07e2300593404e c2cbc48bd1f55a31bfff104d2867f7ac ffffffffffffffffffffffffffffffff 9556 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +a054ae3e9486896a2c2f8570f1113304 93692e7ebb7153d5f942dafbf8d4e05d ffffffffffffffffffffffffffffffff 12688 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +e30d355a7cfc67c24d07e23005934ed7 c5f4b9e090398b1fb46c93fe0c3d6422 ffffffffffffffffffffffffffffffff 10096 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +a054ae3e9486896a2c2f8570f1113309 a4927e10e5898b32995cbe6cccf1cec3 ffffffffffffffffffffffffffffffff 12792 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +e30d355a7cfc67c24d07e23005934eda c8ec9f85e722d9b75f78e57ebef93c13 ffffffffffffffffffffffffffffffff 10048 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +a054ae3e9486896a2c2f8570f1113f4c c3630ff81f045183909fb2a787d243da ffffffffffffffffffffffffffffffff 12084 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +e30d355a7cfc67c24d07e2300593429f 5bcf109caae319a8af813fa0e9f58c1e ffffffffffffffffffffffffffffffff 9520 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +a054ae3e9486896a2c2f8570f1113e09 9db33d00c00e9a7062ada822f415065d ffffffffffffffffffffffffffffffff 11828 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +e30d355a7cfc67c24d07e230059343da 73e3cef9d3a290ef6c55377b1063b0ab ffffffffffffffffffffffffffffffff 9368 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +a054ae3e90596e2c2c2f8570f11133d1 060ccf1b1ddfce550d228edf868e4eec ffffffffffffffffffffffffffffffff 16116 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +e30d355a782380844d07e23005934e02 508944ee67835a62f1624d46db31a116 ffffffffffffffffffffffffffffffff 14220 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +a054ae3e9dc9e8802c2f8570f1113659 f553c16d6f71e3dc604e5b60dfecb680 ffffffffffffffffffffffffffffffff 7920 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +e30d355a75b306284d07e23005934b8a 3724e9f37f531b12e16e57008b5fa58e ffffffffffffffffffffffffffffffff 4864 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +a054ae3e9486896a2c2f8570f1113e58 c7723e5fb54185c8db7060eb8352311b ffffffffffffffffffffffffffffffff 11476 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +e30d355a7cfc67c24d07e2300593438b 6fe723028b5bbf93de253dc1340a6233 ffffffffffffffffffffffffffffffff 9032 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +a054ae3e93eecf8c2c2f8570f111308c 6020b6138969a3da6984c6252a489b55 ffffffffffffffffffffffffffffffff 10228 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +e30d355a7b9421244d07e23005934d5f b47b02d3301975ad035d3ac51534923e ffffffffffffffffffffffffffffffff 8588 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +a054ae3e93eecf8c2c2f8570f11136e8 4bff471acf18c35173eafb93bcec30a1 ffffffffffffffffffffffffffffffff 4988 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +e30d355a7b9421244d07e23005934b3b 4052bc2f990d79b23523e2c95f6c2841 ffffffffffffffffffffffffffffffff 3464 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +a054ae3e9486896a2c2f8570f1113f20 6b24b249f5bdd7f7b27e404cc068aa57 ffffffffffffffffffffffffffffffff 11440 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +e30d355a7cfc67c24d07e230059342f3 53480cb1622533c658703c08d3d06308 ffffffffffffffffffffffffffffffff 9016 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +a054ae3e9486896a2c2f8570f11132e5 7589499e8df946b5046970b5dabb2439 ffffffffffffffffffffffffffffffff 13360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +e30d355a7cfc67c24d07e23005934f36 11b809ad29750ea4066810c6bf9ba838 ffffffffffffffffffffffffffffffff 10688 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +a054ae3e93eecf8c2c2f8570f11135ad f0aa4f9174b7b2c3d73c223ed415dfb1 ffffffffffffffffffffffffffffffff 9256 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +e30d355a7b9421244d07e2300593487e 99307e1e8d3f6d072a556c2eb693e21b ffffffffffffffffffffffffffffffff 7284 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +a054ae3e93eecf8c2c2f8570f1113792 0a16525357c4247fc903114da22ebf50 ffffffffffffffffffffffffffffffff 10256 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +e30d355a7b9421244d07e23005934a41 2d1659f6bd9a2000c06c25dccdd2f7fb ffffffffffffffffffffffffffffffff 5504 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +a054ae3e93eecf8c2c2f8570f111349c 619c93a0a2effeec98c82a4068ee903a ffffffffffffffffffffffffffffffff 3656 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +e30d355a7b9421244d07e2300593494f 2d479cd56fad5cdf2464242938731347 ffffffffffffffffffffffffffffffff 3320 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +a054ae3e93eecf8c2c2f8570f11136cb 5cf5547ec055de6b25ddef5fc78bf88c ffffffffffffffffffffffffffffffff 7928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +e30d355a7b9421244d07e23005934b18 ae18ca4a9f6c81d05152a9cd5ead6c7d ffffffffffffffffffffffffffffffff 3916 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +a054ae3e93eecf8c2c2f8570f1113d2d 8d56a0191249a3184ac32916b3c53401 ffffffffffffffffffffffffffffffff 12360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +e30d355a7b9421244d07e230059340fe c95dacaa7b2222926efab7c323ea528f ffffffffffffffffffffffffffffffff 8624 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +a054ae3edf4410c62c2f8570f1117a00 741e8d5d7eae83ac788119dc31975ac2 ffffffffffffffffffffffffffffffff 58580 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +e30d355a373efe6e4d07e230059307d3 fea1c94c804a849e7737272a5fd6fa7a ffffffffffffffffffffffffffffffff 46584 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +a054ae3e93eecf8c2c2f8570f1113e7b 05e5af954bfd62d0ebacdd661208ad34 ffffffffffffffffffffffffffffffff 16208 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +e30d355a7b9421244d07e230059343a8 df492c39321de5797a6ba80895037820 ffffffffffffffffffffffffffffffff 11652 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +a054ae3edf7ee48d2c2f8570f11149ea c4a7fa0102317563bc4a8078d1a448a1 ffffffffffffffffffffffffffffffff 14252 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +e30d355a37040a254d07e23005933439 45ee9db5e5c8f2c90e55cd864d1b23af ffffffffffffffffffffffffffffffff 10008 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +a054ae3ed4fdef4c2c2f8570f111292f a5c49fff5291415ea49363c41102a58f ffffffffffffffffffffffffffffffff 82844 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +e30d355a3c8701e44d07e230059354fc 99cff75f85c69c5502debb078b2be980 ffffffffffffffffffffffffffffffff 59172 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +a054ae3e9486896a2c2f8570f1113127 ae00718a3447e001e7b6ddf96d6afbde ffffffffffffffffffffffffffffffff 12328 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +e30d355a7cfc67c24d07e23005934cf4 6d1e9bf4483c75008ce484a5e8c37b8b ffffffffffffffffffffffffffffffff 9736 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +a054ae3e9b624a0b2c2f8570f111540b fcb668b0817c82c4689b36e63cea7c71 ffffffffffffffffffffffffffffffff 18308 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +e30d355a7318a4a34d07e230059329d8 1b188a9bba98cb9e3e39509cb3f5a1da ffffffffffffffffffffffffffffffff 12848 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +a054ae3edf43ae6b2c2f8570f1113746 9563c9aa4be95084d78509dc6e2c853d ffffffffffffffffffffffffffffffff 9880 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +e30d355a373940c34d07e23005934a95 6e6c97be20fa14c2e496f4882917618e ffffffffffffffffffffffffffffffff 8624 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +a054ae3e98f97a7a2c2f8570f11133cb fd8bce41ac8ab3e1f187be79fa78ae8f ffffffffffffffffffffffffffffffff 9416 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +e30d355a708394d24d07e23005934e18 e2538e351a922881804b844996d21c0e ffffffffffffffffffffffffffffffff 9208 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +a054ae3e9c30a5a02c2f8570f1113d57 660ccb69effb511923b0e2f622c1e473 ffffffffffffffffffffffffffffffff 9476 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +e30d355a744a4b084d07e23005934084 2619ef86cd6038db55091f21f6c8e236 ffffffffffffffffffffffffffffffff 7740 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +a054ae3ed09dc4442c2f8570f11126f0 04e7c93bf04222bc59e6d05aabb8e56c ffffffffffffffffffffffffffffffff 23092 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +e30d355a38e72aec4d07e23005935b23 7ad21768dfc646dc37d9d453ab5216eb ffffffffffffffffffffffffffffffff 16608 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +a054ae3ed09dc4472c2f8570f11135a9 65371f3cb008ebef7f1aa55a19456903 ffffffffffffffffffffffffffffffff 10360 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +e30d355a38e72aef4d07e2300593487a 0b354208694fe13ed7d7ad2d531545cc ffffffffffffffffffffffffffffffff 6072 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +a054ae3e98f97a792c2f8570f11124d8 e28069d2057b8a146c8c2bc3ef950c4b ffffffffffffffffffffffffffffffff 17664 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +e30d355a708394d14d07e2300593590b 1a16aa2c199daa6e1d07e25e551ce403 ffffffffffffffffffffffffffffffff 13312 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +a6696dd44bc563d7381b734a970bbc81 caf7a4b3ecfc6185f7e3d63bc66391ad ffffffffffffffffffffffffffffffff 720 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +9bc9f87bf9ad71c4ca52f65d589f40db f080a078f3f67518a9c73c6e0cb22362 ffffffffffffffffffffffffffffffff 584 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +a6696dd40324608f381b734a97084719 bf083a308a84916820f3dfecd85b5a05 ffffffffffffffffffffffffffffffff 32944 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +9bc9f87bb14c729cca52f65d589cbb43 6ef099384c435be0d0d8a343d82d0bb0 ffffffffffffffffffffffffffffffff 24852 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +a054ae3e98f97a7a2c2f8570f1113c84 9327e025d6159a5f17f18a6b215d83a3 ffffffffffffffffffffffffffffffff 15244 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +e30d355a708394d24d07e23005934157 dde8482055ebda367bd0af480181554b ffffffffffffffffffffffffffffffff 12384 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +a054ae3e98f97a7a2c2f8570f1113c4d 255ce6759cfa51a119c19d2b391fbb85 ffffffffffffffffffffffffffffffff 13316 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +e30d355a708394d24d07e2300593419e 0c6754b2793bd88911c0b7794c8cee57 ffffffffffffffffffffffffffffffff 10596 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +a054ae3e98f97a7a2c2f8570f1113eee aa47a20c3b3a0a55f4b1b99694d10997 ffffffffffffffffffffffffffffffff 11748 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +e30d355a708394d24d07e2300593433d 3530083fe3fbf0b881f1b0b0fb56a716 ffffffffffffffffffffffffffffffff 9276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +a054ae3e934389142c2f8570f115ace5 4d1711a0036f2da8ee724616b3e0877b ffffffffffffffffffffffffffffffff 773776 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +e30d355a7b3967bc4d07e2300597d136 2b54452dc5c28988c63321b5d8a2851a ffffffffffffffffffffffffffffffff 561516 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +a054ae3e9f9d451b2c2f8570f111211d b01da7c16e80a4801460fa1a0626a78b ffffffffffffffffffffffffffffffff 21008 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +e30d355a77e7abb34d07e23005935cce b1743e53df0c4cf7afe7a41f652cab4c ffffffffffffffffffffffffffffffff 17004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +a054ae3e9fb7356c2c2f8570f1113a80 4e07af8a653459109dc821d199f18a57 ffffffffffffffffffffffffffffffff 17928 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +e30d355a77cddbc44d07e23005934753 2fe948546d05d85a109315b84d310908 ffffffffffffffffffffffffffffffff 14892 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +a054ae3e90f669152c2f8570f11178e4 56def9e19b8edccd11b73c9ddff555cf ffffffffffffffffffffffffffffffff 76312 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +e30d355a788c87bd4d07e23005930537 d1a3e67d083a1d6b06cfe1c3d7691074 ffffffffffffffffffffffffffffffff 48364 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +a054ae3e9486896a2c2f8570f1112b67 658e2386bd2c6723593ff8eb2f489115 ffffffffffffffffffffffffffffffff 20528 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +e30d355a7cfc67c24d07e230059356b4 f9c39724754ee5d4ff06904d5a193f37 ffffffffffffffffffffffffffffffff 15104 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +a054ae3e93eecf8c2c2f8570f1113faf 5a865e8d6e120ef928c468194eb52ae8 ffffffffffffffffffffffffffffffff 18096 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +e30d355a7b9421244d07e2300593427c 77966f48369e8ccf40712e2504752642 ffffffffffffffffffffffffffffffff 14592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +a054ae3e9f2ec1d12c2f8570f11121f6 20b6dab0ebb96ece6c30f93aecafa82f ffffffffffffffffffffffffffffffff 55452 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +e30d355a77542f794d07e23005935c25 d6b4515d869373151790f0ed54503656 ffffffffffffffffffffffffffffffff 37404 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +a054ae3e93eecf8c2c2f8570f1113d79 5884b6f5147b51bc0c2899772f4d83cd ffffffffffffffffffffffffffffffff 10276 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +e30d355a7b9421244d07e230059340aa cfe1ada258ed26df7f8f9472c3b8c127 ffffffffffffffffffffffffffffffff 5388 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +a054ae3e98f97a7a2c2f8570f1113bef 1c69bb522d5a7979a4fd09e326382b93 ffffffffffffffffffffffffffffffff 13816 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +e30d355a708394d24d07e2300593463c d464500a15e0a1e6c11fa0d02396cc14 ffffffffffffffffffffffffffffffff 11168 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +a054ae3e98f97a7a2c2f8570f1113eca 87768b5b1fee0d3454c04049a334a645 ffffffffffffffffffffffffffffffff 12132 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +e30d355a708394d24d07e23005934319 3680cb0d0e6043925a5bd98c1062942c ffffffffffffffffffffffffffffffff 9448 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +a054ae3e93eecf8c2c2f8570f1113152 dd8b52b2547acbf024a09ce2e013a7d4 ffffffffffffffffffffffffffffffff 5808 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +e30d355a7b9421244d07e23005934c81 e94775f5212c8ea54c0b688e20c9e76a ffffffffffffffffffffffffffffffff 3932 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +a054ae3e948681e22c2f8570f11121e6 6069ff37b2367e25838c48721053c77e ffffffffffffffffffffffffffffffff 26984 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +e30d355a7cfc6f4a4d07e23005935c35 8d3b8a6c454304c29529dd4149dd7042 ffffffffffffffffffffffffffffffff 21556 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +a054ae3e93eecf8c2c2f8570f11137ab e93b3676c91181eddb9499f57418a26e ffffffffffffffffffffffffffffffff 14716 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +e30d355a7b9421244d07e23005934a78 b4baf7ad20dd92b9e52e9322a52bc8af ffffffffffffffffffffffffffffffff 10516 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +a054ae3e9f9134142c2f8570f1113c4a 2db8e4b1653e13ccf1b781b258169f1e ffffffffffffffffffffffffffffffff 12868 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +e30d355a77ebdabc4d07e23005934199 c9a4c703aea7f55373874406f00d84f5 ffffffffffffffffffffffffffffffff 10140 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +a054ae3edf7d3c2d2c2f8570f1117f90 d016c010bef075f9d049a9ee3bb12084 ffffffffffffffffffffffffffffffff 30012 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +e30d355a3707d2854d07e23005930243 6ba2840a1e31d19bb07212bfa7a9bed9 ffffffffffffffffffffffffffffffff 23180 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +a054ae3ed32a4c4a2c2f8570f1116255 b92c71ed089409851607fc78d602e259 ffffffffffffffffffffffffffffffff 49972 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +e30d355a3b50a2e24d07e23005931f86 73a41f2967fa09309533fd9f6ba15e51 ffffffffffffffffffffffffffffffff 35964 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +a054ae3e93d7d3fc2c2f8570f1114abd 668d25b1e189b617a03b5e4798278234 ffffffffffffffffffffffffffffffff 27804 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +e30d355a7bad3d544d07e2300593376e e9093e9c0a472816738fd044dc3ba33e ffffffffffffffffffffffffffffffff 19428 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +a054ae3ed328337c2c2f8570f111143e ca7e43e26c9bf88b7288d136539fdb44 ffffffffffffffffffffffffffffffff 114068 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +e30d355a3b52ddd44d07e230059369ed afbb1f129a073c62d39f0da0a8b4f46c ffffffffffffffffffffffffffffffff 87140 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +a054ae3e94890dfe2c2f8570f111177d 143646ee1aa0c71bcd6dd05b3f8a33aa ffffffffffffffffffffffffffffffff 49392 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +e30d355a7cf3e3564d07e23005936aae 239e1ed5c051cf140cb5b5d2ee2de5c3 ffffffffffffffffffffffffffffffff 35868 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +a054ae3edf6c39532c2f8570f11160b2 3aa2d9be88e00b713ae644e243a23901 ffffffffffffffffffffffffffffffff 75268 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +e30d355a3716d7fb4d07e23005931d61 c77093af58d1cab3820844e91027726f ffffffffffffffffffffffffffffffff 55060 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +a054ae3e93eec97b2c2f8570f1117fc2 9d1d692f66fce020bfb40864a3ac001a ffffffffffffffffffffffffffffffff 48808 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +e30d355a7b9427d34d07e23005930211 184692f11276fc500aebe4ad7d1f7bd0 ffffffffffffffffffffffffffffffff 39804 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +a054ae3e9cbe550a2c2f8570f111ad64 9820696fff1de75415fa37d751ecc078 ffffffffffffffffffffffffffffffff 105004 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +e30d355a74c4bba24d07e2300593d0b7 5a9b0c58c0d262621f5ab49f56ec1da9 ffffffffffffffffffffffffffffffff 80224 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +a054ae3e93eecf8c2c2f8570f1112a69 9072eb01aadc8bd97906c9b514569681 ffffffffffffffffffffffffffffffff 21024 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +e30d355a7b9421244d07e230059357ba c94104362c729964da2074239cd63946 ffffffffffffffffffffffffffffffff 18816 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +a054ae3e9c994d392c2f8570f1116d85 82c5f0aa85a3cc7a317b8c5adff54eeb ffffffffffffffffffffffffffffffff 110272 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +e30d355a74e3a3914d07e23005931056 d1aa63ea69231fdb387e11c6ca08ed1e ffffffffffffffffffffffffffffffff 82872 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +a054ae3e98f97a792c2f8570f1113fbf 9affff0df57a684dafe74eceaadbc5b9 ffffffffffffffffffffffffffffffff 19180 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +e30d355a708394d14d07e2300593426c 9ac845ba096976ed3074f1f38fc69c23 ffffffffffffffffffffffffffffffff 14588 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +a054ae3e93eecf8c2c2f8570f1113cda f1b047f7433b4deb3a06f0dbf603828b ffffffffffffffffffffffffffffffff 17248 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +e30d355a7b9421244d07e23005934109 1c74d29965862991ea09ffd1d37ba92b ffffffffffffffffffffffffffffffff 14768 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +a054ae3e907f6a362c2f8570f111cd95 ff955f5fae246408cd632d73031d8a83 ffffffffffffffffffffffffffffffff 143520 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +e30d355a7805849e4d07e2300593b046 07368d8e875c5d27a4892d3ad2bbd579 ffffffffffffffffffffffffffffffff 102772 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +a054ae3e9fbb9b8c2c2f8570f111883a 0cb9ddf6b5a9b4a337a3dcb50930f142 ffffffffffffffffffffffffffffffff 95336 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +e30d355a77c175244d07e2300593f5e9 133c36b141204ced7f7373da7fc8a83e ffffffffffffffffffffffffffffffff 71336 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +a054ae3ed313b4422c2f8570f1113bdb f36a830a25d43af1e579f348f279858e ffffffffffffffffffffffffffffffff 24256 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +e30d355a3b695aea4d07e23005934608 e118936ce7c95595d48f2034d0c9f370 ffffffffffffffffffffffffffffffff 22068 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +a054ae3e93eecf8c2c2f8570f11135d2 ed76f50add5b59e852eb5d31b76937bf ffffffffffffffffffffffffffffffff 5424 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +e30d355a7b9421244d07e23005934801 e6afac0e2e4d98fa47264e0f2223251a ffffffffffffffffffffffffffffffff 4432 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +a054ae3ed44c99f22c2f8570f111f428 fbd3568bb493776cd62dce8db25407f0 ffffffffffffffffffffffffffffffff 151612 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +e30d355a3c36775a4d07e230059389fb 96972307e2e420616a518b60af550fab ffffffffffffffffffffffffffffffff 124464 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +a054ae3ed358db7f2c2f8570f1117c80 aabf7ae6e19b11842acab05fcbcf256b ffffffffffffffffffffffffffffffff 26836 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +e30d355a3b2235d74d07e23005930153 7d37cda27e0af4d5d69a47062f0d86cc ffffffffffffffffffffffffffffffff 21400 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +a054ae3ed94994a12c2f8570f111b02a a673d363b2ed758ed8348245c7f0b6d6 ffffffffffffffffffffffffffffffff 177100 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +e30d355a31337a094d07e2300593cdf9 f8e34651f8d4ece0c54dcfa08f0ac3cd ffffffffffffffffffffffffffffffff 145948 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +a054ae3ed532d6d42c2f8570f11132d2 b4f209553355e2cf4351938105afd690 ffffffffffffffffffffffffffffffff 4120 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +e30d355a3d48387c4d07e23005934f01 a35708f360ae6439ec6e4a533102658a ffffffffffffffffffffffffffffffff 3492 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +000000004c1c06420000000000000066 30cdf6b6dfcbf281cba60d48d0ecb7a7 ffffffffffffffffffffffffffffffff 20877 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h +000000004c1c06410000000000000066 a3742c983bc8b72adf80975b9c40e1cc ffffffffffffffffffffffffffffffff 32841 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h +000000004c91953b00000000000003bf a6696dd40a5b88ee381b734a970b0c0a ffffffffffffffffffffffffffffffff 1409392 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf a054ae3e9fbbf0df2c2f8570f1113615 ffffffffffffffffffffffffffffffff 36544784 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf 9bc9f87bb8339afdca52f65d589ff050 ffffffffffffffffffffffffffffffff 55464 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth +000000004c91953b00000000000003bf e30d355a77c11e774d07e23005934bc6 ffffffffffffffffffffffffffffffff 7265724 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth +00000000000000000000000000000000 ed0cccd54620342af3949794d0dcc0b4 ffffffffffffffffffffffffffffffff 20 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig +000000004c91953b00000000000003bf 05c6e6b30cec1136d3e3d197fd57c327 ffffffffffffffffffffffffffffffff 1409392 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf 162ecdb19b5527e5465a7f8ed21b765c ffffffffffffffffffffffffffffffff 36544784 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch +000000004c91953b00000000000003bf eefdc083377ad03e5ffa888be38b5354 ffffffffffffffffffffffffffffffff 55464 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth +000000004c91953b00000000000003bf 3bdf9aa40fe312ed51daae376c75e47e ffffffffffffffffffffffffffffffff 7265724 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth +ffffffffffffffffffffffffffffffff 5583cd71c90bb2395a12e4d5aaedde02 ffffffffffffffffffffffffffffffff 15592 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o +ffffffffffffffffffffffffffffffff ee17d918409947e3bf0c80517b5ebbf4 ffffffffffffffffffffffffffffffff 12492 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o +162ecdb1db80539e465a7f8ed21b6b14 6b59b3ccdd21459b84707337f0d0cfba ffffffffffffffffffffffffffffffff 38944 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o +3bdf9aa44f36669651daae376c75f936 834afa7c20ef62da909fee1da6e64c09 ffffffffffffffffffffffffffffffff 28328 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o +0000000040efc04f00000000000002e2 8625accb149c496c273f39da11ec82e0 ffffffffffffffffffffffffffffffff 1409392 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch +0000000040efc04f00000000000002e2 7f62b0f5c0bee843dfc3c2d3bbbedc59 ffffffffffffffffffffffffffffffff 36548912 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch +0000000040efc04f00000000000002e2 75ac69dec00545b7e7ffbab987b5c7cc ffffffffffffffffffffffffffffffff 55464 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth +0000000040efc04f00000000000002e2 af1e78b70fec8259cd4647e5589560f3 ffffffffffffffffffffffffffffffff 7254688 /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth +000000004bf95b95000000000007ba1b 76be6a1ad8e58a94329e3880997c1e3e ffffffffffffffffffffffffffffffff 102236 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfile.nib +7f62b0f5cb823791dfc3c2d3bbbefb3c 9bbafccb828b99dfe401637daac01f6d ffffffffffffffffffffffffffffffff 25924 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o +af1e78b704d05d8bcd4647e558954796 9abcbc6c0e988c333339bd8bf1173ab2 ffffffffffffffffffffffffffffffff 20044 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o +7f62b0f5cb929a9adfc3c2d3bbbebc13 37922f5bd9010dca3337b4f96c841627 ffffffffffffffffffffffffffffffff 364 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o +af1e78b704c0f080cd4647e5589500b9 ed1561cc948810c454f7a549b2d71bb6 ffffffffffffffffffffffffffffffff 392 /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh new file mode 100755 index 0000000..e1d4007 --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh @@ -0,0 +1,3 @@ +#!/bin/sh +REV=`/usr/bin/svnversion -nc ${PROJECT_DIR} | /usr/bin/sed -e 's/^[^:]*://;s/[A-Za-z]//'`;echo "BUILD_NUMBER = $REV" > ${PROJECT_DIR}/buildnumber.xcconfig + diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/build-state.dat b/build/Pocket Gnome.build/Release/Pocket Gnome.build/build-state.dat new file mode 100644 index 0000000..c56aa70 --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/build-state.dat @@ -0,0 +1,14152 @@ +TPocket Gnome +v7 +r0 +t309131103.420893 +cCheck dependencies +cProcessInfoPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist" Info.plist +cPhaseScriptExecution "Get SVN Revision" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh" +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict" "Growl Registration Ticket.growlRegDict" +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist" FactionTemplate.plist +cCopyStringsFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings" English.lproj/InfoPlist.strings +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist" English.lproj/Gathering.plist +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist" French.lproj/Gathering.plist +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png" Spell_Holy_MindVision.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png" Spell_FireResistanceTotem_01.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png" INV_Misc_Head_Dragon_Bronze.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png" INV_Misc_Gem_Bloodstone_01.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png" Spell_Nature_PoisonCleansingTotem.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png" INV_Misc_Head_Dragon_Blue.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png" inv_misc_bag_14.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png" INV_Misc_Orb_05.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png" INV_Misc_Gear_01.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png" Ability_Warrior_Revenge.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png" Ability_Rogue_Sprint.png +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/off.png" off.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/on.png" on.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mixed.png" mixed.png +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif" bad.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif" good.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif" Images/SRRemoveShortcut.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif" Images/SRRemoveShortcutPressed.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif" Images/SRRemoveShortcutRollover.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff" Images/SRSnapback.tiff +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png" Friendly.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png" Hostile.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Combat.png" Combat.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dead.png" Dead.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png" Neutral.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png" Spell_Holy_PrayerofSpirit.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png" BloodElf-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png" BloodElf-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png" Draenei-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png" Draenei-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png" Dwarf-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png" Dwarf-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png" Gnome-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png" Gnome-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png" Human-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png" Human-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png" NightElf-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png" NightElf-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png" Orc-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png" Orc-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png" Tauren-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png" Tauren-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png" Troll-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png" Troll-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png" Undead-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png" Undead-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid.png" Druid.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png" Hunter.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage.png" Mage.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png" Paladin.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest.png" Priest.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png" Rogue.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png" Shaman.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png" Warlock.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png" Warrior.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif" Priest_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif" Shaman_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif" Paladin_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif" Warlock_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif" Mage_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif" Warrior_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif" Hunter_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif" Druid_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif" Rogue_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Male.png" Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Female.png" Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png" Keybindings.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png" InterfaceBars.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Result.png" Result.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png" HotkeyFinished.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png" TypeShortcut.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png" UnknownSmall.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif" Orc-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif" Gnome-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif" BloodElf-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif" Orc-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif" Troll-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif" Undead-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif" Human-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif" BloodElf-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif" Draenei-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif" Tauren-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif" Draenei-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif" Dwarf-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif" Undead-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif" Gnome-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif" Human-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif" Dwarf-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif" Tauren-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif" Troll-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif" NightElf-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif" NightElf-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png" Nodes/ActiveQuestIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png" Nodes/AvailableQuestIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png" Nodes/BankerGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png" Nodes/BinderGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png" Nodes/GossipGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png" Nodes/PetitionGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png" Nodes/Scroll.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png" Nodes/TabardGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png" Nodes/TaxiGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png" Nodes/TrainerGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png" Nodes/VendorGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png" Nodes/MinimapGuideFlag.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png" Nodes/WarnTriangle.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png" Nodes/ResourceBlip.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Repair.png" Nodes/Repair.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Skull.png" Skull.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Stable.png" Nodes/Stable.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png" Nodes/Innkeeper.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png" Nodes/Chicken.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif" NeutralCrest.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif" HordeCrest.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif" AllianceCrest.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns" pgRoute.icns +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns" pgBehavior.icns +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns" gnome2.icns +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png" Ability_DualWieldSpecialization.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png" Ability_Warrior_ImprovedDisciplines.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png" Ability_Warrior_Challange.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png" BannerNeutral.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png" BannerHorde.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png" BannerAlliance.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3" alarm.mp3 +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png" Bobber.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3" splash.mp3 +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png" INV_Fishingpole_03.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png" DeathKnight.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif" DeathKnight_Small.gif +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png" Trade_Engraving.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mail.png" Mail.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/iChat.png" iChat.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png" InteractWithTarget.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png" mbobbleicon.png +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist" OffsetSignatures.plist +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist" Macros.plist +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem" dsa_pub.pem +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PVP.png" PVP.png +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml" appcast.xml +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig" buildnumber.xcconfig +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cPhaseScriptExecution /Applications/Mail.app +cPhaseScriptExecution /Applications/Mail.app +cPhaseScriptExecution /Applications/iChat.app +cPhaseScriptExecution /Applications/iChat.app +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" normal i386 +cLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" normal ppc +cCreateUniversalBinary "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" normal "i386 ppc" +cGenerateDSYMFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" +cPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework" Sparkle.framework +cPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework" ShortcutRecorder.framework +cPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework" Growl.framework +cTouch "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" + +N/Applications/Mail.app +c000000004C1C06410000000000000066 +t1276905025 +s102 + +N/Applications/iChat.app +c000000004C1C06420000000000000066 +t1276905026 +s102 + +N/System/Library/Frameworks/Carbon.framework/Carbon +c000000004C0FDD7E000000000000A5F0 +t1276108158 +s42480 + +N/System/Library/Frameworks/Cocoa.framework/Cocoa +c000000004A1F2D63000000000000A5E0 +t1243557219 +s42464 + +N/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacErrors.h +c000000004B56A7950000000000029A6D +t1263970197 +s170605 + +N/System/Library/Frameworks/Message.framework/Message +c000000004BF703750000000000D4D480 +t1274479477 +s13948032 + +N/System/Library/Frameworks/ScriptingBridge.framework/ScriptingBridge +c000000004B74958A0000000000079800 +t1265931658 +s497664 + +N/System/Library/Frameworks/Security.framework/Security +c000000004C5CF8D90000000000A14FA0 +t1281161433 +s10571680 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk +c000000004B7D589B00000000000000EE +t1266505883 +s238 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/AppKit.framework/Headers/AppKit.h +c000000004864BB88000000000000170F +t1214561160 +s5903 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h +c000000004864BE3E00000000000005D7 +t1214561854 +s1495 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h +c0000000040C4AA6800000000000001E5 +t1086630504 +s485 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreData.framework/CoreData +c000000004B760CC4000000000003B524 +t1266027716 +s242980 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h +c00000000486499690000000000000942 +t1214552425 +s2370 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h +c0000000047BAD4120000000000000400 +t1203426322 +s1024 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +c000000004864A1C900000000000012EE +t1214554569 +s4846 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h +c000000004864A1C900000000000015A0 +t1214554569 +s5536 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h +c000000004864D1C50000000000001199 +t1214566853 +s4505 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/ScreenSaver.framework/Headers/ScreenSaver.h +c000000004864CD6400000000000000B9 +t1214565732 +s185 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/ScriptingBridge.framework/Headers/ScriptingBridge.h +c0000000047BB0AFB00000000000000C9 +t1203440379 +s201 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Security.framework/Headers/AuthorizationTags.h +c00000000490261C30000000000000EC4 +t1224892867 +s3780 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Security.framework/Headers/Security.h +c00000000490261C600000000000009CB +t1224892870 +s2507 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/SecurityFoundation.framework/Headers/SFAuthorization.h +c0000000047BAD95100000000000017D3 +t1203427665 +s6099 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/arpa/inet.h +c00000000464386D70000000000001533 +t1178830551 +s5427 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/asl.h +c0000000047BA993000000000000027F7 +t1203411248 +s10231 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/assert.h +c0000000047BA99300000000000000DCB +t1203411248 +s3531 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/ctype.h +c0000000047BA99310000000000002C3A +t1203411249 +s11322 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/dlfcn.h +c00000000487581E60000000000000AC7 +t1215660518 +s2759 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/errno.h +c0000000047BA993000000000000003EB +t1203411248 +s1003 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/fcntl.h +c0000000047BA993000000000000003EA +t1203411248 +s1002 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/launch.h +c0000000047BAF6340000000000002572 +t1203435060 +s9586 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/limits.h +c0000000047BA9930000000000000145A +t1203411248 +s5210 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/locale.h +c0000000047BA993000000000000008F0 +t1203411248 +s2288 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach-o/dyld.h +c00000000487581E60000000000003D74 +t1215660518 +s15732 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/mach_traps.h +c0000000047E8839E0000000000000EF1 +t1206420382 +s3825 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/vm_map.h +c0000000048648ADA0000000000007219 +t1214548698 +s29209 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/math.h +c0000000047BA987000000000000004B7 +t1203411056 +s1207 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/netinet/in.h +c0000000047E883C30000000000005346 +t1206420419 +s21318 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/readline/history.h +c0000000047BABCFC0000000000001AE2 +t1203420412 +s6882 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/readline/readline.h +c0000000047BABCFC0000000000001AE2 +t1203420412 +s6882 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/setjmp.h +c0000000047BA99300000000000000438 +t1203411248 +s1080 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdarg.h +c0000000047BA993000000000000000EA +t1203411248 +s234 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stddef.h +c0000000047BA99300000000000001404 +t1203411248 +s5124 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdio.h +c0000000047BA99310000000000003D1D +t1203411249 +s15645 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdlib.h +c0000000047BA99310000000000002A79 +t1203411249 +s10873 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/string.h +c0000000047BA99320000000000001731 +t1203411250 +s5937 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/event.h +c0000000047E883CF0000000000002105 +t1206420431 +s8453 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/socket.h +c0000000047E883D1000000000000559B +t1206420433 +s21915 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/stat.h +c0000000047E883D100000000000047CE +t1206420433 +s18382 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/types.h +c0000000047E883D2000000000000290F +t1206420434 +s10511 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/un.h +c0000000047E883D20000000000001072 +t1206420434 +s4210 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/time.h +c0000000047BA9932000000000000178E +t1203411250 +s6030 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/unistd.h +c0000000047BA993200000000000053FF +t1203411250 +s21503 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libcrypto.dylib +c000000004B760CFE000000000007260C +t1266027774 +s468492 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_DualWieldSpecialization.png +c000000004BD31F9D0000000000001314 +t1272127389 +s4884 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Rogue_Sprint.png +c000000004BD31F9D000000000000155D +t1272127389 +s5469 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Challange.png +c000000004BD31F9D0000000000002469 +t1272127389 +s9321 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_ImprovedDisciplines.png +c000000004BD31F9E0000000000001227 +t1272127390 +s4647 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Revenge.png +c000000004BD31F9D00000000000014CD +t1272127389 +s5325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.h +c000000004CB720FF00000000000004D8 +t1287069951 +s1240 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m +c000000004CB7221900000000000009CE +t1287070233 +s2510 +i"Action.h" +i"RouteSet.h" +i"Route.h" +i"Spell.h" +i"SpellController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.h +c000000004BD31F9D000000000000028D +t1272127389 +s653 +i +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m +c000000004BD31F9D0000000000000F37 +t1272127389 +s3895 +i"ActionController.h" +i"Action.h" +i"RepairActionController.h" +i"SwitchRouteActionController.h" +i"SpellActionController.h" +i"ItemActionController.h" +i"MacroActionController.h" +i"DelayActionController.h" +i"JumpActionController.h" +i"QuestTurnInActionController.h" +i"QuestGrabActionController.h" +i"InteractObjectActionController.h" +i"InteractNPCActionController.h" +i"CombatProfileActionController.h" +i"VendorActionController.h" +i"MailActionController.h" +i"ReverseRouteActionController.h" +i"JumpToWaypointActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.h +c000000004BD31F9D00000000000003A4 +t1272127389 +s932 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m +c000000004BD31F9D0000000000002235 +t1272127389 +s8757 +i"ActionMenusController.h" +i"Controller.h" +i"SpellController.h" +i"InventoryController.h" +i"MobController.h" +i"NodeController.h" +i"MacroController.h" +i"Macro.h" +i"Spell.h" +i"Item.h" +i"Node.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AllianceCrest.gif +c000000004BD31F9D0000000000000164 +t1272127389 +s356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.h +c000000004BD31F9E00000000000003B9 +t1272127390 +s953 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m +c000000004BD31F9D000000000000044A +t1272127389 +s1098 +i"Aura.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +c000000004BD31F9D0000000000011F0B +t1272127389 +s73483 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.h +c000000004BD31F9D0000000000000269 +t1272127389 +s617 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m +c000000004BD31F9D0000000000000D06 +t1272127389 +s3334 +i"AuraConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.h +c000000004BD31F9D0000000000000888 +t1272127389 +s2184 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m +c000000004CB779140000000000007EC4 +t1287092500 +s32452 +i"AuraController.h" +i"Controller.h" +i"PlayerDataController.h" +i"SpellController.h" +i"MobController.h" +i"MemoryAccess.h" +i"Offsets.h" +i"Spell.h" +i"Unit.h" +i"Aura.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +c000000004BD31F9D0000000000011EB0 +t1272127389 +s73392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.h +c000000004BD31F9D0000000000000248 +t1272127389 +s584 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m +c000000004BD31F9D00000000000009F0 +t1272127389 +s2544 +i"AuraStackConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerAlliance.png +c000000004BD31F9D0000000000001BC4 +t1272127389 +s7108 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerHorde.png +c000000004BD31F9D0000000000001933 +t1272127389 +s6451 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerNeutral.png +c000000004BD31F9D0000000000001888 +t1272127389 +s6280 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.h +c000000004BD31F9D00000000000007D9 +t1272127389 +s2009 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m +c000000004BD31F9D0000000000001024 +t1272127389 +s4132 +i"Battleground.h" +i"RouteCollection.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.h +c000000004C054649000000000000034D +t1275414089 +s845 +i +i"Procedure.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m +c000000004C0546490000000000001573 +t1275414089 +s5491 +i"Behavior.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +c000000004C054881000000000002C560 +t1275414657 +s181600 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c +c000000004BD31F9D0000000000013CAE +t1272127389 +s81070 +i"BetterAuthorizationSampleLib.h" +i +i +i +i +i +i +i +i +i +i"/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacErrors.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.h +c000000004BD31F9D0000000000009216 +t1272127389 +s37398 +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.h +c000000004BD31F9E000000000000012A +t1272127390 +s298 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m +c000000004BD31F9E0000000000000437 +t1272127390 +s1079 +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.h +c000000004BD31F9E0000000000000174 +t1272127390 +s372 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m +c000000004BD31F9E0000000000000842 +t1272127390 +s2114 +i"BetterTableView.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.h +c000000004BD31F9D00000000000006BB +t1272127389 +s1723 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m +c000000004CB772F4000000000000460F +t1287090932 +s17935 +i"BindingsController.h" +i"Controller.h" +i"PlayerDataController.h" +i"ChatController.h" +i"BotController.h" +i"OffsetController.h" +i"Behavior.h" +i"MemoryAccess.h" +i"Offsets.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.h +c000000004BD31F9D0000000000000577 +t1272127389 +s1399 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m +c000000004BD31F9D0000000000002AB4 +t1272127389 +s10932 +i"BlacklistController.h" +i"MobController.h" +i"PlayersController.h" +i"CombatController.h" +i"WoWObject.h" +i"Unit.h" +i"Player.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female.png +c000000004BD31F9E00000000000024B2 +t1272127390 +s9394 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female_Small.gif +c000000004BD31F9D00000000000005EA +t1272127389 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male.png +c000000004BD31F9D00000000000024F2 +t1272127389 +s9458 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male_Small.gif +c000000004BD31F9D00000000000005EA +t1272127389 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bobber.png +c000000004BD31F9D00000000000022CD +t1272127389 +s8909 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.h +c000000004BD31F9D0000000000000555 +t1272127389 +s1365 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m +c000000004BD31F9D0000000000002096 +t1272127389 +s8342 +i"BonjourController.h" +i"NSData+SockAddr.h" +i"Controller.h" +i"PlayerDataController.h" +i"MobController.h" +i"SpellController.h" +i"Unit.h" +i"Player.h" +i"Spell.h" +i"CGSPrivate.h" +i"GrabWindow.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +c000000004CBB41B800000000000474F0 +t1287340472 +s292080 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.h +c000000004CBB40D800000000000039F0 +t1287340248 +s14832 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m +c000000004CBCC0D4000000000004CAC1 +t1287438548 +s314049 +i"BotController.h" +i"Controller.h" +i"ChatController.h" +i"PlayerDataController.h" +i"MobController.h" +i"SpellController.h" +i"NodeController.h" +i"CombatController.h" +i"MovementController.h" +i"AuraController.h" +i"WaypointController.h" +i"ProcedureController.h" +i"InventoryController.h" +i"PlayersController.h" +i"QuestController.h" +i"CorpseController.h" +i"LootController.h" +i"ChatLogController.h" +i"FishController.h" +i"MacroController.h" +i"OffsetController.h" +i"MemoryViewController.h" +i"EventController.h" +i"BlacklistController.h" +i"StatisticsController.h" +i"BindingsController.h" +i"PvPController.h" +i"ProfileController.h" +i"ChatLogEntry.h" +i"BetterSegmentedControl.h" +i"Behavior.h" +i"RouteCollection.h" +i"RouteSet.h" +i"Route.h" +i"Condition.h" +i"Mob.h" +i"Unit.h" +i"Player.h" +i"Item.h" +i"Offsets.h" +i"PTHeader.h" +i"CGSPrivate.h" +i"Macro.h" +i"CombatProfile.h" +i"Errors.h" +i"PvPBehavior.h" +i"Battleground.h" +i"ScanGridView.h" +i"TransparentWindow.h" +i"DatabaseManager.h" +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CGSPrivate.h +c000000004BD31F9E000000000000243F +t1272127390 +s9279 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.h +c000000004BD31F9D0000000000000400 +t1272127389 +s1024 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m +c000000004BD31F9D00000000000007F9 +t1272127389 +s2041 +i"ChatAction.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.h +c000000004BD31F9D0000000000000232 +t1272127389 +s562 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m +c000000004BD31F9D0000000000003037 +t1272127389 +s12343 +i +i +i"ChatController.h" +i"Controller.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +c000000004BD31F9E000000000006828A +t1272127390 +s426634 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.h +c000000004BD31F9E00000000000007D5 +t1272127390 +s2005 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m +c000000004C054649000000000000617F +t1275414089 +s24959 +i"ChatLogController.h" +i"Controller.h" +i"MemoryAccess.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"Offsets.h" +i"ChatLogEntry.h" +i"ChatAction.h" +i +i +i +i"Mail.h" +i"iChat.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.h +c000000004BD31F9D0000000000000637 +t1272127389 +s1591 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m +c000000004CB792890000000000002281 +t1287099017 +s8833 +i"ChatLogEntry.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ClientDbDefines.h +c000000004BD32249000000000000123A +t1272128073 +s4666 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Combat.png +c000000004BD31F9D0000000000000260 +t1272127389 +s608 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.h +c000000004BF95B940000000000000E2C +t1274633108 +s3628 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m +c000000004CBB021C00000000000115B5 +t1287324188 +s71093 +i"CombatController.h" +i"PlayersController.h" +i"AuraController.h" +i"MobController.h" +i"BotController.h" +i"PlayerDataController.h" +i"BlacklistController.h" +i"MovementController.h" +i"Controller.h" +i"AuraController.h" +i"MacroController.h" +i"Unit.h" +i"Rule.h" +i"CombatProfile.h" +i"Behavior.h" +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +c000000004BD31F9D000000000000BFB8 +t1272127389 +s49080 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.h +c000000004BD31F9E000000000000019E +t1272127390 +s414 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m +c000000004BD31F9E000000000000078F +t1272127390 +s1935 +i"CombatCountConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.h +c000000004C0546490000000000001BBC +t1275414089 +s7100 +i +i"IgnoreEntry.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m +c000000004C0546490000000000007824 +t1275414089 +s30756 +i"CombatProfile.h" +i"Unit.h" +i"Mob.h" +i"IgnoreEntry.h" +i"Offsets.h" +i"FileObject.h" +i"PlayerDataController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib +c000000004BF95B95000000000007BA1B +t1274633109 +s506395 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +c000000004BD31F9E000000000000B75D +t1272127390 +s46941 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.h +c000000004BD31F9D00000000000001CD +t1272127389 +s461 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m +c000000004BD31F9D0000000000000788 +t1272127389 +s1928 +i"CombatProfileActionController.h" +i"ActionController.h" +i"CombatProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.h +c000000004BF8864C0000000000000684 +t1274578508 +s1668 +i +i"CombatProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m +c000000004BF886430000000000002F49 +t1274578499 +s12105 +i"CombatProfileEditor.h" +i"PlayersController.h" +i"BotController.h" +i"Controller.h" +i"MobController.h" +i"ProfileController.h" +i"Offsets.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +c000000004BD31F9D000000000000AC63 +t1272127389 +s44131 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.h +c000000004BD31F9E0000000000000199 +t1272127390 +s409 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m +c000000004BD31F9E00000000000009E3 +t1272127390 +s2531 +i"ComboPointConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.h +c000000004CBB597B0000000000000F8C +t1287346555 +s3980 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m +c000000004BD31F9D00000000000010A4 +t1272127389 +s4260 +i"Condition.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.h +c000000004BD31F9E0000000000000143 +t1272127390 +s323 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m +c000000004BD31F9E00000000000002A7 +t1272127390 +s679 +i"ConditionCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.h +c000000004BD31F9D000000000000029E +t1272127389 +s670 +i +i"Condition.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m +c000000004CBB51F3000000000000174B +t1287344627 +s5963 +i"ConditionController.h" +i"Condition.h" +i"HealthConditionController.h" +i"StatusConditionController.h" +i"AuraConditionController.h" +i"DistanceConditionController.h" +i"InventoryConditionController.h" +i"ComboPointConditionController.h" +i"AuraStackConditionController.h" +i"TotemConditionController.h" +i"TempEnchantConditionController.h" +i"TargetTypeConditionController.h" +i"TargetClassConditionController.h" +i"CombatCountConditionController.h" +i"ProximityCountConditionController.h" +i"SpellCooldownConditionController.h" +i"LastSpellCastConditionController.h" +i"RuneConditionController.h" +i"DurabilityConditionController.h" +i"PlayerLevelConditionController.h" +i"PlayerZoneConditionController.h" +i"QuestConditionController.h" +i"RouteRunCountConditionController.h" +i"RouteRunTimeConditionController.h" +i"InventoryFreeConditionController.h" +i"MobsKilledConditionController.h" +i"GateConditionController.h" +i"StrandStatusConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.h +c000000004CBB04F600000000000014CE +t1287324918 +s5326 +i +i"MemoryAccess.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m +c000000004CBB4ACE000000000000E6B2 +t1287342798 +s59058 +i"Controller.h" +i"NoAccessApplication.h" +i"BotController.h" +i"MobController.h" +i"NodeController.h" +i"SpellController.h" +i"InventoryController.h" +i"WaypointController.h" +i"ProcedureController.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"PlayersController.h" +i"CorpseController.h" +i"OffsetController.h" +i"StatisticsController.h" +i"ObjectsController.h" +i"PvPController.h" +i"ProfileController.h" +i"CGSPrivate.h" +i"MemoryAccess.h" +i"Offsets.h" +i"NSNumberToHexString.h" +i"NSString+URLEncode.h" +i"NSString+Extras.h" +i"Mob.h" +i"Item.h" +i"Node.h" +i"Player.h" +i"PTHeader.h" +i"Position.h" +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.h +c000000004BD31F9D00000000000006EC +t1272127389 +s1772 +i +i"WoWObject.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m +c000000004BD31F9D0000000000000499 +t1272127389 +s1177 +i"Corpse.h" +i"WoWObject.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.h +c000000004BD31F9D00000000000001B6 +t1272127389 +s438 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m +c000000004BD31F9D00000000000008CC +t1272127389 +s2252 +i"CorpseController.h" +i"Corpse.h" +i"MemoryAccess.h" +i"Controller.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.h +c000000004CB726E40000000000002FEB +t1287071460 +s12267 +i +i"ClientDbDefines.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m +c000000004CB727500000000000001843 +t1287071568 +s6211 +i"DatabaseManager.h" +i"Controller.h" +i"OffsetController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dead.png +c000000004BD31F9E000000000000017B +t1272127390 +s379 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight.png +c000000004BD31F9D0000000000001D6E +t1272127389 +s7534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight_Small.gif +c000000004BD31F9D0000000000000487 +t1272127389 +s1159 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +c000000004BD31F9D000000000000B02B +t1272127389 +s45099 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.h +c000000004BD31F9E0000000000000130 +t1272127390 +s304 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m +c000000004BD31F9E0000000000000409 +t1272127390 +s1033 +i"DelayActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +c000000004BD31F9E000000000000A666 +t1272127390 +s42598 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.h +c000000004BD31F9E000000000000023F +t1272127390 +s575 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m +c000000004BD31F9E0000000000000851 +t1272127390 +s2129 +i"DistanceConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female.png +c000000004BD31F9E000000000000261F +t1272127390 +s9759 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female_Small.gif +c000000004BD31F9E00000000000005EA +t1272127390 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male.png +c000000004BD31F9E0000000000002681 +t1272127390 +s9857 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male_Small.gif +c000000004BD31F9E00000000000005EA +t1272127390 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid.png +c000000004BD31F9E00000000000021E4 +t1272127390 +s8676 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid_Small.gif +c000000004BD31F9D0000000000000174 +t1272127389 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +c000000004BD31F9E000000000000BDFD +t1272127390 +s48637 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.h +c000000004BD31F9D000000000000019F +t1272127389 +s415 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m +c000000004BD31F9D00000000000006A5 +t1272127389 +s1701 +i"DurabilityConditionController.h" +i"ConditionController.h" +i"Condition.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female.png +c000000004BD31F9E0000000000001EED +t1272127390 +s7917 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female_Small.gif +c000000004BD31F9D000000000000014A +t1272127389 +s330 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male.png +c000000004BD31F9D000000000000250F +t1272127389 +s9487 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male_Small.gif +c000000004BD31F9E000000000000015E +t1272127390 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/Gathering.plist +c000000004BD31F980000000000002D8D +t1272127384 +s11661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/InfoPlist.strings +c000000004CB7999100000000000000D8 +t1287100817 +s216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Errors.h +c000000004C054649000000000000086E +t1275414089 +s2158 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.h +c000000004BD31F9D0000000000000354 +t1272127389 +s852 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m +c000000004CB7727C0000000000000FCC +t1287090812 +s4044 +i"EventController.h" +i"Controller.h" +i"BotController.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"Player.h" +i"MemoryAccess.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FactionTemplate.plist +c000000004BD31F9D000000000003A721 +t1272127389 +s239393 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Female.png +c000000004BD31F9D0000000000001A56 +t1272127389 +s6742 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.h +c000000004BF95D2B00000000000007E8 +t1274633515 +s2024 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m +c000000004BF95EC3000000000000241B +t1274633923 +s9243 +i"FileController.h" +i"FileObject.h" +i"RouteCollection.h" +i"CombatProfile.h" +i"MailActionProfile.h" +i"Behavior.h" +i"PvPBehavior.h" +i"RouteSet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.h +c000000004BD31F9E000000000000064E +t1272127390 +s1614 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m +c000000004BF97BF20000000000000E1B +t1274641394 +s3611 +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.h +c000000004BD31F9D0000000000000601 +t1272127389 +s1537 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m +c000000004CBB026900000000000040A1 +t1287324265 +s16545 +i"FishController.h" +i"Controller.h" +i"NodeController.h" +i"PlayerDataController.h" +i"BotController.h" +i"InventoryController.h" +i"LootController.h" +i"SpellController.h" +i"ActionMenusController.h" +i"MovementController.h" +i"Offsets.h" +i"Errors.h" +i"Node.h" +i"Position.h" +i"MemoryAccess.h" +i"Player.h" +i"Item.h" +i"Spell.h" +i"PTHeader.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/French.lproj/Gathering.plist +c000000004BD31F970000000000002BD2 +t1272127383 +s11218 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Friendly.png +c000000004BD31F9D0000000000000439 +t1272127389 +s1081 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +c000000004BD31F9D000000000000C610 +t1272127389 +s50704 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.h +c000000004BD31F9D0000000000000195 +t1272127389 +s405 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m +c000000004BD31F9D0000000000000634 +t1272127389 +s1588 +i"GateConditionController.h" +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Globals.h +c000000004BD31F9D0000000000000107 +t1272127389 +s263 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female.png +c000000004BD31F9D00000000000020AF +t1272127389 +s8367 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female_Small.gif +c000000004BD31F9D000000000000015A +t1272127389 +s346 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male.png +c000000004BD31F9D0000000000002655 +t1272127389 +s9813 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male_Small.gif +c000000004BD31F9D0000000000000175 +t1272127389 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.h +c000000004BD31F9D00000000000002B1 +t1272127389 +s689 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m +c000000004BD31F9D00000000000024C7 +t1272127389 +s9415 +i"GrabWindow.h" +i"CGSPrivate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl Registration Ticket.growlRegDict +c000000004BD31F9D00000000000003B2 +t1272127389 +s946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework +c000000004BD31F9300000000000000EE +t1272127379 +s238 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework/Growl +c000000004BD31F930000000000020BE4 +t1272127379 +s134116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework/Headers/GrowlApplicationBridge.h +c000000004BD31F9300000000000074E2 +t1272127379 +s29922 +i +i +i"GrowlDefines.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework/Headers/GrowlDefines.h +c000000004BD31F930000000000003D75 +t1272127379 +s15733 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +c000000004CBB58F30000000000010EE1 +t1287346419 +s69345 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.h +c000000004BD31F9D00000000000001C2 +t1272127389 +s450 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m +c000000004CBB51F30000000000000908 +t1287344627 +s2312 +i"HealthConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HordeCrest.gif +c000000004BD31F9D00000000000001A4 +t1272127389 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hostile.png +c000000004BD31F9D0000000000000436 +t1272127389 +s1078 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HotkeyFinished.png +c000000004BD31F9D00000000000015F4 +t1272127389 +s5620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female.png +c000000004BD31F9D0000000000002452 +t1272127389 +s9298 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female_Small.gif +c000000004BD31F9E000000000000015E +t1272127390 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male.png +c000000004BD31F9D000000000000257F +t1272127389 +s9599 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male_Small.gif +c000000004BD31F9D000000000000016B +t1272127389 +s363 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter.png +c000000004BD31F9D0000000000001819 +t1272127389 +s6169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter_Small.gif +c000000004BD31F9E000000000000012D +t1272127390 +s301 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Fishingpole_03.png +c000000004BD31F9D0000000000001D4E +t1272127389 +s7502 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gear_01.png +c000000004BD31F9D00000000000016EE +t1272127389 +s5870 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gem_Bloodstone_01.png +c000000004BD31F9D0000000000001746 +t1272127389 +s5958 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Blue.png +c000000004BD31F9D00000000000015C1 +t1272127389 +s5569 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Bronze.png +c000000004BD31F9D000000000000144B +t1272127389 +s5195 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Orb_05.png +c000000004BD31F9D0000000000001479 +t1272127389 +s5241 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.h +c000000004BD31F9D00000000000001EE +t1272127389 +s494 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m +c000000004BD31F9D000000000000052D +t1272127389 +s1325 +i"IgnoreEntry.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.h +c000000004BD31F9D000000000000015D +t1272127389 +s349 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m +c000000004BD31F9D0000000000000B69 +t1272127389 +s2921 +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcut.tif +c000000004BD31F9900000000000001A4 +t1272127385 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutPressed.tif +c000000004BD31F9900000000000001A6 +t1272127385 +s422 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutRollover.tif +c000000004BD31F9900000000000001A4 +t1272127385 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRSnapback.tiff +c000000004BD31F990000000000006594 +t1272127385 +s26004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +c000000004BD31F9D000000000000B753 +t1272127389 +s46931 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.h +c000000004BD31F9E00000000000001B9 +t1272127390 +s441 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m +c000000004BD31F9E00000000000008BB +t1272127390 +s2235 +i"InteractNPCActionController.h" +i"ActionController.h" +i"Unit.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +c000000004BD31F9E000000000000B772 +t1272127390 +s46962 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.h +c000000004BD31F9D00000000000001CC +t1272127389 +s460 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m +c000000004BD31F9D00000000000008F6 +t1272127389 +s2294 +i"InteractObjectActionController.h" +i"ActionController.h" +i"Node.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractWithTarget.png +c000000004BD31F9E000000000001B5F5 +t1272127390 +s112117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InterfaceBars.png +c000000004BD31F9D00000000000246FA +t1272127389 +s149242 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +c000000004BD31F9D000000000000CF51 +t1272127389 +s53073 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.h +c000000004BD31F9D000000000000022C +t1272127389 +s556 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m +c000000004BD31F9D0000000000000AE1 +t1272127389 +s2785 +i"InventoryConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.h +c000000004BF97FD50000000000000BAC +t1274642389 +s2988 +i +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m +c000000004CBB2472000000000000688F +t1287332978 +s26767 +i"ObjectsController.h" +i"PlayerDataController.h" +i"MacroController.h" +i"BotController.h" +i"NodeController.h" +i"InventoryController.h" +i"Controller.h" +i"MemoryViewController.h" +i"OffsetController.h" +i"Offsets.h" +i"Item.h" +i"WoWObject.h" +i"Player.h" +i"Node.h" +i"MailActionProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +c000000004BD31F9D000000000000BB84 +t1272127389 +s48004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.h +c000000004BD31F9D00000000000001A5 +t1272127389 +s421 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m +c000000004BD31F9D0000000000000662 +t1272127389 +s1634 +i"InventoryFreeConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.h +c000000004CAA74250000000000000603 +t1286239269 +s1539 +i +i"MemoryAccess.h" +i"WoWObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m +c000000004CB722800000000000006F1C +t1287070336 +s28444 +i"Item.h" +i"ObjectConstants.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +c000000004BD31F9D000000000000C16A +t1272127389 +s49514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.h +c000000004BD31F9D00000000000001CB +t1272127389 +s459 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m +c000000004BD31F9D000000000000091A +t1272127389 +s2330 +i"ItemActionController.h" +i"ActionController.h" +i"Item.h" +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +c000000004BD31F9D0000000000008C28 +t1272127389 +s35880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.h +c000000004BD31F9D0000000000000108 +t1272127389 +s264 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m +c000000004BD31F9D0000000000000311 +t1272127389 +s785 +i"JumpActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +c000000004BD31F9D000000000000ACC8 +t1272127389 +s44232 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.h +c000000004BD31F9D00000000000001A7 +t1272127389 +s423 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m +c000000004BD31F9D00000000000005F3 +t1272127389 +s1523 +i"JumpToWaypointActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Keybindings.png +c000000004BD31F9E000000000000FFF5 +t1272127390 +s65525 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +c000000004BD31F9D000000000000CDE8 +t1272127389 +s52712 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.h +c000000004BD31F9D00000000000001C7 +t1272127389 +s455 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m +c000000004BD31F9E00000000000007CB +t1272127390 +s1995 +i"LastSpellCastConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.h +c000000004BF875BA00000000000006AC +t1274574266 +s1708 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m +c000000004CBCBFD3000000000000087D +t1287438291 +s2173 +i"LogController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.h +c000000004BD31F9D00000000000003B8 +t1272127389 +s952 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m +c000000004CB7727C0000000000001FFB +t1287090812 +s8187 +i +i"LootController.h" +i"Controller.h" +i"InventoryController.h" +i"ChatController.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"MacroController.h" +i"Item.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.h +c000000004CB7999D0000000000000110 +t1287100829 +s272 +i +i"lua.h" +i"lualib.h" +i"lauxlib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m +c000000004CB7997D00000000000000CE +t1287100797 +s206 +i"LuaController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.h +c000000004BD31F9D000000000000024A +t1272127389 +s586 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m +c000000004BD31F9D00000000000003A8 +t1272127389 +s936 +i"Macro.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +c000000004BD31F9D000000000000C188 +t1272127389 +s49544 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.h +c000000004BD31F9D00000000000001CE +t1272127389 +s462 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m +c000000004BD31F9D000000000000093F +t1272127389 +s2367 +i"ActionController.h" +i"MacroActionController.h" +i"Action.h" +i"Macro.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.h +c000000004BD31F9D00000000000005A1 +t1272127389 +s1441 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m +c000000004CB772F4000000000000296F +t1287090932 +s10607 +i +i"MacroController.h" +i"Controller.h" +i"BotController.h" +i"ActionMenusController.h" +i"PlayerDataController.h" +i"AuraController.h" +i"ChatController.h" +i"OffsetController.h" +i"Player.h" +i"MemoryAccess.h" +i"Macro.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macros.plist +c000000004C054649000000000000229C +t1275414089 +s8860 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage.png +c000000004BD31F9D00000000000022B0 +t1272127389 +s8880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage_Small.gif +c000000004BD31F9D0000000000000156 +t1272127389 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mail.png +c000000004BD31F9E0000000000000B48 +t1272127390 +s2888 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +c000000004BCC9972000000000000B0CC +t1271699826 +s45260 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.h +c000000004BF978C600000000000005F3 +t1274640582 +s1523 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m +c000000004BF97A370000000000000D07 +t1274640951 +s3335 +i"MailActionController.h" +i"ActionController.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.h +c000000004BD31F9D00000000000008A7 +t1272127389 +s2215 +i +i"Profile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m +c000000004BD31F9D0000000000001796 +t1272127389 +s6038 +i"MailActionProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +c000000004CBB0AD000000000000D3833 +t1287326416 +s866355 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Male.png +c000000004BD31F9D00000000000019AB +t1272127389 +s6571 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +c000000004BFBE6D40000000000051155 +t1274799828 +s332117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.h +c000000004BE9F11C0000000000000B2E +t1273622812 +s2862 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m +c000000004CB775C2000000000000254F +t1287091650 +s9551 +i"MemoryAccess.h" +i +i +i"Globals.h" +i"ToolCommon.h" +i"BetterAuthorizationSampleLib.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.h +c000000004BFBE56B00000000000011B6 +t1274799467 +s4534 +i +i"MemoryAccess.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m +c000000004CBB0AF8000000000000B8B7 +t1287326456 +s47287 +i"MemoryViewController.h" +i"Controller.h" +i"OffsetController.h" +i"InventoryController.h" +i"MobController.h" +i"NodeController.h" +i"PlayersController.h" +i"Item.h" +i"WoWObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.h +c000000004BD31F9D00000000000003B1 +t1272127389 +s945 +i +i"Position.h" +i"Unit.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m +c000000004CAA7C250000000000002676 +t1286241317 +s9846 +i"Mob.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.h +c000000004BD31F9D00000000000006D7 +t1272127389 +s1751 +i +i"Mob.h" +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m +c000000004C054649000000000000584E +t1275414089 +s22606 +i +i"MobController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"CombatController.h" +i"MovementController.h" +i"AuraController.h" +i"BotController.h" +i"SpellController.h" +i"ObjectsController.h" +i"MemoryAccess.h" +i"CombatProfile.h" +i"Mob.h" +i"Waypoint.h" +i"Position.h" +i"Offsets.h" +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +c000000004BD31F9D000000000000D34A +t1272127389 +s54090 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.h +c000000004BD31F9D00000000000002EE +t1272127389 +s750 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m +c000000004BD31F9D0000000000000855 +t1272127389 +s2133 +i"MobsKilledConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.h +c000000004C054649000000000000139C +t1275414089 +s5020 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m +c000000004C05464900000000000187D5 +t1275414089 +s100309 +i"MovementController.h" +i"Player.h" +i"Node.h" +i"Unit.h" +i"Route.h" +i"RouteSet.h" +i"RouteCollection.h" +i"Mob.h" +i"CombatProfile.h" +i"Controller.h" +i"BotController.h" +i"CombatController.h" +i"OffsetController.h" +i"PlayerDataController.h" +i"AuraController.h" +i"MacroController.h" +i"BlacklistController.h" +i"WaypointController.h" +i"MobController.h" +i"StatisticsController.h" +i"ProfileController.h" +i"BindingsController.h" +i"InventoryController.h" +i"Profile.h" +i"ProfileController.h" +i"MailActionProfile.h" +i"Action.h" +i"Rule.h" +i"Offsets.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.h +c000000004C34885E0000000000000145 +t1278511198 +s325 +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m +c000000004C34885E0000000000000253 +t1278511198 +s595 +i"NSData+SockAddr.h" +i"sys/socket.h" +i"netinet/in.h" +i"arpa/inet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.h +c000000004BD31F9D00000000000000C3 +t1272127389 +s195 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m +c000000004BD31F9D000000000000015E +t1272127389 +s350 +i"NSNumberToHexString.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.h +c000000004BD31F9D00000000000000E9 +t1272127389 +s233 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m +c000000004BD31F9D000000000000024E +t1272127389 +s590 +i"NSString+Extras.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.h +c000000004BD31F9D0000000000000102 +t1272127389 +s258 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m +c000000004BD31F9D00000000000001D1 +t1272127389 +s465 +i"NSString+URLEncode.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Neutral.png +c000000004BD31F9D0000000000000457 +t1272127389 +s1111 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NeutralCrest.gif +c000000004BD31F9D0000000000000162 +t1272127389 +s354 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female.png +c000000004BD31F9D0000000000002596 +t1272127389 +s9622 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female_Small.gif +c000000004BD31F9D0000000000000173 +t1272127389 +s371 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male.png +c000000004BD31F9D0000000000002613 +t1272127389 +s9747 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male_Small.gif +c000000004BD31F9E0000000000000160 +t1272127390 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.h +c000000004BD31F9D000000000000012F +t1272127389 +s303 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m +c000000004BD31F9D00000000000002F2 +t1272127389 +s754 +i"NoAccessApplication.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.h +c000000004BD31F9D0000000000000CF4 +t1272127389 +s3316 +i +i"WoWObject.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m +c000000004CAA79BB0000000000003754 +t1286240699 +s14164 +i"Node.h" +i"ObjectConstants.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.h +c000000004BD31F9D000000000000072B +t1272127389 +s1835 +i +i"Node.h" +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m +c000000004C0546490000000000003F8E +t1275414089 +s16270 +i"NodeController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"MovementController.h" +i"ObjectsController.h" +i"Waypoint.h" +i"Offsets.h" +i"ImageAndTextCell.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ActiveQuestIcon.png +c000000004BD31F930000000000000175 +t1272127379 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/AvailableQuestIcon.png +c000000004BD31F930000000000000156 +t1272127379 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BankerGossipIcon.png +c000000004BD31F930000000000000245 +t1272127379 +s581 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BinderGossipIcon.png +c000000004BD31F9300000000000002C4 +t1272127379 +s708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Chicken.png +c000000004BD31F9300000000000003A9 +t1272127379 +s937 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/GossipGossipIcon.png +c000000004BD31F9300000000000001A5 +t1272127379 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Innkeeper.png +c000000004BD31F930000000000000391 +t1272127379 +s913 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/MinimapGuideFlag.png +c000000004BD31F930000000000000315 +t1272127379 +s789 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/PetitionGossipIcon.png +c000000004BD31F9300000000000001AD +t1272127379 +s429 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Repair.png +c000000004BD31F930000000000000171 +t1272127379 +s369 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ResourceBlip.png +c000000004BD31F930000000000000249 +t1272127379 +s585 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Scroll.png +c000000004BD31F93000000000000037B +t1272127379 +s891 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Stable.png +c000000004BD31F930000000000000212 +t1272127379 +s530 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TabardGossipIcon.png +c000000004BD31F9300000000000001A5 +t1272127379 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TaxiGossipIcon.png +c000000004BD31F93000000000000021C +t1272127379 +s540 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TrainerGossipIcon.png +c000000004BD31F930000000000000251 +t1272127379 +s593 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/VendorGossipIcon.png +c000000004BD31F93000000000000020F +t1272127379 +s527 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/WarnTriangle.png +c000000004BD31F930000000000000442 +t1272127379 +s1090 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectConstants.h +c000000004CBB406700000000000006A9 +t1287340135 +s1705 +i"Objects_Enum.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.h +c000000004BD31F9D000000000000068E +t1272127389 +s1678 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m +c000000004BD31F9D00000000000018CF +t1272127389 +s6351 +i"ObjectController.h" +i"Controller.h" +i"PlayerDataController.h" +i"WoWObject.h" +i"MemoryAccess.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +c000000004BD31F9D000000000005A57A +t1272127389 +s370042 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.h +c000000004BD31F9D00000000000008D3 +t1272127389 +s2259 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m +c000000004BD31F9D0000000000003DB2 +t1272127389 +s15794 +i"ObjectsController.h" +i"PlayersController.h" +i"MovementController.h" +i"PlayerDataController.h" +i"Controller.h" +i"MobController.h" +i"NodeController.h" +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects_Enum.h +c000000004CB8AD2000000000000042FB +t1287171360 +s17147 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.h +c000000004CB8BD36000000000000068E +t1287175478 +s1678 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m +c000000004CB8BCD000000000000038E5 +t1287175376 +s14565 +i"OffsetController.h" +i"MemoryAccess.h" +i"Controller.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetSignatures.plist +c000000004CBB5CEF0000000000006135 +t1287347439 +s24885 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Offsets.h +c000000004CBB9F4000000000000029E7 +t1287364416 +s10727 +i"ObjectConstants.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female.png +c000000004BD31F9E000000000000212D +t1272127390 +s8493 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female_Small.gif +c000000004BD31F9D0000000000000145 +t1272127389 +s325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male.png +c000000004BD31F9D0000000000002417 +t1272127389 +s9239 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male_Small.gif +c000000004BD31F9E000000000000015B +t1272127390 +s347 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHeader.h +c000000004BD31F9D0000000000000117 +t1272127389 +s279 +i"PTHotkey.h" +i"PTKeyCombo.h" +i"PTHotkeyCenter.h" +i"PTKeyBroadcaster.h" +i"PTKeyCodeTranslator.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.h +c000000004BD31F9E00000000000002CD +t1272127390 +s717 +i +i"PTKeyCombo.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m +c000000004BD31F9E0000000000000606 +t1272127390 +s1542 +i"PTHotKey.h" +i"PTHotKeyCenter.h" +i"PTKeyCombo.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.h +c000000004BD31F9E00000000000002AA +t1272127390 +s682 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m +c000000004BD31F9E00000000000016EA +t1272127390 +s5866 +i"PTHotKeyCenter.h" +i"PTHotKey.h" +i"PTKeyCombo.h" +i +i"PTNSObjectAdditions.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.h +c000000004BD31F9E00000000000001E5 +t1272127390 +s485 +i +i"ProteinDefines.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m +c000000004BD31F9E0000000000000688 +t1272127390 +s1672 +i"PTKeyBroadcaster.h" +i"PTKeyCombo.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.h +c000000004BD31F9D0000000000000285 +t1272127389 +s645 +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m +c000000004BD31F9D0000000000000A4A +t1272127389 +s2634 +i"PTKeyCodeTranslator.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.h +c000000004BD31F9D00000000000002B9 +t1272127389 +s697 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m +c000000004BD31F9D00000000000006D0 +t1272127389 +s1744 +i"PTKeyCombo.h" +i"PTKeyCodeTranslator.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PVP.png +c000000004BD31F9D0000000000002D75 +t1272127389 +s11637 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin.png +c000000004BD31F9D00000000000022C5 +t1272127389 +s8901 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin_Small.gif +c000000004BD31F9D0000000000000172 +t1272127389 +s370 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.h +c000000004CBB2C1400000000000006E8 +t1287334932 +s1768 +i +i"Unit.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m +c000000004CBB40AB00000000000011D5 +t1287340203 +s4565 +i"Player.h" +i"WoWObject.h" +i"Mob.h" +i"Offsets.h" +i"OffsetController.h" +i"PlayersController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +c000000004BD31F9E000000000002F800 +t1272127390 +s194560 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.h +c000000004CBB2D250000000000001549 +t1287335205 +s5449 +i +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m +c000000004CBBA08E000000000000C35B +t1287364750 +s50011 +i"PlayerDataController.h" +i"Offsets.h" +i"MemoryAccess.h" +i"AuraController.h" +i"Controller.h" +i"MobController.h" +i"SpellController.h" +i"CombatController.h" +i"MemoryViewController.h" +i"BotController.h" +i"NodeController.h" +i"OffsetController.h" +i"MobController.h" +i"BindingsController.h" +i"Spell.h" +i"Player.h" +i"Position.h" +i"ImageAndTextCell.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +c000000004BD31F9D000000000000B7BB +t1272127389 +s47035 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.h +c000000004BD31F9D00000000000001A1 +t1272127389 +s417 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m +c000000004BD31F9D000000000000054F +t1272127389 +s1359 +i"PlayerLevelConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +c000000004BD31F9E000000000000B70D +t1272127390 +s46861 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.h +c000000004BD31F9D00000000000001C8 +t1272127389 +s456 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m +c000000004BD31F9D0000000000000589 +t1272127389 +s1417 +i"PlayerZoneConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.h +c000000004BD31F9E000000000000059C +t1272127390 +s1436 +i +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m +c000000004BF95B9500000000000036CE +t1274633109 +s14030 +i"PlayersController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"MovementController.h" +i"ObjectsController.h" +i"ImageAndTextCell.h" +i"Player.h" +i"Unit.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch +c000000004CBAFF1C0000000000000414 +t1287323420 +s1044 +i +i"LogController.h" +i"Globals.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.h +c000000004BD31F9D0000000000000451 +t1272127389 +s1105 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m +c000000004BD31F9D0000000000001A77 +t1272127389 +s6775 +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest.png +c000000004BD31F9D0000000000001B68 +t1272127389 +s7016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest_Small.gif +c000000004BD31F9D000000000000014C +t1272127389 +s332 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.h +c000000004BD31F9D00000000000002D3 +t1272127389 +s723 +i +i"Rule.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m +c000000004BF96FE90000000000000BED +t1274638313 +s3053 +i"Procedure.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.h +c000000004BF9704600000000000006D4 +t1274638406 +s1748 +i +i"Behavior.h" +i"Procedure.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m +c000000004CBAFEFF0000000000005187 +t1287323391 +s20871 +i"ProcedureController.h" +i"SpellController.h" +i"InventoryController.h" +i"RuleEditor.h" +i"Rule.h" +i"FileController.h" +i"FileObject.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.h +c000000004BD32285000000000000054D +t1272128133 +s1357 +i +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m +c000000004BF86FCB0000000000000860 +t1274572747 +s2144 +i"Profile.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.h +c000000004C0546490000000000000D76 +t1275414089 +s3446 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m +c000000004C0546490000000000005F58 +t1275414089 +s24408 +i"ProfileController.h" +i"Profile.h" +i"MailActionProfile.h" +i"CombatProfile.h" +i"Player.h" +i"Mob.h" +i"FileController.h" +i"Controller.h" +i"PlayersController.h" +i"MobController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +c000000004C05464900000000000B29D3 +t1275414089 +s731603 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +c000000004BD31F9D0000000000008FF2 +t1272127389 +s36850 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.h +c000000004BD31F9D0000000000000200 +t1272127389 +s512 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m +c000000004BD31F9D0000000000000854 +t1272127389 +s2132 +i"ProximityCountConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +c000000004C054649000000000003B733 +t1275414089 +s243507 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.h +c000000004C0546490000000000000BA2 +t1275414089 +s2978 +i +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m +c000000004BD31F9D0000000000002EBA +t1272127389 +s11962 +i"PvPBehavior.h" +i"Battleground.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.h +c000000004C0546490000000000000568 +t1275414089 +s1384 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m +c000000004BF9787C00000000000029F0 +t1274640508 +s10736 +i"PvPController.h" +i"FileController.h" +i"PvPBehavior.h" +i"Battleground.h" +i"FileObject.h" +i"RouteCollection.h" +i"WaypointController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.h +c000000004BD31F9D00000000000003FD +t1272127389 +s1021 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m +c000000004CB725590000000000002B9C +t1287071065 +s11164 +i"Quest.h" +i"QuestItem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +c000000004BD31F9E0000000000008DC7 +t1272127390 +s36295 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.h +c000000004BD31F9D0000000000000136 +t1272127389 +s310 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m +c000000004BD31F9D0000000000000559 +t1272127389 +s1369 +i"QuestConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.h +c000000004BD31F9D0000000000000269 +t1272127389 +s617 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m +c000000004CBB2BD900000000000012A4 +t1287334873 +s4772 +i"QuestController.h" +i"Controller.h" +i"MemoryAccess.h" +i"PlayerDataController.h" +i"Player.h" +i"Quest.h" +i"QuestItem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +c000000004BD31F9D0000000000008C56 +t1272127389 +s35926 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.h +c000000004BD31F9D0000000000000112 +t1272127389 +s274 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m +c000000004BD31F9D000000000000032F +t1272127389 +s815 +i"QuestGrabActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.h +c000000004BD31F9D0000000000000155 +t1272127389 +s341 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m +c000000004BD31F9D000000000000035E +t1272127389 +s862 +i"QuestItem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +c000000004BD31F9E0000000000008C58 +t1272127390 +s35928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.h +c000000004BD31F9E0000000000000116 +t1272127390 +s278 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m +c000000004BD31F9E000000000000033B +t1272127390 +s827 +i"QuestTurnInActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +c000000004BD31F9D0000000000008C5A +t1272127389 +s35930 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.h +c000000004BD31F9D000000000000010C +t1272127389 +s268 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m +c000000004BD31F9D000000000000031D +t1272127389 +s797 +i"RepairActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Result.png +c000000004BD31F9D000000000000B117 +t1272127389 +s45335 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +c000000004BD31F9E0000000000008C4D +t1272127390 +s35917 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.h +c000000004BD31F9D0000000000000118 +t1272127389 +s280 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m +c000000004BD31F9D0000000000000341 +t1272127389 +s833 +i"ReverseRouteActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue.png +c000000004BD31F9D0000000000002013 +t1272127389 +s8211 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue_Small.gif +c000000004BD31F9D0000000000000158 +t1272127389 +s344 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.h +c000000004BD31F9D00000000000002CA +t1272127389 +s714 +i +i"Waypoint.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m +c000000004BD31F9D0000000000000DB8 +t1272127389 +s3512 +i"Route.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.h +c000000004BD31F9D0000000000000302 +t1272127389 +s770 +i +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m +c000000004BF95B9400000000000010DA +t1274633108 +s4314 +i"RouteCollection.h" +i"FileObject.h" +i"RouteSet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +c000000004BD31F9D000000000000BE6C +t1272127389 +s48748 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.h +c000000004BD31F9D00000000000001A5 +t1272127389 +s421 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m +c000000004BD31F9D000000000000055F +t1272127389 +s1375 +i"RouteRunCountConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +c000000004BD31F9D000000000000BED6 +t1272127389 +s48854 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.h +c000000004BD31F9D00000000000001A3 +t1272127389 +s419 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m +c000000004BD31F9D0000000000000556 +t1272127389 +s1366 +i"RouteRunTimeConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.h +c000000004BD31F9E00000000000002FD +t1272127390 +s765 +i +i"Route.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m +c000000004BD31F9E0000000000000BB2 +t1272127390 +s2994 +i"RouteSet.h" +i"FileObject.h" +i"RouteCollection.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.h +c000000004BD31F9D00000000000001DA +t1272127389 +s474 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m +c000000004BD31F9D0000000000001585 +t1272127389 +s5509 +i"RouteVisualizationView.h" +i"Route.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +c000000004CB77645000000000004E4D9 +t1287091781 +s320729 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.h +c000000004BD31F9D0000000000000482 +t1272127389 +s1154 +i +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m +c000000004BD31F9D0000000000000F62 +t1272127389 +s3938 +i"Rule.h" +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.h +c000000004BD31F9D000000000000055B +t1272127389 +s1371 +i +i"Rule.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m +c000000004C0546490000000000003685 +t1275414089 +s13957 +i"RuleEditor.h" +i"Unit.h" +i"Controller.h" +i"BotController.h" +i"SpellController.h" +i"InventoryController.h" +i"ActionMenusController.h" +i"ConditionCell.h" +i"BetterTableView.h" +i"BetterSegmentedControl.h" +i"HealthConditionController.h" +i"StatusConditionController.h" +i"AuraConditionController.h" +i"DistanceConditionController.h" +i"InventoryConditionController.h" +i"ComboPointConditionController.h" +i"AuraStackConditionController.h" +i"TotemConditionController.h" +i"TempEnchantConditionController.h" +i"TargetTypeConditionController.h" +i"TargetClassConditionController.h" +i"CombatCountConditionController.h" +i"ProximityCountConditionController.h" +i"SpellCooldownConditionController.h" +i"LastSpellCastConditionController.h" +i"RuneConditionController.h" +i"Macro.h" +i"Action.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +c000000004BD31F9E000000000000DCC5 +t1272127390 +s56517 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.h +c000000004BD31F9D00000000000001B6 +t1272127389 +s438 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m +c000000004BD31F9D0000000000000733 +t1272127389 +s1843 +i"RuneConditionController.h" +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.h +c000000004BD31F9D000000000000038B +t1272127389 +s907 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m +c000000004BD31F9E0000000000002042 +t1272127390 +s8258 +i"SaveData.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.h +c000000004BD31F9E0000000000000189 +t1272127390 +s393 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m +c000000004BD31F9E00000000000008EB +t1272127390 +s2283 +i"ScanGridView.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.h +c000000004BD31F9E000000000000016F +t1272127390 +s367 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m +c000000004CBAFEAA0000000000000858 +t1287323306 +s2136 +i"SecureUserDefaults.h" +i"UKKQueue.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman.png +c000000004BD31F9D0000000000001FE9 +t1272127389 +s8169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman_Small.gif +c000000004BD31F9D0000000000000163 +t1272127389 +s355 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework +c000000004BD31F9C00000000000000EE +t1272127388 +s238 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/CTGradient.h +c000000004BD31F9C0000000000000708 +t1272127388 +s1800 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRCommon.h +c000000004BD31F9C0000000000001DEB +t1272127388 +s7659 +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRKeyCodeTransformer.h +c000000004BD31F9C000000000000012E +t1272127388 +s302 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRRecorderCell.h +c000000004BD31F9C0000000000000D59 +t1272127388 +s3417 +i +i"SRCommon.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRRecorderControl.h +c000000004BD31F9C00000000000007E7 +t1272127388 +s2023 +i +i"SRRecorderCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRValidator.h +c000000004BD31F9C0000000000000342 +t1272127388 +s834 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/ShortcutRecorder.h +c000000004BD31F9C00000000000001E3 +t1272127388 +s483 +i +i +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/ShortcutRecorder +c000000004BD31F9C000000000003D010 +t1272127388 +s249872 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Skull.png +c000000004BD31F9D0000000000000335 +t1272127389 +s821 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework +c000000004BF983270000000000000110 +t1274643239 +s272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUAppcast.h +c000000004BB770BE0000000000000298 +t1270313150 +s664 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUAppcastItem.h +c000000004BB770BE000000000000048F +t1270313150 +s1167 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUUpdater.h +c000000004CAA684D0000000000001B1E +t1286236237 +s6942 +i"SUVersionComparisonProtocol.h" +i"SUVersionDisplayProtocol.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUVersionComparisonProtocol.h +c000000004BB770BE0000000000000303 +t1270313150 +s771 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUVersionDisplayProtocol.h +c000000004BB770BE0000000000000284 +t1270313150 +s644 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/Sparkle.h +c000000004BB770BE0000000000000218 +t1270313150 +s536 +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Sparkle +c000000004BB770BE00000000000493F0 +t1270313150 +s300016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.h +c000000004CB723000000000000000644 +t1287070464 +s1604 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m +c000000004CB725F70000000000004DC9 +t1287071223 +s19913 +i"Spell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +c000000004BD31F9D000000000000C17E +t1272127389 +s49534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.h +c000000004BD31F9D00000000000001D5 +t1272127389 +s469 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m +c000000004BD31F9D000000000000098E +t1272127389 +s2446 +i"SpellActionController.h" +i"ActionController.h" +i"Spell.h" +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.h +c000000004CB720DC000000000000098A +t1287069916 +s2442 +i +i"MemoryAccess.h" +i"Spell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m +c000000004CB7784D000000000000859F +t1287092301 +s34207 +i +i"SpellController.h" +i"Controller.h" +i"Offsets.h" +i"Spell.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"MacroController.h" +i"InventoryController.h" +i"BotController.h" +i"Behavior.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +c000000004BD31F9D000000000000BDAB +t1272127389 +s48555 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.h +c000000004BD31F9D00000000000001D1 +t1272127389 +s465 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m +c000000004BD31F9D0000000000000780 +t1272127389 +s1920 +i"SpellCooldownConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_FireResistanceTotem_01.png +c000000004BD31F9D0000000000001849 +t1272127389 +s6217 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_MindVision.png +c000000004BD31F9D0000000000001640 +t1272127389 +s5696 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_PrayerofSpirit.png +c000000004BD31F9E000000000000183F +t1272127390 +s6207 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Nature_PoisonCleansingTotem.png +c000000004BD31F9E0000000000001B00 +t1272127390 +s6912 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +c000000004CB728230000000000027E95 +t1287071779 +s163477 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +c000000004BD31F9E0000000000025D5E +t1272127390 +s154974 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.h +c000000004BD31F9D00000000000005A8 +t1272127389 +s1448 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m +c000000004BD31F9D0000000000001DB5 +t1272127389 +s7605 +i"StatisticsController.h" +i"Controller.h" +i"PlayerDataController.h" +i"LootController.h" +i"CombatController.h" +i"BotController.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +c000000004BD31F9D000000000000D1EC +t1272127389 +s53740 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.h +c000000004BD31F9D0000000000000225 +t1272127389 +s549 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m +c000000004BD31F9D000000000000086F +t1272127389 +s2159 +i"StatusConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +c000000004BD31F9D000000000000AE8B +t1272127389 +s44683 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.h +c000000004BD31F9E000000000000014B +t1272127390 +s331 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m +c000000004BD31F9E0000000000000604 +t1272127390 +s1540 +i"StrandStatusConditionController.h" +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +c000000004BD31F9D000000000000B74A +t1272127389 +s46922 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.h +c000000004BD31F9E00000000000001BF +t1272127390 +s447 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m +c000000004BD31F9E0000000000000925 +t1272127390 +s2341 +i"SwitchRouteActionController.h" +i"ActionController.h" +i"RouteSet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +c000000004BD31F9E0000000000011618 +t1272127390 +s71192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.h +c000000004BD31F9D000000000000021A +t1272127389 +s538 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m +c000000004BD31F9D0000000000000843 +t1272127389 +s2115 +i"TargetClassConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +c000000004BD31F9E00000000000044BA +t1272127390 +s17594 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.h +c000000004BD31F9D000000000000019B +t1272127389 +s411 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m +c000000004BD31F9D00000000000006CF +t1272127389 +s1743 +i"TargetTypeConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female.png +c000000004BD31F9D00000000000021D5 +t1272127389 +s8661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female_Small.gif +c000000004BD31F9E0000000000000160 +t1272127390 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male.png +c000000004BD31F9D000000000000263A +t1272127389 +s9786 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male_Small.gif +c000000004BD31F9E000000000000017A +t1272127390 +s378 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +c000000004BD31F9D00000000000088D0 +t1272127389 +s35024 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.h +c000000004BD31F9D00000000000001B3 +t1272127389 +s435 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m +c000000004BD31F9D00000000000006B6 +t1272127389 +s1718 +i"TempEnchantConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c +c000000004BD31F9D000000000000145F +t1272127389 +s5215 +i"ToolCommon.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.h +c000000004BD31F9D0000000000001203 +t1272127389 +s4611 +i"BetterAuthorizationSampleLib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +c000000004BD31F9D0000000000008839 +t1272127389 +s34873 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.h +c000000004BD31F9D000000000000016F +t1272127389 +s367 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m +c000000004BD31F9D0000000000000712 +t1272127389 +s1810 +i"TotemConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Trade_Engraving.png +c000000004BD31F9D0000000000001615 +t1272127389 +s5653 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.h +c000000004BD31F9D000000000000018A +t1272127389 +s394 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m +c000000004BD31F9D000000000000030E +t1272127389 +s782 +i"TransparentWindow.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female.png +c000000004BD31F9D00000000000023E9 +t1272127389 +s9193 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female_Small.gif +c000000004BD31F9D0000000000000175 +t1272127389 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male.png +c000000004BD31F9E000000000000251D +t1272127390 +s9501 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male_Small.gif +c000000004BD31F9E0000000000000168 +t1272127390 +s360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TypeShortcut.png +c000000004BD31F9D0000000000001B8E +t1272127389 +s7054 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.h +c000000004BD31F9E00000000000006B2 +t1272127390 +s1714 +i +i"UKFileWatcher.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m +c000000004BD31F9E0000000000001A2A +t1272127390 +s6698 +i"UKFNSubscribeFileWatcher.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.h +c000000004BD31F9D0000000000000890 +t1272127389 +s2192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m +c000000004BD31F9D000000000000065C +t1272127389 +s1628 +i +i"UKFileWatcher.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.h +c000000004BD31F9D00000000000014D6 +t1272127389 +s5334 +i +i +i +i"UKFileWatcher.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m +c000000004BD31F9D0000000000003A40 +t1272127389 +s14912 +i"UKKQueue.h" +i"UKMainThreadProxy.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.h +c000000004BD31F9E000000000000069F +t1272127390 +s1695 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m +c000000004BD31F9E0000000000000F4D +t1272127390 +s3917 +i"UKMainThreadProxy.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female.png +c000000004BD31F9E000000000000220B +t1272127390 +s8715 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female_Small.gif +c000000004BD31F9D000000000000016A +t1272127389 +s362 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male.png +c000000004BD31F9E0000000000002050 +t1272127390 +s8272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male_Small.gif +c000000004BD31F9D000000000000016D +t1272127389 +s365 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.h +c000000004CBB57080000000000004703 +t1287345928 +s18179 +i +i"WoWObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m +c000000004CBB56FC0000000000007D52 +t1287345916 +s32082 +i"Unit.h" +i"Offsets.h" +i"Condition.h" +i"SpellController.h" +i"PlayerDataController.h" +i"OffsetController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UnknownSmall.png +c000000004BD31F9E000000000000019C +t1272127390 +s412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +c000000004BD31F9D0000000000008C3B +t1272127389 +s35899 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.h +c000000004BD31F9D000000000000010C +t1272127389 +s268 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m +c000000004BD31F9D000000000000031D +t1272127389 +s797 +i"VendorActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock.png +c000000004BD31F9D0000000000002594 +t1272127389 +s9620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock_Small.gif +c000000004BD31F9D0000000000000174 +t1272127389 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior.png +c000000004BD31F9D0000000000001FA1 +t1272127389 +s8097 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior_Small.gif +c000000004BD31F9E0000000000000150 +t1272127390 +s336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.h +c000000004BD31F9D00000000000003B6 +t1272127389 +s950 +i +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m +c000000004BD31F9D0000000000000BA3 +t1272127389 +s2979 +i"Waypoint.h" +i"Action.h" +i"Procedure.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.h +c000000004BF94F5C00000000000005B4 +t1274629980 +s1460 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m +c000000004BF97B330000000000003265 +t1274641203 +s12901 +i"WaypointActionEditor.h" +i"Waypoint.h" +i"Rule.h" +i"Spell.h" +i"RouteCollection.h" +i"RouteSet.h" +i"MailActionProfile.h" +i"Action.h" +i"Condition.h" +i"ConditionCell.h" +i"ConditionController.h" +i"DurabilityConditionController.h" +i"InventoryConditionController.h" +i"PlayerLevelConditionController.h" +i"PlayerZoneConditionController.h" +i"QuestConditionController.h" +i"RouteRunTimeConditionController.h" +i"RouteRunCountConditionController.h" +i"InventoryFreeConditionController.h" +i"MobsKilledConditionController.h" +i"GateConditionController.h" +i"StrandStatusConditionController.h" +i"AuraConditionController.h" +i"SwitchRouteActionController.h" +i"RepairActionController.h" +i"SpellActionController.h" +i"ItemActionController.h" +i"MacroActionController.h" +i"DelayActionController.h" +i"JumpActionController.h" +i"QuestTurnInActionController.h" +i"QuestGrabActionController.h" +i"InteractObjectActionController.h" +i"InteractNPCActionController.h" +i"CombatProfileActionController.h" +i"VendorActionController.h" +i"MailActionController.h" +i"ReverseRouteActionController.h" +i"JumpToWaypointActionController.h" +i"WaypointController.h" +i"SpellController.h" +i"InventoryController.h" +i"MacroController.h" +i"ProfileController.h" +i"MobController.h" +i"NodeController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +c000000004BD31F9D000000000002FB48 +t1272127389 +s195400 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.h +c000000004C05464900000000000013DF +t1275414089 +s5087 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m +c000000004BF9786E000000000000C4C5 +t1274640494 +s50373 +i"WaypointController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MovementController.h" +i"MobController.h" +i"BotController.h" +i"CombatController.h" +i"SpellController.h" +i"InventoryController.h" +i"WaypointActionEditor.h" +i"RouteCollection.h" +i"RouteSet.h" +i"Route.h" +i"Waypoint.h" +i"Action.h" +i"Mob.h" +i"ActionMenusController.h" +i"FileController.h" +i"RouteVisualizationView.h" +i"BetterTableView.h" +i"PTHeader.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.h +c000000004CAA660D0000000000000A2E +t1286235661 +s2606 +i +i"MemoryAccess.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m +c000000004CBB092A000000000000233B +t1287325994 +s9019 +i"WoWObject.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/alarm.mp3 +c000000004BD31F9E0000000000001776 +t1272127390 +s6006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/appcast.xml +c000000004CBC6EA20000000000001E03 +t1287417506 +s7683 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/bad.tif +c000000004BD31F9D0000000000000218 +t1272127389 +s536 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h +t1287438294 +s32841 +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h +t1287438294 +s20877 +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +t1287417293 +s11988 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +t1287417295 +s18016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +t1287417293 +s40172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +t1287417293 +s8328 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +t1287417290 +s11168 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +t1287417289 +s55060 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +t1287417292 +s10688 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +t1287417296 +s13120 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +t1287417290 +s17004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +t1287417293 +s24852 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +t1287417290 +s3932 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +t1287417290 +s5388 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +t1287417296 +s31480 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +t1287417295 +s21976 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o +t1287089366 +s28328 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +t1287438300 +s561700 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +t1287417294 +s13036 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +t1287417291 +s12848 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +t1287438296 +s46956 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +t1287417293 +s25540 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +t1287417295 +s156020 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +t1287417292 +s9520 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +t1287417297 +s95428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +t1287417295 +s10620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o +t1274632557 +s392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +t1287417291 +s9736 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +t1287417290 +s15104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +t1287417289 +s10516 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +t1287417290 +s21556 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +t1287417288 +s145948 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +t1287417294 +s6312 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +t1287417294 +s7880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +t1287417297 +s8356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +t1287417295 +s6892 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +t1287417290 +s9276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +t1287417295 +s9032 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +t1287417294 +s10164 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +t1287417296 +s18932 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +t1287417295 +s11316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +t1287417293 +s28144 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +t1287417296 +s8708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +t1287417292 +s14220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +t1287417289 +s10140 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +t1287417292 +s8588 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +t1287417291 +s11652 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +t1287417295 +s11316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +t1287417295 +s11488 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +t1287417290 +s10596 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +t1287417289 +s87140 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +t1287417295 +s9104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +t1287417289 +s35868 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +t1287417295 +s11448 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +t1287417295 +s5772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +t1287417296 +s8512 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +t1287417294 +s9840 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +t1287438296 +s4224 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +t1287417294 +s15752 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o +t1287417298 +s980 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +t1287417292 +s7284 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +t1287417295 +s11504 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +t1287417294 +s20680 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +t1287417295 +s10960 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +t1287417296 +s19556 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +t1287417288 +s21400 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +t1287417288 +s71336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +t1287417288 +s22068 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +t1287417289 +s82872 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +t1287417295 +s9908 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +t1287417297 +s156704 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +t1287417292 +s4864 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +t1287417287 +s4432 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +t1287417292 +s3464 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +t1287417292 +s3320 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +t1287417292 +s5504 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +t1287417289 +s19428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +t1287417290 +s35964 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +t1287417296 +s22172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +t1287417296 +s47780 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +t1287417294 +s33944 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +t1287417291 +s9208 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +t1287417291 +s16608 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +t1287417290 +s6072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +t1287417291 +s7740 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +t1287417291 +s8624 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +t1287417291 +s10008 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +t1287417288 +s124464 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +t1287417295 +s9036 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +t1287417295 +s9212 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +t1287417291 +s59172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome +t1287438302 +s1722476 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList +c000000004CBC6DBD0000000000006493 +t1287417277 +s25747 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +t1287417288 +s18816 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +t1287417290 +s14892 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +t1287417290 +s48364 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +t1287417296 +s6152 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +t1287417297 +s55340 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +t1287417292 +s10048 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +t1287417296 +s32412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +t1287417296 +s29952 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +t1287417294 +s24632 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +t1287417295 +s8048 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +t1287417294 +s7752 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +t1287417295 +s5848 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +t1287417294 +s6272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +t1287417295 +s5888 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +t1287417295 +s5796 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +t1287417295 +s5900 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +t1287417288 +s14768 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +t1287417296 +s18264 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +t1287417295 +s9104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +t1287417295 +s9064 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +t1287417290 +s12384 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +t1287417290 +s13312 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +t1287417290 +s14592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +t1287417290 +s37404 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +t1287417294 +s9308 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o +t1274640793 +s20044 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +t1287417291 +s8624 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o +t1287092873 +s12492 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +t1287417289 +s39804 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +t1287417295 +s11536 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +t1287417289 +s80224 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +t1287417294 +s9648 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +t1287417294 +s19412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +t1287417290 +s9448 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +t1287417296 +s8616 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +t1287417295 +s11636 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +t1287417292 +s10096 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +t1287417292 +s9368 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +t1287417292 +s9032 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +t1287417291 +s584 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +t1287417292 +s9016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +t1287417292 +s3916 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +t1287417293 +s10524 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +t1287417293 +s1644 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +t1287417293 +s17768 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +t1287417293 +s9556 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +t1287417292 +s46584 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +t1287417295 +s5796 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +t1287417288 +s14588 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +t1287417295 +s54460 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +t1287417289 +s102772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +t1287417289 +s23180 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +t1287417297 +s31616 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +t1287417297 +s21072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +t1287417297 +s26508 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +t1287417297 +s25316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +t1287417297 +s16700 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +t1287417297 +s19116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +t1287417297 +s19324 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +t1287417297 +s4808 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +t1287417297 +s10780 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +t1287417297 +s18300 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +t1287417297 +s2428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +t1287417297 +s20984 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +t1287417297 +s20432 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +t1287417297 +s12340 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +t1287417297 +s2776 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +t1287417297 +s15488 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +t1287417297 +s6908 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +t1287417297 +s1260 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +t1287417298 +s10424 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +t1287417298 +s35736 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +t1287417298 +s11740 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +t1287417298 +s8392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +t1287417298 +s23928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +t1287417298 +s16308 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +t1287417298 +s10136 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +t1287417298 +s8052 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +t1287417298 +s12236 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +t1287417298 +s21272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +t1287417298 +s3220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +t1287417287 +s3492 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +t1287417298 +s7176 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +t1287417308 +s14948 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +t1287417312 +s22428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +t1287417309 +s57100 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +t1287417309 +s11816 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +t1287417302 +s13816 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +t1287417301 +s75268 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +t1287417307 +s13360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +t1287417314 +s15772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +t1287417302 +s21008 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +t1287417305 +s32944 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +t1287417302 +s5808 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +t1287417302 +s10276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +t1287417314 +s41692 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +t1287417311 +s35240 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o +t1287089382 +s38944 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +t1287438301 +s774064 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +t1287417309 +s16612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +t1287417306 +s18308 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +t1287438297 +s68220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +t1287417309 +s33644 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +t1287417312 +s200580 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +t1287417308 +s12084 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +t1287417315 +s125768 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +t1287417313 +s14276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o +t1274632558 +s364 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +t1287417306 +s12328 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +t1287417302 +s20528 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +t1287417302 +s14716 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +t1287417302 +s26984 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +t1287417300 +s177100 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +t1287417310 +s8192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +t1287417310 +s12884 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +t1287417314 +s13472 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +t1287417312 +s9344 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +t1287417303 +s11748 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +t1287417311 +s11544 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +t1287417311 +s15356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +t1287417314 +s22220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +t1287417313 +s13664 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +t1287417309 +s40528 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +t1287417313 +s11132 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +t1287417308 +s16116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +t1287417301 +s12868 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +t1287417307 +s10228 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +t1287417306 +s16208 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +t1287417313 +s14788 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +t1287417313 +s14972 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +t1287417303 +s13316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +t1287417302 +s114068 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +t1287417312 +s11612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +t1287417301 +s49392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +t1287417312 +s14880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +t1287417312 +s8004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +t1287417314 +s11084 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +t1287417311 +s12388 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +t1287438297 +s5052 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +t1287417310 +s22592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o +t1287417317 +s1116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +t1287417307 +s9256 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +t1287417312 +s14956 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +t1287417311 +s28648 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +t1287417313 +s14104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +t1287417314 +s25168 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +t1287417299 +s26836 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +t1287417300 +s95336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +t1287417299 +s24256 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +t1287417301 +s110272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +t1287417313 +s12548 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +t1287417316 +s219760 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +t1287417307 +s7920 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +t1287417299 +s5424 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +t1287417307 +s4988 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +t1287417307 +s3656 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +t1287417307 +s10256 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +t1287417301 +s27804 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +t1287417302 +s49972 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +t1287417313 +s36420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +t1287417313 +s67360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +t1287417310 +s44712 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +t1287417305 +s9416 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +t1287417305 +s23092 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +t1287417304 +s10360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +t1287417305 +s9476 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +t1287417306 +s9880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +t1287417306 +s14252 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +t1287417299 +s151612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +t1287417311 +s11548 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +t1287417311 +s11728 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +t1287417306 +s82844 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome +t1287438303 +s1828156 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList +c000000004CBC6DBD00000000000063EB +t1287417277 +s25579 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +t1287417300 +s21024 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +t1287417302 +s17928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +t1287417303 +s76312 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +t1287417315 +s7316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +t1287417315 +s89800 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +t1287417308 +s12792 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +t1287417314 +s41216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +t1287417314 +s48708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +t1287417310 +s30836 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +t1287417311 +s10324 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +t1287417310 +s13420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +t1287417312 +s8104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +t1287417309 +s7596 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +t1287417313 +s8152 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +t1287417312 +s8028 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +t1287417313 +s8172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +t1287417300 +s17248 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +t1287417314 +s22180 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +t1287417312 +s11612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +t1287417312 +s11576 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +t1287417303 +s15244 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +t1287417303 +s17664 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +t1287417302 +s18096 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +t1287417302 +s55452 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +t1287417311 +s11840 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o +t1274640811 +s25924 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +t1287417307 +s12360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o +t1287092891 +s15592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +t1287417301 +s48808 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +t1287417312 +s15704 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +t1287417301 +s105004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +t1287417311 +s12172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +t1287417311 +s32880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +t1287417302 +s12132 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +t1287417313 +s11012 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +t1287417312 +s15652 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +t1287417308 +s12688 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +t1287417308 +s11828 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +t1287417307 +s11476 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +t1287417304 +s720 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +t1287417307 +s11440 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +t1287417307 +s7928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +t1287417308 +s13104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +t1287417308 +s1688 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +t1287417308 +s20828 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +t1287417308 +s11032 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +t1287417307 +s58580 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +t1287417313 +s8028 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +t1287417300 +s19180 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +t1287417312 +s77264 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +t1287417301 +s143520 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +t1287417301 +s30012 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +t1287417315 +s33208 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +t1287417315 +s25084 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +t1287417315 +s30216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +t1287417315 +s23548 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +t1287417315 +s19604 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +t1287417316 +s20584 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +t1287417316 +s20072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +t1287417316 +s4764 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +t1287417316 +s10428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +t1287417316 +s19784 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +t1287417316 +s2880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +t1287417316 +s25144 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +t1287417316 +s23384 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +t1287417316 +s14552 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +t1287417316 +s3260 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +t1287417316 +s18924 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +t1287417316 +s8564 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +t1287417316 +s1396 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +t1287417316 +s13348 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +t1287417317 +s36592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +t1287417316 +s11276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +t1287417316 +s9832 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +t1287417316 +s27380 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +t1287417316 +s18592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +t1287417316 +s11772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +t1287417316 +s9732 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +t1287417317 +s13684 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +t1287417317 +s26404 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +t1287417317 +s3928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +t1287417298 +s4120 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +t1287417317 +s9340 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh +c000000004BFAD1270000000000002A6F +t1274728743 +s10863 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh +c000000004CBC6DBD00000000000000A6 +t1287417277 +s166 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app +t1287438303 +s102 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM +t1287438303 +s102 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework +t1287417318 +s204 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework +t1287417317 +s204 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework +t1287417317 +s204 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist +t1287417449 +s4723 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +t1287438303 +s3556668 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/PkgInfo +t1287417449 +s8 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png +t1287417281 +s4884 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png +t1287417279 +s5469 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png +t1287417281 +s9321 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png +t1287417281 +s4647 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png +t1287417279 +s5325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png +t1287417280 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif +t1287417280 +s356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib +t1287417280 +s11854 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib +t1287417281 +s12616 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png +t1287417280 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png +t1287417280 +s581 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png +t1287417281 +s7108 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png +t1287417281 +s6451 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png +t1287417281 +s6280 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib +t1287417279 +s41519 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png +t1287417280 +s708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png +t1287417279 +s9394 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png +t1287417279 +s9458 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png +t1287417282 +s8909 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib +t1287417285 +s51715 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib +t1287417282 +s61951 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png +t1287417280 +s937 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png +t1287417279 +s608 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib +t1287417282 +s7847 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfile.nib +t1274723148 +s102236 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib +t1287417285 +s6666 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib +t1287417280 +s8721 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png +t1287417279 +s379 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png +t1287417282 +s7534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif +t1287417282 +s1159 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib +t1287417284 +s6685 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib +t1287417281 +s8562 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png +t1287417279 +s9759 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png +t1287417279 +s9857 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png +t1287417279 +s8676 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif +t1287417279 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib +t1287417283 +s7581 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png +t1287417279 +s7917 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif +t1287417279 +s330 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png +t1287417279 +s9487 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif +t1287417279 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist +t1287417277 +s11661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings +t1287417277 +s216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist +t1287417277 +s239393 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Female.png +t1287417279 +s6742 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist +t1287417277 +s11218 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png +t1287417279 +s1081 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib +t1287417286 +s7649 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png +t1287417279 +s8367 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif +t1287417279 +s346 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png +t1287417279 +s9813 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif +t1287417279 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png +t1287417280 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict +t1287417277 +s946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib +t1287417281 +s12046 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif +t1287417280 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png +t1287417279 +s1078 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png +t1287417279 +s5620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png +t1287417279 +s9298 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif +t1287417279 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png +t1287417279 +s9599 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif +t1287417279 +s363 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png +t1287417279 +s6169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif +t1287417279 +s301 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png +t1287417282 +s7502 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png +t1287417279 +s5870 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png +t1287417279 +s5958 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png +t1287417279 +s5569 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png +t1287417279 +s5195 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png +t1287417279 +s5241 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png +t1287417280 +s913 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib +t1287417286 +s6673 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib +t1287417286 +s6690 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png +t1287417282 +s112117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png +t1287417279 +s149242 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib +t1287417281 +s10343 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib +t1287417283 +s7370 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib +t1287417284 +s7247 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib +t1287417284 +s4034 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib +t1287417286 +s6387 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png +t1287417279 +s65525 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib +t1287417282 +s7839 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib +t1287417284 +s7272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist +t1287417282 +s8860 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png +t1287417279 +s8880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif +t1287417279 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png +t1287417282 +s2888 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib +t1287417285 +s5881 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib +t1287417282 +s208599 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Male.png +t1287417279 +s6571 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib +t1287417280 +s63524 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png +t1287417280 +s789 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib +t1287417285 +s8751 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png +t1287417279 +s1111 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif +t1287417280 +s354 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png +t1287417279 +s9622 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif +t1287417279 +s371 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png +t1287417279 +s9747 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif +t1287417279 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib +t1287417286 +s72765 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist +t1287417282 +s24885 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png +t1287417279 +s8493 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif +t1287417279 +s325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png +t1287417279 +s9239 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif +t1287417279 +s347 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png +t1287417286 +s11637 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png +t1287417279 +s8901 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif +t1287417279 +s370 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png +t1287417280 +s429 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib +t1287417279 +s25342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib +t1287417283 +s7221 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib +t1287417283 +s6729 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png +t1287417279 +s7016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif +t1287417279 +s332 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib +t1287417287 +s155671 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib +t1287417282 +s10028 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib +t1287417287 +s32828 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib +t1287417283 +s4111 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib +t1287417284 +s4127 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib +t1287417285 +s4117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png +t1287417280 +s369 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib +t1287417284 +s4163 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png +t1287417280 +s585 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Result.png +t1287417279 +s45335 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib +t1287417285 +s4074 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png +t1287417279 +s8211 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif +t1287417279 +s344 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib +t1287417283 +s7585 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib +t1287417284 +s7710 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib +t1287417279 +s56072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib +t1287417283 +s8682 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif +t1287417279 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif +t1287417279 +s422 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif +t1287417279 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff +t1287417279 +s26004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png +t1287417280 +s891 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png +t1287417279 +s8169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif +t1287417279 +s355 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png +t1287417280 +s821 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib +t1287417284 +s7267 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib +t1287417282 +s6822 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png +t1287417279 +s6217 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png +t1287417279 +s5696 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png +t1287417279 +s6207 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png +t1287417279 +s6912 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib +t1287417279 +s17102 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png +t1287417280 +s530 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib +t1287417282 +s18778 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib +t1287417280 +s7695 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib +t1287417286 +s6064 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib +t1287417284 +s6673 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png +t1287417280 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib +t1287417282 +s11534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib +t1287417281 +s5238 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png +t1287417279 +s8661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif +t1287417279 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png +t1287417279 +s9786 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif +t1287417279 +s378 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png +t1287417280 +s540 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib +t1287417281 +s6950 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib +t1287417281 +s6810 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png +t1287417282 +s5653 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png +t1287417280 +s593 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png +t1287417279 +s9193 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif +t1287417279 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png +t1287417279 +s9501 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif +t1287417279 +s360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png +t1287417279 +s7054 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png +t1287417279 +s8715 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif +t1287417279 +s362 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png +t1287417279 +s8272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif +t1287417279 +s365 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png +t1287417279 +s412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib +t1287417285 +s4068 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png +t1287417280 +s527 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png +t1287417279 +s9620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif +t1287417279 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png +t1287417280 +s1090 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png +t1287417279 +s8097 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif +t1287417279 +s336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib +t1287417283 +s25228 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 +t1287417281 +s6006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml +t1287438294 +s7683 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif +t1287417279 +s536 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig +t1287417450 +s20 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem +t1287417286 +s1182 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns +t1287417280 +s427718 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif +t1287417279 +s614 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png +t1287417282 +s1697 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png +t1287417279 +s5484 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png +t1287417282 +s12613 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png +t1287417279 +s3201 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/off.png +t1287417279 +s3192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/on.png +t1287417279 +s3209 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns +t1287417280 +s160946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns +t1287417280 +s489006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 +t1287417282 +s94283 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/buildnumber.xcconfig +c000000004CBC6E6A0000000000000014 +t1287417450 +s20 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/dsa_pub.pem +c000000004BD31F9D000000000000049E +t1272127389 +s1182 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/gnome2.icns +c000000004BD31F9D00000000000686C6 +t1272127389 +s427718 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/good.tif +c000000004BD31F9D0000000000000266 +t1272127389 +s614 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/iChat.png +c000000004BD31F9D00000000000006A1 +t1272127389 +s1697 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/inv_misc_bag_14.png +c000000004BD31F9D000000000000156C +t1272127389 +s5484 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c +c000000004CAF741000000000000058B4 +t1286566928 +s22708 +i +i +i +i +i"lua.h" +i"lapi.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lundump.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.h +c000000004CAF74100000000000000106 +t1286566928 +s262 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c +c000000004CAF74110000000000004409 +t1286566929 +s17417 +i +i +i +i +i +i +i"lua.h" +i"lauxlib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h +c000000004CAF74110000000000001691 +t1286566929 +s5777 +i +i +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c +c000000004CAF74110000000000004296 +t1286566929 +s17046 +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c +c000000004CAF74110000000000005357 +t1286566929 +s21335 +i +i"lua.h" +i"lcode.h" +i"ldebug.h" +i"ldo.h" +i"lgc.h" +i"llex.h" +i"lmem.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" +i"ltable.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.h +c000000004CAF74120000000000000ABE +t1286566930 +s2750 +i"llex.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c +c000000004CAF74120000000000002755 +t1286566930 +s10069 +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c +c000000004CAF741200000000000041C8 +t1286566930 +s16840 +i +i +i +i"lua.h" +i"lapi.h" +i"lcode.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lobject.h" +i"lopcodes.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.h +c000000004CAF74120000000000000425 +t1286566930 +s1061 +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c +c000000004CAF74120000000000003A03 +t1286566930 +s14851 +i +i +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lundump.h" +i"lvm.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.h +c000000004CAF74130000000000000769 +t1286566931 +s1897 +i"lobject.h" +i"lstate.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c +c000000004CAF74130000000000000C2A +t1286566931 +s3114 +i +i"lua.h" +i"lobject.h" +i"lstate.h" +i"lundump.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c +c000000004CAF7413000000000000120A +t1286566931 +s4618 +i +i"lua.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.h +c000000004CAF74130000000000000465 +t1286566931 +s1125 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c +c000000004CAF74140000000000004E83 +t1286566932 +s20099 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.h +c000000004CAF74140000000000000C57 +t1286566932 +s3159 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c +c000000004CAF741400000000000002FD +t1286566932 +s765 +i"lua.h" +i"lualib.h" +i"lauxlib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c +c000000004CAF7414000000000000345E +t1286566932 +s13406 +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c +c000000004CAF741500000000000030BA +t1286566933 +s12474 +i +i +i +i"lua.h" +i"ldo.h" +i"llex.h" +i"lobject.h" +i"lparser.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.h +c000000004CAF74150000000000000881 +t1286566933 +s2177 +i"lobject.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llimits.h +c000000004CAF7415000000000000092D +t1286566933 +s2349 +i +i +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c +c000000004CAF741500000000000016C7 +t1286566933 +s5831 +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c +c000000004CAF7415000000000000087C +t1286566933 +s2172 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.h +c000000004CAF741600000000000005D6 +t1286566934 +s1494 +i +i"llimits.h" +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c +c000000004CAF74160000000000004B10 +t1286566934 +s19216 +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c +c000000004CAF7416000000000000157A +t1286566934 +s5498 +i +i +i +i +i +i"lua.h" +i"ldo.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.h +c000000004CAF74160000000000002136 +t1286566934 +s8502 +i +i"llimits.h" +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c +c000000004CAF74160000000000000B44 +t1286566934 +s2884 +i"lopcodes.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.h +c000000004CAF74170000000000001F96 +t1286566935 +s8086 +i"llimits.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c +c000000004CAF74170000000000001768 +t1286566935 +s5992 +i +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c +c000000004CAF74170000000000008F58 +t1286566935 +s36696 +i +i"lua.h" +i"lcode.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"llex.h" +i"lmem.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.h +c000000004CAF741700000000000008D5 +t1286566935 +s2261 +i"llimits.h" +i"lobject.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c +c000000004CAF7418000000000000162A +t1286566936 +s5674 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"llex.h" +i"lmem.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.h +c000000004CAF74180000000000001393 +t1286566936 +s5011 +i"lua.h" +i"lobject.h" +i"ltm.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c +c000000004CAF74180000000000000C26 +t1286566936 +s3110 +i +i"lua.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.h +c000000004CAF7418000000000000032E +t1286566936 +s814 +i"lgc.h" +i"lobject.h" +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c +c000000004CAF74190000000000005BB9 +t1286566937 +s23481 +i +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c +c000000004CAF74190000000000003F87 +t1286566937 +s16263 +i +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"ltable.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.h +c000000004CAF741900000000000004A0 +t1286566937 +s1184 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c +c000000004CAF74190000000000001CAF +t1286566937 +s7343 +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c +c000000004CAF74190000000000000672 +t1286566937 +s1650 +i +i"lua.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.h +c000000004CAF741900000000000003FA +t1286566937 +s1018 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lua.h +c000000004CAF741A0000000000002DA8 +t1286566938 +s11688 +i +i +i"luaconf.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/luaconf.h +c000000004CAF741A000000000000571B +t1286566938 +s22299 +i +i +i +i +i +i +i +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lualib.h +c000000004CAF741B0000000000000402 +t1286566939 +s1026 +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c +c000000004CAF741B0000000000001215 +t1286566939 +s4629 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lmem.h" +i"lobject.h" +i"lstring.h" +i"lundump.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.h +c000000004CAF741B000000000000037A +t1286566939 +s890 +i"lobject.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c +c000000004CAF741B0000000000005A56 +t1286566939 +s23126 +i +i +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lobject.h" +i"lopcodes.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.h +c000000004CAF741B0000000000000487 +t1286566939 +s1159 +i"ldo.h" +i"lobject.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c +c000000004CAF741C000000000000065C +t1286566940 +s1628 +i +i"lua.h" +i"llimits.h" +i"lmem.h" +i"lstate.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.h +c000000004CAF741C0000000000000614 +t1286566940 +s1556 +i"lua.h" +i"lmem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c +c000000004CAF741C0000000000001350 +t1286566940 +s4944 +i +i +i"ldebug.h" +i"lobject.h" +i"lopcodes.h" +i"lundump.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m +c000000004BD31F9E0000000000000C63 +t1272127390 +s3171 +i +i +i +i +i"Globals.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mbobbleicon.png +c000000004BD31F9E0000000000003145 +t1272127390 +s12613 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mixed.png +c000000004BD31F9D0000000000000C81 +t1272127389 +s3201 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/off.png +c000000004BD31F9E0000000000000C78 +t1272127390 +s3192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/on.png +c000000004BD31F9E0000000000000C89 +t1272127390 +s3209 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgBehavior.icns +c000000004BD31F9E00000000000274B2 +t1272127390 +s160946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgRoute.icns +c000000004BD31F9D000000000007762E +t1272127389 +s489006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/splash.mp3 +c000000004BD31F9D000000000001704B +t1272127389 +s94283 + +N/usr/lib/libz.1.2.3.dylib +c000000004BBD3066000000000003C090 +t1270689894 +s245904 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth +t1287323435 +s7265724 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth +t1287332719 +s55464 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch +t1287332719 +s1409392 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth +t1277298290 +s7254688 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth +t1287332723 +s7265724 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch +t1287323436 +s36544784 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch +t1287332724 +s36544784 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch +t1277298288 +s1409392 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch +t1277298291 +s36548912 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth +t1277298287 +s55464 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch +t1287323432 +s1409392 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth +t1287323432 +s55464 + +NInfo.plist +c000000004CBC6E63000000000000127F +t1287417443 +s4735 + +CCheck dependencies +r0 +lSLF07#2@18"Check dependencies309131093#309131093#0(0"0(0#1#0"32088628383449192#0"0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.197505 +e309110093.327384 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m309110093#309110093#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.380445 +e309110095.508229 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m309110095#309110095#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.266457 +e309110093.520077 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m309110093#309110093#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.327541 +e309110093.421246 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m309110093#309110093#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.058411 +e309110090.127838 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m309110090#309110090#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.230107 +e309110089.779120 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m309110089#309110089#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.210024 +e309110092.305951 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m309110092#309110092#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.235686 +e309110096.379102 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m309110096#309110096#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.273330 +e309110090.418172 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m309110090#309110090#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.500627 +e309110093.440486 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c309110090#309110093#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.953690 +e309110090.058264 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m309110089#309110090#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.081735 +e309110090.146456 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m309110090#309110090#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.833904 +e309110096.129518 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m309110095#309110096#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.726024 +e309110095.161506 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m309110094#309110095#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s308782166.710193 +e308782166.984951 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m308782166#308782166#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309131094.527532 +e309131100.569455 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m309131094#309131100#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.914927 +e309110094.003573 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m309110093#309110094#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.321482 +e309110091.557048 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69:8: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] +o if(KLGetCurrentKeyboardLayout(&keyboard)) return NO; +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73:8: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o if(KLGetKeyboardLayoutProperty(keyboard, kKLKCHRData, &keyboardData)) return NO; +o ^ +o2 diagnostics generated. +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m309110091#309110091#0(497"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69:8: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] if(KLGetCurrentKeyboardLayout(&keyboard)) return NO; ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73:8: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] if(KLGetKeyboardLayoutProperty(keyboard, kKLKCHRData, &keyboardData)) return NO; ^ 2(22@70"'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations]309110091#0#166#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#69#8#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#234#167#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#73#8#0#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309131094.802285 +e309131096.196395 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] +o if([NSMailDelivery hasDeliveryClassBeenConfigured]) { +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] +o if([NSMailDelivery hasDeliveryClassBeenConfigured]) { +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] +o4 diagnostics generated. +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m309131094#309131096#0(804"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] if([NSMailDelivery hasDeliveryClassBeenConfigured]) { ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] if([NSMailDelivery hasDeliveryClassBeenConfigured]) { ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] 4(22@58"'NSMailDelivery' is deprecated [-Wdeprecated-declarations]309131095#0#158#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#397#9#0#0#0"0(22@74"'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations]309131095#228#174#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#397#9#0#0#0"0(22@58"'NSMailDelivery' is deprecated [-Wdeprecated-declarations]309131095#402#158#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#519#9#0#0#0"0(22@74"'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations]309131095#630#174#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#519#9#0#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.723134 +e309110093.917820 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m309110093#309110093#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.727963 +e309110095.589361 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m309110094#309110095#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.650605 +e309110092.783808 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m309110092#309110093#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.721989 +e309110097.170268 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m309110096#309110097#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.680251 +e309110095.814512 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m309110095#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s296325356.783556 +e296325357.028637 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398:1: warning: @end must appear in an @implementation context +o @end +o ^ +o1 diagnostic generated. +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296325356#296325357#0(157"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398:1: warning: @end must appear in an @implementation context @end ^ 1(22@46"@end must appear in an @implementation context296325356#0#148#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296271299#398#1#0#0#46"@end must appear in an @implementation context0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.510504 +e309110091.711226 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m309110091#309110091#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.146602 +e309110090.247800 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m309110090#309110090#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.835515 +e309110089.953545 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m309110089#309110089#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.946883 +e309110090.273166 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m309110089#309110090#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.651751 +e309110088.963748 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m309110087#309110089#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.130553 +e309110094.207723 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m309110094#309110094#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.170526 +e309110094.265323 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m309110094#309110094#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.491494 +e309110097.252647 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m309110096#309110097#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.593456 +e309110095.662917 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m309110095#309110095#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.387863 +e309110090.477600 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m309110090#309110090#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.909333 +e309110095.178211 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m309110094#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.641682 +e309110094.807704 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m309110094#309110094#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.463412 +e309110096.616508 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m309110096#309110096#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.830779 +e309110095.935541 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m309110095#309110096#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.421399 +e309110093.716201 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m309110093#309110093#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.935748 +e309110096.057157 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m309110095#309110096#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.460024 +e309110092.767183 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m309110092#309110093#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.779252 +e309110089.946732 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m309110089#309110089#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.306428 +e309110092.374294 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m309110092#309110092#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m4300911832#1602" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.805928 +e309110091.903890 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m309110091#309110092#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.791746 +e309110095.889340 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m309110095#309110095#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.814649 +e309110095.890820 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m309110095#309110095#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.418318 +e309110090.500485 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m309110090#309110090#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.306502 +e309110089.835247 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m309110089#309110089#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.347325 +e309110095.443733 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m309110095#309110095#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.284170 +e309110089.777044 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m309110089#309110089#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.549600 +e309110095.680102 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m309110095#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.623733 +e309110095.683294 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m309110095#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.379240 +e309110096.463255 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m309110096#309110096#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.807884 +e309110094.891528 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m309110094#309110094#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309131094.549545 +e309131096.186277 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m309131094#309131096#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.207877 +e309110094.641541 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m309110094#309110094#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.420100 +e309110098.511141 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m309110098#309110098#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.124150 +e309110092.211429 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m309110092#309110092#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.589515 +e309110095.675174 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m309110095#309110095#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.265482 +e309110094.643116 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m309110094#309110094#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.683453 +e309110095.830631 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m309110095#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.527355 +e309110096.651109 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m309110096#309110096#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.652786 +e309110088.290015 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m309110087#309110088#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.216665 +e309110088.721896 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m309110088#309110089#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.921650 +e309110088.216520 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@76"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m309110087#309110088#0(0"0(0#0#68"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m4300911832#1586" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.744418 +e309110089.306397 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m309110088#309110089#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.750661 +e309110095.833762 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m309110095#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.112533 +e309110097.462096 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m309110096#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.374400 +e309110092.549244 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m309110092#309110092#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.853460 +e309110087.921393 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m309110087#309110088#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.290649 +e309110092.366661 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m309110092#309110092#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.053341 +e309110092.113956 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m309110092#309110092#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.114118 +e309110092.209869 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m309110092#309110092#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.496661 +e309110089.765006 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m309110089#309110089#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.765122 +e309110090.095016 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m309110089#309110090#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.890935 +e309110096.003439 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m309110095#309110096#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.889497 +e309110096.149844 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m309110095#309110096#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.232202 +e309110094.509200 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m309110094#309110094#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.230817 +e309110091.321302 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m309110091#309110091#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.797995 +e309110091.014207 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2:{259:2-259:55}{259:2-259:55}: warning: comparison between pointer and integer ('UInt32' (aka 'unsigned long') and 'void *') +o NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); +o ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h:130:5: note: instantiated from: +o _NSAssertBody((condition), (desc), 0, 0, 0, 0, 0) +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2: note: instantiated from: +o NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); +o ^ ~~~~~~~~~~~ ~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:24: note: instantiated from: +o NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); +o ~~~~~~~~~~~ ^ +o1 diagnostic generated. +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110090#309110091#0(966"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2:{259:2-259:55}{259:2-259:55}: warning: comparison between pointer and integer ('UInt32' (aka 'unsigned long') and 'void *') NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h:130:5: note: instantiated from: _NSAssertBody((condition), (desc), 0, 0, 0, 0, 0) ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2: note: instantiated from: NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); ^ ~~~~~~~~~~~ ~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:24: note: instantiated from: NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); ~~~~~~~~~~~ ^ 1(22@84"Comparison between pointer and integer ('UInt32' (aka 'unsigned long') and 'void *')309110090#0#210#3(13@129"Instantiated from: /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h309110090#337#143#0(6@110"/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h236247370#130#5#0#0#18"instantiated from:0(13@98"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110090#542#112#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#0#0#18"instantiated from:0(13@98"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110090#756#113#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#24#0#0#18"instantiated from:0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#0#0#48"comparison between pointer and integer (* and *)2(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#259#55#6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#259#55#0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.689787 +e309110090.797508 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m309110090#309110090#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.014339 +e309110091.230665 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18:20: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] +o OSStatus err = KLGetCurrentKeyboardLayout( ¤tLayout ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35:15: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o err = KLGetKeyboardLayoutProperty( aLayout, kKLKind, (const void **)&keyLayoutKind ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLKCHRData, (const void **)&KCHRData ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLuchrData, (const void **)&uchrData ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76:5: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o KLGetKeyboardLayoutProperty( keyboardLayout, kKLLocalizedName, (const void **)&layoutName ); +o ^ +o5 diagnostics generated. +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m309110091#309110091#0(1420"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18:20: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] OSStatus err = KLGetCurrentKeyboardLayout( ¤tLayout ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35:15: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] err = KLGetKeyboardLayoutProperty( aLayout, kKLKind, (const void **)&keyLayoutKind ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLKCHRData, (const void **)&KCHRData ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLuchrData, (const void **)&uchrData ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76:5: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] KLGetKeyboardLayoutProperty( keyboardLayout, kKLLocalizedName, (const void **)&layoutName ); ^ 5(22@70"'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations]309110091#0#172#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#18#20#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#260#173#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#35#15#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#545#173#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#39#19#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#844#173#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#42#19#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#1143#172#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#76#5#0#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.313800 +e309110091.510351 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m309110091#309110091#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.711375 +e309110091.805740 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m309110091#309110091#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.654373 +e309110088.589117 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m309110087#309110088#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.161640 +e309110095.236639 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m309110095#309110095#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.178350 +e309110095.226719 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m309110095#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.557192 +e309110091.905963 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m309110091#309110092#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.837086 +e309110088.962416 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m309110088#309110089#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.247952 +e309110090.387709 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m309110090#309110090#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.227866 +e309110090.580827 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m309110090#309110090#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.651261 +e309110096.721836 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@80"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m309110096#309110096#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.616649 +e309110097.021673 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m309110096#309110097#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.767316 +e309110092.928200 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@106"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m309110092#309110093#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.237587 +e309110096.527206 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m309110096#309110096#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m4300911832#1602" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.150129 +e309110096.491350 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m309110096#309110096#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.917964 +e309110094.130413 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92:5:{92:5-92:16}: warning: expression result unused [-Wunused-value] +o self.endNPC; +o ^~~~~~~~~~~ +o1 diagnostic generated. +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m309110093#309110094#0(176"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92:5:{92:5-92:16}: warning: expression result unused [-Wunused-value] self.endNPC; ^~~~~~~~~~~ 1(22@41"Expression result unused [-Wunused-value]309110094#0#141#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m308763865#92#5#0#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.226869 +e309110095.305015 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m309110095#309110095#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.086570 +e309110094.170365 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m309110094#309110094#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.663057 +e309110095.708340 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m309110095#309110095#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.003732 +e309110094.086415 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m309110094#309110094#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.675334 +e309110095.718075 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m309110095#309110095#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.444230 +e309110095.549446 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m309110095#309110095#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.718222 +e309110095.791592 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m309110095#309110095#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.589256 +e309110088.744246 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m309110088#309110089#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.057322 +e309110096.235536 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m309110096#309110096#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.236784 +e309110095.345449 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m309110095#309110095#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.305154 +e309110095.380287 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m309110095#309110095#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.477760 +e309110090.579380 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m309110090#309110090#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.580942 +e309110090.689672 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m309110090#309110090#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.128156 +e309110090.227708 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m309110090#309110090#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.095201 +e309110090.345401 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m309110090#309110090#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.813299 +e309110094.909216 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m309110094#309110094#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s296333593.346139 +e296333593.530831 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m296333593#296333593#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.906090 +e309110091.978512 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m309110091#309110092#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s308785673.339527 +e308785673.453649 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m308785673#308785673#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.963858 +e309110089.284023 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m309110088#309110089#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.513546 +e309110095.623400 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m309110095#309110095#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.962560 +e309110089.496505 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m309110088#309110089#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.643225 +e309110094.725877 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m309110094#309110094#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.509331 +e309110094.727835 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m309110094#309110094#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.973199 +e309110090.081578 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m309110089#309110090#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.003625 +e309110096.112379 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m309110096#309110096#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.508372 +e309110095.593279 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m309110095#309110095#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.784081 +e309110092.921688 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m309110092#309110093#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.549682 +e309110092.650467 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m309110092#309110093#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.366782 +e309110092.459820 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m309110092#309110092#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.579512 +e309110091.313664 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c309110090#309110091#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.211553 +e309110092.290516 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m309110092#309110092#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.978616 +e309110092.053184 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m309110091#309110092#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.061718 +e309110093.266303 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m309110093#309110093#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.928656 +e309110093.008187 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m309110092#309110093#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.008396 +e309110093.197340 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m309110093#309110093#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.921835 +e309110093.061583 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m309110092#309110093#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.904054 +e309110092.124000 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m309110091#309110092#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.708491 +e309110095.750526 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m309110095#309110095#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.722055 +e309110088.836905 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m309110088#309110089#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.891691 +e309110095.513396 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m309110094#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.290165 +e309110089.229556 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m309110088#309110089#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.777181 +e309110089.972938 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m309110089#309110089#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.022212 +e309110097.405103 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c309110097#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.170426 +e309110097.370760 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c309110097#309110097#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.252805 +e309110097.429385 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c309110097#309110097#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.370906 +e309110097.643222 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.405264 +e309110097.550607 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c309110097#309110097#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.429525 +e309110097.657316 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c309110097#309110097#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.462257 +e309110097.645116 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c309110097#309110097#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.550758 +e309110097.636592 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.636746 +e309110097.746902 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.643378 +e309110097.926233 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c309110097#309110097#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.645251 +e309110097.679410 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.657546 +e309110097.828971 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c309110097#309110097#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.679651 +e309110097.974951 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c309110097#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.747047 +e309110097.852545 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c309110097#309110097#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.829125 +e309110097.880670 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c309110097#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.852694 +e309110097.990590 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c309110097#309110097#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.880829 +e309110097.982943 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c309110097#309110097#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.926376 +e309110097.969650 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c309110097#309110097#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.969805 +e309110098.073352 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c309110097#309110098#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.975101 +e309110098.444867 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c309110097#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.983095 +e309110098.088455 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c309110097#309110098#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.990745 +e309110098.077227 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c309110097#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.073504 +e309110098.360501 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:133:5:{133:5-133:31}{133:5-133:31}: warning: expression result unused [-Wunused-value] +o luaL_addchar(&b, uchar(c)); +o ^~~~~~~~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:703:9:{703:9-703:30}{703:9-703:30}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, '\\'); +o ^~~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:704:9:{704:9-704:28}{704:9-704:28}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, *s); +o ^~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:716:9:{716:9-716:28}{716:9-716:28}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, *s); +o ^~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:699:3:{699:3-699:23}{699:3-699:23}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, '"'); +o ^~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:722:3:{722:3-722:23}{722:3-722:23}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, '"'); +o ^~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o6 diagnostics generated. +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c309110098#309110098#0(2996"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:133:5:{133:5-133:31}{133:5-133:31}: warning: expression result unused [-Wunused-value] luaL_addchar(&b, uchar(c)); ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:703:9:{703:9-703:30}{703:9-703:30}: warning: expression result unused [-Wunused-value] luaL_addchar(b, '\\'); ^~~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:704:9:{704:9-704:28}{704:9-704:28}: warning: expression result unused [-Wunused-value] luaL_addchar(b, *s); ^~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:716:9:{716:9-716:28}{716:9-716:28}: warning: expression result unused [-Wunused-value] luaL_addchar(b, *s); ^~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:699:3:{699:3-699:23}{699:3-699:23}: warning: expression result unused [-Wunused-value] luaL_addchar(b, '"'); ^~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:722:3:{722:3-722:23}{722:3-722:23}: warning: expression result unused [-Wunused-value] luaL_addchar(b, '"'); ^~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ 6(22@41"Expression result unused [-Wunused-value]309110098#0#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#239#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#133#5#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#507#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#744#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#703#9#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#1012#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#1245#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#704#9#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#1513#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#1746#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#716#9#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#2014#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#2237#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#699#3#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#2505#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#2728#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#722#3#0#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.077363 +e309110098.281474 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c309110098#309110098#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.088608 +e309110098.195754 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c309110098#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.195895 +e309110098.290625 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c309110098#309110098#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.281633 +e309110098.415491 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c309110098#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.290782 +e309110098.751745 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c309110098#309110098#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.360651 +e309110098.419947 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c309110098#309110098#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.650459 +e309110087.853345 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m309110087#309110088#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.415625 +e309110098.555478 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c309110098#309110098#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.548263 +e309110108.767421 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m309110108#309110108#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.209258 +e309110112.457210 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m309110112#309110112#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.679790 +e309110109.186119 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m309110108#309110109#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.767652 +e309110109.019068 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m309110108#309110109#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.208642 +e309110102.469072 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m309110102#309110102#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.118300 +e309110101.720659 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m309110101#309110101#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.271750 +e309110107.527454 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m309110107#309110107#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m4300911832#1664" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.160392 +e309110114.383455 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m309110114#309110114#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.735608 +e309110102.994173 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m309110102#309110103#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110103.276425 +e309110105.931424 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c309110103#309110106#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.035286 +e309110102.208506 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m309110102#309110102#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.282171 +e309110102.545759 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m309110102#309110102#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.349715 +e309110114.185187 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m309110113#309110114#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.148860 +e309110111.593117 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m309110111#309110111#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s308782181.626193 +e308782182.561493 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m308782181#308782182#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309131094.800974 +e309131101.167893 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m309131094#309131101#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.517055 +e309110109.759767 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m309110109#309110109#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.797266 +e309110106.479898 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m: In function 'Ascii2Virtual': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m309110105#309110106#0(691"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m: In function 'Ascii2Virtual': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) 2(22@196"'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436)309110106#110#290#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#69#0#69#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110106#400#291#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#73#0#73#0#33"'*' is deprecated (declared at *)0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309131096.191617 +e309131097.540537 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendMessage:toEmailAddress:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendEmail:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m309131096#309131097#0(823"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendMessage:toEmailAddress:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendEmail:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) 2(22@174"'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36)309131097#148#272#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#397#0#397#0#33"'*' is deprecated (declared at *)0(22@174"'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36)309131097#551#272#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#519#0#519#0#33"'*' is deprecated (declared at *)0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m7885642863162518528#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.186271 +e309110109.516885 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m309110109#309110109#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.188661 +e309110112.789487 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m309110111#309110112#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.825772 +e309110108.086997 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m309110107#309110108#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.873926 +e309110115.889759 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m309110114#309110115#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.868917 +e309110113.113427 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m309110112#309110113#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s296325358.668364 +e296325358.791259 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398: warning: '@end' must appear in an @implementation context +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296325358#296325358#0(148"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398: warning: '@end' must appear in an @implementation context 1(22@48"'@end' must appear in an @implementation context296325358#0#148#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296271299#398#0#398#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.931566 +e309110106.186592 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m309110105#309110106#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.469224 +e309110102.735473 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m309110102#309110102#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.858993 +e309110102.089757 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m309110101#309110102#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.925872 +e309110102.295217 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m309110101#309110102#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.511290 +e309110100.320367 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m309110098#309110100#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.000679 +e309110110.186484 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m309110110#309110110#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.090388 +e309110110.390057 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m309110110#309110110#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.573310 +e309110114.873775 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m309110114#309110114#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.669788 +e309110112.868331 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m309110112#309110112#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.938373 +e309110103.222441 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m309110102#309110103#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.564331 +e309110111.781987 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m309110111#309110111#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.877177 +e309110111.188500 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m309110110#309110111#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.563437 +e309110114.838074 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m309110114#309110114#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.244015 +e309110113.465104 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m309110113#309110113#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.916028 +e309110109.812380 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m309110108#309110109#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.465268 +e309110113.651614 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m309110113#309110113#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.706949 +e309110108.318769 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m309110107#309110108#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.721810 +e309110101.925708 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m309110101#309110102#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m4300911832#1658" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.527604 +e309110107.706769 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m309110107#309110107#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.480440 +e309110106.808914 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m309110106#309110106#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.113569 +e309110113.383177 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m309110113#309110113#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.124141 +e309110113.403056 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m309110113#309110113#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.994330 +e309110103.276222 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m309110102#309110103#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m4300911832#1664" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.179250 +e309110102.035137 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m309110101#309110102#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.020633 +e309110112.229627 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m309110112#309110112#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.156129 +e309110101.558435 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m309110101#309110101#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.457358 +e309110112.689378 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m309110112#309110112#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.689530 +e309110112.889698 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m309110112#309110112#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.384056 +e309110114.573171 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m309110114#309110114#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.247612 +e309110111.486898 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m309110111#309110111#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309131096.201840 +e309131097.243610 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m309131096#309131097#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.150442 +e309110110.877034 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m309110110#309110110#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110117.056358 +e309110117.207466 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m309110117#309110117#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.157780 +e309110107.368997 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m309110107#309110107#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.483405 +e309110112.716541 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m309110112#309110112#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.390192 +e309110111.148709 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m309110110#309110111#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.889839 +e309110113.123983 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m309110112#309110113#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.580148 +e309110114.852112 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m309110114#309110114#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.556021 +e309110099.029198 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m309110098#309110099#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.533103 +e309110100.513008 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m309110099#309110100#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.247742 +e309110099.614314 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@76"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m309110099#309110099#0(0"0(0#0#68"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.320504 +e309110101.118165 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m309110100#309110101#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.110984 +e309110113.349573 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m309110113#309110113#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.865558 +e309110116.048688 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m309110113#309110116#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.597430 +e309110107.777995 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m309110107#309110107#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.029340 +e309110099.247599 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m309110099#309110099#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.416945 +e309110107.597294 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m309110107#309110107#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.041514 +e309110107.271602 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m309110107#309110107#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.060863 +e309110107.416800 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m309110107#309110107#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.282255 +e309110101.564372 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m309110101#309110101#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.558587 +e309110102.282043 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m309110101#309110102#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.403233 +e309110113.799894 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m309110113#309110113#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.383341 +e309110113.968859 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m309110113#309110113#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.186634 +e309110110.528447 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m309110110#309110110#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.466018 +e309110105.797138 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m309110105#309110105#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110104.603791 +e309110105.612684 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter registerHotKey:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:90: warning: passing argument 5 of 'RegisterEventHotKey' makes integer from pointer without a cast +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter sendCarbonEvent:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259: warning: comparison between pointer and integer +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110104#309110105#0(573"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter registerHotKey:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:90: warning: passing argument 5 of 'RegisterEventHotKey' makes integer from pointer without a cast /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter sendCarbonEvent:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259: warning: comparison between pointer and integer 2(22@85"Passing argument 5 of 'RegisterEventHotKey' makes integer from pointer without a cast309110105#130#179#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#90#0#90#0#67"passing argument * of '*' makes integer from pointer without a cast0(22@38"Comparison between pointer and integer309110105#440#133#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#0#259#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110103.884939 +e309110104.603629 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m309110103#309110104#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110104.763237 +e309110105.465869 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '+[PTKeyCodeTranslator currentTranslator]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator initWithKeyboardLayout:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator description]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m309110104#309110105#0(1905"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '+[PTKeyCodeTranslator currentTranslator]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator initWithKeyboardLayout:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator description]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) 5(22@196"'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436)309110105#142#295#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#18#0#18#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#585#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#35#0#35#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#881#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#39#0#39#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#1177#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#42#0#42#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#1609#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#76#0#76#0#33"'*' is deprecated (declared at *)0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.612831 +e309110106.183538 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m309110105#309110106#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.186746 +e309110106.488899 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m309110106#309110106#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.654953 +e309110099.943761 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m: In function '-[PlayerDataController runesAvailable:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m:516: warning: unused variable 'runeType' +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m309110098#309110099#0(269"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m: In function '-[PlayerDataController runesAvailable:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m:516: warning: unused variable 'runeType' 1(22@26"Unused variable 'runeType'309110098#142#127#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m309057550#516#0#516#0#19"unused variable '*'0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.593277 +e309110111.790392 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m309110111#309110111#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.782139 +e309110111.990979 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m309110111#309110111#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.183686 +e309110106.868114 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m309110106#309110106#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.453439 +e309110100.683658 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m309110100#309110100#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.583751 +e309110102.812622 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m309110102#309110102#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.545905 +e309110103.430945 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m309110102#309110103#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.852259 +e309110115.042143 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@80"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m309110114#309110115#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.838270 +e309110115.660907 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m309110114#309110115#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.037506 +e309110108.317157 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@106"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m309110108#309110108#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m4300911832#1674" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.185344 +e309110114.562821 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m309110114#309110114#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.094969 +e309110114.580000 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m309110114#309110114#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.760352 +e309110110.090257 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m: In function '-[Quest dealloc]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92: warning: value computed is not used +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m309110109#309110110#0(215"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m: In function '-[Quest dealloc]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92: warning: value computed is not used 1(22@26"Value computed is not used309110109#104#111#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m308763865#92#0#92#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.790560 +e309110111.992898 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m309110111#309110111#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m4300911832#1656" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.838784 +e309110110.150290 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m309110109#309110110#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.716687 +e309110112.899128 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m309110112#309110112#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m4300911832#1658" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.812526 +e309110110.000535 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m309110109#309110110#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.789643 +e309110113.029408 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m309110112#309110113#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.216305 +e309110112.403512 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m309110112#309110112#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.029549 +e309110113.243859 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m309110113#309110113#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m4300911832#1664" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.944058 +e309110100.181149 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m309110099#309110100#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.800050 +e309110114.094830 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m309110113#309110114#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.991343 +e309110112.209106 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m309110111#309110112#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.993027 +e309110112.216160 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m309110111#309110112#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m4300911832#1670" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110103.222982 +e309110103.471182 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m309110103#309110103#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110103.471335 +e309110103.884788 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m309110103#309110104#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.302723 +e309110102.583548 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m309110102#309110102#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.295363 +e309110102.938214 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m309110102#309110102#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.344347 +e309110111.564173 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m309110111#309110111#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s296333611.568860 +e296333611.946516 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m296333611#296333611#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.809093 +e309110107.041332 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m309110106#309110107#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s308785690.994396 +e308785691.324099 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m308785690#308785691#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.683803 +e309110101.179115 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m309110100#309110101#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.403674 +e309110112.669648 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m309110112#309110112#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.513162 +e309110101.282095 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m309110100#309110101#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.081916 +e309110111.343777 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m309110111#309110111#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.528593 +e309110111.081738 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m309110110#309110111#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.089919 +e309110102.301947 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m309110102#309110102#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m4300911832#1658" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.651770 +e309110113.865413 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m309110113#309110113#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m4300911832#1670" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.229785 +e309110112.483247 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m309110112#309110112#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.087275 +e309110108.364573 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m309110108#309110108#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.778132 +e309110108.036690 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m309110107#309110108#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.593456 +e309110107.825608 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m309110107#309110107#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal ppc c com.apple.compilers.llvmgcc42 +s309110103.431084 +e309110104.762761 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c309110103#309110105#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.369577 +e309110107.593309 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m309110107#309110107#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m4300911832#1656" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.868264 +e309110107.060729 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m309110106#309110107#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.492331 +e309110108.915870 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m309110108#309110108#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m4300911832#1656" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.318885 +e309110108.492172 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m309110108#309110108#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.364759 +e309110108.679633 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m309110108#309110108#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.317302 +e309110108.548102 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m309110108#309110108#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.489046 +e309110107.157624 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m309110106#309110107#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.899287 +e309110113.110832 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m309110112#309110113#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.181822 +e309110100.453230 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m309110100#309110100#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.487112 +e309110112.020484 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m309110111#309110112#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.614528 +e309110101.155618 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m309110099#309110101#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.564514 +e309110101.858855 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m309110101#309110101#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.042280 +e309110115.361733 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c309110115#309110115#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.361899 +e309110115.592109 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c309110115#309110115#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.592245 +e309110115.824693 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c309110115#309110115#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.661060 +e309110115.973408 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c309110115#309110115#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.824854 +e309110115.986038 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c309110115#309110115#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.890381 +e309110116.154017 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c309110115#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.973540 +e309110116.218265 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c309110115#309110116#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.986220 +e309110116.125681 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c309110115#309110116#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.048844 +e309110116.168624 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c309110116#309110116#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.125830 +e309110116.444859 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c309110116#309110116#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.154161 +e309110116.213550 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c309110116#309110116#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.168774 +e309110116.367500 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.213695 +e309110116.529067 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c309110116#309110116#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.218412 +e309110116.346959 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c309110116#309110116#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.347124 +e309110116.432731 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c309110116#309110116#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.368035 +e309110116.560845 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.432882 +e309110116.587899 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.444998 +e309110116.494468 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c309110116#309110116#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.494600 +e309110116.623319 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.529219 +e309110117.049086 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c309110116#309110117#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.560999 +e309110116.675336 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.588033 +e309110116.700745 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.623469 +e309110116.968326 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.675517 +e309110116.923488 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.700897 +e309110116.815543 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.816291 +e309110116.949261 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c309110116#309110116#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.923637 +e309110117.098134 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c309110116#309110117#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.949420 +e309110117.314160 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c309110116#309110117#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.968472 +e309110117.056201 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c309110116#309110117#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.445020 +e309110098.654796 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m309110098#309110098#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal ppc c com.apple.compilers.llvmgcc42 +s309110117.049252 +e309110117.203560 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c309110117#309110117#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o" 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +s309110080.090672 +e309110080.679750 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib:116: note: This view is clipping its content. +lSLF07#2@28"CompileXIB AuraCondition.xib309110080#309110080#0(167"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib:116: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib293820189#116#0#116#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +s309110081.043988 +e309110081.538116 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib:68: note: This view is clipping its content. +lSLF07#2@33"CompileXIB AuraStackCondition.xib309110081#309110081#0(171"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib:68: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib293820189#68#0#68#0#0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib4300911832#411" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +s309110077.985082 +e309110079.497654 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib:267: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. +lSLF07#2@24"CompileXIB Behaviors.xib309110077#309110079#0(261"/* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib:267: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. 1(22@128"The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role.309110079#18446744073709551615#0#0(6@76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib297107457#267#0#267#0#0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib4300911832#393" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +s309110084.660056 +e309110085.750412 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:327: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1570: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:95: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:925: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1479: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@18"CompileXIB Bot.xib309110084#309110085#0(839"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:327: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1570: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:95: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:925: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1479: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 5(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#327#0#327#0#0"0(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#1570#0#1570#0#0"0(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#95#0#95#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#925#0#925#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#1479#0#1479#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib4300911832#381" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +s309110082.074697 +e309110083.077046 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1033: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1038: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:906: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:912: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1092: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1086: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:530: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1181: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1102: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:544: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1164: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:536: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:542: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@22"CompileXIB ChatLog.xib309110082#309110083#0(2693"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1033: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1038: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:906: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:912: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1092: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1086: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:530: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1181: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1102: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:544: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1164: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:536: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:542: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 13(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1033#0#1033#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1038#0#1038#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#906#0#906#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#912#0#912#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1092#0#1092#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1086#0#1086#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#530#0#530#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1181#0#1181#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1102#0#1102#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#544#0#544#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1164#0#1164#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#536#0#536#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#542#0#542#0#0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib4300911832#389" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +s309110081.538233 +e309110082.068952 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib:2: note: This view is clipping its content. +lSLF07#2@26"CompileXIB CombatCount.xib309110081#309110082#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib:2: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib293820189#2#0#2#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib +s296415947.581068 +e296415948.960278 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:408: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:835: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'ActionMenu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1002: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1007: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@28"CompileXIB CombatProfile.xib296415947#296415948#0(1219"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:408: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:835: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'ActionMenu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1002: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1007: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 6(13@34"This view is clipping its content.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#408#0#408#0#0"0(13@34"This view is clipping its content.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#168#0#168#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#835#0#835#0#0"0(22@147"The 'menu' outlet of 'Pop Up Button' is connected to 'ActionMenu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#168#0#168#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#1002#0#1002#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#1007#0#1007#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfile.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +s309110084.817519 +e309110085.251567 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib:79: note: This view is clipping its content. +lSLF07#2@34"CompileXIB CombatProfileAction.xib309110084#309110085#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib293820190#79#0#79#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib7308044150613439488#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +s309110079.689077 +e309110080.235838 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib:23: note: This view is clipping its content. +lSLF07#2@34"CompileXIB ComboPointCondition.xib309110079#309110080#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib:23: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib293820189#23#0#23#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +s309110084.230500 +e309110084.657951 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +lSLF07#2@26"CompileXIB DelayAction.xib309110084#309110085#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +s309110080.635210 +e309110081.043494 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib:26: note: This view is clipping its content. +lSLF07#2@32"CompileXIB DistanceCondition.xib309110080#309110081#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib293820190#26#0#26#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +s309110082.984607 +e309110083.398841 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib:83: note: This view is clipping its content. +lSLF07#2@34"CompileXIB DurabilityCondition.xib309110082#309110083#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib293820190#83#0#83#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +s309110085.978060 +e309110086.496402 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib:83: note: This view is clipping its content. +lSLF07#2@28"CompileXIB GateCondition.xib309110085#309110086#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib293820189#83#0#83#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +s309110080.679860 +e309110081.196207 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:83: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:69: note: This view is clipping its content. +lSLF07#2@30"CompileXIB HealthCondition.xib309110080#309110081#0(296"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:83: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:69: note: This view is clipping its content. 2(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib309039219#83#0#83#0#0"0(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib309039219#69#0#69#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib4300911832#405" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +s309110085.664130 +e309110086.263219 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib:79: note: This view is clipping its content. +lSLF07#2@32"CompileXIB InteractNPCAction.xib309110085#309110086#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib293820189#79#0#79#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +s309110085.712182 +e309110086.279120 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib:79: note: This view is clipping its content. +lSLF07#2@35"CompileXIB InteractObjectAction.xib309110085#309110086#0(173"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib293820190#79#0#79#0#0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +s309110080.726295 +e309110081.106535 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib:79: note: This view is clipping its content. +lSLF07#2@33"CompileXIB InventoryCondition.xib309110080#309110081#0(171"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib293820189#79#0#79#0#0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib4300911832#411" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +s309110083.077181 +e309110083.454670 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib:79: note: This view is clipping its content. +lSLF07#2@37"CompileXIB InventoryFreeCondition.xib309110083#309110083#0(175"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib293820189#79#0#79#0#0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib4300911832#419" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +s309110083.980140 +e309110084.362165 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib:79: note: This view is clipping its content. +lSLF07#2@25"CompileXIB ItemAction.xib309110083#309110085#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib293820189#79#0#79#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +s309110084.362288 +e309110084.817368 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib:79: note: This view is clipping its content. +lSLF07#2@25"CompileXIB JumpAction.xib309110084#309110085#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib293820189#79#0#79#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +s309110086.497446 +e309110087.013074 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +lSLF07#2@35"CompileXIB JumpToWaypointAction.xib309110086#309110087#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +s309110082.609653 +e309110082.984483 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib:26: note: This view is clipping its content. +lSLF07#2@28"CompileXIB LastSpellCast.xib309110082#309110082#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib293820189#26#0#26#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +s309110084.052953 +e309110084.432755 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib:79: note: This view is clipping its content. +lSLF07#2@26"CompileXIB MacroAction.xib309110084#309110085#0(164"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib293820189#79#0#79#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +s309110085.251701 +e309110085.711705 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib:79: note: This view is clipping its content. +lSLF07#2@25"CompileXIB MailAction.xib309110085#309110085#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib293392626#79#0#79#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +s309110080.058861 +e309110082.453221 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:3311: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:4644: note: This view is clipping its content. +lSLF07#2@23"CompileXIB MainMenu.xib309110080#309110082#0(286"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:3311: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:4644: note: This view is clipping its content. 2(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib309019216#3311#0#3311#0#0"0(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib309019216#4644#0#4644#0#0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib4300911832#391" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +s309110079.493561 +e309110080.635089 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:251: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:39: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:273: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:151: warning: This window's content rectangle does not lie entirely on the screen with the menu bar and may not be completely visible for all screen resolutions and configurations. +lSLF07#2@21"CompileXIB Memory.xib309110079#309110080#0(695"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:251: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:39: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:273: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:151: warning: This window's content rectangle does not lie entirely on the screen with the menu bar and may not be completely visible for all screen resolutions and configurations. 4(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#251#0#251#0#0"0(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#39#0#39#0#0"0(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#273#0#273#0#0"0(22@166"This window's content rectangle does not lie entirely on the screen with the menu bar and may not be completely visible for all screen resolutions and configurations.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#151#0#151#0#0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +s309110085.396714 +e309110085.977938 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib:83: note: This view is clipping its content. +lSLF07#2@34"CompileXIB MobsKilledCondition.xib309110085#309110085#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib293820189#83#0#83#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +s309110085.750519 +e309110086.960124 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +lSLF07#2@22"CompileXIB Objects.xib309110085#309110086#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib4300911832#389" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +s309110077.930269 +e309110079.464659 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:244: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:299: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:213: note: This view is clipping its content. +lSLF07#2@21"CompileXIB Player.xib309110077#309110079#0(400"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:244: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:299: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:213: note: This view is clipping its content. 3(13@34"This view is clipping its content.309110079#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib293820190#244#0#244#0#0"0(13@34"This view is clipping its content.309110079#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib293820190#299#0#299#0#0"0(13@34"This view is clipping its content.309110079#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib293820190#213#0#213#0#0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +s309110083.291059 +e309110083.682287 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib:83: note: This view is clipping its content. +lSLF07#2@35"CompileXIB PlayerLevelCondition.xib309110083#309110083#0(173"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib293820189#83#0#83#0#0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +s309110083.398968 +e309110083.811868 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:52: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:79: note: This view is clipping its content. +lSLF07#2@34"CompileXIB PlayerZoneCondition.xib309110083#309110083#0(304"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:52: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:79: note: This view is clipping its content. 2(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib293820190#52#0#52#0#0"0(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib293820190#79#0#79#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +s309110086.705763 +e309110087.648739 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1844: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1394: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1734: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1339: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1840: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1944: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1942: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1429: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1413: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1941: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1428: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@23"CompileXIB Profiles.xib309110086#309110087#0(1950"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1844: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1394: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1734: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1339: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1840: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1944: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1942: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1429: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1413: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1941: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1428: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 11(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1844#0#1844#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1394#0#1394#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1734#0#1734#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1339#0#1339#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1840#0#1840#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1944#0#1944#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1942#0#1942#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1429#0#1429#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1413#0#1413#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1941#0#1941#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1428#0#1428#0#0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib4300911832#391" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +s309110081.574565 +e309110082.090477 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib:2: note: This view is clipping its content. +lSLF07#2@29"CompileXIB ProximityCount.xib309110081#309110082#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib:2: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib293820189#2#0#2#0#0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib4300911832#403" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +s309110086.280079 +e309110087.060378 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib:653: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. +lSLF07#2@18"CompileXIB PvP.xib309110086#309110087#0(255"/* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib:653: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. 1(22@128"The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role.309110087#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib297106889#653#0#653#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib4300911832#381" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +s309110083.454792 +e309110083.828363 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib:83: note: This view is clipping its content. +lSLF07#2@29"CompileXIB QuestCondition.xib309110083#309110083#0(167"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib293820190#83#0#83#0#0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib4300911832#403" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +s309110084.432884 +e309110084.964084 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib:79: note: This view is clipping its content. +lSLF07#2@30"CompileXIB QuestGrabAction.xib309110084#309110085#0(168"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib293820189#79#0#79#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib4300911832#405" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +s309110084.658073 +e309110085.191960 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib:79: note: This view is clipping its content. +lSLF07#2@32"CompileXIB QuestTurnInAction.xib309110084#309110085#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib293820190#79#0#79#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +s309110083.811990 +e309110084.174624 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib:79: note: This view is clipping its content. +lSLF07#2@27"CompileXIB RepairAction.xib309110083#309110084#0(165"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib293820189#79#0#79#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib4300911832#399" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +s309110084.964210 +e309110085.396567 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib:79: note: This view is clipping its content. +lSLF07#2@33"CompileXIB ReverseRouteAction.xib309110084#309110085#0(171"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib293820190#79#0#79#0#0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib4300911832#411" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +s309110083.576366 +e309110083.980015 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib:83: note: This view is clipping its content. +lSLF07#2@37"CompileXIB RouteRunCountCondition.xib309110083#309110083#0(175"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib293820189#83#0#83#0#0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib4300911832#419" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +s309110083.682414 +e309110084.052821 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib:83: note: This view is clipping its content. +lSLF07#2@36"CompileXIB RouteRunTimeCondition.xib309110083#309110084#0(174"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib293820189#83#0#83#0#0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib4300911832#417" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +s309110077.948025 +e309110080.079854 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:154: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:298: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Testing Menu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:529: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@21"CompileXIB Routes.xib309110077#309110080#0(645"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:154: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:298: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Testing Menu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:529: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 3(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib308784581#154#0#154#0#0"0(22@149"The 'menu' outlet of 'Pop Up Button' is connected to 'Testing Menu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib308784581#298#0#298#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib308784581#529#0#529#0#0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +s309110082.842270 +e309110083.290933 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib:23: note: This view is clipping its content. +lSLF07#2@28"CompileXIB RuneCondition.xib309110082#309110083#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib:23: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib293820190#23#0#23#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +s309110084.175097 +e309110084.659943 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib:79: note: This view is clipping its content. +lSLF07#2@26"CompileXIB SpellAction.xib309110084#309110085#0(164"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib293820189#79#0#79#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +s309110082.453345 +e309110082.881575 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib:26: note: This view is clipping its content. +lSLF07#2@28"CompileXIB SpellCooldown.xib309110082#309110082#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib293820189#26#0#26#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +s309110077.945882 +e309110079.442419 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +lSLF07#2@21"CompileXIB Spells.xib309110077#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +s309110082.286300 +e309110082.842145 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +lSLF07#2@25"CompileXIB Statistics.xib309110082#309110082#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +s309110080.235939 +e309110080.726182 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib:26: note: This view is clipping its content. +lSLF07#2@30"CompileXIB StatusCondition.xib309110080#309110080#0(168"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib293820189#26#0#26#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib4300911832#405" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +s309110086.263366 +e309110086.705648 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib:83: note: This view is clipping its content. +lSLF07#2@27"CompileXIB StrandStatus.xib309110086#309110086#0(165"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib293820189#83#0#83#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib4300911832#399" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +s309110083.828487 +e309110084.230389 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib:79: note: This view is clipping its content. +lSLF07#2@32"CompileXIB SwitchRouteAction.xib309110083#309110085#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib293820189#79#0#79#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +s309110082.022655 +e309110082.609205 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib:2: note: This view is clipping its content. +lSLF07#2@26"CompileXIB TargetClass.xib309110082#309110082#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib:2: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib293820190#2#0#2#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +s309110081.461675 +e309110082.022516 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib:6: note: This view is clipping its content. +lSLF07#2@25"CompileXIB TargetType.xib309110081#309110082#0(162"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib:6: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib293820190#6#0#6#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +s309110081.196334 +e309110081.574445 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib:15: note: This view is clipping its content. +lSLF07#2@35"CompileXIB TempEnchantCondition.xib309110081#309110081#0(173"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib:15: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib293820189#15#0#15#0#0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +s309110081.116442 +e309110081.461441 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib:3: note: This view is clipping its content. +lSLF07#2@29"CompileXIB TotemCondition.xib309110081#309110081#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib:3: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib293820189#3#0#3#0#0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib4300911832#403" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +s309110085.192070 +e309110085.664009 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib:79: note: This view is clipping its content. +lSLF07#2@27"CompileXIB VendorAction.xib309110085#309110085#0(165"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib293820189#79#0#79#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib4300911832#399" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +s309110082.881708 +e309110083.576245 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +lSLF07#2@35"CompileXIB WaypointActionEditor.xib309110082#309110083#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist" English.lproj/Gathering.plist +s309110077.844032 +e309110077.947914 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist +xEnglish.lproj/Gathering.plist +lSLF07#2@34"Copy English.lproj/Gathering.plist309110077#309110077#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/Gathering.plist4300911832#340" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist English.lproj/Gathering.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist" FactionTemplate.plist +s309110077.824263 +e309110077.984965 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist +xFactionTemplate.plist +lSLF07#2@26"Copy FactionTemplate.plist309110077#309110077#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FactionTemplate.plist4300911832#318" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist FactionTemplate.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist" French.lproj/Gathering.plist +s309110077.875052 +e309110077.945709 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist +xFrench.lproj/Gathering.plist +lSLF07#2@33"Copy French.lproj/Gathering.plist309110077#309110077#0(0"0(0#0#91"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/French.lproj/Gathering.plist4300911832#338" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist French.lproj/Gathering.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist" Macros.plist +s309110082.242580 +e309110082.286143 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist +xMacros.plist +lSLF07#2@17"Copy Macros.plist309110082#309110082#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macros.plist4300911832#309" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist Macros.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist" OffsetSignatures.plist +s309110082.176245 +e309110082.232857 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist +xOffsetSignatures.plist +lSLF07#2@27"Copy OffsetSignatures.plist309110082#309110082#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetSignatures.plist4300911832#319" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist OffsetSignatures.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyStringsFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings" English.lproj/InfoPlist.strings +s309110077.825112 +e309110077.930175 +r1 +xCopyStringsFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings +xEnglish.lproj/InfoPlist.strings +lSLF07#2@36"Copy English.lproj/InfoPlist.strings309110077#309110077#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/InfoPlist.strings4300911832#434" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ICONV /usr/bin/iconv /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copystrings --validate --inputencoding utf-16 --outputencoding UTF-16 English.lproj/InfoPlist.strings --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif" Images/SRRemoveShortcut.tif +s309110079.627266 +e309110079.665424 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif +xImages/SRRemoveShortcut.tif +lSLF07#2@32"Copy Images/SRRemoveShortcut.tif309110079#309110079#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcut.tif4300911832#323" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRRemoveShortcut.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif" Images/SRRemoveShortcutPressed.tif +s309110079.653932 +e309110079.675563 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif +xImages/SRRemoveShortcutPressed.tif +lSLF07#2@39"Copy Images/SRRemoveShortcutPressed.tif309110079#309110079#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutPressed.tif4300911832#330" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRRemoveShortcutPressed.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif" Images/SRRemoveShortcutRollover.tif +s309110079.665563 +e309110079.688956 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif +xImages/SRRemoveShortcutRollover.tif +lSLF07#2@40"Copy Images/SRRemoveShortcutRollover.tif309110079#309110079#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutRollover.tif4300911832#331" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRRemoveShortcutRollover.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff" Images/SRSnapback.tiff +s309110079.675750 +e309110079.698965 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff +xImages/SRSnapback.tiff +lSLF07#2@27"Copy Images/SRSnapback.tiff309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRSnapback.tiff4300911832#318" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRSnapback.tiff --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif" bad.tif +s309110079.535515 +e309110079.627116 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif +xbad.tif +lSLF07#2@12"Copy bad.tif309110079#309110079#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/bad.tif4300911832#303" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff bad.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif" good.tif +s309110079.592254 +e309110079.653792 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif +xgood.tif +lSLF07#2@13"Copy good.tif309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/good.tif4300911832#304" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff good.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png" Ability_DualWieldSpecialization.png +s309110081.106655 +e309110081.119186 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png +xAbility_DualWieldSpecialization.png +lSLF07#2@40"Copy Ability_DualWieldSpecialization.png309110081#309110081#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_DualWieldSpecialization.png4300911832#464" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_DualWieldSpecialization.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png" Ability_Rogue_Sprint.png +s309110079.487014 +e309110079.524230 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png +xAbility_Rogue_Sprint.png +lSLF07#2@29"Copy Ability_Rogue_Sprint.png309110079#309110079#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Rogue_Sprint.png4300911832#453" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Rogue_Sprint.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png" Ability_Warrior_Challange.png +s309110081.108242 +e309110081.123822 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png +xAbility_Warrior_Challange.png +lSLF07#2@34"Copy Ability_Warrior_Challange.png309110081#309110081#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Challange.png4300911832#458" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Challange.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png" Ability_Warrior_ImprovedDisciplines.png +s309110081.107568 +e309110081.116263 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png +xAbility_Warrior_ImprovedDisciplines.png +lSLF07#2@44"Copy Ability_Warrior_ImprovedDisciplines.png309110081#309110081#0(0"0(0#0#102"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_ImprovedDisciplines.png4300911832#468" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_ImprovedDisciplines.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png" Ability_Warrior_Revenge.png +s309110079.484084 +e309110079.543008 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png +xAbility_Warrior_Revenge.png +lSLF07#2@32"Copy Ability_Warrior_Revenge.png309110079#309110079#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Revenge.png4300911832#456" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Revenge.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png" Nodes/ActiveQuestIcon.png +s309110079.980818 +e309110080.015456 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png +xNodes/ActiveQuestIcon.png +lSLF07#2@30"Copy Nodes/ActiveQuestIcon.png309110079#309110080#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ActiveQuestIcon.png4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ActiveQuestIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif" AllianceCrest.gif +s309110080.047371 +e309110080.068691 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif +xAllianceCrest.gif +lSLF07#2@22"Copy AllianceCrest.gif309110080#309110080#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AllianceCrest.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AllianceCrest.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png" Nodes/AvailableQuestIcon.png +s309110079.999223 +e309110080.015267 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png +xNodes/AvailableQuestIcon.png +lSLF07#2@33"Copy Nodes/AvailableQuestIcon.png309110079#309110080#0(0"0(0#0#91"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/AvailableQuestIcon.png4300911832#457" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/AvailableQuestIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png" Nodes/BankerGossipIcon.png +s309110080.001393 +e309110080.021754 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png +xNodes/BankerGossipIcon.png +lSLF07#2@31"Copy Nodes/BankerGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BankerGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BankerGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png" BannerAlliance.png +s309110081.110373 +e309110081.131664 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png +xBannerAlliance.png +lSLF07#2@23"Copy BannerAlliance.png309110081#309110081#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerAlliance.png4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerAlliance.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png" BannerHorde.png +s309110081.109667 +e309110081.129611 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png +xBannerHorde.png +lSLF07#2@20"Copy BannerHorde.png309110081#309110081#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerHorde.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerHorde.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png" BannerNeutral.png +s309110081.108967 +e309110081.144275 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png +xBannerNeutral.png +lSLF07#2@22"Copy BannerNeutral.png309110081#309110081#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerNeutral.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerNeutral.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png" Nodes/BinderGossipIcon.png +s309110080.004272 +e309110080.026833 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png +xNodes/BinderGossipIcon.png +lSLF07#2@31"Copy Nodes/BinderGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BinderGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BinderGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png" BloodElf-Female.png +s309110079.706215 +e309110079.728293 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png +xBloodElf-Female.png +lSLF07#2@24"Copy BloodElf-Female.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif" BloodElf-Female_Small.gif +s309110079.912768 +e309110079.924839 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif +xBloodElf-Female_Small.gif +lSLF07#2@30"Copy BloodElf-Female_Small.gif309110079#309110079#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female_Small.gif4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png" BloodElf-Male.png +s309110079.712833 +e309110079.730639 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png +xBloodElf-Male.png +lSLF07#2@22"Copy BloodElf-Male.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif" BloodElf-Male_Small.gif +s309110079.926848 +e309110079.972223 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif +xBloodElf-Male_Small.gif +lSLF07#2@28"Copy BloodElf-Male_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png" Bobber.png +s309110082.069091 +e309110082.114106 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Bobber.png +xBobber.png +lSLF07#2@15"Copy Bobber.png309110082#309110082#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bobber.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bobber.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png" Nodes/Chicken.png +s309110080.039597 +e309110080.064457 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Chicken.png +xNodes/Chicken.png +lSLF07#2@22"Copy Nodes/Chicken.png309110080#309110080#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Chicken.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Chicken.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Combat.png" Combat.png +s309110079.702034 +e309110079.736684 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Combat.png +xCombat.png +lSLF07#2@15"Copy Combat.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Combat.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Combat.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dead.png" Dead.png +s309110079.702860 +e309110079.724475 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dead.png +xDead.png +lSLF07#2@13"Copy Dead.png309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dead.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dead.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png" DeathKnight.png +s309110082.073322 +e309110082.113653 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png +xDeathKnight.png +lSLF07#2@20"Copy DeathKnight.png309110082#309110082#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif" DeathKnight_Small.gif +s309110082.074013 +e309110082.081242 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif +xDeathKnight_Small.gif +lSLF07#2@26"Copy DeathKnight_Small.gif309110082#309110082#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight_Small.gif4300911832#450" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png" Draenei-Female.png +s309110079.717079 +e309110079.758904 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png +xDraenei-Female.png +lSLF07#2@23"Copy Draenei-Female.png309110079#309110079#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female.png4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif" Draenei-Female_Small.gif +s309110079.927553 +e309110079.957134 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif +xDraenei-Female_Small.gif +lSLF07#2@29"Copy Draenei-Female_Small.gif309110079#309110079#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female_Small.gif4300911832#453" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png" Draenei-Male.png +s309110079.722643 +e309110079.763569 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png +xDraenei-Male.png +lSLF07#2@21"Copy Draenei-Male.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif" Draenei-Male_Small.gif +s309110079.932026 +e309110079.957299 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif +xDraenei-Male_Small.gif +lSLF07#2@27"Copy Draenei-Male_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid.png" Druid.png +s309110079.785459 +e309110079.822957 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Druid.png +xDruid.png +lSLF07#2@14"Copy Druid.png309110079#309110079#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif" Druid_Small.gif +s309110079.872667 +e309110079.879834 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif +xDruid_Small.gif +lSLF07#2@20"Copy Druid_Small.gif309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid_Small.gif4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png" Dwarf-Female.png +s309110079.724588 +e309110079.763747 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png +xDwarf-Female.png +lSLF07#2@21"Copy Dwarf-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif" Dwarf-Female_Small.gif +s309110079.958127 +e309110079.969368 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif +xDwarf-Female_Small.gif +lSLF07#2@27"Copy Dwarf-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png" Dwarf-Male.png +s309110079.728475 +e309110079.759080 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png +xDwarf-Male.png +lSLF07#2@19"Copy Dwarf-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif" Dwarf-Male_Small.gif +s309110079.944701 +e309110079.955126 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif +xDwarf-Male_Small.gif +lSLF07#2@25"Copy Dwarf-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Female.png" Female.png +s309110079.882192 +e309110079.907137 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Female.png +xFemale.png +lSLF07#2@15"Copy Female.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Female.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png" Friendly.png +s309110079.699098 +e309110079.712653 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Friendly.png +xFriendly.png +lSLF07#2@17"Copy Friendly.png309110079#309110079#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Friendly.png4300911832#441" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Friendly.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png" Gnome-Female.png +s309110079.730761 +e309110079.755100 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png +xGnome-Female.png +lSLF07#2@21"Copy Gnome-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif" Gnome-Female_Small.gif +s309110079.912044 +e309110079.924668 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif +xGnome-Female_Small.gif +lSLF07#2@27"Copy Gnome-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png" Gnome-Male.png +s309110079.736817 +e309110079.757085 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png +xGnome-Male.png +lSLF07#2@19"Copy Gnome-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif" Gnome-Male_Small.gif +s309110079.956315 +e309110079.998541 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif +xGnome-Male_Small.gif +lSLF07#2@25"Copy Gnome-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png" Nodes/GossipGossipIcon.png +s309110080.005603 +e309110080.023608 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png +xNodes/GossipGossipIcon.png +lSLF07#2@31"Copy Nodes/GossipGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/GossipGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/GossipGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict" "Growl Registration Ticket.growlRegDict" +s309110077.822999 +e309110077.874910 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict +xGrowl Registration Ticket.growlRegDict +lSLF07#2@43"Copy Growl Registration Ticket.growlRegDict309110077#309110077#0(0"0(0#0#101"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl Registration Ticket.growlRegDict4300911832#469" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl Registration Ticket.growlRegDict" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif" HordeCrest.gif +s309110080.044722 +e309110080.064982 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif +xHordeCrest.gif +lSLF07#2@19"Copy HordeCrest.gif309110080#309110080#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HordeCrest.gif4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HordeCrest.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png" Hostile.png +s309110079.700586 +e309110079.722370 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Hostile.png +xHostile.png +lSLF07#2@16"Copy Hostile.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hostile.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hostile.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png" HotkeyFinished.png +s309110079.903410 +e309110079.930861 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png +xHotkeyFinished.png +lSLF07#2@23"Copy HotkeyFinished.png309110079#309110079#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HotkeyFinished.png4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HotkeyFinished.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png" Human-Female.png +s309110079.747576 +e309110079.763919 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png +xHuman-Female.png +lSLF07#2@21"Copy Human-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif" Human-Female_Small.gif +s309110079.957396 +e309110079.998697 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif +xHuman-Female_Small.gif +lSLF07#2@27"Copy Human-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png" Human-Male.png +s309110079.755243 +e309110079.779695 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png +xHuman-Male.png +lSLF07#2@19"Copy Human-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif" Human-Male_Small.gif +s309110079.925659 +e309110079.980718 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif +xHuman-Male_Small.gif +lSLF07#2@25"Copy Human-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png" Hunter.png +s309110079.792624 +e309110079.822794 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Hunter.png +xHunter.png +lSLF07#2@15"Copy Hunter.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif" Hunter_Small.gif +s309110079.868267 +e309110079.906897 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif +xHunter_Small.gif +lSLF07#2@21"Copy Hunter_Small.gif309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter_Small.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png" INV_Fishingpole_03.png +s309110082.072506 +e309110082.111558 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png +xINV_Fishingpole_03.png +lSLF07#2@27"Copy INV_Fishingpole_03.png309110082#309110082#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Fishingpole_03.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Fishingpole_03.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png" INV_Misc_Gear_01.png +s309110079.476803 +e309110079.524979 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png +xINV_Misc_Gear_01.png +lSLF07#2@25"Copy INV_Misc_Gear_01.png309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gear_01.png4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gear_01.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png" INV_Misc_Gem_Bloodstone_01.png +s309110079.448146 +e309110079.493455 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png +xINV_Misc_Gem_Bloodstone_01.png +lSLF07#2@35"Copy INV_Misc_Gem_Bloodstone_01.png309110079#309110079#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gem_Bloodstone_01.png4300911832#459" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gem_Bloodstone_01.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png" INV_Misc_Head_Dragon_Blue.png +s309110079.452373 +e309110079.502134 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png +xINV_Misc_Head_Dragon_Blue.png +lSLF07#2@34"Copy INV_Misc_Head_Dragon_Blue.png309110079#309110079#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Blue.png4300911832#458" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Blue.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png" INV_Misc_Head_Dragon_Bronze.png +s309110079.445921 +e309110079.509913 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png +xINV_Misc_Head_Dragon_Bronze.png +lSLF07#2@36"Copy INV_Misc_Head_Dragon_Bronze.png309110079#309110079#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Bronze.png4300911832#460" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Bronze.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png" INV_Misc_Orb_05.png +s309110079.464797 +e309110079.533121 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png +xINV_Misc_Orb_05.png +lSLF07#2@24"Copy INV_Misc_Orb_05.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Orb_05.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Orb_05.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png" Nodes/Innkeeper.png +s309110080.036866 +e309110080.058735 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png +xNodes/Innkeeper.png +lSLF07#2@24"Copy Nodes/Innkeeper.png309110080#309110080#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Innkeeper.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Innkeeper.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png" InteractWithTarget.png +s309110082.171937 +e309110082.242432 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png +xInteractWithTarget.png +lSLF07#2@27"Copy InteractWithTarget.png309110082#309110082#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractWithTarget.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractWithTarget.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png" InterfaceBars.png +s309110079.884232 +e309110079.922315 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png +xInterfaceBars.png +lSLF07#2@22"Copy InterfaceBars.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InterfaceBars.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InterfaceBars.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png" Keybindings.png +s309110079.883492 +e309110079.910986 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png +xKeybindings.png +lSLF07#2@20"Copy Keybindings.png309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Keybindings.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Keybindings.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage.png" Mage.png +s309110079.801238 +e309110079.833737 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Mage.png +xMage.png +lSLF07#2@13"Copy Mage.png309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif" Mage_Small.gif +s309110079.861936 +e309110079.883392 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif +xMage_Small.gif +lSLF07#2@19"Copy Mage_Small.gif309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage_Small.gif4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mail.png" Mail.png +s309110082.168208 +e309110082.206613 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Mail.png +xMail.png +lSLF07#2@13"Copy Mail.png309110082#309110082#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mail.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mail.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Male.png" Male.png +s309110079.877412 +e309110079.911151 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Male.png +xMale.png +lSLF07#2@13"Copy Male.png309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Male.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png" Nodes/MinimapGuideFlag.png +s309110080.025219 +e309110080.036762 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png +xNodes/MinimapGuideFlag.png +lSLF07#2@31"Copy Nodes/MinimapGuideFlag.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/MinimapGuideFlag.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/MinimapGuideFlag.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png" Neutral.png +s309110079.704638 +e309110079.747437 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Neutral.png +xNeutral.png +lSLF07#2@16"Copy Neutral.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Neutral.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Neutral.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif" NeutralCrest.gif +s309110080.042088 +e309110080.053924 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif +xNeutralCrest.gif +lSLF07#2@21"Copy NeutralCrest.gif309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NeutralCrest.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NeutralCrest.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png" NightElf-Female.png +s309110079.757220 +e309110079.779889 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png +xNightElf-Female.png +lSLF07#2@24"Copy NightElf-Female.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif" NightElf-Female_Small.gif +s309110079.979109 +e309110079.998382 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif +xNightElf-Female_Small.gif +lSLF07#2@30"Copy NightElf-Female_Small.gif309110079#309110079#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female_Small.gif4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png" NightElf-Male.png +s309110079.759190 +e309110079.785228 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png +xNightElf-Male.png +lSLF07#2@22"Copy NightElf-Male.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif" NightElf-Male_Small.gif +s309110079.972339 +e309110079.978989 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif +xNightElf-Male_Small.gif +lSLF07#2@28"Copy NightElf-Male_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png" Orc-Female.png +s309110079.761100 +e309110079.780050 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png +xOrc-Female.png +lSLF07#2@19"Copy Orc-Female.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif" Orc-Female_Small.gif +s309110079.911257 +e309110079.923414 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif +xOrc-Female_Small.gif +lSLF07#2@25"Copy Orc-Female_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png" Orc-Male.png +s309110079.764022 +e309110079.801102 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png +xOrc-Male.png +lSLF07#2@17"Copy Orc-Male.png309110079#309110079#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male.png4300911832#441" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif" Orc-Male_Small.gif +s309110079.922442 +e309110079.931929 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif +xOrc-Male_Small.gif +lSLF07#2@23"Copy Orc-Male_Small.gif309110079#309110079#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male_Small.gif4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PVP.png" PVP.png +s309110086.496529 +e309110086.521337 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/PVP.png +xPVP.png +lSLF07#2@12"Copy PVP.png309110086#309110086#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PVP.png4300911832#436" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PVP.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png" Paladin.png +s309110079.814608 +e309110079.831888 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Paladin.png +xPaladin.png +lSLF07#2@16"Copy Paladin.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif" Paladin_Small.gif +s309110079.857764 +e309110079.868141 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif +xPaladin_Small.gif +lSLF07#2@22"Copy Paladin_Small.gif309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin_Small.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png" Nodes/PetitionGossipIcon.png +s309110080.006410 +e309110080.023781 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png +xNodes/PetitionGossipIcon.png +lSLF07#2@33"Copy Nodes/PetitionGossipIcon.png309110080#309110080#0(0"0(0#0#91"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/PetitionGossipIcon.png4300911832#457" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/PetitionGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest.png" Priest.png +s309110079.818085 +e309110079.857669 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Priest.png +xPriest.png +lSLF07#2@15"Copy Priest.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif" Priest_Small.gif +s309110079.833834 +e309110079.857353 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif +xPriest_Small.gif +lSLF07#2@21"Copy Priest_Small.gif309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest_Small.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Repair.png" Nodes/Repair.png +s309110080.031103 +e309110080.050168 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Repair.png +xNodes/Repair.png +lSLF07#2@21"Copy Nodes/Repair.png309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Repair.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Repair.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png" Nodes/ResourceBlip.png +s309110080.026938 +e309110080.044600 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png +xNodes/ResourceBlip.png +lSLF07#2@27"Copy Nodes/ResourceBlip.png309110080#309110080#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ResourceBlip.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ResourceBlip.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Result.png" Result.png +s309110079.891591 +e309110079.910808 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Result.png +xResult.png +lSLF07#2@15"Copy Result.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Result.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Result.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png" Rogue.png +s309110079.823055 +e309110079.857518 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Rogue.png +xRogue.png +lSLF07#2@14"Copy Rogue.png309110079#309110079#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif" Rogue_Small.gif +s309110079.875056 +e309110079.883228 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif +xRogue_Small.gif +lSLF07#2@20"Copy Rogue_Small.gif309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue_Small.gif4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png" Nodes/Scroll.png +s309110080.007130 +e309110080.023949 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Scroll.png +xNodes/Scroll.png +lSLF07#2@21"Copy Nodes/Scroll.png309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Scroll.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Scroll.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png" Shaman.png +s309110079.823849 +e309110079.865833 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Shaman.png +xShaman.png +lSLF07#2@15"Copy Shaman.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif" Shaman_Small.gif +s309110079.855843 +e309110079.874917 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif +xShaman_Small.gif +lSLF07#2@21"Copy Shaman_Small.gif309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman_Small.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Skull.png" Skull.png +s309110080.034102 +e309110080.049993 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Skull.png +xSkull.png +lSLF07#2@14"Copy Skull.png309110080#309110080#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Skull.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Skull.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png" Spell_FireResistanceTotem_01.png +s309110079.444932 +e309110079.519488 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png +xSpell_FireResistanceTotem_01.png +lSLF07#2@37"Copy Spell_FireResistanceTotem_01.png309110079#309110079#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_FireResistanceTotem_01.png4300911832#461" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_FireResistanceTotem_01.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png" Spell_Holy_MindVision.png +s309110079.442904 +e309110079.476660 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png +xSpell_Holy_MindVision.png +lSLF07#2@30"Copy Spell_Holy_MindVision.png309110079#309110079#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_MindVision.png4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_MindVision.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png" Spell_Holy_PrayerofSpirit.png +s309110079.705522 +e309110079.716954 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png +xSpell_Holy_PrayerofSpirit.png +lSLF07#2@34"Copy Spell_Holy_PrayerofSpirit.png309110079#309110079#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_PrayerofSpirit.png4300911832#458" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_PrayerofSpirit.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png" Spell_Nature_PoisonCleansingTotem.png +s309110079.450373 +e309110079.486881 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png +xSpell_Nature_PoisonCleansingTotem.png +lSLF07#2@42"Copy Spell_Nature_PoisonCleansingTotem.png309110079#309110079#0(0"0(0#0#100"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Nature_PoisonCleansingTotem.png4300911832#466" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Nature_PoisonCleansingTotem.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Stable.png" Nodes/Stable.png +s309110080.035778 +e309110080.047242 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Stable.png +xNodes/Stable.png +lSLF07#2@21"Copy Nodes/Stable.png309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Stable.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Stable.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png" Nodes/TabardGossipIcon.png +s309110080.015567 +e309110080.033976 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png +xNodes/TabardGossipIcon.png +lSLF07#2@31"Copy Nodes/TabardGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TabardGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TabardGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png" Tauren-Female.png +s309110079.764833 +e309110079.792248 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png +xTauren-Female.png +lSLF07#2@22"Copy Tauren-Female.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif" Tauren-Female_Small.gif +s309110079.969531 +e309110079.998853 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif +xTauren-Female_Small.gif +lSLF07#2@28"Copy Tauren-Female_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png" Tauren-Male.png +s309110079.765547 +e309110079.782722 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png +xTauren-Male.png +lSLF07#2@20"Copy Tauren-Male.png309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif" Tauren-Male_Small.gif +s309110079.930992 +e309110079.970961 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif +xTauren-Male_Small.gif +lSLF07#2@26"Copy Tauren-Male_Small.gif309110079#309110079#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male_Small.gif4300911832#450" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png" Nodes/TaxiGossipIcon.png +s309110080.017843 +e309110080.030582 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png +xNodes/TaxiGossipIcon.png +lSLF07#2@29"Copy Nodes/TaxiGossipIcon.png309110080#309110080#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TaxiGossipIcon.png4300911832#453" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TaxiGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png" Trade_Engraving.png +s309110082.165873 +e309110082.215659 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png +xTrade_Engraving.png +lSLF07#2@24"Copy Trade_Engraving.png309110082#309110082#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Trade_Engraving.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Trade_Engraving.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png" Nodes/TrainerGossipIcon.png +s309110080.021927 +e309110080.039473 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png +xNodes/TrainerGossipIcon.png +lSLF07#2@32"Copy Nodes/TrainerGossipIcon.png309110080#309110080#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TrainerGossipIcon.png4300911832#456" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TrainerGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png" Troll-Female.png +s309110079.780159 +e309110079.814472 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png +xTroll-Female.png +lSLF07#2@21"Copy Troll-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif" Troll-Female_Small.gif +s309110079.923506 +e309110079.944559 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif +xTroll-Female_Small.gif +lSLF07#2@27"Copy Troll-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png" Troll-Male.png +s309110079.781013 +e309110079.855709 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png +xTroll-Male.png +lSLF07#2@19"Copy Troll-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif" Troll-Male_Small.gif +s309110079.971069 +e309110079.999006 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif +xTroll-Male_Small.gif +lSLF07#2@25"Copy Troll-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png" TypeShortcut.png +s309110079.907247 +e309110079.926626 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png +xTypeShortcut.png +lSLF07#2@21"Copy TypeShortcut.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TypeShortcut.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TypeShortcut.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png" Undead-Female.png +s309110079.781879 +e309110079.826022 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png +xUndead-Female.png +lSLF07#2@22"Copy Undead-Female.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif" Undead-Female_Small.gif +s309110079.955421 +e309110079.998218 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif +xUndead-Female_Small.gif +lSLF07#2@28"Copy Undead-Female_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png" Undead-Male.png +s309110079.782845 +e309110079.817967 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png +xUndead-Male.png +lSLF07#2@20"Copy Undead-Male.png309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif" Undead-Male_Small.gif +s309110079.924930 +e309110079.955314 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif +xUndead-Male_Small.gif +lSLF07#2@26"Copy Undead-Male_Small.gif309110079#309110079#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male_Small.gif4300911832#450" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png" UnknownSmall.png +s309110079.909821 +e309110079.926774 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png +xUnknownSmall.png +lSLF07#2@21"Copy UnknownSmall.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UnknownSmall.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UnknownSmall.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png" Nodes/VendorGossipIcon.png +s309110080.024398 +e309110080.035663 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png +xNodes/VendorGossipIcon.png +lSLF07#2@31"Copy Nodes/VendorGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/VendorGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/VendorGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png" Warlock.png +s309110079.826127 +e309110079.877291 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warlock.png +xWarlock.png +lSLF07#2@16"Copy Warlock.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif" Warlock_Small.gif +s309110079.859065 +e309110079.872546 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif +xWarlock_Small.gif +lSLF07#2@22"Copy Warlock_Small.gif309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock_Small.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png" Nodes/WarnTriangle.png +s309110080.025969 +e309110080.041956 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png +xNodes/WarnTriangle.png +lSLF07#2@27"Copy Nodes/WarnTriangle.png309110080#309110080#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/WarnTriangle.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/WarnTriangle.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png" Warrior.png +s309110079.832024 +e309110079.891466 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warrior.png +xWarrior.png +lSLF07#2@16"Copy Warrior.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif" Warrior_Small.gif +s309110079.865962 +e309110079.903282 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif +xWarrior_Small.gif +lSLF07#2@22"Copy Warrior_Small.gif309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior_Small.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3" alarm.mp3 +s309110081.111089 +e309110081.141970 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 +xalarm.mp3 +lSLF07#2@14"Copy alarm.mp3309110081#309110081#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/alarm.mp34300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/alarm.mp3 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml" appcast.xml +s309131094.233544 +e309131094.522472 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/appcast.xml +xappcast.xml +lSLF07#2@16"Copy appcast.xml309131094#309131094#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/appcast.xml4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/appcast.xml "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig" buildnumber.xcconfig +s309110249.994237 +e309110250.019134 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig +xbuildnumber.xcconfig +lSLF07#2@25"Copy buildnumber.xcconfig309110249#309110250#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/buildnumber.xcconfig4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/buildnumber.xcconfig "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem" dsa_pub.pem +s309110086.279237 +e309110086.287050 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem +xdsa_pub.pem +lSLF07#2@16"Copy dsa_pub.pem309110086#309110086#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/dsa_pub.pem4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/dsa_pub.pem "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns" gnome2.icns +s309110080.054067 +e309110080.088892 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns +xgnome2.icns +lSLF07#2@16"Copy gnome2.icns309110080#309110080#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/gnome2.icns4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/gnome2.icns "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/iChat.png" iChat.png +s309110082.170116 +e309110082.202004 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/iChat.png +xiChat.png +lSLF07#2@14"Copy iChat.png309110082#309110082#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/iChat.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/iChat.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png" inv_misc_bag_14.png +s309110079.454627 +e309110079.483951 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png +xinv_misc_bag_14.png +lSLF07#2@24"Copy inv_misc_bag_14.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/inv_misc_bag_14.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/inv_misc_bag_14.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png" mbobbleicon.png +s309110082.173864 +e309110082.205316 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png +xmbobbleicon.png +lSLF07#2@20"Copy mbobbleicon.png309110082#309110082#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mbobbleicon.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mbobbleicon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mixed.png" mixed.png +s309110079.534804 +e309110079.540920 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/mixed.png +xmixed.png +lSLF07#2@14"Copy mixed.png309110079#309110079#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mixed.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mixed.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/off.png" off.png +s309110079.533247 +e309110079.592111 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/off.png +xoff.png +lSLF07#2@12"Copy off.png309110079#309110079#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/off.png4300911832#436" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/off.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/on.png" on.png +s309110079.534094 +e309110079.582585 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/on.png +xon.png +lSLF07#2@11"Copy on.png309110079#309110079#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/on.png4300911832#435" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/on.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns" pgBehavior.icns +s309110080.051062 +e309110080.085192 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns +xpgBehavior.icns +lSLF07#2@20"Copy pgBehavior.icns309110080#309110080#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgBehavior.icns4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgBehavior.icns "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns" pgRoute.icns +s309110080.050285 +e309110080.090559 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns +xpgRoute.icns +lSLF07#2@17"Copy pgRoute.icns309110080#309110080#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgRoute.icns4300911832#441" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgRoute.icns "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3" splash.mp3 +s309110082.070347 +e309110082.165735 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 +xsplash.mp3 +lSLF07#2@15"Copy splash.mp3309110082#309110082#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/splash.mp34300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/splash.mp3 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCreateUniversalBinary "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" normal "i386 ppc" +s309131103.017299 +e309131103.141630 +r1 +xCreateUniversalBinary +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +xnormal +xi386 ppc +lSLF07#2@100"CreateUniversalBinary "build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" normal "i386 ppc"309131103#309131103#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/i386 ppc4300911832#527" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /usr/bin/lipo -create "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" -output "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" 0# + +CGenerateDSYMFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" +s309131103.141730 +e309131103.416841 +r1 +xGenerateDSYMFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +lSLF07#2@115"GenerateDSYMFile "build/Release/Pocket Gnome.app.dSYM" "build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome"309131103#309131103#0(0"0(0#0#121"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome4300911832#341" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/dsymutil "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM" 0# + +CLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" normal i386 +s309131100.569633 +e309131102.957073 +r1 +xLd +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome +xnormal +xi386 +lSLF07#2@152"Link /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome309131100#309131102#0(0"0(0#0#0"4300911832#993" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv MACOSX_DEPLOYMENT_TARGET 10.5 /Volumes/HD/Developer/usr/bin/clang -arch i386 -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -L/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -filelist "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" -mmacosx-version-min=10.5 -framework Cocoa -framework Security -lz.1.2.3 -framework Carbon -framework Growl -framework Message -framework ScriptingBridge -framework ShortcutRecorder -framework CoreData -lcrypto -framework Sparkle -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" 0# + +CLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" normal ppc +s309131101.168014 +e309131103.017171 +r1 +xLd +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome +xnormal +xppc +lSLF07#2@151"Link /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome309131101#309131103#0(0"0(0#0#0"4300911832#997" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv MACOSX_DEPLOYMENT_TARGET 10.5 /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -arch ppc -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -L/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -filelist "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" -mmacosx-version-min=10.5 -framework Cocoa -framework Security -lz.1.2.3 -framework Carbon -framework Growl -framework Message -framework ScriptingBridge -framework ShortcutRecorder -framework CoreData -lcrypto -framework Sparkle -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" 0# + +CPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework" Growl.framework +s309110117.942082 +e309110118.153609 +r1 +xPBXCp +xbuild/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework +xGrowl.framework +lSLF07#2@20"Copy Growl.framework309110117#309110118#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks" 0# + +CPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework" ShortcutRecorder.framework +s309110117.941424 +e309110118.123433 +r1 +xPBXCp +xbuild/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework +xShortcutRecorder.framework +lSLF07#2@31"Copy ShortcutRecorder.framework309110117#309110118#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework4300911832#456" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks" 0# + +CPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework" Sparkle.framework +s309110117.924700 +e309110118.417616 +r1 +xPBXCp +xbuild/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework +xSparkle.framework +lSLF07#2@22"Copy Sparkle.framework309110117#309110118#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks" 0# + +CPhaseScriptExecution "Get SVN Revision" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh" +s309131093.643735 +e309131094.219260 +r1 +xPhaseScriptExecution +xGet SVN Revision +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh +lSLF07#2@42"Run custom shell script 'Get SVN Revision'309131093#309131094#0(0"0(0#0#0"8242523206031534080#18537" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMMAND_MODE legacy setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1064 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0604 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE_COUNT 0 setenv SCRIPT_OUTPUT_FILE_COUNT 0 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh\"" 0# + +CPhaseScriptExecution "Run Script" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh" +s296491990.813065 +e296491990.942534 +r0 +xPhaseScriptExecution +xRun Script +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh +o/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError) +o from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' +o from /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh:34 +lSLF07#2@36"Run custom shell script 'Run Script'296491990#296491990#0(494"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError) from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' from /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh:34 Command /bin/sh failed with exit code 1 4(13@174"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError) 296491990#0#174#0(1@0"0(13@121" from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 296491990#174#121#0(1@0"0(13@159" from /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh:34 296491990#295#159#0(1@0"0(4@39"Command /bin/sh failed with exit code 1296491990#18446744073709551615#0#0(1@0"0(0#0#0"4300911832#18566" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_NUMBER 506S setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMMAND_MODE legacy setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1063 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0603 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE_COUNT 0 setenv SCRIPT_OUTPUT_FILE_COUNT 0 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh\"" 1# + +CPhaseScriptExecution /Applications/Mail.app +s309131094.533723 +e309131094.790780 +r1 +xPhaseScriptExecution +x/Applications/Mail.app +osdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. +osdp: warning: Use -A to emit this declaration anyway. +lSLF07#2@48"Run custom shell script '/Applications/Mail.app'309131094#309131094#0(151"sdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. sdp: warning: Use -A to emit this declaration anyway. 2(13@95"sdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. 309131094#0#95#0(1@0"0(13@56"sdp: warning: Use -A to emit this declaration anyway. 309131094#95#56#0(1@0"0(0#0#0"4300911832#18985" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INPUT_FILE_BASE Mail setenv INPUT_FILE_DIR /Applications setenv INPUT_FILE_NAME Mail.app setenv INPUT_FILE_PATH /Applications/Mail.app setenv INPUT_FILE_REGION_PATH_COMPONENT setenv INPUT_FILE_SUFFIX .app setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1064 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0604 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv OTHER_INPUT_FILE_FLAGS setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE /Applications/Mail.app setenv SCRIPT_OUTPUT_FILE_0 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h" setenv SCRIPT_OUTPUT_FILE_COUNT 1 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`" 0# + +CPhaseScriptExecution /Applications/iChat.app +s309131094.538122 +e309131094.802173 +r1 +xPhaseScriptExecution +x/Applications/iChat.app +osdp: warning: class "iChatApplication" redeclared; use instead. +lSLF07#2@49"Run custom shell script '/Applications/iChat.app'309131094#309131094#0(82"sdp: warning: class "iChatApplication" redeclared; use instead. 1(13@82"sdp: warning: class "iChatApplication" redeclared; use instead. 309131094#0#82#0(1@0"0(0#0#0"4300911832#18990" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INPUT_FILE_BASE iChat setenv INPUT_FILE_DIR /Applications setenv INPUT_FILE_NAME iChat.app setenv INPUT_FILE_PATH /Applications/iChat.app setenv INPUT_FILE_REGION_PATH_COMPONENT setenv INPUT_FILE_SUFFIX .app setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1064 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0604 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv OTHER_INPUT_FILE_FLAGS setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE /Applications/iChat.app setenv SCRIPT_OUTPUT_FILE_0 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h" setenv SCRIPT_OUTPUT_FILE_COUNT 1 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`" 0# + +CProcessInfoPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist" Info.plist +s309110249.830125 +e309110249.871140 +r1 +xProcessInfoPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist +xInfo.plist +lSLF07#2@18"Process Info.plist309110249#309110249#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist4300911832#392" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 builtin-infoPlistUtility Info.plist -genpkginfo "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/PkgInfo" -expandbuildsettings -platform macosx -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist" 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309016231.430403 +e309016235.215922 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016235#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1462" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309025519.174086 +e309025519.844064 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025519#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +s309025519.175948 +e309025519.902543 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025519#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1481" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s298991087.642607 +e298991090.358142 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991090#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1462" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309025519.173153 +e309025523.645880 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025523#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1462" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +s309016231.432316 +e309016236.526987 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016236#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1491" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +s309025519.175019 +e309025524.702545 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025524#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1491" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +s298991087.645019 +e298991088.172374 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991088#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1481" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +s298991087.644067 +e298991091.651910 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991091#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1491" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s298991087.643416 +e298991087.657330 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991087#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +s309016231.433275 +e309016232.387743 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016232#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1481" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309016231.431395 +e309016232.124187 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016232#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth 0# + +CTouch "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" +s309131103.417102 +e309131103.420808 +r1 +xTouch +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app +lSLF07#2@99"Touch /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app309131103#309131103#0(0"0(0#0#0"4300911832#188" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /usr/bin/touch -c "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" 0# + diff --git a/build/Pocket Gnome.build/Release/Pocket Gnome.build/build-state~.dat b/build/Pocket Gnome.build/Release/Pocket Gnome.build/build-state~.dat new file mode 100644 index 0000000..3ab6b16 --- /dev/null +++ b/build/Pocket Gnome.build/Release/Pocket Gnome.build/build-state~.dat @@ -0,0 +1,14154 @@ +TPocket Gnome +v7 +r0 +t309110118.430885 +cCheck dependencies +cProcessInfoPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist" Info.plist +cPhaseScriptExecution "Get SVN Revision" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh" +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict" "Growl Registration Ticket.growlRegDict" +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist" FactionTemplate.plist +cCopyStringsFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings" English.lproj/InfoPlist.strings +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist" English.lproj/Gathering.plist +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist" French.lproj/Gathering.plist +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png" Spell_Holy_MindVision.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png" Spell_FireResistanceTotem_01.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png" INV_Misc_Head_Dragon_Bronze.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png" INV_Misc_Gem_Bloodstone_01.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png" Spell_Nature_PoisonCleansingTotem.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png" INV_Misc_Head_Dragon_Blue.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png" inv_misc_bag_14.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png" INV_Misc_Orb_05.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png" INV_Misc_Gear_01.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png" Ability_Warrior_Revenge.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png" Ability_Rogue_Sprint.png +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/off.png" off.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/on.png" on.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mixed.png" mixed.png +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif" bad.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif" good.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif" Images/SRRemoveShortcut.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif" Images/SRRemoveShortcutPressed.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif" Images/SRRemoveShortcutRollover.tif +cCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff" Images/SRSnapback.tiff +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png" Friendly.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png" Hostile.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Combat.png" Combat.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dead.png" Dead.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png" Neutral.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png" Spell_Holy_PrayerofSpirit.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png" BloodElf-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png" BloodElf-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png" Draenei-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png" Draenei-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png" Dwarf-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png" Dwarf-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png" Gnome-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png" Gnome-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png" Human-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png" Human-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png" NightElf-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png" NightElf-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png" Orc-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png" Orc-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png" Tauren-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png" Tauren-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png" Troll-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png" Troll-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png" Undead-Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png" Undead-Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid.png" Druid.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png" Hunter.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage.png" Mage.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png" Paladin.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest.png" Priest.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png" Rogue.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png" Shaman.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png" Warlock.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png" Warrior.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif" Priest_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif" Shaman_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif" Paladin_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif" Warlock_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif" Mage_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif" Warrior_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif" Hunter_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif" Druid_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif" Rogue_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Male.png" Male.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Female.png" Female.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png" Keybindings.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png" InterfaceBars.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Result.png" Result.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png" HotkeyFinished.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png" TypeShortcut.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png" UnknownSmall.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif" Orc-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif" Gnome-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif" BloodElf-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif" Orc-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif" Troll-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif" Undead-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif" Human-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif" BloodElf-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif" Draenei-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif" Tauren-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif" Draenei-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif" Dwarf-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif" Undead-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif" Gnome-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif" Human-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif" Dwarf-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif" Tauren-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif" Troll-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif" NightElf-Male_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif" NightElf-Female_Small.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png" Nodes/ActiveQuestIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png" Nodes/AvailableQuestIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png" Nodes/BankerGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png" Nodes/BinderGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png" Nodes/GossipGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png" Nodes/PetitionGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png" Nodes/Scroll.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png" Nodes/TabardGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png" Nodes/TaxiGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png" Nodes/TrainerGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png" Nodes/VendorGossipIcon.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png" Nodes/MinimapGuideFlag.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png" Nodes/WarnTriangle.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png" Nodes/ResourceBlip.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Repair.png" Nodes/Repair.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Skull.png" Skull.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Stable.png" Nodes/Stable.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png" Nodes/Innkeeper.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png" Nodes/Chicken.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif" NeutralCrest.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif" HordeCrest.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif" AllianceCrest.gif +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns" pgRoute.icns +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns" pgBehavior.icns +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns" gnome2.icns +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png" Ability_DualWieldSpecialization.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png" Ability_Warrior_ImprovedDisciplines.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png" Ability_Warrior_Challange.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png" BannerNeutral.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png" BannerHorde.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png" BannerAlliance.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3" alarm.mp3 +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png" Bobber.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3" splash.mp3 +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png" INV_Fishingpole_03.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png" DeathKnight.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif" DeathKnight_Small.gif +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png" Trade_Engraving.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mail.png" Mail.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/iChat.png" iChat.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png" InteractWithTarget.png +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png" mbobbleicon.png +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist" OffsetSignatures.plist +cCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist" Macros.plist +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem" dsa_pub.pem +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PVP.png" PVP.png +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +cCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +cCpResource "build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml" appcast.xml +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +cProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cPhaseScriptExecution /Applications/Mail.app +cPhaseScriptExecution /Applications/Mail.app +cPhaseScriptExecution /Applications/iChat.app +cPhaseScriptExecution /Applications/iChat.app +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" normal i386 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal ppc c com.apple.compilers.llvmgcc42 +cCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +cLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" normal ppc +cCreateUniversalBinary "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" normal "i386 ppc" +cGenerateDSYMFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" +cPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework" Sparkle.framework +cPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework" ShortcutRecorder.framework +cPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework" Growl.framework +cTouch "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" + +N/Applications/Mail.app +c000000004C1C06410000000000000066 +t1276905025 +s102 + +N/Applications/iChat.app +c000000004C1C06420000000000000066 +t1276905026 +s102 + +N/System/Library/Frameworks/Carbon.framework/Carbon +c000000004C0FDD7E000000000000A5F0 +t1276108158 +s42480 + +N/System/Library/Frameworks/Cocoa.framework/Cocoa +c000000004A1F2D63000000000000A5E0 +t1243557219 +s42464 + +N/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacErrors.h +c000000004B56A7950000000000029A6D +t1263970197 +s170605 + +N/System/Library/Frameworks/Message.framework/Message +c000000004BF703750000000000D4D480 +t1274479477 +s13948032 + +N/System/Library/Frameworks/ScriptingBridge.framework/ScriptingBridge +c000000004B74958A0000000000079800 +t1265931658 +s497664 + +N/System/Library/Frameworks/Security.framework/Security +c000000004C5CF8D90000000000A14FA0 +t1281161433 +s10571680 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk +c000000004B7D589B00000000000000EE +t1266505883 +s238 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/AppKit.framework/Headers/AppKit.h +c000000004864BB88000000000000170F +t1214561160 +s5903 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Headers/Carbon.h +c000000004864BE3E00000000000005D7 +t1214561854 +s1495 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h +c0000000040C4AA6800000000000001E5 +t1086630504 +s485 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreData.framework/CoreData +c000000004B760CC4000000000003B524 +t1266027716 +s242980 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h +c00000000486499690000000000000942 +t1214552425 +s2370 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/CoreServices.framework/Headers/CoreServices.h +c0000000047BAD4120000000000000400 +t1203426322 +s1024 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h +c000000004864A1C900000000000012EE +t1214554569 +s4846 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSAppleEventDescriptor.h +c000000004864A1C900000000000015A0 +t1214554569 +s5536 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h +c000000004864D1C50000000000001199 +t1214566853 +s4505 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/ScreenSaver.framework/Headers/ScreenSaver.h +c000000004864CD6400000000000000B9 +t1214565732 +s185 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/ScriptingBridge.framework/Headers/ScriptingBridge.h +c0000000047BB0AFB00000000000000C9 +t1203440379 +s201 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Security.framework/Headers/AuthorizationTags.h +c00000000490261C30000000000000EC4 +t1224892867 +s3780 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Security.framework/Headers/Security.h +c00000000490261C600000000000009CB +t1224892870 +s2507 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/SecurityFoundation.framework/Headers/SFAuthorization.h +c0000000047BAD95100000000000017D3 +t1203427665 +s6099 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/arpa/inet.h +c00000000464386D70000000000001533 +t1178830551 +s5427 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/asl.h +c0000000047BA993000000000000027F7 +t1203411248 +s10231 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/assert.h +c0000000047BA99300000000000000DCB +t1203411248 +s3531 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/ctype.h +c0000000047BA99310000000000002C3A +t1203411249 +s11322 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/dlfcn.h +c00000000487581E60000000000000AC7 +t1215660518 +s2759 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/errno.h +c0000000047BA993000000000000003EB +t1203411248 +s1003 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/fcntl.h +c0000000047BA993000000000000003EA +t1203411248 +s1002 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/launch.h +c0000000047BAF6340000000000002572 +t1203435060 +s9586 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/limits.h +c0000000047BA9930000000000000145A +t1203411248 +s5210 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/locale.h +c0000000047BA993000000000000008F0 +t1203411248 +s2288 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach-o/dyld.h +c00000000487581E60000000000003D74 +t1215660518 +s15732 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/mach_traps.h +c0000000047E8839E0000000000000EF1 +t1206420382 +s3825 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/mach/vm_map.h +c0000000048648ADA0000000000007219 +t1214548698 +s29209 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/math.h +c0000000047BA987000000000000004B7 +t1203411056 +s1207 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/netinet/in.h +c0000000047E883C30000000000005346 +t1206420419 +s21318 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/readline/history.h +c0000000047BABCFC0000000000001AE2 +t1203420412 +s6882 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/readline/readline.h +c0000000047BABCFC0000000000001AE2 +t1203420412 +s6882 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/setjmp.h +c0000000047BA99300000000000000438 +t1203411248 +s1080 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdarg.h +c0000000047BA993000000000000000EA +t1203411248 +s234 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stddef.h +c0000000047BA99300000000000001404 +t1203411248 +s5124 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdio.h +c0000000047BA99310000000000003D1D +t1203411249 +s15645 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/stdlib.h +c0000000047BA99310000000000002A79 +t1203411249 +s10873 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/string.h +c0000000047BA99320000000000001731 +t1203411250 +s5937 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/event.h +c0000000047E883CF0000000000002105 +t1206420431 +s8453 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/socket.h +c0000000047E883D1000000000000559B +t1206420433 +s21915 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/stat.h +c0000000047E883D100000000000047CE +t1206420433 +s18382 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/types.h +c0000000047E883D2000000000000290F +t1206420434 +s10511 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/sys/un.h +c0000000047E883D20000000000001072 +t1206420434 +s4210 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/time.h +c0000000047BA9932000000000000178E +t1203411250 +s6030 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/include/unistd.h +c0000000047BA993200000000000053FF +t1203411250 +s21503 + +N/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/usr/lib/libcrypto.dylib +c000000004B760CFE000000000007260C +t1266027774 +s468492 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_DualWieldSpecialization.png +c000000004BD31F9D0000000000001314 +t1272127389 +s4884 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Rogue_Sprint.png +c000000004BD31F9D000000000000155D +t1272127389 +s5469 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Challange.png +c000000004BD31F9D0000000000002469 +t1272127389 +s9321 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_ImprovedDisciplines.png +c000000004BD31F9E0000000000001227 +t1272127390 +s4647 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Revenge.png +c000000004BD31F9D00000000000014CD +t1272127389 +s5325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.h +c000000004CB720FF00000000000004D8 +t1287069951 +s1240 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m +c000000004CB7221900000000000009CE +t1287070233 +s2510 +i"Action.h" +i"RouteSet.h" +i"Route.h" +i"Spell.h" +i"SpellController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.h +c000000004BD31F9D000000000000028D +t1272127389 +s653 +i +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m +c000000004BD31F9D0000000000000F37 +t1272127389 +s3895 +i"ActionController.h" +i"Action.h" +i"RepairActionController.h" +i"SwitchRouteActionController.h" +i"SpellActionController.h" +i"ItemActionController.h" +i"MacroActionController.h" +i"DelayActionController.h" +i"JumpActionController.h" +i"QuestTurnInActionController.h" +i"QuestGrabActionController.h" +i"InteractObjectActionController.h" +i"InteractNPCActionController.h" +i"CombatProfileActionController.h" +i"VendorActionController.h" +i"MailActionController.h" +i"ReverseRouteActionController.h" +i"JumpToWaypointActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.h +c000000004BD31F9D00000000000003A4 +t1272127389 +s932 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m +c000000004BD31F9D0000000000002235 +t1272127389 +s8757 +i"ActionMenusController.h" +i"Controller.h" +i"SpellController.h" +i"InventoryController.h" +i"MobController.h" +i"NodeController.h" +i"MacroController.h" +i"Macro.h" +i"Spell.h" +i"Item.h" +i"Node.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AllianceCrest.gif +c000000004BD31F9D0000000000000164 +t1272127389 +s356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.h +c000000004BD31F9E00000000000003B9 +t1272127390 +s953 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m +c000000004BD31F9D000000000000044A +t1272127389 +s1098 +i"Aura.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +c000000004BD31F9D0000000000011F0B +t1272127389 +s73483 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.h +c000000004BD31F9D0000000000000269 +t1272127389 +s617 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m +c000000004BD31F9D0000000000000D06 +t1272127389 +s3334 +i"AuraConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.h +c000000004BD31F9D0000000000000888 +t1272127389 +s2184 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m +c000000004CB779140000000000007EC4 +t1287092500 +s32452 +i"AuraController.h" +i"Controller.h" +i"PlayerDataController.h" +i"SpellController.h" +i"MobController.h" +i"MemoryAccess.h" +i"Offsets.h" +i"Spell.h" +i"Unit.h" +i"Aura.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +c000000004BD31F9D0000000000011EB0 +t1272127389 +s73392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.h +c000000004BD31F9D0000000000000248 +t1272127389 +s584 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m +c000000004BD31F9D00000000000009F0 +t1272127389 +s2544 +i"AuraStackConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerAlliance.png +c000000004BD31F9D0000000000001BC4 +t1272127389 +s7108 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerHorde.png +c000000004BD31F9D0000000000001933 +t1272127389 +s6451 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerNeutral.png +c000000004BD31F9D0000000000001888 +t1272127389 +s6280 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.h +c000000004BD31F9D00000000000007D9 +t1272127389 +s2009 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m +c000000004BD31F9D0000000000001024 +t1272127389 +s4132 +i"Battleground.h" +i"RouteCollection.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.h +c000000004C054649000000000000034D +t1275414089 +s845 +i +i"Procedure.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m +c000000004C0546490000000000001573 +t1275414089 +s5491 +i"Behavior.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +c000000004C054881000000000002C560 +t1275414657 +s181600 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c +c000000004BD31F9D0000000000013CAE +t1272127389 +s81070 +i"BetterAuthorizationSampleLib.h" +i +i +i +i +i +i +i +i +i +i"/System/Library/Frameworks/CoreServices.framework/Frameworks/CarbonCore.framework/Headers/MacErrors.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.h +c000000004BD31F9D0000000000009216 +t1272127389 +s37398 +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.h +c000000004BD31F9E000000000000012A +t1272127390 +s298 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m +c000000004BD31F9E0000000000000437 +t1272127390 +s1079 +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.h +c000000004BD31F9E0000000000000174 +t1272127390 +s372 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m +c000000004BD31F9E0000000000000842 +t1272127390 +s2114 +i"BetterTableView.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.h +c000000004BD31F9D00000000000006BB +t1272127389 +s1723 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m +c000000004CB772F4000000000000460F +t1287090932 +s17935 +i"BindingsController.h" +i"Controller.h" +i"PlayerDataController.h" +i"ChatController.h" +i"BotController.h" +i"OffsetController.h" +i"Behavior.h" +i"MemoryAccess.h" +i"Offsets.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.h +c000000004BD31F9D0000000000000577 +t1272127389 +s1399 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m +c000000004BD31F9D0000000000002AB4 +t1272127389 +s10932 +i"BlacklistController.h" +i"MobController.h" +i"PlayersController.h" +i"CombatController.h" +i"WoWObject.h" +i"Unit.h" +i"Player.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female.png +c000000004BD31F9E00000000000024B2 +t1272127390 +s9394 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female_Small.gif +c000000004BD31F9D00000000000005EA +t1272127389 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male.png +c000000004BD31F9D00000000000024F2 +t1272127389 +s9458 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male_Small.gif +c000000004BD31F9D00000000000005EA +t1272127389 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bobber.png +c000000004BD31F9D00000000000022CD +t1272127389 +s8909 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.h +c000000004BD31F9D0000000000000555 +t1272127389 +s1365 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m +c000000004BD31F9D0000000000002096 +t1272127389 +s8342 +i"BonjourController.h" +i"NSData+SockAddr.h" +i"Controller.h" +i"PlayerDataController.h" +i"MobController.h" +i"SpellController.h" +i"Unit.h" +i"Player.h" +i"Spell.h" +i"CGSPrivate.h" +i"GrabWindow.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +c000000004CBB41B800000000000474F0 +t1287340472 +s292080 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.h +c000000004CBB40D800000000000039F0 +t1287340248 +s14832 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m +c000000004CBB5D87000000000004CA82 +t1287347591 +s313986 +i"BotController.h" +i"Controller.h" +i"ChatController.h" +i"PlayerDataController.h" +i"MobController.h" +i"SpellController.h" +i"NodeController.h" +i"CombatController.h" +i"MovementController.h" +i"AuraController.h" +i"WaypointController.h" +i"ProcedureController.h" +i"InventoryController.h" +i"PlayersController.h" +i"QuestController.h" +i"CorpseController.h" +i"LootController.h" +i"ChatLogController.h" +i"FishController.h" +i"MacroController.h" +i"OffsetController.h" +i"MemoryViewController.h" +i"EventController.h" +i"BlacklistController.h" +i"StatisticsController.h" +i"BindingsController.h" +i"PvPController.h" +i"ProfileController.h" +i"ChatLogEntry.h" +i"BetterSegmentedControl.h" +i"Behavior.h" +i"RouteCollection.h" +i"RouteSet.h" +i"Route.h" +i"Condition.h" +i"Mob.h" +i"Unit.h" +i"Player.h" +i"Item.h" +i"Offsets.h" +i"PTHeader.h" +i"CGSPrivate.h" +i"Macro.h" +i"CombatProfile.h" +i"Errors.h" +i"PvPBehavior.h" +i"Battleground.h" +i"ScanGridView.h" +i"TransparentWindow.h" +i"DatabaseManager.h" +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CGSPrivate.h +c000000004BD31F9E000000000000243F +t1272127390 +s9279 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.h +c000000004BD31F9D0000000000000400 +t1272127389 +s1024 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m +c000000004BD31F9D00000000000007F9 +t1272127389 +s2041 +i"ChatAction.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.h +c000000004BD31F9D0000000000000232 +t1272127389 +s562 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m +c000000004BD31F9D0000000000003037 +t1272127389 +s12343 +i +i +i"ChatController.h" +i"Controller.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +c000000004BD31F9E000000000006828A +t1272127390 +s426634 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.h +c000000004BD31F9E00000000000007D5 +t1272127390 +s2005 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m +c000000004C054649000000000000617F +t1275414089 +s24959 +i"ChatLogController.h" +i"Controller.h" +i"MemoryAccess.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"Offsets.h" +i"ChatLogEntry.h" +i"ChatAction.h" +i +i +i +i"Mail.h" +i"iChat.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.h +c000000004BD31F9D0000000000000637 +t1272127389 +s1591 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m +c000000004CB792890000000000002281 +t1287099017 +s8833 +i"ChatLogEntry.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ClientDbDefines.h +c000000004BD32249000000000000123A +t1272128073 +s4666 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Combat.png +c000000004BD31F9D0000000000000260 +t1272127389 +s608 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.h +c000000004BF95B940000000000000E2C +t1274633108 +s3628 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m +c000000004CBB021C00000000000115B5 +t1287324188 +s71093 +i"CombatController.h" +i"PlayersController.h" +i"AuraController.h" +i"MobController.h" +i"BotController.h" +i"PlayerDataController.h" +i"BlacklistController.h" +i"MovementController.h" +i"Controller.h" +i"AuraController.h" +i"MacroController.h" +i"Unit.h" +i"Rule.h" +i"CombatProfile.h" +i"Behavior.h" +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +c000000004BD31F9D000000000000BFB8 +t1272127389 +s49080 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.h +c000000004BD31F9E000000000000019E +t1272127390 +s414 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m +c000000004BD31F9E000000000000078F +t1272127390 +s1935 +i"CombatCountConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.h +c000000004C0546490000000000001BBC +t1275414089 +s7100 +i +i"IgnoreEntry.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m +c000000004C0546490000000000007824 +t1275414089 +s30756 +i"CombatProfile.h" +i"Unit.h" +i"Mob.h" +i"IgnoreEntry.h" +i"Offsets.h" +i"FileObject.h" +i"PlayerDataController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib +c000000004BF95B95000000000007BA1B +t1274633109 +s506395 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +c000000004BD31F9E000000000000B75D +t1272127390 +s46941 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.h +c000000004BD31F9D00000000000001CD +t1272127389 +s461 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m +c000000004BD31F9D0000000000000788 +t1272127389 +s1928 +i"CombatProfileActionController.h" +i"ActionController.h" +i"CombatProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.h +c000000004BF8864C0000000000000684 +t1274578508 +s1668 +i +i"CombatProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m +c000000004BF886430000000000002F49 +t1274578499 +s12105 +i"CombatProfileEditor.h" +i"PlayersController.h" +i"BotController.h" +i"Controller.h" +i"MobController.h" +i"ProfileController.h" +i"Offsets.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +c000000004BD31F9D000000000000AC63 +t1272127389 +s44131 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.h +c000000004BD31F9E0000000000000199 +t1272127390 +s409 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m +c000000004BD31F9E00000000000009E3 +t1272127390 +s2531 +i"ComboPointConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.h +c000000004CBB597B0000000000000F8C +t1287346555 +s3980 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m +c000000004BD31F9D00000000000010A4 +t1272127389 +s4260 +i"Condition.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.h +c000000004BD31F9E0000000000000143 +t1272127390 +s323 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m +c000000004BD31F9E00000000000002A7 +t1272127390 +s679 +i"ConditionCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.h +c000000004BD31F9D000000000000029E +t1272127389 +s670 +i +i"Condition.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m +c000000004CBB51F3000000000000174B +t1287344627 +s5963 +i"ConditionController.h" +i"Condition.h" +i"HealthConditionController.h" +i"StatusConditionController.h" +i"AuraConditionController.h" +i"DistanceConditionController.h" +i"InventoryConditionController.h" +i"ComboPointConditionController.h" +i"AuraStackConditionController.h" +i"TotemConditionController.h" +i"TempEnchantConditionController.h" +i"TargetTypeConditionController.h" +i"TargetClassConditionController.h" +i"CombatCountConditionController.h" +i"ProximityCountConditionController.h" +i"SpellCooldownConditionController.h" +i"LastSpellCastConditionController.h" +i"RuneConditionController.h" +i"DurabilityConditionController.h" +i"PlayerLevelConditionController.h" +i"PlayerZoneConditionController.h" +i"QuestConditionController.h" +i"RouteRunCountConditionController.h" +i"RouteRunTimeConditionController.h" +i"InventoryFreeConditionController.h" +i"MobsKilledConditionController.h" +i"GateConditionController.h" +i"StrandStatusConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.h +c000000004CBB04F600000000000014CE +t1287324918 +s5326 +i +i"MemoryAccess.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m +c000000004CBB4ACE000000000000E6B2 +t1287342798 +s59058 +i"Controller.h" +i"NoAccessApplication.h" +i"BotController.h" +i"MobController.h" +i"NodeController.h" +i"SpellController.h" +i"InventoryController.h" +i"WaypointController.h" +i"ProcedureController.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"PlayersController.h" +i"CorpseController.h" +i"OffsetController.h" +i"StatisticsController.h" +i"ObjectsController.h" +i"PvPController.h" +i"ProfileController.h" +i"CGSPrivate.h" +i"MemoryAccess.h" +i"Offsets.h" +i"NSNumberToHexString.h" +i"NSString+URLEncode.h" +i"NSString+Extras.h" +i"Mob.h" +i"Item.h" +i"Node.h" +i"Player.h" +i"PTHeader.h" +i"Position.h" +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.h +c000000004BD31F9D00000000000006EC +t1272127389 +s1772 +i +i"WoWObject.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m +c000000004BD31F9D0000000000000499 +t1272127389 +s1177 +i"Corpse.h" +i"WoWObject.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.h +c000000004BD31F9D00000000000001B6 +t1272127389 +s438 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m +c000000004BD31F9D00000000000008CC +t1272127389 +s2252 +i"CorpseController.h" +i"Corpse.h" +i"MemoryAccess.h" +i"Controller.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.h +c000000004CB726E40000000000002FEB +t1287071460 +s12267 +i +i"ClientDbDefines.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m +c000000004CB727500000000000001843 +t1287071568 +s6211 +i"DatabaseManager.h" +i"Controller.h" +i"OffsetController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dead.png +c000000004BD31F9E000000000000017B +t1272127390 +s379 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight.png +c000000004BD31F9D0000000000001D6E +t1272127389 +s7534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight_Small.gif +c000000004BD31F9D0000000000000487 +t1272127389 +s1159 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +c000000004BD31F9D000000000000B02B +t1272127389 +s45099 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.h +c000000004BD31F9E0000000000000130 +t1272127390 +s304 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m +c000000004BD31F9E0000000000000409 +t1272127390 +s1033 +i"DelayActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +c000000004BD31F9E000000000000A666 +t1272127390 +s42598 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.h +c000000004BD31F9E000000000000023F +t1272127390 +s575 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m +c000000004BD31F9E0000000000000851 +t1272127390 +s2129 +i"DistanceConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female.png +c000000004BD31F9E000000000000261F +t1272127390 +s9759 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female_Small.gif +c000000004BD31F9E00000000000005EA +t1272127390 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male.png +c000000004BD31F9E0000000000002681 +t1272127390 +s9857 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male_Small.gif +c000000004BD31F9E00000000000005EA +t1272127390 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid.png +c000000004BD31F9E00000000000021E4 +t1272127390 +s8676 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid_Small.gif +c000000004BD31F9D0000000000000174 +t1272127389 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +c000000004BD31F9E000000000000BDFD +t1272127390 +s48637 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.h +c000000004BD31F9D000000000000019F +t1272127389 +s415 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m +c000000004BD31F9D00000000000006A5 +t1272127389 +s1701 +i"DurabilityConditionController.h" +i"ConditionController.h" +i"Condition.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female.png +c000000004BD31F9E0000000000001EED +t1272127390 +s7917 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female_Small.gif +c000000004BD31F9D000000000000014A +t1272127389 +s330 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male.png +c000000004BD31F9D000000000000250F +t1272127389 +s9487 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male_Small.gif +c000000004BD31F9E000000000000015E +t1272127390 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/Gathering.plist +c000000004BD31F980000000000002D8D +t1272127384 +s11661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/InfoPlist.strings +c000000004CB7999100000000000000D8 +t1287100817 +s216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Errors.h +c000000004C054649000000000000086E +t1275414089 +s2158 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.h +c000000004BD31F9D0000000000000354 +t1272127389 +s852 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m +c000000004CB7727C0000000000000FCC +t1287090812 +s4044 +i"EventController.h" +i"Controller.h" +i"BotController.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"Player.h" +i"MemoryAccess.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FactionTemplate.plist +c000000004BD31F9D000000000003A721 +t1272127389 +s239393 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Female.png +c000000004BD31F9D0000000000001A56 +t1272127389 +s6742 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.h +c000000004BF95D2B00000000000007E8 +t1274633515 +s2024 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m +c000000004BF95EC3000000000000241B +t1274633923 +s9243 +i"FileController.h" +i"FileObject.h" +i"RouteCollection.h" +i"CombatProfile.h" +i"MailActionProfile.h" +i"Behavior.h" +i"PvPBehavior.h" +i"RouteSet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.h +c000000004BD31F9E000000000000064E +t1272127390 +s1614 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m +c000000004BF97BF20000000000000E1B +t1274641394 +s3611 +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.h +c000000004BD31F9D0000000000000601 +t1272127389 +s1537 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m +c000000004CBB026900000000000040A1 +t1287324265 +s16545 +i"FishController.h" +i"Controller.h" +i"NodeController.h" +i"PlayerDataController.h" +i"BotController.h" +i"InventoryController.h" +i"LootController.h" +i"SpellController.h" +i"ActionMenusController.h" +i"MovementController.h" +i"Offsets.h" +i"Errors.h" +i"Node.h" +i"Position.h" +i"MemoryAccess.h" +i"Player.h" +i"Item.h" +i"Spell.h" +i"PTHeader.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/French.lproj/Gathering.plist +c000000004BD31F970000000000002BD2 +t1272127383 +s11218 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Friendly.png +c000000004BD31F9D0000000000000439 +t1272127389 +s1081 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +c000000004BD31F9D000000000000C610 +t1272127389 +s50704 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.h +c000000004BD31F9D0000000000000195 +t1272127389 +s405 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m +c000000004BD31F9D0000000000000634 +t1272127389 +s1588 +i"GateConditionController.h" +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Globals.h +c000000004BD31F9D0000000000000107 +t1272127389 +s263 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female.png +c000000004BD31F9D00000000000020AF +t1272127389 +s8367 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female_Small.gif +c000000004BD31F9D000000000000015A +t1272127389 +s346 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male.png +c000000004BD31F9D0000000000002655 +t1272127389 +s9813 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male_Small.gif +c000000004BD31F9D0000000000000175 +t1272127389 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.h +c000000004BD31F9D00000000000002B1 +t1272127389 +s689 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m +c000000004BD31F9D00000000000024C7 +t1272127389 +s9415 +i"GrabWindow.h" +i"CGSPrivate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl Registration Ticket.growlRegDict +c000000004BD31F9D00000000000003B2 +t1272127389 +s946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework +c000000004BD31F9300000000000000EE +t1272127379 +s238 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework/Growl +c000000004BD31F930000000000020BE4 +t1272127379 +s134116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework/Headers/GrowlApplicationBridge.h +c000000004BD31F9300000000000074E2 +t1272127379 +s29922 +i +i +i"GrowlDefines.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework/Headers/GrowlDefines.h +c000000004BD31F930000000000003D75 +t1272127379 +s15733 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +c000000004CBB58F30000000000010EE1 +t1287346419 +s69345 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.h +c000000004BD31F9D00000000000001C2 +t1272127389 +s450 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m +c000000004CBB51F30000000000000908 +t1287344627 +s2312 +i"HealthConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HordeCrest.gif +c000000004BD31F9D00000000000001A4 +t1272127389 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hostile.png +c000000004BD31F9D0000000000000436 +t1272127389 +s1078 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HotkeyFinished.png +c000000004BD31F9D00000000000015F4 +t1272127389 +s5620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female.png +c000000004BD31F9D0000000000002452 +t1272127389 +s9298 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female_Small.gif +c000000004BD31F9E000000000000015E +t1272127390 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male.png +c000000004BD31F9D000000000000257F +t1272127389 +s9599 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male_Small.gif +c000000004BD31F9D000000000000016B +t1272127389 +s363 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter.png +c000000004BD31F9D0000000000001819 +t1272127389 +s6169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter_Small.gif +c000000004BD31F9E000000000000012D +t1272127390 +s301 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Fishingpole_03.png +c000000004BD31F9D0000000000001D4E +t1272127389 +s7502 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gear_01.png +c000000004BD31F9D00000000000016EE +t1272127389 +s5870 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gem_Bloodstone_01.png +c000000004BD31F9D0000000000001746 +t1272127389 +s5958 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Blue.png +c000000004BD31F9D00000000000015C1 +t1272127389 +s5569 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Bronze.png +c000000004BD31F9D000000000000144B +t1272127389 +s5195 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Orb_05.png +c000000004BD31F9D0000000000001479 +t1272127389 +s5241 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.h +c000000004BD31F9D00000000000001EE +t1272127389 +s494 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m +c000000004BD31F9D000000000000052D +t1272127389 +s1325 +i"IgnoreEntry.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.h +c000000004BD31F9D000000000000015D +t1272127389 +s349 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m +c000000004BD31F9D0000000000000B69 +t1272127389 +s2921 +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcut.tif +c000000004BD31F9900000000000001A4 +t1272127385 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutPressed.tif +c000000004BD31F9900000000000001A6 +t1272127385 +s422 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutRollover.tif +c000000004BD31F9900000000000001A4 +t1272127385 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRSnapback.tiff +c000000004BD31F990000000000006594 +t1272127385 +s26004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +c000000004BD31F9D000000000000B753 +t1272127389 +s46931 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.h +c000000004BD31F9E00000000000001B9 +t1272127390 +s441 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m +c000000004BD31F9E00000000000008BB +t1272127390 +s2235 +i"InteractNPCActionController.h" +i"ActionController.h" +i"Unit.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +c000000004BD31F9E000000000000B772 +t1272127390 +s46962 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.h +c000000004BD31F9D00000000000001CC +t1272127389 +s460 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m +c000000004BD31F9D00000000000008F6 +t1272127389 +s2294 +i"InteractObjectActionController.h" +i"ActionController.h" +i"Node.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractWithTarget.png +c000000004BD31F9E000000000001B5F5 +t1272127390 +s112117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InterfaceBars.png +c000000004BD31F9D00000000000246FA +t1272127389 +s149242 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +c000000004BD31F9D000000000000CF51 +t1272127389 +s53073 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.h +c000000004BD31F9D000000000000022C +t1272127389 +s556 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m +c000000004BD31F9D0000000000000AE1 +t1272127389 +s2785 +i"InventoryConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.h +c000000004BF97FD50000000000000BAC +t1274642389 +s2988 +i +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m +c000000004CBB2472000000000000688F +t1287332978 +s26767 +i"ObjectsController.h" +i"PlayerDataController.h" +i"MacroController.h" +i"BotController.h" +i"NodeController.h" +i"InventoryController.h" +i"Controller.h" +i"MemoryViewController.h" +i"OffsetController.h" +i"Offsets.h" +i"Item.h" +i"WoWObject.h" +i"Player.h" +i"Node.h" +i"MailActionProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +c000000004BD31F9D000000000000BB84 +t1272127389 +s48004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.h +c000000004BD31F9D00000000000001A5 +t1272127389 +s421 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m +c000000004BD31F9D0000000000000662 +t1272127389 +s1634 +i"InventoryFreeConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.h +c000000004CAA74250000000000000603 +t1286239269 +s1539 +i +i"MemoryAccess.h" +i"WoWObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m +c000000004CB722800000000000006F1C +t1287070336 +s28444 +i"Item.h" +i"ObjectConstants.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +c000000004BD31F9D000000000000C16A +t1272127389 +s49514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.h +c000000004BD31F9D00000000000001CB +t1272127389 +s459 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m +c000000004BD31F9D000000000000091A +t1272127389 +s2330 +i"ItemActionController.h" +i"ActionController.h" +i"Item.h" +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +c000000004BD31F9D0000000000008C28 +t1272127389 +s35880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.h +c000000004BD31F9D0000000000000108 +t1272127389 +s264 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m +c000000004BD31F9D0000000000000311 +t1272127389 +s785 +i"JumpActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +c000000004BD31F9D000000000000ACC8 +t1272127389 +s44232 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.h +c000000004BD31F9D00000000000001A7 +t1272127389 +s423 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m +c000000004BD31F9D00000000000005F3 +t1272127389 +s1523 +i"JumpToWaypointActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Keybindings.png +c000000004BD31F9E000000000000FFF5 +t1272127390 +s65525 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +c000000004BD31F9D000000000000CDE8 +t1272127389 +s52712 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.h +c000000004BD31F9D00000000000001C7 +t1272127389 +s455 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m +c000000004BD31F9E00000000000007CB +t1272127390 +s1995 +i"LastSpellCastConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.h +c000000004BF875BA00000000000006AC +t1274574266 +s1708 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m +c000000004C34885E000000000000086A +t1278511198 +s2154 +i"LogController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.h +c000000004BD31F9D00000000000003B8 +t1272127389 +s952 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m +c000000004CB7727C0000000000001FFB +t1287090812 +s8187 +i +i"LootController.h" +i"Controller.h" +i"InventoryController.h" +i"ChatController.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"MacroController.h" +i"Item.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.h +c000000004CB7999D0000000000000110 +t1287100829 +s272 +i +i"lua.h" +i"lualib.h" +i"lauxlib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m +c000000004CB7997D00000000000000CE +t1287100797 +s206 +i"LuaController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.h +c000000004BD31F9D000000000000024A +t1272127389 +s586 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m +c000000004BD31F9D00000000000003A8 +t1272127389 +s936 +i"Macro.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +c000000004BD31F9D000000000000C188 +t1272127389 +s49544 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.h +c000000004BD31F9D00000000000001CE +t1272127389 +s462 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m +c000000004BD31F9D000000000000093F +t1272127389 +s2367 +i"ActionController.h" +i"MacroActionController.h" +i"Action.h" +i"Macro.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.h +c000000004BD31F9D00000000000005A1 +t1272127389 +s1441 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m +c000000004CB772F4000000000000296F +t1287090932 +s10607 +i +i"MacroController.h" +i"Controller.h" +i"BotController.h" +i"ActionMenusController.h" +i"PlayerDataController.h" +i"AuraController.h" +i"ChatController.h" +i"OffsetController.h" +i"Player.h" +i"MemoryAccess.h" +i"Macro.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macros.plist +c000000004C054649000000000000229C +t1275414089 +s8860 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage.png +c000000004BD31F9D00000000000022B0 +t1272127389 +s8880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage_Small.gif +c000000004BD31F9D0000000000000156 +t1272127389 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mail.png +c000000004BD31F9E0000000000000B48 +t1272127390 +s2888 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +c000000004BCC9972000000000000B0CC +t1271699826 +s45260 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.h +c000000004BF978C600000000000005F3 +t1274640582 +s1523 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m +c000000004BF97A370000000000000D07 +t1274640951 +s3335 +i"MailActionController.h" +i"ActionController.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.h +c000000004BD31F9D00000000000008A7 +t1272127389 +s2215 +i +i"Profile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m +c000000004BD31F9D0000000000001796 +t1272127389 +s6038 +i"MailActionProfile.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +c000000004CBB0AD000000000000D3833 +t1287326416 +s866355 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Male.png +c000000004BD31F9D00000000000019AB +t1272127389 +s6571 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +c000000004BFBE6D40000000000051155 +t1274799828 +s332117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.h +c000000004BE9F11C0000000000000B2E +t1273622812 +s2862 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m +c000000004CB775C2000000000000254F +t1287091650 +s9551 +i"MemoryAccess.h" +i +i +i"Globals.h" +i"ToolCommon.h" +i"BetterAuthorizationSampleLib.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.h +c000000004BFBE56B00000000000011B6 +t1274799467 +s4534 +i +i"MemoryAccess.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m +c000000004CBB0AF8000000000000B8B7 +t1287326456 +s47287 +i"MemoryViewController.h" +i"Controller.h" +i"OffsetController.h" +i"InventoryController.h" +i"MobController.h" +i"NodeController.h" +i"PlayersController.h" +i"Item.h" +i"WoWObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.h +c000000004BD31F9D00000000000003B1 +t1272127389 +s945 +i +i"Position.h" +i"Unit.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m +c000000004CAA7C250000000000002676 +t1286241317 +s9846 +i"Mob.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.h +c000000004BD31F9D00000000000006D7 +t1272127389 +s1751 +i +i"Mob.h" +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m +c000000004C054649000000000000584E +t1275414089 +s22606 +i +i"MobController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"CombatController.h" +i"MovementController.h" +i"AuraController.h" +i"BotController.h" +i"SpellController.h" +i"ObjectsController.h" +i"MemoryAccess.h" +i"CombatProfile.h" +i"Mob.h" +i"Waypoint.h" +i"Position.h" +i"Offsets.h" +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +c000000004BD31F9D000000000000D34A +t1272127389 +s54090 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.h +c000000004BD31F9D00000000000002EE +t1272127389 +s750 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m +c000000004BD31F9D0000000000000855 +t1272127389 +s2133 +i"MobsKilledConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.h +c000000004C054649000000000000139C +t1275414089 +s5020 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m +c000000004C05464900000000000187D5 +t1275414089 +s100309 +i"MovementController.h" +i"Player.h" +i"Node.h" +i"Unit.h" +i"Route.h" +i"RouteSet.h" +i"RouteCollection.h" +i"Mob.h" +i"CombatProfile.h" +i"Controller.h" +i"BotController.h" +i"CombatController.h" +i"OffsetController.h" +i"PlayerDataController.h" +i"AuraController.h" +i"MacroController.h" +i"BlacklistController.h" +i"WaypointController.h" +i"MobController.h" +i"StatisticsController.h" +i"ProfileController.h" +i"BindingsController.h" +i"InventoryController.h" +i"Profile.h" +i"ProfileController.h" +i"MailActionProfile.h" +i"Action.h" +i"Rule.h" +i"Offsets.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.h +c000000004C34885E0000000000000145 +t1278511198 +s325 +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m +c000000004C34885E0000000000000253 +t1278511198 +s595 +i"NSData+SockAddr.h" +i"sys/socket.h" +i"netinet/in.h" +i"arpa/inet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.h +c000000004BD31F9D00000000000000C3 +t1272127389 +s195 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m +c000000004BD31F9D000000000000015E +t1272127389 +s350 +i"NSNumberToHexString.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.h +c000000004BD31F9D00000000000000E9 +t1272127389 +s233 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m +c000000004BD31F9D000000000000024E +t1272127389 +s590 +i"NSString+Extras.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.h +c000000004BD31F9D0000000000000102 +t1272127389 +s258 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m +c000000004BD31F9D00000000000001D1 +t1272127389 +s465 +i"NSString+URLEncode.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Neutral.png +c000000004BD31F9D0000000000000457 +t1272127389 +s1111 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NeutralCrest.gif +c000000004BD31F9D0000000000000162 +t1272127389 +s354 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female.png +c000000004BD31F9D0000000000002596 +t1272127389 +s9622 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female_Small.gif +c000000004BD31F9D0000000000000173 +t1272127389 +s371 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male.png +c000000004BD31F9D0000000000002613 +t1272127389 +s9747 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male_Small.gif +c000000004BD31F9E0000000000000160 +t1272127390 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.h +c000000004BD31F9D000000000000012F +t1272127389 +s303 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m +c000000004BD31F9D00000000000002F2 +t1272127389 +s754 +i"NoAccessApplication.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.h +c000000004BD31F9D0000000000000CF4 +t1272127389 +s3316 +i +i"WoWObject.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m +c000000004CAA79BB0000000000003754 +t1286240699 +s14164 +i"Node.h" +i"ObjectConstants.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.h +c000000004BD31F9D000000000000072B +t1272127389 +s1835 +i +i"Node.h" +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m +c000000004C0546490000000000003F8E +t1275414089 +s16270 +i"NodeController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"MovementController.h" +i"ObjectsController.h" +i"Waypoint.h" +i"Offsets.h" +i"ImageAndTextCell.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ActiveQuestIcon.png +c000000004BD31F930000000000000175 +t1272127379 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/AvailableQuestIcon.png +c000000004BD31F930000000000000156 +t1272127379 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BankerGossipIcon.png +c000000004BD31F930000000000000245 +t1272127379 +s581 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BinderGossipIcon.png +c000000004BD31F9300000000000002C4 +t1272127379 +s708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Chicken.png +c000000004BD31F9300000000000003A9 +t1272127379 +s937 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/GossipGossipIcon.png +c000000004BD31F9300000000000001A5 +t1272127379 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Innkeeper.png +c000000004BD31F930000000000000391 +t1272127379 +s913 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/MinimapGuideFlag.png +c000000004BD31F930000000000000315 +t1272127379 +s789 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/PetitionGossipIcon.png +c000000004BD31F9300000000000001AD +t1272127379 +s429 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Repair.png +c000000004BD31F930000000000000171 +t1272127379 +s369 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ResourceBlip.png +c000000004BD31F930000000000000249 +t1272127379 +s585 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Scroll.png +c000000004BD31F93000000000000037B +t1272127379 +s891 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Stable.png +c000000004BD31F930000000000000212 +t1272127379 +s530 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TabardGossipIcon.png +c000000004BD31F9300000000000001A5 +t1272127379 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TaxiGossipIcon.png +c000000004BD31F93000000000000021C +t1272127379 +s540 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TrainerGossipIcon.png +c000000004BD31F930000000000000251 +t1272127379 +s593 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/VendorGossipIcon.png +c000000004BD31F93000000000000020F +t1272127379 +s527 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/WarnTriangle.png +c000000004BD31F930000000000000442 +t1272127379 +s1090 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectConstants.h +c000000004CBB406700000000000006A9 +t1287340135 +s1705 +i"Objects_Enum.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.h +c000000004BD31F9D000000000000068E +t1272127389 +s1678 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m +c000000004BD31F9D00000000000018CF +t1272127389 +s6351 +i"ObjectController.h" +i"Controller.h" +i"PlayerDataController.h" +i"WoWObject.h" +i"MemoryAccess.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +c000000004BD31F9D000000000005A57A +t1272127389 +s370042 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.h +c000000004BD31F9D00000000000008D3 +t1272127389 +s2259 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m +c000000004BD31F9D0000000000003DB2 +t1272127389 +s15794 +i"ObjectsController.h" +i"PlayersController.h" +i"MovementController.h" +i"PlayerDataController.h" +i"Controller.h" +i"MobController.h" +i"NodeController.h" +i"ImageAndTextCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects_Enum.h +c000000004CB8AD2000000000000042FB +t1287171360 +s17147 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.h +c000000004CB8BD36000000000000068E +t1287175478 +s1678 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m +c000000004CB8BCD000000000000038E5 +t1287175376 +s14565 +i"OffsetController.h" +i"MemoryAccess.h" +i"Controller.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetSignatures.plist +c000000004CBB5CEF0000000000006135 +t1287347439 +s24885 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Offsets.h +c000000004CBB9F4000000000000029E7 +t1287364416 +s10727 +i"ObjectConstants.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female.png +c000000004BD31F9E000000000000212D +t1272127390 +s8493 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female_Small.gif +c000000004BD31F9D0000000000000145 +t1272127389 +s325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male.png +c000000004BD31F9D0000000000002417 +t1272127389 +s9239 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male_Small.gif +c000000004BD31F9E000000000000015B +t1272127390 +s347 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHeader.h +c000000004BD31F9D0000000000000117 +t1272127389 +s279 +i"PTHotkey.h" +i"PTKeyCombo.h" +i"PTHotkeyCenter.h" +i"PTKeyBroadcaster.h" +i"PTKeyCodeTranslator.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.h +c000000004BD31F9E00000000000002CD +t1272127390 +s717 +i +i"PTKeyCombo.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m +c000000004BD31F9E0000000000000606 +t1272127390 +s1542 +i"PTHotKey.h" +i"PTHotKeyCenter.h" +i"PTKeyCombo.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.h +c000000004BD31F9E00000000000002AA +t1272127390 +s682 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m +c000000004BD31F9E00000000000016EA +t1272127390 +s5866 +i"PTHotKeyCenter.h" +i"PTHotKey.h" +i"PTKeyCombo.h" +i +i"PTNSObjectAdditions.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.h +c000000004BD31F9E00000000000001E5 +t1272127390 +s485 +i +i"ProteinDefines.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m +c000000004BD31F9E0000000000000688 +t1272127390 +s1672 +i"PTKeyBroadcaster.h" +i"PTKeyCombo.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.h +c000000004BD31F9D0000000000000285 +t1272127389 +s645 +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m +c000000004BD31F9D0000000000000A4A +t1272127389 +s2634 +i"PTKeyCodeTranslator.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.h +c000000004BD31F9D00000000000002B9 +t1272127389 +s697 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m +c000000004BD31F9D00000000000006D0 +t1272127389 +s1744 +i"PTKeyCombo.h" +i"PTKeyCodeTranslator.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PVP.png +c000000004BD31F9D0000000000002D75 +t1272127389 +s11637 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin.png +c000000004BD31F9D00000000000022C5 +t1272127389 +s8901 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin_Small.gif +c000000004BD31F9D0000000000000172 +t1272127389 +s370 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.h +c000000004CBB2C1400000000000006E8 +t1287334932 +s1768 +i +i"Unit.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m +c000000004CBB40AB00000000000011D5 +t1287340203 +s4565 +i"Player.h" +i"WoWObject.h" +i"Mob.h" +i"Offsets.h" +i"OffsetController.h" +i"PlayersController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +c000000004BD31F9E000000000002F800 +t1272127390 +s194560 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.h +c000000004CBB2D250000000000001549 +t1287335205 +s5449 +i +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m +c000000004CBBA08E000000000000C35B +t1287364750 +s50011 +i"PlayerDataController.h" +i"Offsets.h" +i"MemoryAccess.h" +i"AuraController.h" +i"Controller.h" +i"MobController.h" +i"SpellController.h" +i"CombatController.h" +i"MemoryViewController.h" +i"BotController.h" +i"NodeController.h" +i"OffsetController.h" +i"MobController.h" +i"BindingsController.h" +i"Spell.h" +i"Player.h" +i"Position.h" +i"ImageAndTextCell.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +c000000004BD31F9D000000000000B7BB +t1272127389 +s47035 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.h +c000000004BD31F9D00000000000001A1 +t1272127389 +s417 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m +c000000004BD31F9D000000000000054F +t1272127389 +s1359 +i"PlayerLevelConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +c000000004BD31F9E000000000000B70D +t1272127390 +s46861 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.h +c000000004BD31F9D00000000000001C8 +t1272127389 +s456 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m +c000000004BD31F9D0000000000000589 +t1272127389 +s1417 +i"PlayerZoneConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.h +c000000004BD31F9E000000000000059C +t1272127390 +s1436 +i +i"ObjectController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m +c000000004BF95B9500000000000036CE +t1274633109 +s14030 +i"PlayersController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MemoryViewController.h" +i"MovementController.h" +i"ObjectsController.h" +i"ImageAndTextCell.h" +i"Player.h" +i"Unit.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch +c000000004CBAFF1C0000000000000414 +t1287323420 +s1044 +i +i"LogController.h" +i"Globals.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.h +c000000004BD31F9D0000000000000451 +t1272127389 +s1105 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m +c000000004BD31F9D0000000000001A77 +t1272127389 +s6775 +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest.png +c000000004BD31F9D0000000000001B68 +t1272127389 +s7016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest_Small.gif +c000000004BD31F9D000000000000014C +t1272127389 +s332 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.h +c000000004BD31F9D00000000000002D3 +t1272127389 +s723 +i +i"Rule.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m +c000000004BF96FE90000000000000BED +t1274638313 +s3053 +i"Procedure.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.h +c000000004BF9704600000000000006D4 +t1274638406 +s1748 +i +i"Behavior.h" +i"Procedure.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m +c000000004CBAFEFF0000000000005187 +t1287323391 +s20871 +i"ProcedureController.h" +i"SpellController.h" +i"InventoryController.h" +i"RuleEditor.h" +i"Rule.h" +i"FileController.h" +i"FileObject.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.h +c000000004BD32285000000000000054D +t1272128133 +s1357 +i +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m +c000000004BF86FCB0000000000000860 +t1274572747 +s2144 +i"Profile.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.h +c000000004C0546490000000000000D76 +t1275414089 +s3446 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m +c000000004C0546490000000000005F58 +t1275414089 +s24408 +i"ProfileController.h" +i"Profile.h" +i"MailActionProfile.h" +i"CombatProfile.h" +i"Player.h" +i"Mob.h" +i"FileController.h" +i"Controller.h" +i"PlayersController.h" +i"MobController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +c000000004C05464900000000000B29D3 +t1275414089 +s731603 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +c000000004BD31F9D0000000000008FF2 +t1272127389 +s36850 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.h +c000000004BD31F9D0000000000000200 +t1272127389 +s512 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m +c000000004BD31F9D0000000000000854 +t1272127389 +s2132 +i"ProximityCountConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +c000000004C054649000000000003B733 +t1275414089 +s243507 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.h +c000000004C0546490000000000000BA2 +t1275414089 +s2978 +i +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m +c000000004BD31F9D0000000000002EBA +t1272127389 +s11962 +i"PvPBehavior.h" +i"Battleground.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.h +c000000004C0546490000000000000568 +t1275414089 +s1384 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m +c000000004BF9787C00000000000029F0 +t1274640508 +s10736 +i"PvPController.h" +i"FileController.h" +i"PvPBehavior.h" +i"Battleground.h" +i"FileObject.h" +i"RouteCollection.h" +i"WaypointController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.h +c000000004BD31F9D00000000000003FD +t1272127389 +s1021 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m +c000000004CB725590000000000002B9C +t1287071065 +s11164 +i"Quest.h" +i"QuestItem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +c000000004BD31F9E0000000000008DC7 +t1272127390 +s36295 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.h +c000000004BD31F9D0000000000000136 +t1272127389 +s310 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m +c000000004BD31F9D0000000000000559 +t1272127389 +s1369 +i"QuestConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.h +c000000004BD31F9D0000000000000269 +t1272127389 +s617 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m +c000000004CBB2BD900000000000012A4 +t1287334873 +s4772 +i"QuestController.h" +i"Controller.h" +i"MemoryAccess.h" +i"PlayerDataController.h" +i"Player.h" +i"Quest.h" +i"QuestItem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +c000000004BD31F9D0000000000008C56 +t1272127389 +s35926 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.h +c000000004BD31F9D0000000000000112 +t1272127389 +s274 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m +c000000004BD31F9D000000000000032F +t1272127389 +s815 +i"QuestGrabActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.h +c000000004BD31F9D0000000000000155 +t1272127389 +s341 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m +c000000004BD31F9D000000000000035E +t1272127389 +s862 +i"QuestItem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +c000000004BD31F9E0000000000008C58 +t1272127390 +s35928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.h +c000000004BD31F9E0000000000000116 +t1272127390 +s278 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m +c000000004BD31F9E000000000000033B +t1272127390 +s827 +i"QuestTurnInActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +c000000004BD31F9D0000000000008C5A +t1272127389 +s35930 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.h +c000000004BD31F9D000000000000010C +t1272127389 +s268 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m +c000000004BD31F9D000000000000031D +t1272127389 +s797 +i"RepairActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Result.png +c000000004BD31F9D000000000000B117 +t1272127389 +s45335 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +c000000004BD31F9E0000000000008C4D +t1272127390 +s35917 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.h +c000000004BD31F9D0000000000000118 +t1272127389 +s280 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m +c000000004BD31F9D0000000000000341 +t1272127389 +s833 +i"ReverseRouteActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue.png +c000000004BD31F9D0000000000002013 +t1272127389 +s8211 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue_Small.gif +c000000004BD31F9D0000000000000158 +t1272127389 +s344 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.h +c000000004BD31F9D00000000000002CA +t1272127389 +s714 +i +i"Waypoint.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m +c000000004BD31F9D0000000000000DB8 +t1272127389 +s3512 +i"Route.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.h +c000000004BD31F9D0000000000000302 +t1272127389 +s770 +i +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m +c000000004BF95B9400000000000010DA +t1274633108 +s4314 +i"RouteCollection.h" +i"FileObject.h" +i"RouteSet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +c000000004BD31F9D000000000000BE6C +t1272127389 +s48748 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.h +c000000004BD31F9D00000000000001A5 +t1272127389 +s421 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m +c000000004BD31F9D000000000000055F +t1272127389 +s1375 +i"RouteRunCountConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +c000000004BD31F9D000000000000BED6 +t1272127389 +s48854 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.h +c000000004BD31F9D00000000000001A3 +t1272127389 +s419 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m +c000000004BD31F9D0000000000000556 +t1272127389 +s1366 +i"RouteRunTimeConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.h +c000000004BD31F9E00000000000002FD +t1272127390 +s765 +i +i"Route.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m +c000000004BD31F9E0000000000000BB2 +t1272127390 +s2994 +i"RouteSet.h" +i"FileObject.h" +i"RouteCollection.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.h +c000000004BD31F9D00000000000001DA +t1272127389 +s474 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m +c000000004BD31F9D0000000000001585 +t1272127389 +s5509 +i"RouteVisualizationView.h" +i"Route.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +c000000004CB77645000000000004E4D9 +t1287091781 +s320729 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.h +c000000004BD31F9D0000000000000482 +t1272127389 +s1154 +i +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m +c000000004BD31F9D0000000000000F62 +t1272127389 +s3938 +i"Rule.h" +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.h +c000000004BD31F9D000000000000055B +t1272127389 +s1371 +i +i"Rule.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m +c000000004C0546490000000000003685 +t1275414089 +s13957 +i"RuleEditor.h" +i"Unit.h" +i"Controller.h" +i"BotController.h" +i"SpellController.h" +i"InventoryController.h" +i"ActionMenusController.h" +i"ConditionCell.h" +i"BetterTableView.h" +i"BetterSegmentedControl.h" +i"HealthConditionController.h" +i"StatusConditionController.h" +i"AuraConditionController.h" +i"DistanceConditionController.h" +i"InventoryConditionController.h" +i"ComboPointConditionController.h" +i"AuraStackConditionController.h" +i"TotemConditionController.h" +i"TempEnchantConditionController.h" +i"TargetTypeConditionController.h" +i"TargetClassConditionController.h" +i"CombatCountConditionController.h" +i"ProximityCountConditionController.h" +i"SpellCooldownConditionController.h" +i"LastSpellCastConditionController.h" +i"RuneConditionController.h" +i"Macro.h" +i"Action.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +c000000004BD31F9E000000000000DCC5 +t1272127390 +s56517 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.h +c000000004BD31F9D00000000000001B6 +t1272127389 +s438 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m +c000000004BD31F9D0000000000000733 +t1272127389 +s1843 +i"RuneConditionController.h" +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.h +c000000004BD31F9D000000000000038B +t1272127389 +s907 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m +c000000004BD31F9E0000000000002042 +t1272127390 +s8258 +i"SaveData.h" +i"FileObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.h +c000000004BD31F9E0000000000000189 +t1272127390 +s393 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m +c000000004BD31F9E00000000000008EB +t1272127390 +s2283 +i"ScanGridView.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.h +c000000004BD31F9E000000000000016F +t1272127390 +s367 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m +c000000004CBAFEAA0000000000000858 +t1287323306 +s2136 +i"SecureUserDefaults.h" +i"UKKQueue.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman.png +c000000004BD31F9D0000000000001FE9 +t1272127389 +s8169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman_Small.gif +c000000004BD31F9D0000000000000163 +t1272127389 +s355 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework +c000000004BD31F9C00000000000000EE +t1272127388 +s238 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/CTGradient.h +c000000004BD31F9C0000000000000708 +t1272127388 +s1800 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRCommon.h +c000000004BD31F9C0000000000001DEB +t1272127388 +s7659 +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRKeyCodeTransformer.h +c000000004BD31F9C000000000000012E +t1272127388 +s302 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRRecorderCell.h +c000000004BD31F9C0000000000000D59 +t1272127388 +s3417 +i +i"SRCommon.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRRecorderControl.h +c000000004BD31F9C00000000000007E7 +t1272127388 +s2023 +i +i"SRRecorderCell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/SRValidator.h +c000000004BD31F9C0000000000000342 +t1272127388 +s834 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/Headers/ShortcutRecorder.h +c000000004BD31F9C00000000000001E3 +t1272127388 +s483 +i +i +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework/ShortcutRecorder +c000000004BD31F9C000000000003D010 +t1272127388 +s249872 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Skull.png +c000000004BD31F9D0000000000000335 +t1272127389 +s821 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework +c000000004BF983270000000000000110 +t1274643239 +s272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUAppcast.h +c000000004BB770BE0000000000000298 +t1270313150 +s664 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUAppcastItem.h +c000000004BB770BE000000000000048F +t1270313150 +s1167 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUUpdater.h +c000000004CAA684D0000000000001B1E +t1286236237 +s6942 +i"SUVersionComparisonProtocol.h" +i"SUVersionDisplayProtocol.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUVersionComparisonProtocol.h +c000000004BB770BE0000000000000303 +t1270313150 +s771 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/SUVersionDisplayProtocol.h +c000000004BB770BE0000000000000284 +t1270313150 +s644 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Headers/Sparkle.h +c000000004BB770BE0000000000000218 +t1270313150 +s536 +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework/Sparkle +c000000004BB770BE00000000000493F0 +t1270313150 +s300016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.h +c000000004CB723000000000000000644 +t1287070464 +s1604 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m +c000000004CB725F70000000000004DC9 +t1287071223 +s19913 +i"Spell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +c000000004BD31F9D000000000000C17E +t1272127389 +s49534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.h +c000000004BD31F9D00000000000001D5 +t1272127389 +s469 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m +c000000004BD31F9D000000000000098E +t1272127389 +s2446 +i"SpellActionController.h" +i"ActionController.h" +i"Spell.h" +i"Action.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.h +c000000004CB720DC000000000000098A +t1287069916 +s2442 +i +i"MemoryAccess.h" +i"Spell.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m +c000000004CB7784D000000000000859F +t1287092301 +s34207 +i +i"SpellController.h" +i"Controller.h" +i"Offsets.h" +i"Spell.h" +i"PlayerDataController.h" +i"OffsetController.h" +i"MacroController.h" +i"InventoryController.h" +i"BotController.h" +i"Behavior.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +c000000004BD31F9D000000000000BDAB +t1272127389 +s48555 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.h +c000000004BD31F9D00000000000001D1 +t1272127389 +s465 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m +c000000004BD31F9D0000000000000780 +t1272127389 +s1920 +i"SpellCooldownConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_FireResistanceTotem_01.png +c000000004BD31F9D0000000000001849 +t1272127389 +s6217 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_MindVision.png +c000000004BD31F9D0000000000001640 +t1272127389 +s5696 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_PrayerofSpirit.png +c000000004BD31F9E000000000000183F +t1272127390 +s6207 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Nature_PoisonCleansingTotem.png +c000000004BD31F9E0000000000001B00 +t1272127390 +s6912 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +c000000004CB728230000000000027E95 +t1287071779 +s163477 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +c000000004BD31F9E0000000000025D5E +t1272127390 +s154974 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.h +c000000004BD31F9D00000000000005A8 +t1272127389 +s1448 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m +c000000004BD31F9D0000000000001DB5 +t1272127389 +s7605 +i"StatisticsController.h" +i"Controller.h" +i"PlayerDataController.h" +i"LootController.h" +i"CombatController.h" +i"BotController.h" +i"Mob.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +c000000004BD31F9D000000000000D1EC +t1272127389 +s53740 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.h +c000000004BD31F9D0000000000000225 +t1272127389 +s549 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m +c000000004BD31F9D000000000000086F +t1272127389 +s2159 +i"StatusConditionController.h" +i"ConditionController.h" +i"BetterSegmentedControl.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +c000000004BD31F9D000000000000AE8B +t1272127389 +s44683 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.h +c000000004BD31F9E000000000000014B +t1272127390 +s331 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m +c000000004BD31F9E0000000000000604 +t1272127390 +s1540 +i"StrandStatusConditionController.h" +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +c000000004BD31F9D000000000000B74A +t1272127389 +s46922 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.h +c000000004BD31F9E00000000000001BF +t1272127390 +s447 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m +c000000004BD31F9E0000000000000925 +t1272127390 +s2341 +i"SwitchRouteActionController.h" +i"ActionController.h" +i"RouteSet.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +c000000004BD31F9E0000000000011618 +t1272127390 +s71192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.h +c000000004BD31F9D000000000000021A +t1272127389 +s538 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m +c000000004BD31F9D0000000000000843 +t1272127389 +s2115 +i"TargetClassConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +c000000004BD31F9E00000000000044BA +t1272127390 +s17594 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.h +c000000004BD31F9D000000000000019B +t1272127389 +s411 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m +c000000004BD31F9D00000000000006CF +t1272127389 +s1743 +i"TargetTypeConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female.png +c000000004BD31F9D00000000000021D5 +t1272127389 +s8661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female_Small.gif +c000000004BD31F9E0000000000000160 +t1272127390 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male.png +c000000004BD31F9D000000000000263A +t1272127389 +s9786 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male_Small.gif +c000000004BD31F9E000000000000017A +t1272127390 +s378 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +c000000004BD31F9D00000000000088D0 +t1272127389 +s35024 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.h +c000000004BD31F9D00000000000001B3 +t1272127389 +s435 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m +c000000004BD31F9D00000000000006B6 +t1272127389 +s1718 +i"TempEnchantConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c +c000000004BD31F9D000000000000145F +t1272127389 +s5215 +i"ToolCommon.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.h +c000000004BD31F9D0000000000001203 +t1272127389 +s4611 +i"BetterAuthorizationSampleLib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +c000000004BD31F9D0000000000008839 +t1272127389 +s34873 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.h +c000000004BD31F9D000000000000016F +t1272127389 +s367 +i +i"ConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m +c000000004BD31F9D0000000000000712 +t1272127389 +s1810 +i"TotemConditionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Trade_Engraving.png +c000000004BD31F9D0000000000001615 +t1272127389 +s5653 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.h +c000000004BD31F9D000000000000018A +t1272127389 +s394 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m +c000000004BD31F9D000000000000030E +t1272127389 +s782 +i"TransparentWindow.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female.png +c000000004BD31F9D00000000000023E9 +t1272127389 +s9193 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female_Small.gif +c000000004BD31F9D0000000000000175 +t1272127389 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male.png +c000000004BD31F9E000000000000251D +t1272127390 +s9501 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male_Small.gif +c000000004BD31F9E0000000000000168 +t1272127390 +s360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TypeShortcut.png +c000000004BD31F9D0000000000001B8E +t1272127389 +s7054 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.h +c000000004BD31F9E00000000000006B2 +t1272127390 +s1714 +i +i"UKFileWatcher.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m +c000000004BD31F9E0000000000001A2A +t1272127390 +s6698 +i"UKFNSubscribeFileWatcher.h" +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.h +c000000004BD31F9D0000000000000890 +t1272127389 +s2192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m +c000000004BD31F9D000000000000065C +t1272127389 +s1628 +i +i"UKFileWatcher.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.h +c000000004BD31F9D00000000000014D6 +t1272127389 +s5334 +i +i +i +i"UKFileWatcher.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m +c000000004BD31F9D0000000000003A40 +t1272127389 +s14912 +i"UKKQueue.h" +i"UKMainThreadProxy.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.h +c000000004BD31F9E000000000000069F +t1272127390 +s1695 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m +c000000004BD31F9E0000000000000F4D +t1272127390 +s3917 +i"UKMainThreadProxy.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female.png +c000000004BD31F9E000000000000220B +t1272127390 +s8715 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female_Small.gif +c000000004BD31F9D000000000000016A +t1272127389 +s362 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male.png +c000000004BD31F9E0000000000002050 +t1272127390 +s8272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male_Small.gif +c000000004BD31F9D000000000000016D +t1272127389 +s365 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.h +c000000004CBB57080000000000004703 +t1287345928 +s18179 +i +i"WoWObject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m +c000000004CBB56FC0000000000007D52 +t1287345916 +s32082 +i"Unit.h" +i"Offsets.h" +i"Condition.h" +i"SpellController.h" +i"PlayerDataController.h" +i"OffsetController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UnknownSmall.png +c000000004BD31F9E000000000000019C +t1272127390 +s412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +c000000004BD31F9D0000000000008C3B +t1272127389 +s35899 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.h +c000000004BD31F9D000000000000010C +t1272127389 +s268 +i +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m +c000000004BD31F9D000000000000031D +t1272127389 +s797 +i"VendorActionController.h" +i"ActionController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock.png +c000000004BD31F9D0000000000002594 +t1272127389 +s9620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock_Small.gif +c000000004BD31F9D0000000000000174 +t1272127389 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior.png +c000000004BD31F9D0000000000001FA1 +t1272127389 +s8097 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior_Small.gif +c000000004BD31F9E0000000000000150 +t1272127390 +s336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.h +c000000004BD31F9D00000000000003B6 +t1272127389 +s950 +i +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m +c000000004BD31F9D0000000000000BA3 +t1272127389 +s2979 +i"Waypoint.h" +i"Action.h" +i"Procedure.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.h +c000000004BF94F5C00000000000005B4 +t1274629980 +s1460 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m +c000000004BF97B330000000000003265 +t1274641203 +s12901 +i"WaypointActionEditor.h" +i"Waypoint.h" +i"Rule.h" +i"Spell.h" +i"RouteCollection.h" +i"RouteSet.h" +i"MailActionProfile.h" +i"Action.h" +i"Condition.h" +i"ConditionCell.h" +i"ConditionController.h" +i"DurabilityConditionController.h" +i"InventoryConditionController.h" +i"PlayerLevelConditionController.h" +i"PlayerZoneConditionController.h" +i"QuestConditionController.h" +i"RouteRunTimeConditionController.h" +i"RouteRunCountConditionController.h" +i"InventoryFreeConditionController.h" +i"MobsKilledConditionController.h" +i"GateConditionController.h" +i"StrandStatusConditionController.h" +i"AuraConditionController.h" +i"SwitchRouteActionController.h" +i"RepairActionController.h" +i"SpellActionController.h" +i"ItemActionController.h" +i"MacroActionController.h" +i"DelayActionController.h" +i"JumpActionController.h" +i"QuestTurnInActionController.h" +i"QuestGrabActionController.h" +i"InteractObjectActionController.h" +i"InteractNPCActionController.h" +i"CombatProfileActionController.h" +i"VendorActionController.h" +i"MailActionController.h" +i"ReverseRouteActionController.h" +i"JumpToWaypointActionController.h" +i"WaypointController.h" +i"SpellController.h" +i"InventoryController.h" +i"MacroController.h" +i"ProfileController.h" +i"MobController.h" +i"NodeController.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +c000000004BD31F9D000000000002FB48 +t1272127389 +s195400 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.h +c000000004C05464900000000000013DF +t1275414089 +s5087 +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m +c000000004BF9786E000000000000C4C5 +t1274640494 +s50373 +i"WaypointController.h" +i"Controller.h" +i"PlayerDataController.h" +i"MovementController.h" +i"MobController.h" +i"BotController.h" +i"CombatController.h" +i"SpellController.h" +i"InventoryController.h" +i"WaypointActionEditor.h" +i"RouteCollection.h" +i"RouteSet.h" +i"Route.h" +i"Waypoint.h" +i"Action.h" +i"Mob.h" +i"ActionMenusController.h" +i"FileController.h" +i"RouteVisualizationView.h" +i"BetterTableView.h" +i"PTHeader.h" +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.h +c000000004CAA660D0000000000000A2E +t1286235661 +s2606 +i +i"MemoryAccess.h" +i"Position.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m +c000000004CBB092A000000000000233B +t1287325994 +s9019 +i"WoWObject.h" +i"Offsets.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/alarm.mp3 +c000000004BD31F9E0000000000001776 +t1272127390 +s6006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/appcast.xml +c000000004CBC6D5A0000000000001E03 +t1287417178 +s7683 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/bad.tif +c000000004BD31F9D0000000000000218 +t1272127389 +s536 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h +t1287417293 +s32841 +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h +t1287417293 +s20877 +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +t1287417293 +s11988 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +t1287417295 +s18016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +t1287417293 +s40172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +t1287417293 +s8328 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +t1287417290 +s11168 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +t1287417289 +s55060 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +t1287417292 +s10688 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +t1287417296 +s13120 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +t1287417290 +s17004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +t1287417293 +s24852 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +t1287417290 +s3932 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +t1287417290 +s5388 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +t1287417296 +s31480 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +t1287417295 +s21976 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o +t1287089366 +s28328 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +t1287417294 +s561516 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +t1287417294 +s13036 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +t1287417291 +s12848 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +t1287417294 +s46956 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +t1287417293 +s25540 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +t1287417295 +s156020 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +t1287417292 +s9520 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +t1287417297 +s95428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +t1287417295 +s10620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o +t1274632557 +s392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +t1287417291 +s9736 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +t1287417290 +s15104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +t1287417289 +s10516 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +t1287417290 +s21556 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +t1287417288 +s145948 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +t1287417294 +s6312 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +t1287417294 +s7880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +t1287417297 +s8356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +t1287417295 +s6892 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +t1287417290 +s9276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +t1287417295 +s9032 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +t1287417294 +s10164 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +t1287417296 +s18932 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +t1287417295 +s11316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +t1287417293 +s28144 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +t1287417296 +s8708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +t1287417292 +s14220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +t1287417289 +s10140 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +t1287417292 +s8588 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +t1287417291 +s11652 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +t1287417295 +s11316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +t1287417295 +s11488 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +t1287417290 +s10596 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +t1287417289 +s87140 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +t1287417295 +s9104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +t1287417289 +s35868 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +t1287417295 +s11448 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +t1287417295 +s5772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +t1287417296 +s8512 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +t1287417294 +s9840 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +t1287417296 +s5780 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +t1287417294 +s15752 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o +t1287417298 +s980 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +t1287417292 +s7284 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +t1287417295 +s11504 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +t1287417294 +s20680 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +t1287417295 +s10960 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +t1287417296 +s19556 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +t1287417288 +s21400 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +t1287417288 +s71336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +t1287417288 +s22068 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +t1287417289 +s82872 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +t1287417295 +s9908 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +t1287417297 +s156704 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +t1287417292 +s4864 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +t1287417287 +s4432 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +t1287417292 +s3464 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +t1287417292 +s3320 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +t1287417292 +s5504 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +t1287417289 +s19428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +t1287417290 +s35964 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +t1287417296 +s22172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +t1287417296 +s47780 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +t1287417294 +s33944 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +t1287417291 +s9208 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +t1287417291 +s16608 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +t1287417290 +s6072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +t1287417291 +s7740 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +t1287417291 +s8624 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +t1287417291 +s10008 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +t1287417288 +s124464 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +t1287417295 +s9036 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +t1287417295 +s9212 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +t1287417291 +s59172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome +t1287417299 +s1722468 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList +c000000004CBC6DBD0000000000006493 +t1287417277 +s25747 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +t1287417288 +s18816 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +t1287417290 +s14892 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +t1287417290 +s48364 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +t1287417296 +s6152 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +t1287417297 +s55340 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +t1287417292 +s10048 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +t1287417296 +s32412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +t1287417296 +s29952 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +t1287417294 +s24632 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +t1287417295 +s8048 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +t1287417294 +s7752 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +t1287417295 +s5848 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +t1287417294 +s6272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +t1287417295 +s5888 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +t1287417295 +s5796 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +t1287417295 +s5900 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +t1287417288 +s14768 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +t1287417296 +s18264 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +t1287417295 +s9104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +t1287417295 +s9064 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +t1287417290 +s12384 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +t1287417290 +s13312 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +t1287417290 +s14592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +t1287417290 +s37404 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +t1287417294 +s9308 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o +t1274640793 +s20044 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +t1287417291 +s8624 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o +t1287092873 +s12492 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +t1287417289 +s39804 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +t1287417295 +s11536 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +t1287417289 +s80224 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +t1287417294 +s9648 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +t1287417294 +s19412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +t1287417290 +s9448 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +t1287417296 +s8616 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +t1287417295 +s11636 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +t1287417292 +s10096 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +t1287417292 +s9368 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +t1287417292 +s9032 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +t1287417291 +s584 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +t1287417292 +s9016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +t1287417292 +s3916 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +t1287417293 +s10524 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +t1287417293 +s1644 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +t1287417293 +s17768 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +t1287417293 +s9556 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +t1287417292 +s46584 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +t1287417295 +s5796 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +t1287417288 +s14588 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +t1287417295 +s54460 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +t1287417289 +s102772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +t1287417289 +s23180 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +t1287417297 +s31616 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +t1287417297 +s21072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +t1287417297 +s26508 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +t1287417297 +s25316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +t1287417297 +s16700 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +t1287417297 +s19116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +t1287417297 +s19324 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +t1287417297 +s4808 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +t1287417297 +s10780 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +t1287417297 +s18300 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +t1287417297 +s2428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +t1287417297 +s20984 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +t1287417297 +s20432 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +t1287417297 +s12340 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +t1287417297 +s2776 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +t1287417297 +s15488 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +t1287417297 +s6908 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +t1287417297 +s1260 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +t1287417298 +s10424 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +t1287417298 +s35736 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +t1287417298 +s11740 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +t1287417298 +s8392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +t1287417298 +s23928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +t1287417298 +s16308 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +t1287417298 +s10136 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +t1287417298 +s8052 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +t1287417298 +s12236 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +t1287417298 +s21272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +t1287417298 +s3220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +t1287417287 +s3492 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +t1287417298 +s7176 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +t1287417308 +s14948 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +t1287417312 +s22428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +t1287417309 +s57100 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +t1287417309 +s11816 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +t1287417302 +s13816 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +t1287417301 +s75268 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +t1287417307 +s13360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +t1287417314 +s15772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +t1287417302 +s21008 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +t1287417305 +s32944 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +t1287417302 +s5808 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +t1287417302 +s10276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +t1287417314 +s41692 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +t1287417311 +s35240 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o +t1287089382 +s38944 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +t1287417311 +s773776 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +t1287417309 +s16612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +t1287417306 +s18308 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +t1287417309 +s68220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +t1287417309 +s33644 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +t1287417312 +s200580 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +t1287417308 +s12084 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +t1287417315 +s125768 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +t1287417313 +s14276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o +t1274632558 +s364 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +t1287417306 +s12328 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +t1287417302 +s20528 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +t1287417302 +s14716 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +t1287417302 +s26984 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +t1287417300 +s177100 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +t1287417310 +s8192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +t1287417310 +s12884 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +t1287417314 +s13472 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +t1287417312 +s9344 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +t1287417303 +s11748 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +t1287417311 +s11544 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +t1287417311 +s15356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +t1287417314 +s22220 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +t1287417313 +s13664 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +t1287417309 +s40528 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +t1287417313 +s11132 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +t1287417308 +s16116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +t1287417301 +s12868 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +t1287417307 +s10228 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +t1287417306 +s16208 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +t1287417313 +s14788 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +t1287417313 +s14972 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +t1287417303 +s13316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +t1287417302 +s114068 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +t1287417312 +s11612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +t1287417301 +s49392 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +t1287417312 +s14880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +t1287417312 +s8004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +t1287417314 +s11084 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +t1287417311 +s12388 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +t1287417314 +s7164 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +t1287417310 +s22592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o +t1287417317 +s1116 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +t1287417307 +s9256 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +t1287417312 +s14956 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +t1287417311 +s28648 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +t1287417313 +s14104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +t1287417314 +s25168 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +t1287417299 +s26836 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +t1287417300 +s95336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +t1287417299 +s24256 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +t1287417301 +s110272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +t1287417313 +s12548 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +t1287417316 +s219760 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +t1287417307 +s7920 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +t1287417299 +s5424 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +t1287417307 +s4988 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +t1287417307 +s3656 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +t1287417307 +s10256 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +t1287417301 +s27804 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +t1287417302 +s49972 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +t1287417313 +s36420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +t1287417313 +s67360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +t1287417310 +s44712 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +t1287417305 +s9416 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +t1287417305 +s23092 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +t1287417304 +s10360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +t1287417305 +s9476 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +t1287417306 +s9880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +t1287417306 +s14252 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +t1287417299 +s151612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +t1287417311 +s11548 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +t1287417311 +s11728 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +t1287417306 +s82844 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome +t1287417317 +s1828148 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList +c000000004CBC6DBD00000000000063EB +t1287417277 +s25579 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +t1287417300 +s21024 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +t1287417302 +s17928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +t1287417303 +s76312 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +t1287417315 +s7316 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +t1287417315 +s89800 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +t1287417308 +s12792 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +t1287417314 +s41216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +t1287417314 +s48708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +t1287417310 +s30836 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +t1287417311 +s10324 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +t1287417310 +s13420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +t1287417312 +s8104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +t1287417309 +s7596 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +t1287417313 +s8152 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +t1287417312 +s8028 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +t1287417313 +s8172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +t1287417300 +s17248 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +t1287417314 +s22180 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +t1287417312 +s11612 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +t1287417312 +s11576 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +t1287417303 +s15244 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +t1287417303 +s17664 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +t1287417302 +s18096 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +t1287417302 +s55452 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +t1287417311 +s11840 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o +t1274640811 +s25924 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +t1287417307 +s12360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o +t1287092891 +s15592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +t1287417301 +s48808 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +t1287417312 +s15704 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +t1287417301 +s105004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +t1287417311 +s12172 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +t1287417311 +s32880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +t1287417302 +s12132 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +t1287417313 +s11012 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +t1287417312 +s15652 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +t1287417308 +s12688 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +t1287417308 +s11828 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +t1287417307 +s11476 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +t1287417304 +s720 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +t1287417307 +s11440 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +t1287417307 +s7928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +t1287417308 +s13104 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +t1287417308 +s1688 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +t1287417308 +s20828 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +t1287417308 +s11032 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +t1287417307 +s58580 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +t1287417313 +s8028 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +t1287417300 +s19180 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +t1287417312 +s77264 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +t1287417301 +s143520 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +t1287417301 +s30012 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +t1287417315 +s33208 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +t1287417315 +s25084 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +t1287417315 +s30216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +t1287417315 +s23548 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +t1287417315 +s19604 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +t1287417316 +s20584 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +t1287417316 +s20072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +t1287417316 +s4764 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +t1287417316 +s10428 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +t1287417316 +s19784 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +t1287417316 +s2880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +t1287417316 +s25144 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +t1287417316 +s23384 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +t1287417316 +s14552 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +t1287417316 +s3260 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +t1287417316 +s18924 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +t1287417316 +s8564 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +t1287417316 +s1396 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +t1287417316 +s13348 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +t1287417317 +s36592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +t1287417316 +s11276 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +t1287417316 +s9832 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +t1287417316 +s27380 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +t1287417316 +s18592 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +t1287417316 +s11772 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +t1287417316 +s9732 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +t1287417317 +s13684 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +t1287417317 +s26404 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +t1287417317 +s3928 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +t1287417298 +s4120 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +t1287417317 +s9340 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh +c000000004BFAD1270000000000002A6F +t1274728743 +s10863 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh +c000000004CBC6DBD00000000000000A6 +t1287417277 +s166 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app +t1287417318 +s102 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM +t1287417317 +s102 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework +t1287417318 +s204 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework +t1287417317 +s204 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework +t1287417317 +s204 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist +t1287417277 +s4717 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +t1287417317 +s3556660 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/PkgInfo +t1287417277 +s8 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png +t1287417281 +s4884 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png +t1287417279 +s5469 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png +t1287417281 +s9321 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png +t1287417281 +s4647 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png +t1287417279 +s5325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png +t1287417280 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif +t1287417280 +s356 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib +t1287417280 +s11854 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib +t1287417281 +s12616 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png +t1287417280 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png +t1287417280 +s581 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png +t1287417281 +s7108 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png +t1287417281 +s6451 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png +t1287417281 +s6280 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib +t1287417279 +s41519 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png +t1287417280 +s708 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png +t1287417279 +s9394 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png +t1287417279 +s9458 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png +t1287417282 +s8909 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib +t1287417285 +s51715 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib +t1287417282 +s61951 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png +t1287417280 +s937 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png +t1287417279 +s608 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib +t1287417282 +s7847 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfile.nib +t1274723148 +s102236 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib +t1287417285 +s6666 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib +t1287417280 +s8721 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png +t1287417279 +s379 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png +t1287417282 +s7534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif +t1287417282 +s1159 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib +t1287417284 +s6685 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib +t1287417281 +s8562 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png +t1287417279 +s9759 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png +t1287417279 +s9857 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif +t1287417279 +s1514 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png +t1287417279 +s8676 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif +t1287417279 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib +t1287417283 +s7581 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png +t1287417279 +s7917 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif +t1287417279 +s330 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png +t1287417279 +s9487 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif +t1287417279 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist +t1287417277 +s11661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings +t1287417277 +s216 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist +t1287417277 +s239393 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Female.png +t1287417279 +s6742 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist +t1287417277 +s11218 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png +t1287417279 +s1081 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib +t1287417286 +s7649 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png +t1287417279 +s8367 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif +t1287417279 +s346 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png +t1287417279 +s9813 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif +t1287417279 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png +t1287417280 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict +t1287417277 +s946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib +t1287417281 +s12046 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif +t1287417280 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png +t1287417279 +s1078 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png +t1287417279 +s5620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png +t1287417279 +s9298 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif +t1287417279 +s350 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png +t1287417279 +s9599 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif +t1287417279 +s363 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png +t1287417279 +s6169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif +t1287417279 +s301 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png +t1287417282 +s7502 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png +t1287417279 +s5870 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png +t1287417279 +s5958 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png +t1287417279 +s5569 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png +t1287417279 +s5195 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png +t1287417279 +s5241 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png +t1287417280 +s913 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib +t1287417286 +s6673 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib +t1287417286 +s6690 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png +t1287417282 +s112117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png +t1287417279 +s149242 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib +t1287417281 +s10343 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib +t1287417283 +s7370 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib +t1287417284 +s7247 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib +t1287417284 +s4034 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib +t1287417286 +s6387 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png +t1287417279 +s65525 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib +t1287417282 +s7839 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib +t1287417284 +s7272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist +t1287417282 +s8860 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png +t1287417279 +s8880 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif +t1287417279 +s342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png +t1287417282 +s2888 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib +t1287417285 +s5881 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib +t1287417282 +s208599 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Male.png +t1287417279 +s6571 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib +t1287417280 +s63524 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png +t1287417280 +s789 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib +t1287417285 +s8751 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png +t1287417279 +s1111 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif +t1287417280 +s354 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png +t1287417279 +s9622 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif +t1287417279 +s371 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png +t1287417279 +s9747 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif +t1287417279 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib +t1287417286 +s72765 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist +t1287417282 +s24885 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png +t1287417279 +s8493 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif +t1287417279 +s325 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png +t1287417279 +s9239 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif +t1287417279 +s347 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png +t1287417286 +s11637 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png +t1287417279 +s8901 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif +t1287417279 +s370 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png +t1287417280 +s429 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib +t1287417279 +s25342 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib +t1287417283 +s7221 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib +t1287417283 +s6729 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png +t1287417279 +s7016 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif +t1287417279 +s332 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib +t1287417287 +s155671 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib +t1287417282 +s10028 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib +t1287417287 +s32828 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib +t1287417283 +s4111 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib +t1287417284 +s4127 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib +t1287417285 +s4117 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png +t1287417280 +s369 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib +t1287417284 +s4163 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png +t1287417280 +s585 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Result.png +t1287417279 +s45335 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib +t1287417285 +s4074 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png +t1287417279 +s8211 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif +t1287417279 +s344 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib +t1287417283 +s7585 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib +t1287417284 +s7710 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib +t1287417279 +s56072 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib +t1287417283 +s8682 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif +t1287417279 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif +t1287417279 +s422 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif +t1287417279 +s420 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff +t1287417279 +s26004 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png +t1287417280 +s891 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png +t1287417279 +s8169 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif +t1287417279 +s355 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png +t1287417280 +s821 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib +t1287417284 +s7267 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib +t1287417282 +s6822 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png +t1287417279 +s6217 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png +t1287417279 +s5696 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png +t1287417279 +s6207 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png +t1287417279 +s6912 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib +t1287417279 +s17102 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png +t1287417280 +s530 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib +t1287417282 +s18778 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib +t1287417280 +s7695 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib +t1287417286 +s6064 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib +t1287417284 +s6673 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png +t1287417280 +s421 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib +t1287417282 +s11534 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib +t1287417281 +s5238 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png +t1287417279 +s8661 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif +t1287417279 +s352 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png +t1287417279 +s9786 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif +t1287417279 +s378 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png +t1287417280 +s540 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib +t1287417281 +s6950 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib +t1287417281 +s6810 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png +t1287417282 +s5653 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png +t1287417280 +s593 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png +t1287417279 +s9193 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif +t1287417279 +s373 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png +t1287417279 +s9501 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif +t1287417279 +s360 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png +t1287417279 +s7054 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png +t1287417279 +s8715 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif +t1287417279 +s362 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png +t1287417279 +s8272 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif +t1287417279 +s365 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png +t1287417279 +s412 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib +t1287417285 +s4068 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png +t1287417280 +s527 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png +t1287417279 +s9620 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif +t1287417279 +s372 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png +t1287417280 +s1090 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png +t1287417279 +s8097 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif +t1287417279 +s336 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib +t1287417283 +s25228 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 +t1287417281 +s6006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml +t1287417286 +s7683 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif +t1287417279 +s536 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig +t1287416756 +s20 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem +t1287417286 +s1182 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns +t1287417280 +s427718 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif +t1287417279 +s614 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png +t1287417282 +s1697 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png +t1287417279 +s5484 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png +t1287417282 +s12613 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png +t1287417279 +s3201 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/off.png +t1287417279 +s3192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/on.png +t1287417279 +s3209 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns +t1287417280 +s160946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns +t1287417280 +s489006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 +t1287417282 +s94283 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/buildnumber.xcconfig +c000000004CBC6C0C0000000000000014 +t1287416844 +s20 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/dsa_pub.pem +c000000004BD31F9D000000000000049E +t1272127389 +s1182 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/gnome2.icns +c000000004BD31F9D00000000000686C6 +t1272127389 +s427718 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/good.tif +c000000004BD31F9D0000000000000266 +t1272127389 +s614 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/iChat.png +c000000004BD31F9D00000000000006A1 +t1272127389 +s1697 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/inv_misc_bag_14.png +c000000004BD31F9D000000000000156C +t1272127389 +s5484 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c +c000000004CAF741000000000000058B4 +t1286566928 +s22708 +i +i +i +i +i"lua.h" +i"lapi.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lundump.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.h +c000000004CAF74100000000000000106 +t1286566928 +s262 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c +c000000004CAF74110000000000004409 +t1286566929 +s17417 +i +i +i +i +i +i +i"lua.h" +i"lauxlib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h +c000000004CAF74110000000000001691 +t1286566929 +s5777 +i +i +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c +c000000004CAF74110000000000004296 +t1286566929 +s17046 +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c +c000000004CAF74110000000000005357 +t1286566929 +s21335 +i +i"lua.h" +i"lcode.h" +i"ldebug.h" +i"ldo.h" +i"lgc.h" +i"llex.h" +i"lmem.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" +i"ltable.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.h +c000000004CAF74120000000000000ABE +t1286566930 +s2750 +i"llex.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c +c000000004CAF74120000000000002755 +t1286566930 +s10069 +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c +c000000004CAF741200000000000041C8 +t1286566930 +s16840 +i +i +i +i"lua.h" +i"lapi.h" +i"lcode.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lobject.h" +i"lopcodes.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.h +c000000004CAF74120000000000000425 +t1286566930 +s1061 +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c +c000000004CAF74120000000000003A03 +t1286566930 +s14851 +i +i +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lundump.h" +i"lvm.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.h +c000000004CAF74130000000000000769 +t1286566931 +s1897 +i"lobject.h" +i"lstate.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c +c000000004CAF74130000000000000C2A +t1286566931 +s3114 +i +i"lua.h" +i"lobject.h" +i"lstate.h" +i"lundump.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c +c000000004CAF7413000000000000120A +t1286566931 +s4618 +i +i"lua.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.h +c000000004CAF74130000000000000465 +t1286566931 +s1125 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c +c000000004CAF74140000000000004E83 +t1286566932 +s20099 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.h +c000000004CAF74140000000000000C57 +t1286566932 +s3159 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c +c000000004CAF741400000000000002FD +t1286566932 +s765 +i"lua.h" +i"lualib.h" +i"lauxlib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c +c000000004CAF7414000000000000345E +t1286566932 +s13406 +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c +c000000004CAF741500000000000030BA +t1286566933 +s12474 +i +i +i +i"lua.h" +i"ldo.h" +i"llex.h" +i"lobject.h" +i"lparser.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.h +c000000004CAF74150000000000000881 +t1286566933 +s2177 +i"lobject.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llimits.h +c000000004CAF7415000000000000092D +t1286566933 +s2349 +i +i +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c +c000000004CAF741500000000000016C7 +t1286566933 +s5831 +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c +c000000004CAF7415000000000000087C +t1286566933 +s2172 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.h +c000000004CAF741600000000000005D6 +t1286566934 +s1494 +i +i"llimits.h" +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c +c000000004CAF74160000000000004B10 +t1286566934 +s19216 +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c +c000000004CAF7416000000000000157A +t1286566934 +s5498 +i +i +i +i +i +i"lua.h" +i"ldo.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.h +c000000004CAF74160000000000002136 +t1286566934 +s8502 +i +i"llimits.h" +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c +c000000004CAF74160000000000000B44 +t1286566934 +s2884 +i"lopcodes.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.h +c000000004CAF74170000000000001F96 +t1286566935 +s8086 +i"llimits.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c +c000000004CAF74170000000000001768 +t1286566935 +s5992 +i +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c +c000000004CAF74170000000000008F58 +t1286566935 +s36696 +i +i"lua.h" +i"lcode.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"llex.h" +i"lmem.h" +i"lobject.h" +i"lopcodes.h" +i"lparser.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.h +c000000004CAF741700000000000008D5 +t1286566935 +s2261 +i"llimits.h" +i"lobject.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c +c000000004CAF7418000000000000162A +t1286566936 +s5674 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"llex.h" +i"lmem.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.h +c000000004CAF74180000000000001393 +t1286566936 +s5011 +i"lua.h" +i"lobject.h" +i"ltm.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c +c000000004CAF74180000000000000C26 +t1286566936 +s3110 +i +i"lua.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.h +c000000004CAF7418000000000000032E +t1286566936 +s814 +i"lgc.h" +i"lobject.h" +i"lstate.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c +c000000004CAF74190000000000005BB9 +t1286566937 +s23481 +i +i +i +i +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c +c000000004CAF74190000000000003F87 +t1286566937 +s16263 +i +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lgc.h" +i"lmem.h" +i"lobject.h" +i"lstate.h" +i"ltable.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.h +c000000004CAF741900000000000004A0 +t1286566937 +s1184 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c +c000000004CAF74190000000000001CAF +t1286566937 +s7343 +i +i"lua.h" +i"lauxlib.h" +i"lualib.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c +c000000004CAF74190000000000000672 +t1286566937 +s1650 +i +i"lua.h" +i"lobject.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.h +c000000004CAF741900000000000003FA +t1286566937 +s1018 +i"lobject.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lua.h +c000000004CAF741A0000000000002DA8 +t1286566938 +s11688 +i +i +i"luaconf.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/luaconf.h +c000000004CAF741A000000000000571B +t1286566938 +s22299 +i +i +i +i +i +i +i +i +i +i +i + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lualib.h +c000000004CAF741B0000000000000402 +t1286566939 +s1026 +i"lua.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c +c000000004CAF741B0000000000001215 +t1286566939 +s4629 +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lmem.h" +i"lobject.h" +i"lstring.h" +i"lundump.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.h +c000000004CAF741B000000000000037A +t1286566939 +s890 +i"lobject.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c +c000000004CAF741B0000000000005A56 +t1286566939 +s23126 +i +i +i +i"lua.h" +i"ldebug.h" +i"ldo.h" +i"lfunc.h" +i"lgc.h" +i"lobject.h" +i"lopcodes.h" +i"lstate.h" +i"lstring.h" +i"ltable.h" +i"ltm.h" +i"lvm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.h +c000000004CAF741B0000000000000487 +t1286566939 +s1159 +i"ldo.h" +i"lobject.h" +i"ltm.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c +c000000004CAF741C000000000000065C +t1286566940 +s1628 +i +i"lua.h" +i"llimits.h" +i"lmem.h" +i"lstate.h" +i"lzio.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.h +c000000004CAF741C0000000000000614 +t1286566940 +s1556 +i"lua.h" +i"lmem.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c +c000000004CAF741C0000000000001350 +t1286566940 +s4944 +i +i +i"ldebug.h" +i"lobject.h" +i"lopcodes.h" +i"lundump.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m +c000000004BD31F9E0000000000000C63 +t1272127390 +s3171 +i +i +i +i +i"Globals.h" + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mbobbleicon.png +c000000004BD31F9E0000000000003145 +t1272127390 +s12613 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mixed.png +c000000004BD31F9D0000000000000C81 +t1272127389 +s3201 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/off.png +c000000004BD31F9E0000000000000C78 +t1272127390 +s3192 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/on.png +c000000004BD31F9E0000000000000C89 +t1272127390 +s3209 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgBehavior.icns +c000000004BD31F9E00000000000274B2 +t1272127390 +s160946 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgRoute.icns +c000000004BD31F9D000000000007762E +t1272127389 +s489006 + +N/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/splash.mp3 +c000000004BD31F9D000000000001704B +t1272127389 +s94283 + +N/usr/lib/libz.1.2.3.dylib +c000000004BBD3066000000000003C090 +t1270689894 +s245904 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth +t1287323435 +s7265724 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth +t1287332719 +s55464 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch +t1287332719 +s1409392 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth +t1277298290 +s7254688 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth +t1287332723 +s7265724 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch +t1287323436 +s36544784 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch +t1287332724 +s36544784 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch +t1277298288 +s1409392 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch +t1277298291 +s36548912 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth +t1277298287 +s55464 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch +t1287323432 +s1409392 + +N/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth +t1287323432 +s55464 + +NInfo.plist +c000000004CBC6C090000000000001297 +t1287416841 +s4759 + +CCheck dependencies +r0 +lSLF07#2@18"Check dependencies309110077#309110077#0(0"0(0#1#0"4300911832#0"0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.197505 +e309110093.327384 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m309110093#309110093#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Action.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.380445 +e309110095.508229 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m309110095#309110095#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.266457 +e309110093.520077 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m309110093#309110093#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ActionMenusController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.327541 +e309110093.421246 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m309110093#309110093#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Aura.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.058411 +e309110090.127838 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m309110090#309110090#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.230107 +e309110089.779120 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m309110089#309110089#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.210024 +e309110092.305951 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m309110092#309110092#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/AuraStackConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.235686 +e309110096.379102 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m309110096#309110096#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Battleground.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.273330 +e309110090.418172 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m309110090#309110090#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Behavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.500627 +e309110093.440486 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c309110090#309110093#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterAuthorizationSampleLib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.953690 +e309110090.058264 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m309110089#309110090#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterSegmentedControl.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.081735 +e309110090.146456 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m309110090#309110090#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BetterTableView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.833904 +e309110096.129518 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m309110095#309110096#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BindingsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.726024 +e309110095.161506 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m309110094#309110095#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BlacklistController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s308782166.710193 +e308782166.984951 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m308782166#308782166#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BonjourController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.345547 +e309110094.813143 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m309110090#309110094#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/BotController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.914927 +e309110094.003573 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m309110093#309110094#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatAction.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.321482 +e309110091.557048 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69:8: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] +o if(KLGetCurrentKeyboardLayout(&keyboard)) return NO; +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73:8: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o if(KLGetKeyboardLayoutProperty(keyboard, kKLKCHRData, &keyboardData)) return NO; +o ^ +o2 diagnostics generated. +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m309110091#309110091#0(497"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69:8: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] if(KLGetCurrentKeyboardLayout(&keyboard)) return NO; ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73:8: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] if(KLGetKeyboardLayoutProperty(keyboard, kKLKCHRData, &keyboardData)) return NO; ^ 2(22@70"'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations]309110091#0#166#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#69#8#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#234#167#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#73#8#0#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.920184 +e309110094.232063 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] +o if([NSMailDelivery hasDeliveryClassBeenConfigured]) { +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] +o if([NSMailDelivery hasDeliveryClassBeenConfigured]) { +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] +o4 diagnostics generated. +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m309110093#309110094#0(804"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] if([NSMailDelivery hasDeliveryClassBeenConfigured]) { ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'NSMailDelivery' is deprecated [-Wdeprecated-declarations] if([NSMailDelivery hasDeliveryClassBeenConfigured]) { ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519:9: warning: 'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations] 4(22@58"'NSMailDelivery' is deprecated [-Wdeprecated-declarations]309110093#0#158#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#397#9#0#0#0"0(22@74"'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations]309110093#228#174#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#397#9#0#0#0"0(22@58"'NSMailDelivery' is deprecated [-Wdeprecated-declarations]309110093#402#158#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#519#9#0#0#0"0(22@74"'hasDeliveryClassBeenConfigured' is deprecated [-Wdeprecated-declarations]309110093#630#174#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#519#9#0#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.723134 +e309110093.917820 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m309110093#309110093#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ChatLogEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.727963 +e309110095.589361 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m309110094#309110095#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.650605 +e309110092.783808 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m309110092#309110093#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.721989 +e309110097.170268 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m309110096#309110097#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.680251 +e309110095.814512 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m309110095#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s296325356.783556 +e296325357.028637 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398:1: warning: @end must appear in an @implementation context +o @end +o ^ +o1 diagnostic generated. +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296325356#296325357#0(157"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398:1: warning: @end must appear in an @implementation context @end ^ 1(22@46"@end must appear in an @implementation context296325356#0#148#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296271299#398#1#0#0#46"@end must appear in an @implementation context0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CombatProfileEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.510504 +e309110091.711226 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m309110091#309110091#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ComboPointConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.146602 +e309110090.247800 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m309110090#309110090#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Condition.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.835515 +e309110089.953545 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m309110089#309110089#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.946883 +e309110090.273166 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m309110089#309110090#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.651751 +e309110088.963748 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m309110087#309110089#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Controller.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.130553 +e309110094.207723 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m309110094#309110094#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Corpse.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.170526 +e309110094.265323 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m309110094#309110094#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/CorpseController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.491494 +e309110097.252647 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m309110096#309110097#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DatabaseManager.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.593456 +e309110095.662917 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m309110095#309110095#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DelayActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.387863 +e309110090.477600 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m309110090#309110090#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DistanceConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.909333 +e309110095.178211 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m309110094#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/DurabilityConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.641682 +e309110094.807704 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m309110094#309110094#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/EventController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.463412 +e309110096.616508 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m309110096#309110096#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.830779 +e309110095.935541 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m309110095#309110096#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FileObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.421399 +e309110093.716201 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m309110093#309110093#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/FishController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.935748 +e309110096.057157 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m309110095#309110096#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GateConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.460024 +e309110092.767183 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m309110092#309110093#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/GrabWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.779252 +e309110089.946732 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m309110089#309110089#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/HealthConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.306428 +e309110092.374294 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m309110092#309110092#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m4300911832#1602" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/IgnoreEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.805928 +e309110091.903890 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m309110091#309110092#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ImageAndTextCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.791746 +e309110095.889340 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m309110095#309110095#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractNPCActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.814649 +e309110095.890820 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m309110095#309110095#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InteractObjectActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.418318 +e309110090.500485 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m309110090#309110090#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.306502 +e309110089.835247 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m309110089#309110089#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.347325 +e309110095.443733 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m309110095#309110095#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/InventoryFreeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.284170 +e309110089.777044 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m309110089#309110089#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Item.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.549600 +e309110095.680102 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m309110095#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ItemActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.623733 +e309110095.683294 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m309110095#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.379240 +e309110096.463255 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m309110096#309110096#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/JumpToWaypointActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.807884 +e309110094.891528 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m309110094#309110094#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LastSpellCastConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.129671 +e309110096.237453 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m309110096#309110096#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.207877 +e309110094.641541 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m309110094#309110094#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LootController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.420100 +e309110098.511141 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m309110098#309110098#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/LuaController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.124150 +e309110092.211429 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m309110092#309110092#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Macro.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.589515 +e309110095.675174 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m309110095#309110095#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.265482 +e309110094.643116 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m309110094#309110094#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MacroController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.683453 +e309110095.830631 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m309110095#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.527355 +e309110096.651109 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m309110096#309110096#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MailActionProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.652786 +e309110088.290015 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m309110087#309110088#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryAccess.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.216665 +e309110088.721896 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m309110088#309110089#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MemoryViewController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.921650 +e309110088.216520 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@76"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m309110087#309110088#0(0"0(0#0#68"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m4300911832#1586" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Mob.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.744418 +e309110089.306397 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m309110088#309110089#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.750661 +e309110095.833762 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m309110095#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MobsKilledConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.112533 +e309110097.462096 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m309110096#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/MovementController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.374400 +e309110092.549244 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m309110092#309110092#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSData+SockAddr.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.853460 +e309110087.921393 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m309110087#309110088#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSNumberToHexString.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.290649 +e309110092.366661 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m309110092#309110092#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+Extras.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.053341 +e309110092.113956 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m309110092#309110092#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NSString+URLEncode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.114118 +e309110092.209869 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m309110092#309110092#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NoAccessApplication.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.496661 +e309110089.765006 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m309110089#309110089#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Node.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.765122 +e309110090.095016 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m309110089#309110090#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/NodeController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.890935 +e309110096.003439 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m309110095#309110096#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.889497 +e309110096.149844 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m309110095#309110096#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ObjectsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.232202 +e309110094.509200 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m309110094#309110094#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/OffsetController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.230817 +e309110091.321302 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m309110091#309110091#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKey.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.797995 +e309110091.014207 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2:{259:2-259:55}{259:2-259:55}: warning: comparison between pointer and integer ('UInt32' (aka 'unsigned long') and 'void *') +o NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); +o ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h:130:5: note: instantiated from: +o _NSAssertBody((condition), (desc), 0, 0, 0, 0, 0) +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2: note: instantiated from: +o NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); +o ^ ~~~~~~~~~~~ ~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:24: note: instantiated from: +o NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); +o ~~~~~~~~~~~ ^ +o1 diagnostic generated. +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110090#309110091#0(966"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2:{259:2-259:55}{259:2-259:55}: warning: comparison between pointer and integer ('UInt32' (aka 'unsigned long') and 'void *') NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h:130:5: note: instantiated from: _NSAssertBody((condition), (desc), 0, 0, 0, 0, 0) ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:2: note: instantiated from: NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); ^ ~~~~~~~~~~~ ~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259:24: note: instantiated from: NSAssert( hotKeyID.id != nil, @"Invalid hot key id" ); ~~~~~~~~~~~ ^ 1(22@84"Comparison between pointer and integer ('UInt32' (aka 'unsigned long') and 'void *')309110090#0#210#3(13@129"Instantiated from: /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h309110090#337#143#0(6@110"/Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSException.h236247370#130#5#0#0#18"instantiated from:0(13@98"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110090#542#112#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#0#0#18"instantiated from:0(13@98"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110090#756#113#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#24#0#0#18"instantiated from:0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#0#0#48"comparison between pointer and integer (* and *)2(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#259#55#6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#2#259#55#0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m4300911832#1608" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTHotKeyCenter.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.689787 +e309110090.797508 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m309110090#309110090#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m4300911832#1612" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyBroadcaster.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.014339 +e309110091.230665 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18:20: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] +o OSStatus err = KLGetCurrentKeyboardLayout( ¤tLayout ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35:15: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o err = KLGetKeyboardLayoutProperty( aLayout, kKLKind, (const void **)&keyLayoutKind ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLKCHRData, (const void **)&KCHRData ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLuchrData, (const void **)&uchrData ); +o ^ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76:5: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] +o KLGetKeyboardLayoutProperty( keyboardLayout, kKLLocalizedName, (const void **)&layoutName ); +o ^ +o5 diagnostics generated. +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m309110091#309110091#0(1420"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18:20: warning: 'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations] OSStatus err = KLGetCurrentKeyboardLayout( ¤tLayout ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35:15: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] err = KLGetKeyboardLayoutProperty( aLayout, kKLKind, (const void **)&keyLayoutKind ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLKCHRData, (const void **)&KCHRData ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42:19: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] err = KLGetKeyboardLayoutProperty( keyboardLayout, kKLuchrData, (const void **)&uchrData ); ^ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76:5: warning: 'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations] KLGetKeyboardLayoutProperty( keyboardLayout, kKLLocalizedName, (const void **)&layoutName ); ^ 5(22@70"'KLGetCurrentKeyboardLayout' is deprecated [-Wdeprecated-declarations]309110091#0#172#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#18#20#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#260#173#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#35#15#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#545#173#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#39#19#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#844#173#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#42#19#0#0#0"0(22@71"'KLGetKeyboardLayoutProperty' is deprecated [-Wdeprecated-declarations]309110091#1143#172#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#76#5#0#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCodeTranslator.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.313800 +e309110091.510351 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m309110091#309110091#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PTKeyCombo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.711375 +e309110091.805740 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m309110091#309110091#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Player.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.654373 +e309110088.589117 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m309110087#309110088#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerDataController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.161640 +e309110095.236639 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m309110095#309110095#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerLevelConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.178350 +e309110095.226719 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m309110095#309110095#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayerZoneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.557192 +e309110091.905963 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m309110091#309110092#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PlayersController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.837086 +e309110088.962416 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m309110088#309110089#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Position.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.247952 +e309110090.387709 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m309110090#309110090#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Procedure.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.227866 +e309110090.580827 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m309110090#309110090#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProcedureController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.651261 +e309110096.721836 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@80"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m309110096#309110096#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Profile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.616649 +e309110097.021673 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m309110096#309110097#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProfileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.767316 +e309110092.928200 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@106"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m309110092#309110093#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ProximityCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.237587 +e309110096.527206 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m309110096#309110096#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m4300911832#1602" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPBehavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.150129 +e309110096.491350 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m309110096#309110096#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/PvPController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.917964 +e309110094.130413 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92:5:{92:5-92:16}: warning: expression result unused [-Wunused-value] +o self.endNPC; +o ^~~~~~~~~~~ +o1 diagnostic generated. +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m309110093#309110094#0(176"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92:5:{92:5-92:16}: warning: expression result unused [-Wunused-value] self.endNPC; ^~~~~~~~~~~ 1(22@41"Expression result unused [-Wunused-value]309110094#0#141#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m308763865#92#5#0#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Quest.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.226869 +e309110095.305015 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m309110095#309110095#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.086570 +e309110094.170365 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m309110094#309110094#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.663057 +e309110095.708340 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m309110095#309110095#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestGrabActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.003732 +e309110094.086415 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m309110094#309110094#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestItem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.675334 +e309110095.718075 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m309110095#309110095#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/QuestTurnInActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.444230 +e309110095.549446 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m309110095#309110095#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RepairActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.718222 +e309110095.791592 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m309110095#309110095#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ReverseRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.589256 +e309110088.744246 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m309110088#309110089#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Route.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.057322 +e309110096.235536 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m309110096#309110096#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteCollection.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.236784 +e309110095.345449 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m309110095#309110095#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.305154 +e309110095.380287 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m309110095#309110095#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteRunTimeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.477760 +e309110090.579380 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m309110090#309110090#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteSet.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.580942 +e309110090.689672 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m309110090#309110090#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RouteVisualizationView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.128156 +e309110090.227708 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m309110090#309110090#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Rule.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.095201 +e309110090.345401 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m309110090#309110090#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuleEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.813299 +e309110094.909216 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m309110094#309110094#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/RuneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s296333593.346139 +e296333593.530831 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m296333593#296333593#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SaveData.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.906090 +e309110091.978512 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m309110091#309110092#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m4300911832#1604" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ScanGridView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s308785673.339527 +e308785673.453649 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m308785673#308785673#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SecureUserDefaults.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.963858 +e309110089.284023 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m309110088#309110089#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Spell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.513546 +e309110095.623400 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m309110095#309110095#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.962560 +e309110089.496505 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m309110088#309110089#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m4300911832#1610" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.643225 +e309110094.725877 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m309110094#309110094#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SpellCooldownConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.509331 +e309110094.727835 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m309110094#309110094#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatisticsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.973199 +e309110090.081578 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m309110089#309110090#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110096.003625 +e309110096.112379 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m309110096#309110096#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/StrandStatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.508372 +e309110095.593279 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m309110095#309110095#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/SwitchRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.784081 +e309110092.921688 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m309110092#309110093#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetClassConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.549682 +e309110092.650467 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m309110092#309110093#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TargetTypeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.366782 +e309110092.459820 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m309110092#309110092#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TempEnchantConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110090.579512 +e309110091.313664 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c309110090#309110091#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ToolCommon.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.211553 +e309110092.290516 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m309110092#309110092#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TotemConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.978616 +e309110092.053184 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m309110091#309110092#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/TransparentWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.061718 +e309110093.266303 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m309110093#309110093#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFNSubscribeFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.928656 +e309110093.008187 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m309110092#309110093#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m4300911832#1606" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110093.008396 +e309110093.197340 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m309110093#309110093#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKKQueue.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110092.921835 +e309110093.061583 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m309110092#309110093#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/UKMainThreadProxy.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110091.904054 +e309110092.124000 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m309110091#309110092#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Unit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110095.708491 +e309110095.750526 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m309110095#309110095#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/VendorActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.722055 +e309110088.836905 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m309110088#309110089#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Waypoint.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110094.891691 +e309110095.513396 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m309110094#309110095#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointActionEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110088.290165 +e309110089.229556 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m309110088#309110089#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WaypointController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110089.777181 +e309110089.972938 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m309110089#309110089#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/WoWObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.022212 +e309110097.405103 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c309110097#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lapi.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.170426 +e309110097.370760 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c309110097#309110097#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lauxlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.252805 +e309110097.429385 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c309110097#309110097#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lbaselib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.370906 +e309110097.643222 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lcode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.405264 +e309110097.550607 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c309110097#309110097#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldblib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.429525 +e309110097.657316 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c309110097#309110097#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldebug.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.462257 +e309110097.645116 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c309110097#309110097#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.550758 +e309110097.636592 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ldump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.636746 +e309110097.746902 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lfunc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.643378 +e309110097.926233 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c309110097#309110097#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lgc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.645251 +e309110097.679410 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c309110097#309110097#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/linit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.657546 +e309110097.828971 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c309110097#309110097#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/liolib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.679651 +e309110097.974951 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c309110097#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/llex.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.747047 +e309110097.852545 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c309110097#309110097#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmathlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.829125 +e309110097.880670 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c309110097#309110097#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lmem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.852694 +e309110097.990590 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c309110097#309110097#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loadlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.880829 +e309110097.982943 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c309110097#309110097#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lobject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.926376 +e309110097.969650 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c309110097#309110097#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c4300911832#1600" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lopcodes.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.969805 +e309110098.073352 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c309110097#309110098#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/loslib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.975101 +e309110098.444867 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c309110097#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lparser.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.983095 +e309110098.088455 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c309110097#309110098#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstate.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110097.990745 +e309110098.077227 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c309110097#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstring.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.073504 +e309110098.360501 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:133:5:{133:5-133:31}{133:5-133:31}: warning: expression result unused [-Wunused-value] +o luaL_addchar(&b, uchar(c)); +o ^~~~~~~~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:703:9:{703:9-703:30}{703:9-703:30}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, '\\'); +o ^~~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:704:9:{704:9-704:28}{704:9-704:28}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, *s); +o ^~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:716:9:{716:9-716:28}{716:9-716:28}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, *s); +o ^~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:699:3:{699:3-699:23}{699:3-699:23}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, '"'); +o ^~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:722:3:{722:3-722:23}{722:3-722:23}: warning: expression result unused [-Wunused-value] +o luaL_addchar(b, '"'); +o ^~~~~~~~~~~~~~~~~~~~ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: +o ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ +o ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ +o6 diagnostics generated. +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c309110098#309110098#0(2996"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:133:5:{133:5-133:31}{133:5-133:31}: warning: expression result unused [-Wunused-value] luaL_addchar(&b, uchar(c)); ^~~~~~~~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:703:9:{703:9-703:30}{703:9-703:30}: warning: expression result unused [-Wunused-value] luaL_addchar(b, '\\'); ^~~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:704:9:{704:9-704:28}{704:9-704:28}: warning: expression result unused [-Wunused-value] luaL_addchar(b, *s); ^~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:716:9:{716:9-716:28}{716:9-716:28}: warning: expression result unused [-Wunused-value] luaL_addchar(b, *s); ^~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:699:3:{699:3-699:23}{699:3-699:23}: warning: expression result unused [-Wunused-value] luaL_addchar(b, '"'); ^~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c:722:3:{722:3-722:23}{722:3-722:23}: warning: expression result unused [-Wunused-value] luaL_addchar(b, '"'); ^~~~~~~~~~~~~~~~~~~~ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h:137:50: note: instantiated from: ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~ 6(22@41"Expression result unused [-Wunused-value]309110098#0#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#239#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#133#5#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#507#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#744#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#703#9#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#1012#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#1245#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#704#9#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#1513#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#1746#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#716#9#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#2014#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#2237#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#699#3#0#0#0"0(22@41"Expression result unused [-Wunused-value]309110098#2505#174#1(13@105"Instantiated from: /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h309110098#2728#120#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.h308259729#137#50#0#0#18"instantiated from:0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c308259737#722#3#0#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lstrlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.077363 +e309110098.281474 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c309110098#309110098#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c4300911832#1596" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltable.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.088608 +e309110098.195754 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c309110098#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltablib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.195895 +e309110098.290625 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c309110098#309110098#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/ltm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.281633 +e309110098.415491 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c309110098#309110098#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c4300911832#1598" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lundump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.290782 +e309110098.751745 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c309110098#309110098#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c4300911832#1590" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lvm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.360651 +e309110098.419947 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c309110098#309110098#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c4300911832#1592" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/lzio.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309110087.650459 +e309110087.853345 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m309110087#309110088#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m4300911832#1588" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/main.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309110098.415625 +e309110098.555478 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c309110098#309110098#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c4300911832#1594" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/print.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.548263 +e309110108.767421 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m309110108#309110108#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Action.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Action.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.209258 +e309110112.457210 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m309110112#309110112#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.679790 +e309110109.186119 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m309110108#309110109#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ActionMenusController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ActionMenusController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.767652 +e309110109.019068 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m309110108#309110109#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Aura.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Aura.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.208642 +e309110102.469072 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m309110102#309110102#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.118300 +e309110101.720659 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m309110101#309110101#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.271750 +e309110107.527454 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m309110107#309110107#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m4300911832#1664" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/AuraStackConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.160392 +e309110114.383455 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m309110114#309110114#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Battleground.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Battleground.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.735608 +e309110102.994173 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m309110102#309110103#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Behavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110103.276425 +e309110105.931424 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c309110103#309110106#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterAuthorizationSampleLib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterAuthorizationSampleLib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.035286 +e309110102.208506 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m309110102#309110102#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterSegmentedControl.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterSegmentedControl.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.282171 +e309110102.545759 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m309110102#309110102#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BetterTableView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BetterTableView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.349715 +e309110114.185187 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m309110113#309110114#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BindingsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BindingsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.148860 +e309110111.593117 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m309110111#309110111#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BlacklistController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BlacklistController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s308782181.626193 +e308782182.561493 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m308782181#308782182#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BonjourController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BonjourController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.812772 +e309110111.247459 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m309110102#309110111#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BotController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/BotController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.517055 +e309110109.759767 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m309110109#309110109#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatAction.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatAction.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.797266 +e309110106.479898 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m: In function 'Ascii2Virtual': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m309110105#309110106#0(691"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m: In function 'Ascii2Virtual': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:69: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m:73: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) 2(22@196"'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436)309110106#110#290#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#69#0#69#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110106#400#291#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m293820189#73#0#73#0#33"'*' is deprecated (declared at *)0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.019215 +e309110109.838628 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendMessage:toEmailAddress:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendEmail:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m309110109#309110109#0(823"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendMessage:toEmailAddress:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:397: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m: In function '-[ChatLogController sendEmail:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m:519: warning: 'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36) 2(22@174"'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36)309110109#148#272#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#397#0#397#0#33"'*' is deprecated (declared at *)0(22@174"'hasDeliveryClassBeenConfigured' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Message.framework/Headers/NSMailDelivery.h:36)309110109#551#272#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m297106889#519#0#519#0#33"'*' is deprecated (declared at *)0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.186271 +e309110109.516885 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m309110109#309110109#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLogEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ChatLogEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.188661 +e309110112.789487 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m309110111#309110112#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.825772 +e309110108.086997 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m309110107#309110108#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.873926 +e309110115.889759 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m309110114#309110115#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.868917 +e309110113.113427 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m309110112#309110113#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s296325358.668364 +e296325358.791259 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398: warning: '@end' must appear in an @implementation context +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296325358#296325358#0(148"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m:398: warning: '@end' must appear in an @implementation context 1(22@48"'@end' must appear in an @implementation context296325358#0#148#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m296271299#398#0#398#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CombatProfileEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.931566 +e309110106.186592 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m309110105#309110106#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ComboPointConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.469224 +e309110102.735473 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m309110102#309110102#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Condition.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Condition.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.858993 +e309110102.089757 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m309110101#309110102#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.925872 +e309110102.295217 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m309110101#309110102#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.511290 +e309110100.320367 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m309110098#309110100#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Controller.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Controller.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.000679 +e309110110.186484 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m309110110#309110110#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Corpse.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Corpse.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.090388 +e309110110.390057 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m309110110#309110110#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CorpseController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/CorpseController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.573310 +e309110114.873775 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m309110114#309110114#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DatabaseManager.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DatabaseManager.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.669788 +e309110112.868331 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m309110112#309110112#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DelayActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.938373 +e309110103.222441 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m309110102#309110103#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DistanceConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.564331 +e309110111.781987 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m309110111#309110111#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/DurabilityConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.877177 +e309110111.188500 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m309110110#309110111#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/EventController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/EventController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.563437 +e309110114.838074 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m309110114#309110114#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.244015 +e309110113.465104 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m309110113#309110113#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FileObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FileObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.916028 +e309110109.812380 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m309110108#309110109#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FishController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/FishController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.465268 +e309110113.651614 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m309110113#309110113#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GateConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.706949 +e309110108.318769 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m309110107#309110108#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GrabWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/GrabWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.721810 +e309110101.925708 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m309110101#309110102#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m4300911832#1658" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/HealthConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.527604 +e309110107.706769 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m309110107#309110107#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/IgnoreEntry.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/IgnoreEntry.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.480440 +e309110106.808914 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m309110106#309110106#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ImageAndTextCell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ImageAndTextCell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.113569 +e309110113.383177 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m309110113#309110113#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractNPCActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.124141 +e309110113.403056 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m309110113#309110113#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InteractObjectActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.994330 +e309110103.276222 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m309110102#309110103#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m4300911832#1664" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.179250 +e309110102.035137 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m309110101#309110102#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.020633 +e309110112.229627 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m309110112#309110112#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/InventoryFreeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.156129 +e309110101.558435 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m309110101#309110101#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Item.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Item.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.457358 +e309110112.689378 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m309110112#309110112#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ItemActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.689530 +e309110112.889698 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m309110112#309110112#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.384056 +e309110114.573171 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m309110114#309110114#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/JumpToWaypointActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.247612 +e309110111.486898 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m309110111#309110111#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCastConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LastSpellCastConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.969007 +e309110114.160236 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m309110113#309110114#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LogController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LogController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.150442 +e309110110.877034 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m309110110#309110110#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LootController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LootController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110117.056358 +e309110117.207466 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m309110117#309110117#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LuaController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/LuaController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.157780 +e309110107.368997 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m309110107#309110107#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macro.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Macro.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.483405 +e309110112.716541 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m309110112#309110112#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.390192 +e309110111.148709 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m309110110#309110111#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MacroController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.889839 +e309110113.123983 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m309110112#309110113#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.580148 +e309110114.852112 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m309110114#309110114#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailActionProfile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MailActionProfile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.556021 +e309110099.029198 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m309110098#309110099#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryAccess.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryAccess.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.533103 +e309110100.513008 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m309110099#309110100#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MemoryViewController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MemoryViewController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.247742 +e309110099.614314 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@76"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m309110099#309110099#0(0"0(0#0#68"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m4300911832#1614" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mob.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Mob.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.320504 +e309110101.118165 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m309110100#309110101#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.110984 +e309110113.349573 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m309110113#309110113#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MobsKilledConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.865558 +e309110116.048688 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m309110113#309110116#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MovementController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/MovementController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.597430 +e309110107.777995 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m309110107#309110107#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSData+SockAddr.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSData+SockAddr.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.029340 +e309110099.247599 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m309110099#309110099#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSNumberToHexString.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSNumberToHexString.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.416945 +e309110107.597294 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m309110107#309110107#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+Extras.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+Extras.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.041514 +e309110107.271602 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m309110107#309110107#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NSString+URLEncode.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NSString+URLEncode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.060863 +e309110107.416800 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m309110107#309110107#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NoAccessApplication.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NoAccessApplication.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.282255 +e309110101.564372 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m309110101#309110101#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Node.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Node.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.558587 +e309110102.282043 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m309110101#309110102#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NodeController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/NodeController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.403233 +e309110113.799894 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m309110113#309110113#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.383341 +e309110113.968859 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m309110113#309110113#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ObjectsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ObjectsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.186634 +e309110110.528447 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m309110110#309110110#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/OffsetController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.466018 +e309110105.797138 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m309110105#309110105#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKey.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKey.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110104.603791 +e309110105.612684 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter registerHotKey:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:90: warning: passing argument 5 of 'RegisterEventHotKey' makes integer from pointer without a cast +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter sendCarbonEvent:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259: warning: comparison between pointer and integer +lSLF07#2@87"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m309110104#309110105#0(573"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter registerHotKey:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:90: warning: passing argument 5 of 'RegisterEventHotKey' makes integer from pointer without a cast /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m: In function '-[PTHotKeyCenter sendCarbonEvent:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m:259: warning: comparison between pointer and integer 2(22@85"Passing argument 5 of 'RegisterEventHotKey' makes integer from pointer without a cast309110105#130#179#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#90#0#90#0#67"passing argument * of '*' makes integer from pointer without a cast0(22@38"Comparison between pointer and integer309110105#440#133#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m293820190#259#0#259#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m4300911832#1636" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTHotKeyCenter.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTHotKeyCenter.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110103.884939 +e309110104.603629 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@89"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m309110103#309110104#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m4300911832#1640" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyBroadcaster.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyBroadcaster.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110104.763237 +e309110105.465869 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '+[PTKeyCodeTranslator currentTranslator]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator initWithKeyboardLayout:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator description]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m309110104#309110105#0(1905"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '+[PTKeyCodeTranslator currentTranslator]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:18: warning: 'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator initWithKeyboardLayout:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:35: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:39: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:42: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m: In function '-[PTKeyCodeTranslator description]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m:76: warning: 'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322) 5(22@196"'KLGetCurrentKeyboardLayout' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:436)309110105#142#295#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#18#0#18#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#585#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#35#0#35#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#881#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#39#0#39#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#1177#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#42#0#42#0#33"'*' is deprecated (declared at *)0(22@197"'KLGetKeyboardLayoutProperty' is deprecated (declared at /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk/System/Library/Frameworks/Carbon.framework/Frameworks/HIToolbox.framework/Headers/Keyboards.h:322)309110105#1609#296#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m293820189#76#0#76#0#33"'*' is deprecated (declared at *)0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCodeTranslator.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCodeTranslator.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110105.612831 +e309110106.183538 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m309110105#309110106#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PTKeyCombo.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PTKeyCombo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.186746 +e309110106.488899 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@79"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m309110106#309110106#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Player.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.654953 +e309110099.943761 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m: In function '-[PlayerDataController runesAvailable:]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m:516: warning: unused variable 'runeType' +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m309110098#309110099#0(269"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m: In function '-[PlayerDataController runesAvailable:]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m:516: warning: unused variable 'runeType' 1(22@26"Unused variable 'runeType'309110098#142#127#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m309057550#516#0#516#0#19"unused variable '*'0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerDataController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerDataController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.593277 +e309110111.790392 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m309110111#309110111#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerLevelConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.782139 +e309110111.990979 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m309110111#309110111#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayerZoneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.183686 +e309110106.868114 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m309110106#309110106#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayersController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PlayersController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.453439 +e309110100.683658 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m309110100#309110100#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Position.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Position.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.583751 +e309110102.812622 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m309110102#309110102#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Procedure.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Procedure.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.545905 +e309110103.430945 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m309110102#309110103#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m4300911832#1646" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProcedureController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProcedureController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.852259 +e309110115.042143 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@80"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m309110114#309110115#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profile.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Profile.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.838270 +e309110115.660907 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m309110114#309110115#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProfileController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProfileController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.037506 +e309110108.317157 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@106"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m309110108#309110108#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m4300911832#1674" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ProximityCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.185344 +e309110114.562821 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@84"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m309110114#309110114#0(0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m4300911832#1630" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPBehavior.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPBehavior.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110114.094969 +e309110114.580000 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m309110114#309110114#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvPController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/PvPController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.760352 +e309110110.090257 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m: In function '-[Quest dealloc]': +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92: warning: value computed is not used +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m309110109#309110110#0(215"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m: In function '-[Quest dealloc]': /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m:92: warning: value computed is not used 1(22@26"Value computed is not used309110109#104#111#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m308763865#92#0#92#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Quest.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Quest.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.790560 +e309110111.992898 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m309110111#309110111#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m4300911832#1656" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.838784 +e309110110.150290 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m309110109#309110110#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.716687 +e309110112.899128 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m309110112#309110112#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m4300911832#1658" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestGrabActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110109.812526 +e309110110.000535 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m309110109#309110110#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestItem.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestItem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.789643 +e309110113.029408 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m309110112#309110113#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/QuestTurnInActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.216305 +e309110112.403512 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m309110112#309110112#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RepairActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.029549 +e309110113.243859 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@101"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m309110113#309110113#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m4300911832#1664" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ReverseRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.944058 +e309110100.181149 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m309110099#309110100#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Route.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Route.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.800050 +e309110114.094830 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m309110113#309110114#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteCollection.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteCollection.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.991343 +e309110112.209106 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m309110111#309110112#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunCountConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.993027 +e309110112.216160 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m309110111#309110112#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m4300911832#1670" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteRunTimeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110103.222982 +e309110103.471182 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m309110103#309110103#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteSet.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteSet.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110103.471335 +e309110103.884788 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m309110103#309110104#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteVisualizationView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RouteVisualizationView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.302723 +e309110102.583548 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m309110102#309110102#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rule.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Rule.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.295363 +e309110102.938214 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m309110102#309110102#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuleEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuleEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.344347 +e309110111.564173 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@96"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m309110111#309110111#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m4300911832#1654" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/RuneConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s296333611.568860 +e296333611.946516 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m296333611#296333611#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SaveData.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SaveData.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.809093 +e309110107.041332 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@85"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m309110106#309110107#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m4300911832#1632" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ScanGridView.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ScanGridView.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s308785690.994396 +e308785691.324099 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m308785690#308785691#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SecureUserDefaults.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SecureUserDefaults.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.683803 +e309110101.179115 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@78"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m309110100#309110101#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Spell.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.403674 +e309110112.669648 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m309110112#309110112#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m4300911832#1650" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.513162 +e309110101.282095 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@88"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m309110100#309110101#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m4300911832#1638" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.081916 +e309110111.343777 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@105"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m309110111#309110111#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m4300911832#1672" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldownConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SpellCooldownConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110110.528593 +e309110111.081738 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m309110110#309110111#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatisticsController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatisticsController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110102.089919 +e309110102.301947 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@98"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m309110102#309110102#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m4300911832#1658" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110113.651770 +e309110113.865413 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@104"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m309110113#309110113#0(0"0(0#0#96"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m4300911832#1670" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatusConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/StrandStatusConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.229785 +e309110112.483247 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@100"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m309110112#309110112#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m4300911832#1662" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/SwitchRouteActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.087275 +e309110108.364573 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m309110108#309110108#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClassConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetClassConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.778132 +e309110108.036690 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@102"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m309110107#309110108#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m4300911832#1666" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetTypeConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TargetTypeConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.593456 +e309110107.825608 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@103"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m309110107#309110107#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m4300911832#1668" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TempEnchantConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c normal ppc c com.apple.compilers.llvmgcc42 +s309110103.431084 +e309110104.762761 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@83"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c309110103#309110105#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ToolCommon.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ToolCommon.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110107.369577 +e309110107.593309 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m309110107#309110107#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m4300911832#1656" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemConditionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TotemConditionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.868264 +e309110107.060729 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m309110106#309110107#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TransparentWindow.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/TransparentWindow.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.492331 +e309110108.915870 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@97"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m309110108#309110108#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m4300911832#1656" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFNSubscribeFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFNSubscribeFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.318885 +e309110108.492172 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@86"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m309110108#309110108#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m4300911832#1634" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKFileWatcher.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKFileWatcher.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.364759 +e309110108.679633 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m309110108#309110108#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKKQueue.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKKQueue.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110108.317302 +e309110108.548102 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m309110108#309110108#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m4300911832#1642" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UKMainThreadProxy.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/UKMainThreadProxy.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110106.489046 +e309110107.157624 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m309110106#309110107#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Unit.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Unit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110112.899287 +e309110113.110832 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m309110112#309110113#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m4300911832#1652" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorActionController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/VendorActionController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110100.181822 +e309110100.453230 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@81"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m309110100#309110100#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Waypoint.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Waypoint.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110111.487112 +e309110112.020484 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m309110111#309110112#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m4300911832#1648" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointActionEditor.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110099.614528 +e309110101.155618 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m309110099#309110101#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m4300911832#1644" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointController.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WaypointController.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110101.564514 +e309110101.858855 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@82"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m309110101#309110101#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WoWObject.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/WoWObject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.042280 +e309110115.361733 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c309110115#309110115#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lapi.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lapi.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.361899 +e309110115.592109 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c309110115#309110115#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lauxlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lauxlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.592245 +e309110115.824693 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c309110115#309110115#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lbaselib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lbaselib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.661060 +e309110115.973408 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c309110115#309110115#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lcode.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lcode.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.824854 +e309110115.986038 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c309110115#309110115#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldblib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldblib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.890381 +e309110116.154017 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c309110115#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldebug.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldebug.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.973540 +e309110116.218265 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c309110115#309110116#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldo.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldo.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c normal ppc c com.apple.compilers.llvmgcc42 +s309110115.986220 +e309110116.125681 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c309110115#309110116#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ldump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ldump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.048844 +e309110116.168624 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c309110116#309110116#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lfunc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lfunc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.125830 +e309110116.444859 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c309110116#309110116#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lgc.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lgc.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.154161 +e309110116.213550 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c309110116#309110116#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/linit.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/linit.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.168774 +e309110116.367500 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/liolib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/liolib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.213695 +e309110116.529067 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c309110116#309110116#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/llex.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/llex.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.218412 +e309110116.346959 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c309110116#309110116#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmathlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmathlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.347124 +e309110116.432731 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c309110116#309110116#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lmem.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lmem.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.368035 +e309110116.560845 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loadlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loadlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.432882 +e309110116.587899 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lobject.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lobject.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.444998 +e309110116.494468 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@95"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c309110116#309110116#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c4300911832#1628" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lopcodes.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lopcodes.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.494600 +e309110116.623319 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/loslib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/loslib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.529219 +e309110117.049086 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c309110116#309110117#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lparser.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lparser.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.560999 +e309110116.675336 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstate.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstate.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.588033 +e309110116.700745 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstring.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstring.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.623469 +e309110116.968326 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lstrlib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lstrlib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.675517 +e309110116.923488 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@93"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c309110116#309110116#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c4300911832#1624" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltable.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltable.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.700897 +e309110116.815543 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c309110116#309110116#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltablib.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltablib.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.816291 +e309110116.949261 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c309110116#309110116#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/ltm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/ltm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.923637 +e309110117.098134 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@94"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c309110116#309110117#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c4300911832#1626" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lundump.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lundump.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.949420 +e309110117.314160 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@90"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c309110116#309110117#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c4300911832#1618" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lvm.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lvm.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c normal ppc c com.apple.compilers.llvmgcc42 +s309110116.968472 +e309110117.056201 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@91"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c309110116#309110117#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c4300911832#1620" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/lzio.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/lzio.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m normal ppc objective-c com.apple.compilers.llvmgcc42 +s309110098.445020 +e309110098.654796 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@77"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m309110098#309110098#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m4300911832#1616" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/main.m -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/main.o" 0# + +CCompileC "build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c normal ppc c com.apple.compilers.llvmgcc42 +s309110117.049252 +e309110117.203560 +r1 +xCompileC +xbuild/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@92"Compile /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c309110117#309110117#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c4300911832#1622" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -include /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/lua-5.1.4/src/print.c -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/print.o" 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +s309110080.090672 +e309110080.679750 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib:116: note: This view is clipping its content. +lSLF07#2@28"CompileXIB AuraCondition.xib309110080#309110080#0(167"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib:116: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib293820189#116#0#116#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +s309110081.043988 +e309110081.538116 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib:68: note: This view is clipping its content. +lSLF07#2@33"CompileXIB AuraStackCondition.xib309110081#309110081#0(171"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib:68: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib293820189#68#0#68#0#0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib4300911832#411" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AuraStackCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +s309110077.985082 +e309110079.497654 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib:267: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. +lSLF07#2@24"CompileXIB Behaviors.xib309110077#309110079#0(261"/* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib:267: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. 1(22@128"The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role.309110079#18446744073709551615#0#0(6@76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib297107457#267#0#267#0#0"0(0#0#76"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib4300911832#393" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Behaviors.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +s309110084.660056 +e309110085.750412 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:327: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1570: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:95: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:925: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1479: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@18"CompileXIB Bot.xib309110084#309110085#0(839"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:327: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1570: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:95: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:925: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib:1479: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 5(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#327#0#327#0#0"0(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#1570#0#1570#0#0"0(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#95#0#95#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#925#0#925#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110085#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib309033272#1479#0#1479#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib4300911832#381" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bot.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +s309110082.074697 +e309110083.077046 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1033: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1038: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:906: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:912: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1092: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1086: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:530: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1181: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1102: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:544: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1164: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:536: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:542: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@22"CompileXIB ChatLog.xib309110082#309110083#0(2693"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1033: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1038: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:906: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:912: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1092: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1086: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:530: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1181: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1102: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:544: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:1164: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:536: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib:542: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 13(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1033#0#1033#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1038#0#1038#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#906#0#906#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#912#0#912#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1092#0#1092#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1086#0#1086#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#530#0#530#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1181#0#1181#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1102#0#1102#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#544#0#544#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#1164#0#1164#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#536#0#536#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110083#18446744073709551615#0#0(6@74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib293820190#542#0#542#0#0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib4300911832#389" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ChatLog.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +s309110081.538233 +e309110082.068952 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib:2: note: This view is clipping its content. +lSLF07#2@26"CompileXIB CombatCount.xib309110081#309110082#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib:2: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib293820189#2#0#2#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatCount.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib +s296415947.581068 +e296415948.960278 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:408: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:835: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'ActionMenu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1002: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1007: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@28"CompileXIB CombatProfile.xib296415947#296415948#0(1219"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:408: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:835: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:168: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'ActionMenu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1002: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib:1007: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 6(13@34"This view is clipping its content.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#408#0#408#0#0"0(13@34"This view is clipping its content.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#168#0#168#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#835#0#835#0#0"0(22@147"The 'menu' outlet of 'Pop Up Button' is connected to 'ActionMenu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#168#0#168#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#1002#0#1002#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.296415948#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib296325909#1007#0#1007#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfile.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfile.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +s309110084.817519 +e309110085.251567 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib:79: note: This view is clipping its content. +lSLF07#2@34"CompileXIB CombatProfileAction.xib309110084#309110085#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib293820190#79#0#79#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib7308044150613439488#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/CombatProfileAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +s309110079.689077 +e309110080.235838 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib:23: note: This view is clipping its content. +lSLF07#2@34"CompileXIB ComboPointCondition.xib309110079#309110080#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib:23: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib293820189#23#0#23#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ComboPointCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +s309110084.230500 +e309110084.657951 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib +lSLF07#2@26"CompileXIB DelayAction.xib309110084#309110085#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DelayAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +s309110080.635210 +e309110081.043494 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib:26: note: This view is clipping its content. +lSLF07#2@32"CompileXIB DistanceCondition.xib309110080#309110081#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib293820190#26#0#26#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DistanceCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +s309110082.984607 +e309110083.398841 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib:83: note: This view is clipping its content. +lSLF07#2@34"CompileXIB DurabilityCondition.xib309110082#309110083#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib293820190#83#0#83#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DurabilityCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +s309110085.978060 +e309110086.496402 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib:83: note: This view is clipping its content. +lSLF07#2@28"CompileXIB GateCondition.xib309110085#309110086#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib293820189#83#0#83#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/GateCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +s309110080.679860 +e309110081.196207 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:83: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:69: note: This view is clipping its content. +lSLF07#2@30"CompileXIB HealthCondition.xib309110080#309110081#0(296"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:83: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib:69: note: This view is clipping its content. 2(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib309039219#83#0#83#0#0"0(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib309039219#69#0#69#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib4300911832#405" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HealthCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +s309110085.664130 +e309110086.263219 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib:79: note: This view is clipping its content. +lSLF07#2@32"CompileXIB InteractNPCAction.xib309110085#309110086#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib293820189#79#0#79#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractNPCAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +s309110085.712182 +e309110086.279120 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib:79: note: This view is clipping its content. +lSLF07#2@35"CompileXIB InteractObjectAction.xib309110085#309110086#0(173"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib293820190#79#0#79#0#0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractObjectAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +s309110080.726295 +e309110081.106535 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib:79: note: This view is clipping its content. +lSLF07#2@33"CompileXIB InventoryCondition.xib309110080#309110081#0(171"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib293820189#79#0#79#0#0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib4300911832#411" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +s309110083.077181 +e309110083.454670 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib:79: note: This view is clipping its content. +lSLF07#2@37"CompileXIB InventoryFreeCondition.xib309110083#309110083#0(175"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib293820189#79#0#79#0#0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib4300911832#419" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InventoryFreeCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +s309110083.980140 +e309110084.362165 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib:79: note: This view is clipping its content. +lSLF07#2@25"CompileXIB ItemAction.xib309110083#309110085#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib293820189#79#0#79#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ItemAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +s309110084.362288 +e309110084.817368 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib:79: note: This view is clipping its content. +lSLF07#2@25"CompileXIB JumpAction.xib309110084#309110085#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib293820189#79#0#79#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +s309110086.497446 +e309110087.013074 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib +lSLF07#2@35"CompileXIB JumpToWaypointAction.xib309110086#309110087#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/JumpToWaypointAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +s309110082.609653 +e309110082.984483 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib:26: note: This view is clipping its content. +lSLF07#2@28"CompileXIB LastSpellCast.xib309110082#309110082#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib293820189#26#0#26#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/LastSpellCast.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +s309110084.052953 +e309110084.432755 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib:79: note: This view is clipping its content. +lSLF07#2@26"CompileXIB MacroAction.xib309110084#309110085#0(164"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib293820189#79#0#79#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MacroAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +s309110085.251701 +e309110085.711705 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib:79: note: This view is clipping its content. +lSLF07#2@25"CompileXIB MailAction.xib309110085#309110085#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib293392626#79#0#79#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MailAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +s309110080.058861 +e309110082.453221 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:3311: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:4644: note: This view is clipping its content. +lSLF07#2@23"CompileXIB MainMenu.xib309110080#309110082#0(286"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:3311: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib:4644: note: This view is clipping its content. 2(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib309019216#3311#0#3311#0#0"0(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib309019216#4644#0#4644#0#0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib4300911832#391" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MainMenu.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +s309110079.493561 +e309110080.635089 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:251: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:39: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:273: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:151: warning: This window's content rectangle does not lie entirely on the screen with the menu bar and may not be completely visible for all screen resolutions and configurations. +lSLF07#2@21"CompileXIB Memory.xib309110079#309110080#0(695"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:251: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:39: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:273: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib:151: warning: This window's content rectangle does not lie entirely on the screen with the menu bar and may not be completely visible for all screen resolutions and configurations. 4(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#251#0#251#0#0"0(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#39#0#39#0#0"0(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#273#0#273#0#0"0(22@166"This window's content rectangle does not lie entirely on the screen with the menu bar and may not be completely visible for all screen resolutions and configurations.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib296492628#151#0#151#0#0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Memory.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +s309110085.396714 +e309110085.977938 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib:83: note: This view is clipping its content. +lSLF07#2@34"CompileXIB MobsKilledCondition.xib309110085#309110085#0(172"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib293820189#83#0#83#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/MobsKilledCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +s309110085.750519 +e309110086.960124 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib +lSLF07#2@22"CompileXIB Objects.xib309110085#309110086#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib4300911832#389" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Objects.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +s309110077.930269 +e309110079.464659 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:244: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:299: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:213: note: This view is clipping its content. +lSLF07#2@21"CompileXIB Player.xib309110077#309110079#0(400"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:244: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:299: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib:213: note: This view is clipping its content. 3(13@34"This view is clipping its content.309110079#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib293820190#244#0#244#0#0"0(13@34"This view is clipping its content.309110079#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib293820190#299#0#299#0#0"0(13@34"This view is clipping its content.309110079#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib293820190#213#0#213#0#0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Player.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +s309110083.291059 +e309110083.682287 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib:83: note: This view is clipping its content. +lSLF07#2@35"CompileXIB PlayerLevelCondition.xib309110083#309110083#0(173"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib293820189#83#0#83#0#0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerLevelCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +s309110083.398968 +e309110083.811868 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:52: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:79: note: This view is clipping its content. +lSLF07#2@34"CompileXIB PlayerZoneCondition.xib309110083#309110083#0(304"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:52: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib:79: note: This view is clipping its content. 2(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib293820190#52#0#52#0#0"0(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib293820190#79#0#79#0#0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib4300911832#413" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PlayerZoneCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +s309110086.705763 +e309110087.648739 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1844: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1394: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1734: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1339: note: This view is clipping its content. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1840: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1944: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1942: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1429: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1413: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1941: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1428: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@23"CompileXIB Profiles.xib309110086#309110087#0(1950"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1844: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1394: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1734: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1339: note: This view is clipping its content. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1840: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1944: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1942: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1429: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1413: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1941: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib:1428: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 11(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1844#0#1844#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1394#0#1394#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1734#0#1734#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1339#0#1339#0#0"0(13@34"This view is clipping its content.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1840#0#1840#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1944#0#1944#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1942#0#1942#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1429#0#1429#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1413#0#1413#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1941#0#1941#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110087#18446744073709551615#0#0(6@75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib297106889#1428#0#1428#0#0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib4300911832#391" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Profiles.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +s309110081.574565 +e309110082.090477 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib:2: note: This view is clipping its content. +lSLF07#2@29"CompileXIB ProximityCount.xib309110081#309110082#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib:2: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib293820189#2#0#2#0#0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib4300911832#403" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ProximityCount.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +s309110086.280079 +e309110087.060378 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib:653: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. +lSLF07#2@18"CompileXIB PvP.xib309110086#309110087#0(255"/* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib:653: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role. 1(22@128"The 'menu' outlet of 'Pop Up Button' is connected to 'Menu' but 'Pop Up Button' already has a 'Menu' child fulfilling this role.309110087#18446744073709551615#0#0(6@70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib297106889#653#0#653#0#0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib4300911832#381" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PvP.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +s309110083.454792 +e309110083.828363 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib:83: note: This view is clipping its content. +lSLF07#2@29"CompileXIB QuestCondition.xib309110083#309110083#0(167"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib293820190#83#0#83#0#0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib4300911832#403" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +s309110084.432884 +e309110084.964084 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib:79: note: This view is clipping its content. +lSLF07#2@30"CompileXIB QuestGrabAction.xib309110084#309110085#0(168"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib293820189#79#0#79#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib4300911832#405" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestGrabAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +s309110084.658073 +e309110085.191960 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib:79: note: This view is clipping its content. +lSLF07#2@32"CompileXIB QuestTurnInAction.xib309110084#309110085#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib293820190#79#0#79#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/QuestTurnInAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +s309110083.811990 +e309110084.174624 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib:79: note: This view is clipping its content. +lSLF07#2@27"CompileXIB RepairAction.xib309110083#309110084#0(165"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib293820189#79#0#79#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib4300911832#399" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RepairAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +s309110084.964210 +e309110085.396567 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib:79: note: This view is clipping its content. +lSLF07#2@33"CompileXIB ReverseRouteAction.xib309110084#309110085#0(171"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib293820190#79#0#79#0#0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib4300911832#411" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ReverseRouteAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +s309110083.576366 +e309110083.980015 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib:83: note: This view is clipping its content. +lSLF07#2@37"CompileXIB RouteRunCountCondition.xib309110083#309110083#0(175"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib293820189#83#0#83#0#0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib4300911832#419" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunCountCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +s309110083.682414 +e309110084.052821 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib:83: note: This view is clipping its content. +lSLF07#2@36"CompileXIB RouteRunTimeCondition.xib309110083#309110084#0(174"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib293820189#83#0#83#0#0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib4300911832#417" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RouteRunTimeCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +s309110077.948025 +e309110080.079854 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:154: note: This view is clipping its content. +o/* com.apple.ibtool.document.warnings */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:298: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Testing Menu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:529: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. +lSLF07#2@21"CompileXIB Routes.xib309110077#309110080#0(645"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:154: note: This view is clipping its content. /* com.apple.ibtool.document.warnings */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:298: warning: The 'menu' outlet of 'Pop Up Button' is connected to 'Testing Menu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role. /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib:529: warning: The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size. 3(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib308784581#154#0#154#0#0"0(22@149"The 'menu' outlet of 'Pop Up Button' is connected to 'Testing Menu' but 'Pop Up Button' already has a 'Menu (OtherViews)' child fulfilling this role.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib308784581#298#0#298#0#0"0(22@117"The image scaling property should not be used with checkboxes. A checkbox should always appear at the standard size.309110080#18446744073709551615#0#0(6@73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib308784581#529#0#529#0#0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Routes.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +s309110082.842270 +e309110083.290933 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib:23: note: This view is clipping its content. +lSLF07#2@28"CompileXIB RuneCondition.xib309110082#309110083#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib:23: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110083#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib293820190#23#0#23#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/RuneCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +s309110084.175097 +e309110084.659943 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib:79: note: This view is clipping its content. +lSLF07#2@26"CompileXIB SpellAction.xib309110084#309110085#0(164"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib293820189#79#0#79#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +s309110082.453345 +e309110082.881575 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib:26: note: This view is clipping its content. +lSLF07#2@28"CompileXIB SpellCooldown.xib309110082#309110082#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib293820189#26#0#26#0#0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib4300911832#401" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SpellCooldown.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +s309110077.945882 +e309110079.442419 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib +lSLF07#2@21"CompileXIB Spells.xib309110077#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib4300911832#387" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spells.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +s309110082.286300 +e309110082.842145 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib +lSLF07#2@25"CompileXIB Statistics.xib309110082#309110082#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Statistics.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +s309110080.235939 +e309110080.726182 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib:26: note: This view is clipping its content. +lSLF07#2@30"CompileXIB StatusCondition.xib309110080#309110080#0(168"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib:26: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110080#18446744073709551615#0#0(6@82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib293820189#26#0#26#0#0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib4300911832#405" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StatusCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +s309110086.263366 +e309110086.705648 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib:83: note: This view is clipping its content. +lSLF07#2@27"CompileXIB StrandStatus.xib309110086#309110086#0(165"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib:83: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110086#18446744073709551615#0#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib293820189#83#0#83#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib4300911832#399" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/StrandStatus.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +s309110083.828487 +e309110084.230389 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib:79: note: This view is clipping its content. +lSLF07#2@32"CompileXIB SwitchRouteAction.xib309110083#309110085#0(170"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110084#18446744073709551615#0#0(6@84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib293820189#79#0#79#0#0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib4300911832#409" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/SwitchRouteAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +s309110082.022655 +e309110082.609205 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib:2: note: This view is clipping its content. +lSLF07#2@26"CompileXIB TargetClass.xib309110082#309110082#0(163"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib:2: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib293820190#2#0#2#0#0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib4300911832#397" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetClass.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +s309110081.461675 +e309110082.022516 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib:6: note: This view is clipping its content. +lSLF07#2@25"CompileXIB TargetType.xib309110081#309110082#0(162"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib:6: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110082#18446744073709551615#0#0(6@77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib293820190#6#0#6#0#0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib4300911832#395" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TargetType.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +s309110081.196334 +e309110081.574445 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib:15: note: This view is clipping its content. +lSLF07#2@35"CompileXIB TempEnchantCondition.xib309110081#309110081#0(173"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib:15: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib293820189#15#0#15#0#0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TempEnchantCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +s309110081.116442 +e309110081.461441 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib:3: note: This view is clipping its content. +lSLF07#2@29"CompileXIB TotemCondition.xib309110081#309110081#0(166"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib:3: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110081#18446744073709551615#0#0(6@81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib293820189#3#0#3#0#0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib4300911832#403" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TotemCondition.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +s309110085.192070 +e309110085.664009 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib +o/* com.apple.ibtool.document.notices */ +o/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib:79: note: This view is clipping its content. +lSLF07#2@27"CompileXIB VendorAction.xib309110085#309110085#0(165"/* com.apple.ibtool.document.notices */ /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib:79: note: This view is clipping its content. 1(13@34"This view is clipping its content.309110085#18446744073709551615#0#0(6@79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib293820189#79#0#79#0#0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib4300911832#399" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/VendorAction.xib 0# + +CCompileXIB /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +s309110082.881708 +e309110083.576245 +r1 +xCompileXIB +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib +lSLF07#2@35"CompileXIB WaypointActionEditor.xib309110082#309110083#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib4300911832#415" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/ibtool --errors --warnings --notices --output-format human-readable-text --compile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib" /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/WaypointActionEditor.xib 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist" English.lproj/Gathering.plist +s309110077.844032 +e309110077.947914 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist +xEnglish.lproj/Gathering.plist +lSLF07#2@34"Copy English.lproj/Gathering.plist309110077#309110077#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/Gathering.plist4300911832#340" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist English.lproj/Gathering.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist" FactionTemplate.plist +s309110077.824263 +e309110077.984965 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist +xFactionTemplate.plist +lSLF07#2@26"Copy FactionTemplate.plist309110077#309110077#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/FactionTemplate.plist4300911832#318" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist FactionTemplate.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist" French.lproj/Gathering.plist +s309110077.875052 +e309110077.945709 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist +xFrench.lproj/Gathering.plist +lSLF07#2@33"Copy French.lproj/Gathering.plist309110077#309110077#0(0"0(0#0#91"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/French.lproj/Gathering.plist4300911832#338" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist French.lproj/Gathering.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist" Macros.plist +s309110082.242580 +e309110082.286143 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist +xMacros.plist +lSLF07#2@17"Copy Macros.plist309110082#309110082#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Macros.plist4300911832#309" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist Macros.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist" OffsetSignatures.plist +s309110082.176245 +e309110082.232857 +r1 +xCopyPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist +xOffsetSignatures.plist +lSLF07#2@27"Copy OffsetSignatures.plist309110082#309110082#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/OffsetSignatures.plist4300911832#319" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copyplist OffsetSignatures.plist --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyStringsFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings" English.lproj/InfoPlist.strings +s309110077.825112 +e309110077.930175 +r1 +xCopyStringsFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings +xEnglish.lproj/InfoPlist.strings +lSLF07#2@36"Copy English.lproj/InfoPlist.strings309110077#309110077#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/English.lproj/InfoPlist.strings4300911832#434" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ICONV /usr/bin/iconv /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copystrings --validate --inputencoding utf-16 --outputencoding UTF-16 English.lproj/InfoPlist.strings --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif" Images/SRRemoveShortcut.tif +s309110079.627266 +e309110079.665424 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif +xImages/SRRemoveShortcut.tif +lSLF07#2@32"Copy Images/SRRemoveShortcut.tif309110079#309110079#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcut.tif4300911832#323" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRRemoveShortcut.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif" Images/SRRemoveShortcutPressed.tif +s309110079.653932 +e309110079.675563 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif +xImages/SRRemoveShortcutPressed.tif +lSLF07#2@39"Copy Images/SRRemoveShortcutPressed.tif309110079#309110079#0(0"0(0#0#97"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutPressed.tif4300911832#330" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRRemoveShortcutPressed.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif" Images/SRRemoveShortcutRollover.tif +s309110079.665563 +e309110079.688956 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif +xImages/SRRemoveShortcutRollover.tif +lSLF07#2@40"Copy Images/SRRemoveShortcutRollover.tif309110079#309110079#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRRemoveShortcutRollover.tif4300911832#331" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRRemoveShortcutRollover.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff" Images/SRSnapback.tiff +s309110079.675750 +e309110079.698965 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff +xImages/SRSnapback.tiff +lSLF07#2@27"Copy Images/SRSnapback.tiff309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Images/SRSnapback.tiff4300911832#318" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff Images/SRSnapback.tiff --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif" bad.tif +s309110079.535515 +e309110079.627116 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif +xbad.tif +lSLF07#2@12"Copy bad.tif309110079#309110079#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/bad.tif4300911832#303" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff bad.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCopyTiffFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif" good.tif +s309110079.592254 +e309110079.653792 +r1 +xCopyTiffFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources/good.tif +xgood.tif +lSLF07#2@13"Copy good.tif309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/good.tif4300911832#304" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/Xcode/Plug-ins/CoreBuildTasks.xcplugin/Contents/Resources/copytiff good.tif --outdir "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png" Ability_DualWieldSpecialization.png +s309110081.106655 +e309110081.119186 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png +xAbility_DualWieldSpecialization.png +lSLF07#2@40"Copy Ability_DualWieldSpecialization.png309110081#309110081#0(0"0(0#0#98"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_DualWieldSpecialization.png4300911832#464" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_DualWieldSpecialization.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png" Ability_Rogue_Sprint.png +s309110079.487014 +e309110079.524230 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png +xAbility_Rogue_Sprint.png +lSLF07#2@29"Copy Ability_Rogue_Sprint.png309110079#309110079#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Rogue_Sprint.png4300911832#453" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Rogue_Sprint.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png" Ability_Warrior_Challange.png +s309110081.108242 +e309110081.123822 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png +xAbility_Warrior_Challange.png +lSLF07#2@34"Copy Ability_Warrior_Challange.png309110081#309110081#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Challange.png4300911832#458" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Challange.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png" Ability_Warrior_ImprovedDisciplines.png +s309110081.107568 +e309110081.116263 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png +xAbility_Warrior_ImprovedDisciplines.png +lSLF07#2@44"Copy Ability_Warrior_ImprovedDisciplines.png309110081#309110081#0(0"0(0#0#102"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_ImprovedDisciplines.png4300911832#468" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_ImprovedDisciplines.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png" Ability_Warrior_Revenge.png +s309110079.484084 +e309110079.543008 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png +xAbility_Warrior_Revenge.png +lSLF07#2@32"Copy Ability_Warrior_Revenge.png309110079#309110079#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Revenge.png4300911832#456" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Ability_Warrior_Revenge.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png" Nodes/ActiveQuestIcon.png +s309110079.980818 +e309110080.015456 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png +xNodes/ActiveQuestIcon.png +lSLF07#2@30"Copy Nodes/ActiveQuestIcon.png309110079#309110080#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ActiveQuestIcon.png4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ActiveQuestIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif" AllianceCrest.gif +s309110080.047371 +e309110080.068691 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif +xAllianceCrest.gif +lSLF07#2@22"Copy AllianceCrest.gif309110080#309110080#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AllianceCrest.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/AllianceCrest.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png" Nodes/AvailableQuestIcon.png +s309110079.999223 +e309110080.015267 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png +xNodes/AvailableQuestIcon.png +lSLF07#2@33"Copy Nodes/AvailableQuestIcon.png309110079#309110080#0(0"0(0#0#91"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/AvailableQuestIcon.png4300911832#457" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/AvailableQuestIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png" Nodes/BankerGossipIcon.png +s309110080.001393 +e309110080.021754 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png +xNodes/BankerGossipIcon.png +lSLF07#2@31"Copy Nodes/BankerGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BankerGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BankerGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png" BannerAlliance.png +s309110081.110373 +e309110081.131664 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png +xBannerAlliance.png +lSLF07#2@23"Copy BannerAlliance.png309110081#309110081#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerAlliance.png4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerAlliance.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png" BannerHorde.png +s309110081.109667 +e309110081.129611 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png +xBannerHorde.png +lSLF07#2@20"Copy BannerHorde.png309110081#309110081#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerHorde.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerHorde.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png" BannerNeutral.png +s309110081.108967 +e309110081.144275 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png +xBannerNeutral.png +lSLF07#2@22"Copy BannerNeutral.png309110081#309110081#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerNeutral.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BannerNeutral.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png" Nodes/BinderGossipIcon.png +s309110080.004272 +e309110080.026833 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png +xNodes/BinderGossipIcon.png +lSLF07#2@31"Copy Nodes/BinderGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BinderGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/BinderGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png" BloodElf-Female.png +s309110079.706215 +e309110079.728293 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png +xBloodElf-Female.png +lSLF07#2@24"Copy BloodElf-Female.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif" BloodElf-Female_Small.gif +s309110079.912768 +e309110079.924839 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif +xBloodElf-Female_Small.gif +lSLF07#2@30"Copy BloodElf-Female_Small.gif309110079#309110079#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female_Small.gif4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png" BloodElf-Male.png +s309110079.712833 +e309110079.730639 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png +xBloodElf-Male.png +lSLF07#2@22"Copy BloodElf-Male.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif" BloodElf-Male_Small.gif +s309110079.926848 +e309110079.972223 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif +xBloodElf-Male_Small.gif +lSLF07#2@28"Copy BloodElf-Male_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/BloodElf-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png" Bobber.png +s309110082.069091 +e309110082.114106 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Bobber.png +xBobber.png +lSLF07#2@15"Copy Bobber.png309110082#309110082#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bobber.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Bobber.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png" Nodes/Chicken.png +s309110080.039597 +e309110080.064457 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Chicken.png +xNodes/Chicken.png +lSLF07#2@22"Copy Nodes/Chicken.png309110080#309110080#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Chicken.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Chicken.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Combat.png" Combat.png +s309110079.702034 +e309110079.736684 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Combat.png +xCombat.png +lSLF07#2@15"Copy Combat.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Combat.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Combat.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dead.png" Dead.png +s309110079.702860 +e309110079.724475 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dead.png +xDead.png +lSLF07#2@13"Copy Dead.png309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dead.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dead.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png" DeathKnight.png +s309110082.073322 +e309110082.113653 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png +xDeathKnight.png +lSLF07#2@20"Copy DeathKnight.png309110082#309110082#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif" DeathKnight_Small.gif +s309110082.074013 +e309110082.081242 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif +xDeathKnight_Small.gif +lSLF07#2@26"Copy DeathKnight_Small.gif309110082#309110082#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight_Small.gif4300911832#450" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/DeathKnight_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png" Draenei-Female.png +s309110079.717079 +e309110079.758904 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png +xDraenei-Female.png +lSLF07#2@23"Copy Draenei-Female.png309110079#309110079#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female.png4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif" Draenei-Female_Small.gif +s309110079.927553 +e309110079.957134 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif +xDraenei-Female_Small.gif +lSLF07#2@29"Copy Draenei-Female_Small.gif309110079#309110079#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female_Small.gif4300911832#453" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png" Draenei-Male.png +s309110079.722643 +e309110079.763569 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png +xDraenei-Male.png +lSLF07#2@21"Copy Draenei-Male.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif" Draenei-Male_Small.gif +s309110079.932026 +e309110079.957299 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif +xDraenei-Male_Small.gif +lSLF07#2@27"Copy Draenei-Male_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Draenei-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid.png" Druid.png +s309110079.785459 +e309110079.822957 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Druid.png +xDruid.png +lSLF07#2@14"Copy Druid.png309110079#309110079#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif" Druid_Small.gif +s309110079.872667 +e309110079.879834 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif +xDruid_Small.gif +lSLF07#2@20"Copy Druid_Small.gif309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid_Small.gif4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Druid_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png" Dwarf-Female.png +s309110079.724588 +e309110079.763747 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png +xDwarf-Female.png +lSLF07#2@21"Copy Dwarf-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif" Dwarf-Female_Small.gif +s309110079.958127 +e309110079.969368 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif +xDwarf-Female_Small.gif +lSLF07#2@27"Copy Dwarf-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png" Dwarf-Male.png +s309110079.728475 +e309110079.759080 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png +xDwarf-Male.png +lSLF07#2@19"Copy Dwarf-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif" Dwarf-Male_Small.gif +s309110079.944701 +e309110079.955126 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif +xDwarf-Male_Small.gif +lSLF07#2@25"Copy Dwarf-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Dwarf-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Female.png" Female.png +s309110079.882192 +e309110079.907137 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Female.png +xFemale.png +lSLF07#2@15"Copy Female.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Female.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png" Friendly.png +s309110079.699098 +e309110079.712653 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Friendly.png +xFriendly.png +lSLF07#2@17"Copy Friendly.png309110079#309110079#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Friendly.png4300911832#441" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Friendly.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png" Gnome-Female.png +s309110079.730761 +e309110079.755100 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png +xGnome-Female.png +lSLF07#2@21"Copy Gnome-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif" Gnome-Female_Small.gif +s309110079.912044 +e309110079.924668 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif +xGnome-Female_Small.gif +lSLF07#2@27"Copy Gnome-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png" Gnome-Male.png +s309110079.736817 +e309110079.757085 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png +xGnome-Male.png +lSLF07#2@19"Copy Gnome-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif" Gnome-Male_Small.gif +s309110079.956315 +e309110079.998541 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif +xGnome-Male_Small.gif +lSLF07#2@25"Copy Gnome-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Gnome-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png" Nodes/GossipGossipIcon.png +s309110080.005603 +e309110080.023608 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png +xNodes/GossipGossipIcon.png +lSLF07#2@31"Copy Nodes/GossipGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/GossipGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/GossipGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict" "Growl Registration Ticket.growlRegDict" +s309110077.822999 +e309110077.874910 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict +xGrowl Registration Ticket.growlRegDict +lSLF07#2@43"Copy Growl Registration Ticket.growlRegDict309110077#309110077#0(0"0(0#0#101"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl Registration Ticket.growlRegDict4300911832#469" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl Registration Ticket.growlRegDict" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif" HordeCrest.gif +s309110080.044722 +e309110080.064982 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif +xHordeCrest.gif +lSLF07#2@19"Copy HordeCrest.gif309110080#309110080#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HordeCrest.gif4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HordeCrest.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png" Hostile.png +s309110079.700586 +e309110079.722370 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Hostile.png +xHostile.png +lSLF07#2@16"Copy Hostile.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hostile.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hostile.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png" HotkeyFinished.png +s309110079.903410 +e309110079.930861 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png +xHotkeyFinished.png +lSLF07#2@23"Copy HotkeyFinished.png309110079#309110079#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HotkeyFinished.png4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/HotkeyFinished.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png" Human-Female.png +s309110079.747576 +e309110079.763919 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png +xHuman-Female.png +lSLF07#2@21"Copy Human-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif" Human-Female_Small.gif +s309110079.957396 +e309110079.998697 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif +xHuman-Female_Small.gif +lSLF07#2@27"Copy Human-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png" Human-Male.png +s309110079.755243 +e309110079.779695 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png +xHuman-Male.png +lSLF07#2@19"Copy Human-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif" Human-Male_Small.gif +s309110079.925659 +e309110079.980718 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif +xHuman-Male_Small.gif +lSLF07#2@25"Copy Human-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Human-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png" Hunter.png +s309110079.792624 +e309110079.822794 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Hunter.png +xHunter.png +lSLF07#2@15"Copy Hunter.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif" Hunter_Small.gif +s309110079.868267 +e309110079.906897 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif +xHunter_Small.gif +lSLF07#2@21"Copy Hunter_Small.gif309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter_Small.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Hunter_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png" INV_Fishingpole_03.png +s309110082.072506 +e309110082.111558 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png +xINV_Fishingpole_03.png +lSLF07#2@27"Copy INV_Fishingpole_03.png309110082#309110082#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Fishingpole_03.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Fishingpole_03.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png" INV_Misc_Gear_01.png +s309110079.476803 +e309110079.524979 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png +xINV_Misc_Gear_01.png +lSLF07#2@25"Copy INV_Misc_Gear_01.png309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gear_01.png4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gear_01.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png" INV_Misc_Gem_Bloodstone_01.png +s309110079.448146 +e309110079.493455 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png +xINV_Misc_Gem_Bloodstone_01.png +lSLF07#2@35"Copy INV_Misc_Gem_Bloodstone_01.png309110079#309110079#0(0"0(0#0#93"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gem_Bloodstone_01.png4300911832#459" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Gem_Bloodstone_01.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png" INV_Misc_Head_Dragon_Blue.png +s309110079.452373 +e309110079.502134 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png +xINV_Misc_Head_Dragon_Blue.png +lSLF07#2@34"Copy INV_Misc_Head_Dragon_Blue.png309110079#309110079#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Blue.png4300911832#458" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Blue.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png" INV_Misc_Head_Dragon_Bronze.png +s309110079.445921 +e309110079.509913 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png +xINV_Misc_Head_Dragon_Bronze.png +lSLF07#2@36"Copy INV_Misc_Head_Dragon_Bronze.png309110079#309110079#0(0"0(0#0#94"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Bronze.png4300911832#460" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Head_Dragon_Bronze.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png" INV_Misc_Orb_05.png +s309110079.464797 +e309110079.533121 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png +xINV_Misc_Orb_05.png +lSLF07#2@24"Copy INV_Misc_Orb_05.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Orb_05.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/INV_Misc_Orb_05.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png" Nodes/Innkeeper.png +s309110080.036866 +e309110080.058735 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png +xNodes/Innkeeper.png +lSLF07#2@24"Copy Nodes/Innkeeper.png309110080#309110080#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Innkeeper.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Innkeeper.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png" InteractWithTarget.png +s309110082.171937 +e309110082.242432 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png +xInteractWithTarget.png +lSLF07#2@27"Copy InteractWithTarget.png309110082#309110082#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractWithTarget.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InteractWithTarget.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png" InterfaceBars.png +s309110079.884232 +e309110079.922315 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png +xInterfaceBars.png +lSLF07#2@22"Copy InterfaceBars.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InterfaceBars.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/InterfaceBars.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png" Keybindings.png +s309110079.883492 +e309110079.910986 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png +xKeybindings.png +lSLF07#2@20"Copy Keybindings.png309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Keybindings.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Keybindings.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage.png" Mage.png +s309110079.801238 +e309110079.833737 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Mage.png +xMage.png +lSLF07#2@13"Copy Mage.png309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif" Mage_Small.gif +s309110079.861936 +e309110079.883392 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif +xMage_Small.gif +lSLF07#2@19"Copy Mage_Small.gif309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage_Small.gif4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mage_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Mail.png" Mail.png +s309110082.168208 +e309110082.206613 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Mail.png +xMail.png +lSLF07#2@13"Copy Mail.png309110082#309110082#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mail.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Mail.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Male.png" Male.png +s309110079.877412 +e309110079.911151 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Male.png +xMale.png +lSLF07#2@13"Copy Male.png309110079#309110079#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Male.png4300911832#437" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png" Nodes/MinimapGuideFlag.png +s309110080.025219 +e309110080.036762 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png +xNodes/MinimapGuideFlag.png +lSLF07#2@31"Copy Nodes/MinimapGuideFlag.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/MinimapGuideFlag.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/MinimapGuideFlag.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png" Neutral.png +s309110079.704638 +e309110079.747437 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Neutral.png +xNeutral.png +lSLF07#2@16"Copy Neutral.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Neutral.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Neutral.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif" NeutralCrest.gif +s309110080.042088 +e309110080.053924 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif +xNeutralCrest.gif +lSLF07#2@21"Copy NeutralCrest.gif309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NeutralCrest.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NeutralCrest.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png" NightElf-Female.png +s309110079.757220 +e309110079.779889 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png +xNightElf-Female.png +lSLF07#2@24"Copy NightElf-Female.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif" NightElf-Female_Small.gif +s309110079.979109 +e309110079.998382 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif +xNightElf-Female_Small.gif +lSLF07#2@30"Copy NightElf-Female_Small.gif309110079#309110079#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female_Small.gif4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png" NightElf-Male.png +s309110079.759190 +e309110079.785228 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png +xNightElf-Male.png +lSLF07#2@22"Copy NightElf-Male.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif" NightElf-Male_Small.gif +s309110079.972339 +e309110079.978989 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif +xNightElf-Male_Small.gif +lSLF07#2@28"Copy NightElf-Male_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/NightElf-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png" Orc-Female.png +s309110079.761100 +e309110079.780050 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png +xOrc-Female.png +lSLF07#2@19"Copy Orc-Female.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif" Orc-Female_Small.gif +s309110079.911257 +e309110079.923414 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif +xOrc-Female_Small.gif +lSLF07#2@25"Copy Orc-Female_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png" Orc-Male.png +s309110079.764022 +e309110079.801102 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png +xOrc-Male.png +lSLF07#2@17"Copy Orc-Male.png309110079#309110079#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male.png4300911832#441" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif" Orc-Male_Small.gif +s309110079.922442 +e309110079.931929 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif +xOrc-Male_Small.gif +lSLF07#2@23"Copy Orc-Male_Small.gif309110079#309110079#0(0"0(0#0#81"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male_Small.gif4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Orc-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PVP.png" PVP.png +s309110086.496529 +e309110086.521337 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/PVP.png +xPVP.png +lSLF07#2@12"Copy PVP.png309110086#309110086#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PVP.png4300911832#436" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PVP.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png" Paladin.png +s309110079.814608 +e309110079.831888 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Paladin.png +xPaladin.png +lSLF07#2@16"Copy Paladin.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif" Paladin_Small.gif +s309110079.857764 +e309110079.868141 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif +xPaladin_Small.gif +lSLF07#2@22"Copy Paladin_Small.gif309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin_Small.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Paladin_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png" Nodes/PetitionGossipIcon.png +s309110080.006410 +e309110080.023781 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png +xNodes/PetitionGossipIcon.png +lSLF07#2@33"Copy Nodes/PetitionGossipIcon.png309110080#309110080#0(0"0(0#0#91"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/PetitionGossipIcon.png4300911832#457" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/PetitionGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest.png" Priest.png +s309110079.818085 +e309110079.857669 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Priest.png +xPriest.png +lSLF07#2@15"Copy Priest.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif" Priest_Small.gif +s309110079.833834 +e309110079.857353 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif +xPriest_Small.gif +lSLF07#2@21"Copy Priest_Small.gif309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest_Small.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Priest_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Repair.png" Nodes/Repair.png +s309110080.031103 +e309110080.050168 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Repair.png +xNodes/Repair.png +lSLF07#2@21"Copy Nodes/Repair.png309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Repair.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Repair.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png" Nodes/ResourceBlip.png +s309110080.026938 +e309110080.044600 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png +xNodes/ResourceBlip.png +lSLF07#2@27"Copy Nodes/ResourceBlip.png309110080#309110080#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ResourceBlip.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/ResourceBlip.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Result.png" Result.png +s309110079.891591 +e309110079.910808 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Result.png +xResult.png +lSLF07#2@15"Copy Result.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Result.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Result.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png" Rogue.png +s309110079.823055 +e309110079.857518 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Rogue.png +xRogue.png +lSLF07#2@14"Copy Rogue.png309110079#309110079#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif" Rogue_Small.gif +s309110079.875056 +e309110079.883228 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif +xRogue_Small.gif +lSLF07#2@20"Copy Rogue_Small.gif309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue_Small.gif4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Rogue_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png" Nodes/Scroll.png +s309110080.007130 +e309110080.023949 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Scroll.png +xNodes/Scroll.png +lSLF07#2@21"Copy Nodes/Scroll.png309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Scroll.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Scroll.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png" Shaman.png +s309110079.823849 +e309110079.865833 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Shaman.png +xShaman.png +lSLF07#2@15"Copy Shaman.png309110079#309110079#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman.png4300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif" Shaman_Small.gif +s309110079.855843 +e309110079.874917 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif +xShaman_Small.gif +lSLF07#2@21"Copy Shaman_Small.gif309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman_Small.gif4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Shaman_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Skull.png" Skull.png +s309110080.034102 +e309110080.049993 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Skull.png +xSkull.png +lSLF07#2@14"Copy Skull.png309110080#309110080#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Skull.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Skull.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png" Spell_FireResistanceTotem_01.png +s309110079.444932 +e309110079.519488 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png +xSpell_FireResistanceTotem_01.png +lSLF07#2@37"Copy Spell_FireResistanceTotem_01.png309110079#309110079#0(0"0(0#0#95"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_FireResistanceTotem_01.png4300911832#461" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_FireResistanceTotem_01.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png" Spell_Holy_MindVision.png +s309110079.442904 +e309110079.476660 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png +xSpell_Holy_MindVision.png +lSLF07#2@30"Copy Spell_Holy_MindVision.png309110079#309110079#0(0"0(0#0#88"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_MindVision.png4300911832#454" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_MindVision.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png" Spell_Holy_PrayerofSpirit.png +s309110079.705522 +e309110079.716954 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png +xSpell_Holy_PrayerofSpirit.png +lSLF07#2@34"Copy Spell_Holy_PrayerofSpirit.png309110079#309110079#0(0"0(0#0#92"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_PrayerofSpirit.png4300911832#458" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Holy_PrayerofSpirit.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png" Spell_Nature_PoisonCleansingTotem.png +s309110079.450373 +e309110079.486881 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png +xSpell_Nature_PoisonCleansingTotem.png +lSLF07#2@42"Copy Spell_Nature_PoisonCleansingTotem.png309110079#309110079#0(0"0(0#0#100"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Nature_PoisonCleansingTotem.png4300911832#466" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Spell_Nature_PoisonCleansingTotem.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Stable.png" Nodes/Stable.png +s309110080.035778 +e309110080.047242 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Stable.png +xNodes/Stable.png +lSLF07#2@21"Copy Nodes/Stable.png309110080#309110080#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Stable.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/Stable.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png" Nodes/TabardGossipIcon.png +s309110080.015567 +e309110080.033976 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png +xNodes/TabardGossipIcon.png +lSLF07#2@31"Copy Nodes/TabardGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TabardGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TabardGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png" Tauren-Female.png +s309110079.764833 +e309110079.792248 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png +xTauren-Female.png +lSLF07#2@22"Copy Tauren-Female.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif" Tauren-Female_Small.gif +s309110079.969531 +e309110079.998853 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif +xTauren-Female_Small.gif +lSLF07#2@28"Copy Tauren-Female_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png" Tauren-Male.png +s309110079.765547 +e309110079.782722 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png +xTauren-Male.png +lSLF07#2@20"Copy Tauren-Male.png309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif" Tauren-Male_Small.gif +s309110079.930992 +e309110079.970961 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif +xTauren-Male_Small.gif +lSLF07#2@26"Copy Tauren-Male_Small.gif309110079#309110079#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male_Small.gif4300911832#450" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Tauren-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png" Nodes/TaxiGossipIcon.png +s309110080.017843 +e309110080.030582 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png +xNodes/TaxiGossipIcon.png +lSLF07#2@29"Copy Nodes/TaxiGossipIcon.png309110080#309110080#0(0"0(0#0#87"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TaxiGossipIcon.png4300911832#453" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TaxiGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png" Trade_Engraving.png +s309110082.165873 +e309110082.215659 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png +xTrade_Engraving.png +lSLF07#2@24"Copy Trade_Engraving.png309110082#309110082#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Trade_Engraving.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Trade_Engraving.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png" Nodes/TrainerGossipIcon.png +s309110080.021927 +e309110080.039473 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png +xNodes/TrainerGossipIcon.png +lSLF07#2@32"Copy Nodes/TrainerGossipIcon.png309110080#309110080#0(0"0(0#0#90"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TrainerGossipIcon.png4300911832#456" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/TrainerGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png" Troll-Female.png +s309110079.780159 +e309110079.814472 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png +xTroll-Female.png +lSLF07#2@21"Copy Troll-Female.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif" Troll-Female_Small.gif +s309110079.923506 +e309110079.944559 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif +xTroll-Female_Small.gif +lSLF07#2@27"Copy Troll-Female_Small.gif309110079#309110079#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female_Small.gif4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png" Troll-Male.png +s309110079.781013 +e309110079.855709 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png +xTroll-Male.png +lSLF07#2@19"Copy Troll-Male.png309110079#309110079#0(0"0(0#0#77"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male.png4300911832#443" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif" Troll-Male_Small.gif +s309110079.971069 +e309110079.999006 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif +xTroll-Male_Small.gif +lSLF07#2@25"Copy Troll-Male_Small.gif309110079#309110079#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male_Small.gif4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Troll-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png" TypeShortcut.png +s309110079.907247 +e309110079.926626 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png +xTypeShortcut.png +lSLF07#2@21"Copy TypeShortcut.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TypeShortcut.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/TypeShortcut.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png" Undead-Female.png +s309110079.781879 +e309110079.826022 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png +xUndead-Female.png +lSLF07#2@22"Copy Undead-Female.png309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female.png4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif" Undead-Female_Small.gif +s309110079.955421 +e309110079.998218 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif +xUndead-Female_Small.gif +lSLF07#2@28"Copy Undead-Female_Small.gif309110079#309110079#0(0"0(0#0#86"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female_Small.gif4300911832#452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Female_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png" Undead-Male.png +s309110079.782845 +e309110079.817967 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png +xUndead-Male.png +lSLF07#2@20"Copy Undead-Male.png309110079#309110079#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif" Undead-Male_Small.gif +s309110079.924930 +e309110079.955314 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif +xUndead-Male_Small.gif +lSLF07#2@26"Copy Undead-Male_Small.gif309110079#309110079#0(0"0(0#0#84"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male_Small.gif4300911832#450" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Undead-Male_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png" UnknownSmall.png +s309110079.909821 +e309110079.926774 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png +xUnknownSmall.png +lSLF07#2@21"Copy UnknownSmall.png309110079#309110079#0(0"0(0#0#79"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UnknownSmall.png4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/UnknownSmall.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png" Nodes/VendorGossipIcon.png +s309110080.024398 +e309110080.035663 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png +xNodes/VendorGossipIcon.png +lSLF07#2@31"Copy Nodes/VendorGossipIcon.png309110080#309110080#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/VendorGossipIcon.png4300911832#455" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/VendorGossipIcon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png" Warlock.png +s309110079.826127 +e309110079.877291 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warlock.png +xWarlock.png +lSLF07#2@16"Copy Warlock.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif" Warlock_Small.gif +s309110079.859065 +e309110079.872546 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif +xWarlock_Small.gif +lSLF07#2@22"Copy Warlock_Small.gif309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock_Small.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warlock_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png" Nodes/WarnTriangle.png +s309110080.025969 +e309110080.041956 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png +xNodes/WarnTriangle.png +lSLF07#2@27"Copy Nodes/WarnTriangle.png309110080#309110080#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/WarnTriangle.png4300911832#451" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Nodes/WarnTriangle.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png" Warrior.png +s309110079.832024 +e309110079.891466 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warrior.png +xWarrior.png +lSLF07#2@16"Copy Warrior.png309110079#309110079#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior.png4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif" Warrior_Small.gif +s309110079.865962 +e309110079.903282 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif +xWarrior_Small.gif +lSLF07#2@22"Copy Warrior_Small.gif309110079#309110079#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior_Small.gif4300911832#446" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Warrior_Small.gif "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3" alarm.mp3 +s309110081.111089 +e309110081.141970 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 +xalarm.mp3 +lSLF07#2@14"Copy alarm.mp3309110081#309110081#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/alarm.mp34300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/alarm.mp3 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml" appcast.xml +s309110086.960250 +e309110086.969425 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/appcast.xml +xappcast.xml +lSLF07#2@16"Copy appcast.xml309110086#309110086#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/appcast.xml4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/appcast.xml "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig" buildnumber.xcconfig +s309109556.920954 +e309109556.968723 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig +xbuildnumber.xcconfig +lSLF07#2@25"Copy buildnumber.xcconfig309109556#309109556#0(0"0(0#0#83"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/buildnumber.xcconfig4300911832#449" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/buildnumber.xcconfig "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem" dsa_pub.pem +s309110086.279237 +e309110086.287050 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem +xdsa_pub.pem +lSLF07#2@16"Copy dsa_pub.pem309110086#309110086#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/dsa_pub.pem4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/dsa_pub.pem "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns" gnome2.icns +s309110080.054067 +e309110080.088892 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns +xgnome2.icns +lSLF07#2@16"Copy gnome2.icns309110080#309110080#0(0"0(0#0#74"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/gnome2.icns4300911832#440" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/gnome2.icns "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/iChat.png" iChat.png +s309110082.170116 +e309110082.202004 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/iChat.png +xiChat.png +lSLF07#2@14"Copy iChat.png309110082#309110082#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/iChat.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/iChat.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png" inv_misc_bag_14.png +s309110079.454627 +e309110079.483951 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png +xinv_misc_bag_14.png +lSLF07#2@24"Copy inv_misc_bag_14.png309110079#309110079#0(0"0(0#0#82"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/inv_misc_bag_14.png4300911832#448" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/inv_misc_bag_14.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png" mbobbleicon.png +s309110082.173864 +e309110082.205316 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png +xmbobbleicon.png +lSLF07#2@20"Copy mbobbleicon.png309110082#309110082#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mbobbleicon.png4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mbobbleicon.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/mixed.png" mixed.png +s309110079.534804 +e309110079.540920 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/mixed.png +xmixed.png +lSLF07#2@14"Copy mixed.png309110079#309110079#0(0"0(0#0#72"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mixed.png4300911832#438" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/mixed.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/off.png" off.png +s309110079.533247 +e309110079.592111 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/off.png +xoff.png +lSLF07#2@12"Copy off.png309110079#309110079#0(0"0(0#0#70"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/off.png4300911832#436" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/off.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/on.png" on.png +s309110079.534094 +e309110079.582585 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/on.png +xon.png +lSLF07#2@11"Copy on.png309110079#309110079#0(0"0(0#0#69"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/on.png4300911832#435" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/on.png "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns" pgBehavior.icns +s309110080.051062 +e309110080.085192 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns +xpgBehavior.icns +lSLF07#2@20"Copy pgBehavior.icns309110080#309110080#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgBehavior.icns4300911832#444" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgBehavior.icns "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns" pgRoute.icns +s309110080.050285 +e309110080.090559 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns +xpgRoute.icns +lSLF07#2@17"Copy pgRoute.icns309110080#309110080#0(0"0(0#0#75"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgRoute.icns4300911832#441" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/pgRoute.icns "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCpResource "build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3" splash.mp3 +s309110082.070347 +e309110082.165735 +r1 +xCpResource +xbuild/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 +xsplash.mp3 +lSLF07#2@15"Copy splash.mp3309110082#309110082#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/splash.mp34300911832#439" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/splash.mp3 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Resources" 0# + +CCreateUniversalBinary "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" normal "i386 ppc" +s309110117.636402 +e309110117.683054 +r1 +xCreateUniversalBinary +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +xnormal +xi386 ppc +lSLF07#2@100"CreateUniversalBinary "build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" normal "i386 ppc"309110117#309110117#0(0"0(0#0#71"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/i386 ppc4300911832#527" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /usr/bin/lipo -create "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" -output "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" 0# + +CGenerateDSYMFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" +s309110117.683190 +e309110117.924607 +r1 +xGenerateDSYMFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome +lSLF07#2@115"GenerateDSYMFile "build/Release/Pocket Gnome.app.dSYM" "build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome"309110117#309110117#0(0"0(0#0#121"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome4300911832#341" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/usr/bin/dsymutil "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome" -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app.dSYM" 0# + +CLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" normal i386 +s309110098.751886 +e309110099.532826 +r1 +xLd +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome +xnormal +xi386 +lSLF07#2@152"Link /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome309110098#309110099#0(0"0(0#0#0"4300911832#993" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv MACOSX_DEPLOYMENT_TARGET 10.5 /Volumes/HD/Developer/usr/bin/clang -arch i386 -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -L/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -filelist "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" -mmacosx-version-min=10.5 -framework Cocoa -framework Security -lz.1.2.3 -framework Carbon -framework Growl -framework Message -framework ScriptingBridge -framework ShortcutRecorder -framework CoreData -lcrypto -framework Sparkle -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome" 0# + +CLd "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" normal ppc +s309110117.314255 +e309110117.635871 +r1 +xLd +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome +xnormal +xppc +lSLF07#2@151"Link /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome309110117#309110117#0(0"0(0#0#0"4300911832#997" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv MACOSX_DEPLOYMENT_TARGET 10.5 /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -arch ppc -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -L/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -filelist "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" -mmacosx-version-min=10.5 -framework Cocoa -framework Security -lz.1.2.3 -framework Carbon -framework Growl -framework Message -framework ScriptingBridge -framework ShortcutRecorder -framework CoreData -lcrypto -framework Sparkle -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome" 0# + +CPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework" Growl.framework +s309110117.942082 +e309110118.153609 +r1 +xPBXCp +xbuild/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework +xGrowl.framework +lSLF07#2@20"Copy Growl.framework309110117#309110118#0(0"0(0#0#78"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework4300911832#445" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Growl.framework "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks" 0# + +CPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework" ShortcutRecorder.framework +s309110117.941424 +e309110118.123433 +r1 +xPBXCp +xbuild/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework +xShortcutRecorder.framework +lSLF07#2@31"Copy ShortcutRecorder.framework309110117#309110118#0(0"0(0#0#89"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework4300911832#456" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/ShortcutRecorder.framework "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks" 0# + +CPBXCp "build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework" Sparkle.framework +s309110117.924700 +e309110118.417616 +r1 +xPBXCp +xbuild/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework +xSparkle.framework +lSLF07#2@22"Copy Sparkle.framework309110117#309110118#0(0"0(0#0#80"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework4300911832#447" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /Volumes/HD/Developer/Library/PrivateFrameworks/DevToolsCore.framework/Resources/pbxcp -exclude .DS_Store -exclude CVS -exclude .svn -strip-debug-symbols -resolve-src-symlinks /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Sparkle.framework "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Frameworks" 0# + +CPhaseScriptExecution "Get SVN Revision" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh" +s309110077.775238 +e309110077.822403 +r1 +xPhaseScriptExecution +xGet SVN Revision +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh +lSLF07#2@42"Run custom shell script 'Get SVN Revision'309110077#309110077#0(0"0(0#0#0"4300911832#18537" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMMAND_MODE legacy setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1064 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0604 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE_COUNT 0 setenv SCRIPT_OUTPUT_FILE_COUNT 0 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-83A9BBD61178B706003E3683.sh\"" 0# + +CPhaseScriptExecution "Run Script" "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh" +s296491990.813065 +e296491990.942534 +r0 +xPhaseScriptExecution +xRun Script +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh +o/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError) +o from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' +o from /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh:34 +lSLF07#2@36"Run custom shell script 'Run Script'296491990#296491990#0(494"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError) from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' from /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh:34 Command /bin/sh failed with exit code 1 4(13@174"/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- nokogiri (LoadError) 296491990#0#174#0(1@0"0(13@121" from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 296491990#174#121#0(1@0"0(13@159" from /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh:34 296491990#295#159#0(1@0"0(4@39"Command /bin/sh failed with exit code 1296491990#18446744073709551615#0#0(1@0"0(0#0#0"4300911832#18566" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_NUMBER 506S setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMMAND_MODE legacy setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1063 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0603 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE_COUNT 0 setenv SCRIPT_OUTPUT_FILE_COUNT 0 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Script-033161C011AB086800467490.sh\"" 1# + +CPhaseScriptExecution /Applications/Mail.app +s309110093.520216 +e309110093.722969 +r1 +xPhaseScriptExecution +x/Applications/Mail.app +osdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. +osdp: warning: Use -A to emit this declaration anyway. +osdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. +osdp: warning: Use -A to emit this declaration anyway. +lSLF07#2@48"Run custom shell script '/Applications/Mail.app'309110093#309110093#0(151"sdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. sdp: warning: Use -A to emit this declaration anyway. 2(13@95"sdp: warning: element of class-extension refers to hidden type 'OLD message editor'; skipping. 309110093#0#95#0(1@0"0(13@56"sdp: warning: Use -A to emit this declaration anyway. 309110093#95#56#0(1@0"0(0#0#0"4300911832#18985" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INPUT_FILE_BASE Mail setenv INPUT_FILE_DIR /Applications setenv INPUT_FILE_NAME Mail.app setenv INPUT_FILE_PATH /Applications/Mail.app setenv INPUT_FILE_REGION_PATH_COMPONENT setenv INPUT_FILE_SUFFIX .app setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1064 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0604 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv OTHER_INPUT_FILE_FLAGS setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE /Applications/Mail.app setenv SCRIPT_OUTPUT_FILE_0 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/Mail.h" setenv SCRIPT_OUTPUT_FILE_COUNT 1 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`" 0# + +CPhaseScriptExecution /Applications/iChat.app +s309110093.716325 +e309110093.920048 +r1 +xPhaseScriptExecution +x/Applications/iChat.app +osdp: warning: class "iChatApplication" redeclared; use instead. +osdp: warning: class "iChatApplication" redeclared; use instead. +lSLF07#2@49"Run custom shell script '/Applications/iChat.app'309110093#309110093#0(82"sdp: warning: class "iChatApplication" redeclared; use instead. 1(13@82"sdp: warning: class "iChatApplication" redeclared; use instead. 309110093#0#82#0(1@0"0(0#0#0"4300911832#18990" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv ACTION build setenv ALTERNATE_GROUP staff setenv ALTERNATE_MODE u+w,go-w,a+rX setenv ALTERNATE_OWNER Josh setenv ALWAYS_SEARCH_USER_PATHS YES setenv APPLE_INTERNAL_DEVELOPER_DIR /AppleInternal/Developer setenv APPLE_INTERNAL_DIR /AppleInternal setenv APPLE_INTERNAL_DOCUMENTATION_DIR /AppleInternal/Documentation setenv APPLE_INTERNAL_LIBRARY_DIR /AppleInternal/Library setenv APPLE_INTERNAL_TOOLS /AppleInternal/Developer/Tools setenv APPLY_RULES_IN_COPY_FILES NO setenv ARCHS "i386 ppc" setenv ARCHS_STANDARD_32_64_BIT "x86_64 i386 ppc" setenv ARCHS_STANDARD_32_BIT "i386 ppc" setenv ARCHS_STANDARD_64_BIT x86_64 setenv BUILD_COMPONENTS "headers build" setenv BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv BUILD_STYLE Release setenv BUILD_VARIANTS normal setenv BUILT_PRODUCTS_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CACHE_ROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CCHROOT /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501 setenv CHMOD /bin/chmod setenv CHOWN /usr/sbin/chown setenv CLASS_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/JavaClasses" setenv CLEAN_PRECOMPS YES setenv CLONE_HEADERS NO setenv CODESIGNING_FOLDER_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" setenv CODE_SIGNING_ALLOWED YES setenv COMPOSITE_SDK_DIRS /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/CompositeSDKs setenv CONFIGURATION Release setenv CONFIGURATION_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv CONFIGURATION_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release" setenv CONTENTS_FOLDER_PATH "Pocket Gnome.app/Contents" setenv COPYING_PRESERVES_HFS_DATA NO setenv COPY_PHASE_STRIP YES setenv COPY_RESOURCES_FROM_STATIC_FRAMEWORKS YES setenv CP /bin/cp setenv CURRENT_ARCH ppc setenv CURRENT_VARIANT normal setenv DEAD_CODE_STRIPPING NO setenv DEBUGGING_SYMBOLS YES setenv DEBUG_INFORMATION_FORMAT dwarf-with-dsym setenv DEPLOYMENT_LOCATION NO setenv DEPLOYMENT_POSTPROCESSING NO setenv DERIVED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DERIVED_SOURCES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" setenv DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv DEVELOPER_DIR /Volumes/HD/Developer setenv DEVELOPER_FRAMEWORKS_DIR /Volumes/HD/Developer/Library/Frameworks setenv DEVELOPER_FRAMEWORKS_DIR_QUOTED "\"/Volumes/HD/Developer/Library/Frameworks\"" setenv DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv DEVELOPMENT_LANGUAGE English setenv DOCUMENTATION_FOLDER_PATH /Documentation setenv DO_HEADER_SCANNING_IN_JAM NO setenv DSTROOT "/tmp/Pocket Gnome.dst" setenv DWARF_DSYM_FILE_NAME "Pocket Gnome.app.dSYM" setenv DWARF_DSYM_FOLDER_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv ENABLE_HEADER_DEPENDENCIES YES setenv ENABLE_OPENMP_SUPPORT NO setenv EXCLUDED_INSTALLSRC_SUBDIRECTORY_PATTERNS ".svn CVS" setenv EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES "*.nib *.lproj *.framework *.gch (*) CVS .svn *.xcodeproj *.xcode *.pbproj *.pbxproj" setenv EXECUTABLES_FOLDER_PATH "Pocket Gnome.app/Contents/Executables" setenv EXECUTABLE_FOLDER_PATH "Pocket Gnome.app/Contents/MacOS" setenv EXECUTABLE_NAME "Pocket Gnome" setenv EXECUTABLE_PATH "Pocket Gnome.app/Contents/MacOS/Pocket Gnome" setenv FILE_LIST "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects/LinkFileList" setenv FIXED_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/FixedFiles" setenv FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/Frameworks" setenv FRAMEWORK_FLAG_PREFIX -framework setenv FRAMEWORK_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" \"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5\"" setenv FRAMEWORK_VERSION A setenv FULL_PRODUCT_NAME "Pocket Gnome.app" setenv GCC3_VERSION 3.3 setenv GCC_DYNAMIC_NO_PIC YES setenv GCC_INLINES_ARE_PRIVATE_EXTERN YES setenv GCC_MODEL_TUNING G5 setenv GCC_OPTIMIZATION_LEVEL s setenv GCC_PFE_FILE_C_DIALECTS "c objective-c c++ objective-c++" setenv GCC_PRECOMPILE_PREFIX_HEADER YES setenv GCC_PREFIX_HEADER PocketGnome_Prefix.pch setenv GCC_PREPROCESSOR_DEFINITIONS NDEBUG setenv GCC_SYMBOLS_PRIVATE_EXTERN YES setenv GCC_TREAT_WARNINGS_AS_ERRORS NO setenv GCC_VERSION com.apple.compilers.llvm.clang.1_0 setenv GCC_VERSION_IDENTIFIER com_apple_compilers_llvm_clang_1_0 setenv GCC_WARN_64_TO_32_BIT_CONVERSION NO setenv GCC_WARN_ABOUT_RETURN_TYPE YES setenv GCC_WARN_CHECK_SWITCH_STATEMENTS YES setenv GCC_WARN_INITIALIZER_NOT_FULLY_BRACKETED YES setenv GCC_WARN_MISSING_PARENTHESES YES setenv GCC_WARN_SHADOW NO setenv GCC_WARN_SIGN_COMPARE NO setenv GCC_WARN_UNINITIALIZED_AUTOS YES setenv GCC_WARN_UNUSED_FUNCTION YES setenv GCC_WARN_UNUSED_LABEL YES setenv GCC_WARN_UNUSED_PARAMETER NO setenv GCC_WARN_UNUSED_VALUE YES setenv GCC_WARN_UNUSED_VARIABLE YES setenv GENERATE_MASTER_OBJECT_FILE NO setenv GENERATE_PKGINFO_FILE YES setenv GENERATE_PROFILING_CODE NO setenv GID 20 setenv GROUP staff setenv HEADERMAP_INCLUDES_FLAT_ENTRIES_FOR_TARGET_BEING_BUILT YES setenv HEADERMAP_INCLUDES_FRAMEWORK_ENTRIES_FOR_ALL_PRODUCT_TYPES YES setenv HEADERMAP_INCLUDES_NONPUBLIC_NONPRIVATE_HEADERS YES setenv HEADERMAP_INCLUDES_PROJECT_HEADERS YES setenv HEADER_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include\" " setenv ICONV /usr/bin/iconv setenv INFOPLIST_EXPAND_BUILD_SETTINGS YES setenv INFOPLIST_FILE Info.plist setenv INFOPLIST_OUTPUT_FORMAT same-as-input setenv INFOPLIST_PATH "Pocket Gnome.app/Contents/Info.plist" setenv INFOPLIST_PREPROCESS NO setenv INFOSTRINGS_PATH /InfoPlist.strings setenv INPUT_FILE_BASE iChat setenv INPUT_FILE_DIR /Applications setenv INPUT_FILE_NAME iChat.app setenv INPUT_FILE_PATH /Applications/iChat.app setenv INPUT_FILE_REGION_PATH_COMPONENT setenv INPUT_FILE_SUFFIX .app setenv INSTALL_DIR "/tmp/Pocket Gnome.dst/Volumes/HD/Users/Josh/Applications" setenv INSTALL_GROUP staff setenv INSTALL_MODE_FLAG u+w,go-w,a+rX setenv INSTALL_OWNER Josh setenv INSTALL_PATH /Volumes/HD/Users/Josh/Applications setenv INSTALL_ROOT "/tmp/Pocket Gnome.dst" setenv JAVAC_DEFAULT_FLAGS "-J-Xms64m -J-XX:NewSize=4M -J-Dfile.encoding=UTF8" setenv JAVA_APP_STUB /System/Library/Frameworks/JavaVM.framework/Resources/MacOS/JavaApplicationStub setenv JAVA_ARCHIVE_CLASSES YES setenv JAVA_ARCHIVE_TYPE JAR setenv JAVA_COMPILER /usr/bin/javac setenv JAVA_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Java" setenv JAVA_FRAMEWORK_RESOURCES_DIRS Resources setenv JAVA_JAR_FLAGS cv setenv JAVA_SOURCE_SUBDIR . setenv JAVA_USE_DEPENDENCIES YES setenv JAVA_ZIP_FLAGS -urg setenv JIKES_DEFAULT_FLAGS "+E +OLDCSO" setenv KEEP_PRIVATE_EXTERNS NO setenv LD_GENERATE_MAP_FILE NO setenv LD_MAP_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome-LinkMap-normal-ppc.txt" setenv LD_OPENMP_FLAGS -fopenmp setenv LEX /Volumes/HD/Developer/usr/bin/lex setenv LIBRARY_FLAG_NOSPACE YES setenv LIBRARY_FLAG_PREFIX -l setenv LIBRARY_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv LINKER_DISPLAYS_MANGLED_NAMES NO setenv LINK_FILE_LIST_normal_i386 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/i386/Pocket Gnome.LinkFileList" setenv LINK_FILE_LIST_normal_ppc "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal/ppc/Pocket Gnome.LinkFileList" setenv LINK_WITH_STANDARD_LIBRARIES YES setenv LOCAL_ADMIN_APPS_DIR /Applications/Utilities setenv LOCAL_APPS_DIR /Applications setenv LOCAL_DEVELOPER_DIR /Library/Developer setenv LOCAL_LIBRARY_DIR /Library setenv MACH_O_TYPE mh_execute setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv MAC_OS_X_VERSION_ACTUAL 1064 setenv MAC_OS_X_VERSION_MAJOR 1060 setenv MAC_OS_X_VERSION_MINOR 0604 setenv NATIVE_ARCH i386 setenv NATIVE_ARCH_32_BIT i386 setenv NATIVE_ARCH_64_BIT x86_64 setenv NATIVE_ARCH_ACTUAL x86_64 setenv NO_COMMON YES setenv OBJECT_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects" setenv OBJECT_FILE_DIR_normal "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Objects-normal" setenv OBJROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv ONLY_ACTIVE_ARCH NO setenv OPTIMIZATION_LEVEL 0 setenv OS MACOS setenv OSAC /usr/bin/osacompile setenv OTHER_INPUT_FILE_FLAGS setenv PACKAGE_TYPE com.apple.package-type.wrapper.application setenv PASCAL_STRINGS YES setenv PATH_PREFIXES_EXCLUDED_FROM_HEADER_DEPENDENCIES "/usr/include /usr/local/include /System/Library/Frameworks /System/Library/PrivateFrameworks /Volumes/HD/Developer/Headers /Volumes/HD/Developer/SDKs /Volumes/HD/Developer/Platforms" setenv PBDEVELOPMENTPLIST_PATH "Pocket Gnome.app/Contents/pbdevelopment.plist" setenv PFE_FILE_C_DIALECTS "c objective-c" setenv PKGINFO_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PkgInfo" setenv PKGINFO_PATH "Pocket Gnome.app/Contents/PkgInfo" setenv PLATFORM_DEVELOPER_APPLICATIONS_DIR /Volumes/HD/Developer/Applications setenv PLATFORM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv PLATFORM_DEVELOPER_LIBRARY_DIR /Volumes/HD/Developer/Library setenv PLATFORM_DEVELOPER_SDK_DIR /Volumes/HD/Developer/SDKs setenv PLATFORM_DEVELOPER_TOOLS_DIR /Volumes/HD/Developer/Tools setenv PLATFORM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv PLATFORM_NAME macosx setenv PLIST_FILE_OUTPUT_FORMAT same-as-input setenv PLUGINS_FOLDER_PATH "Pocket Gnome.app/Contents/PlugIns" setenv PREBINDING NO setenv PRECOMPS_INCLUDE_HEADERS_FROM_BUILT_PRODUCTS_DIR YES setenv PRECOMP_DESTINATION_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/PrefixHeaders" setenv PRESERVE_DEAD_CODE_INITS_AND_TERMS NO setenv PRIVATE_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/PrivateHeaders" setenv PRODUCT_NAME "Pocket Gnome" setenv PRODUCT_SETTINGS_PATH /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist setenv PRODUCT_TYPE com.apple.product-type.application setenv PROFILING_CODE NO setenv PROJECT "Pocket Gnome" setenv PROJECT_DERIVED_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/DerivedSources" setenv PROJECT_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv PROJECT_FILE_PATH "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Pocket Gnome.xcodeproj" setenv PROJECT_NAME "Pocket Gnome" setenv PROJECT_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build" setenv PUBLIC_HEADERS_FOLDER_PATH "Pocket Gnome.app/Contents/Headers" setenv RECURSIVE_SEARCH_PATHS_FOLLOW_SYMLINKS YES setenv REMOVE_CVS_FROM_RESOURCES YES setenv REMOVE_SVN_FROM_RESOURCES YES setenv REZ_COLLECTOR_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources" setenv REZ_OBJECTS_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/ResourceManagerResources/Objects" setenv REZ_SEARCH_PATHS "\"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release\" " setenv RUN_CLANG_STATIC_ANALYZER NO setenv SCAN_ALL_SOURCE_FILES_FOR_INCLUDES NO setenv SCRIPTS_FOLDER_PATH "Pocket Gnome.app/Contents/Resources/Scripts" setenv SCRIPT_INPUT_FILE /Applications/iChat.app setenv SCRIPT_OUTPUT_FILE_0 "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/iChat.h" setenv SCRIPT_OUTPUT_FILE_COUNT 1 setenv SDKROOT /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_DIR /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk setenv SDK_NAME macosx10.5 setenv SED /usr/bin/sed setenv SEPARATE_STRIP NO setenv SEPARATE_SYMBOL_EDIT NO setenv SET_DIR_MODE_OWNER_GROUP YES setenv SET_FILE_MODE_OWNER_GROUP NO setenv SHARED_DERIVED_FILE_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/DerivedSources setenv SHARED_FRAMEWORKS_FOLDER_PATH "Pocket Gnome.app/Contents/SharedFrameworks" setenv SHARED_PRECOMPS_DIR /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders setenv SHARED_SUPPORT_FOLDER_PATH "Pocket Gnome.app/Contents/SharedSupport" setenv SKIP_INSTALL NO setenv SOURCE_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv SRCROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv STANDARD_C_PLUS_PLUS_LIBRARY_TYPE dynamic setenv STRINGS_FILE_OUTPUT_ENCODING UTF-16 setenv STRIP_INSTALLED_PRODUCT YES setenv STRIP_STYLE all setenv SYMBOL_REPOSITORY_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/SymbolRepositories" setenv SYMROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv SYSTEM_ADMIN_APPS_DIR /Applications/Utilities setenv SYSTEM_APPS_DIR /Applications setenv SYSTEM_CORE_SERVICES_DIR /System/Library/CoreServices setenv SYSTEM_DEMOS_DIR /Applications/Extras setenv SYSTEM_DEVELOPER_APPS_DIR /Volumes/HD/Developer/Applications setenv SYSTEM_DEVELOPER_BIN_DIR /Volumes/HD/Developer/usr/bin setenv SYSTEM_DEVELOPER_DEMOS_DIR "/Volumes/HD/Developer/Applications/Utilities/Built Examples" setenv SYSTEM_DEVELOPER_DIR /Volumes/HD/Developer setenv SYSTEM_DEVELOPER_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library" setenv SYSTEM_DEVELOPER_GRAPHICS_TOOLS_DIR "/Volumes/HD/Developer/Applications/Graphics Tools" setenv SYSTEM_DEVELOPER_JAVA_TOOLS_DIR "/Volumes/HD/Developer/Applications/Java Tools" setenv SYSTEM_DEVELOPER_PERFORMANCE_TOOLS_DIR "/Volumes/HD/Developer/Applications/Performance Tools" setenv SYSTEM_DEVELOPER_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes" setenv SYSTEM_DEVELOPER_TOOLS /Volumes/HD/Developer/Tools setenv SYSTEM_DEVELOPER_TOOLS_DOC_DIR "/Volumes/HD/Developer/ADC Reference Library/documentation/DeveloperTools" setenv SYSTEM_DEVELOPER_TOOLS_RELEASENOTES_DIR "/Volumes/HD/Developer/ADC Reference Library/releasenotes/DeveloperTools" setenv SYSTEM_DEVELOPER_USR_DIR /Volumes/HD/Developer/usr setenv SYSTEM_DEVELOPER_UTILITIES_DIR /Volumes/HD/Developer/Applications/Utilities setenv SYSTEM_DOCUMENTATION_DIR /Library/Documentation setenv SYSTEM_LIBRARY_DIR /System/Library setenv TARGETNAME "Pocket Gnome" setenv TARGET_BUILD_DIR /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release setenv TARGET_NAME "Pocket Gnome" setenv TARGET_TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILES_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_FILE_DIR "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build" setenv TEMP_ROOT /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build setenv UID 501 setenv UNLOCALIZED_RESOURCES_FOLDER_PATH "Pocket Gnome.app/Contents/Resources" setenv UNSTRIPPED_PRODUCT NO setenv USER Josh setenv USER_APPS_DIR /Volumes/HD/Users/Josh/Applications setenv USER_LIBRARY_DIR /Volumes/HD/Users/Josh/Library setenv USE_DYNAMIC_NO_PIC YES setenv USE_HEADERMAP YES setenv USE_HEADER_SYMLINKS NO setenv VALIDATE_PRODUCT NO setenv VALID_ARCHS "ppc i386" setenv VERBOSE_PBXCP NO setenv VERSIONPLIST_PATH "Pocket Gnome.app/Contents/version.plist" setenv VERSION_INFO_BUILDER Josh setenv VERSION_INFO_FILE "Pocket Gnome_vers.c" setenv VERSION_INFO_STRING "\"@(#)PROGRAM:Pocket Gnome PROJECT:Pocket Gnome-\"" setenv WRAPPER_EXTENSION app setenv WRAPPER_NAME "Pocket Gnome.app" setenv WRAPPER_SUFFIX .app setenv XCODE_APP_SUPPORT_DIR /Volumes/HD/Developer/Library/Xcode setenv XCODE_VERSION_ACTUAL 0322 setenv XCODE_VERSION_MAJOR 0300 setenv XCODE_VERSION_MINOR 0320 setenv YACC /Volumes/HD/Developer/usr/bin/yacc /bin/sh -c "sdef \"$INPUT_FILE_PATH\" | sdp -fh -o \"$DERIVED_FILES_DIR\" --basename \"$INPUT_FILE_BASE\" --bundleid `defaults read \"$INPUT_FILE_PATH/Contents/Info\" CFBundleIdentifier`" 0# + +CProcessInfoPlistFile "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist" Info.plist +s309110077.767372 +e309110077.774970 +r1 +xProcessInfoPlistFile +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist +xInfo.plist +lSLF07#2@18"Process Info.plist309110077#309110077#0(0"0(0#0#73"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/Info.plist4300911832#392" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 builtin-infoPlistUtility Info.plist -genpkginfo "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/PkgInfo" -expandbuildsettings -platform macosx -o "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app/Contents/Info.plist" 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309016231.430403 +e309016235.215922 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016235#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1462" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amkwokfkujbeiraepjwqiccvszkc/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309025519.174086 +e309025519.844064 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025519#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-amyrqqmtaggzerbsarlgrjwazyur/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +s309025519.175948 +e309025519.902543 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025519#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1481" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-apmgxyegdvjotgclkafougknjmyo/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s298991087.642607 +e298991090.358142 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991090#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1462" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bdxprkoghifpnraokxksvxqjrccx/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 objective-c com.apple.compilers.llvm.clang.1_0.compiler +s309025519.173153 +e309025523.645880 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xobjective-c +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025523#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1462" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x objective-c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-bfliznmuoydlambmvywhwyyukaev/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +s309016231.432316 +e309016236.526987 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016236#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1491" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-brbmstqoijxlckcyfapcubqpmfpi/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +s309025519.175019 +e309025524.702545 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309025519#309025524#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1491" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-budbwefvswbirzchzwwvlvsauigz/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +s298991087.645019 +e298991088.172374 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991088#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1481" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-cmijutsekwtvmjcugyuerjtzzdze/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc objective-c com.apple.compilers.llvmgcc42 +s298991087.644067 +e298991091.651910 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xobjective-c +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991091#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1491" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x objective-c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-eubjtrtrqcqgvqguiqssnpocpczx/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s298991087.643416 +e298991087.657330 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch298991087#298991087#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fltmpkigdrhtcfboyhcceuzvwkge/PocketGnome_Prefix.pch.pth 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch PocketGnome_Prefix.pch normal ppc c com.apple.compilers.llvmgcc42 +s309016231.433275 +e309016232.387743 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch +xPocketGnome_Prefix.pch +xnormal +xppc +xc +xcom.apple.compilers.llvmgcc42 +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016232#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1481" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/llvm-gcc-4.2 -x c-header -arch ppc -fmessage-length=0 -pipe -Wno-trigraphs -fpascal-strings -fasm-blocks -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -mtune=G5 -fvisibility=hidden -mmacosx-version-min=10.5 -gdwarf-2 "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/ppc" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fmkjiijcadpoajcudggjiroacgcl/PocketGnome_Prefix.pch.gch 0# + +CProcessPCH /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth PocketGnome_Prefix.pch normal i386 c com.apple.compilers.llvm.clang.1_0.compiler +s309016231.431395 +e309016232.124187 +r1 +xProcessPCH +x/var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth +xPocketGnome_Prefix.pch +xnormal +xi386 +xc +xcom.apple.compilers.llvm.clang.1_0.compiler +lSLF07#2@33"Precompile PocketGnome_Prefix.pch309016231#309016232#0(0"0(0#0#85"/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch4300911832#1452" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 setenv LANG en_US.US-ASCII /Volumes/HD/Developer/usr/bin/clang -x c-header -arch i386 -fmessage-length=0 -pipe -fdiagnostics-print-source-range-info -Wno-trigraphs -fpascal-strings -Os -mdynamic-no-pic -Wreturn-type -Wmissing-braces -Wparentheses -Wswitch -Wunused-function -Wunused-label -Wunused-variable -Wunused-value -Wuninitialized -DNDEBUG -isysroot /Volumes/HD/Developer/SDKs/MacOSX10.5.sdk -fasm-blocks -mmacosx-version-min=10.5 -gdwarf-2 -fvisibility=hidden "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/Pocket Gnome.hmap" -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release -F/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 -I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/include "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources/i386" "-I/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Pocket Gnome.build/Release/Pocket Gnome.build/DerivedSources" -c /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/PocketGnome_Prefix.pch -o /var/folders/ip/ipDuUUMEEUKCNku0vVYiM++++TI/-Caches-/com.apple.Xcode.501/SharedPrecompiledHeaders/PocketGnome_Prefix-fptycuuwxjgdaveanaucizszcifa/PocketGnome_Prefix.pch.pth 0# + +CTouch "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" +s309110118.417741 +e309110118.430742 +r1 +xTouch +x/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app +lSLF07#2@99"Touch /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app309110118#309110118#0(0"0(0#0#0"4300911832#188" cd /Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5 /usr/bin/touch -c "/Volumes/HD/Users/Josh/Documents/9-Development/pocketgnome/1.5/build/Release/Pocket Gnome.app" 0# + diff --git a/build/Release/Pocket Gnome.app.dSYM/Contents/Info.plist b/build/Release/Pocket Gnome.app.dSYM/Contents/Info.plist new file mode 100644 index 0000000..d2b6a48 --- /dev/null +++ b/build/Release/Pocket Gnome.app.dSYM/Contents/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleIdentifier + com.apple.xcode.dsym.Pocket Gnome.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + dSYM + CFBundleSignature + ???? + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/build/Release/Pocket Gnome.app.dSYM/Contents/Resources/DWARF/Pocket Gnome b/build/Release/Pocket Gnome.app.dSYM/Contents/Resources/DWARF/Pocket Gnome new file mode 100644 index 0000000..dff247b Binary files /dev/null and b/build/Release/Pocket Gnome.app.dSYM/Contents/Resources/DWARF/Pocket Gnome differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Growl b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Growl new file mode 120000 index 0000000..85956e2 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Growl @@ -0,0 +1 @@ +Versions/Current/Growl \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Headers b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Resources b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Growl b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Growl new file mode 100755 index 0000000..be8852c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Growl differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/Growl.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/Growl.h new file mode 100644 index 0000000..e2a4425 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/Growl.h @@ -0,0 +1,6 @@ +#include "GrowlDefines.h" + +#ifdef __OBJC__ +# include "GrowlApplicationBridge.h" +#endif +#include "GrowlApplicationBridge-Carbon.h" diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h new file mode 100644 index 0000000..e35663f --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge-Carbon.h @@ -0,0 +1,780 @@ +// +// GrowlApplicationBridge-Carbon.h +// Growl +// +// Created by Mac-arena the Bored Zo on Wed Jun 18 2004. +// Based on GrowlApplicationBridge.h by Evan Schoenberg. +// This source code is in the public domain. You may freely link it into any +// program. +// + +#ifndef _GROWLAPPLICATIONBRIDGE_CARBON_H_ +#define _GROWLAPPLICATIONBRIDGE_CARBON_H_ + +#include +#include + +#ifndef GROWL_EXPORT +#define GROWL_EXPORT __attribute__((visibility("default"))) +#endif + +/*! @header GrowlApplicationBridge-Carbon.h + * @abstract Declares an API that Carbon applications can use to interact with Growl. + * @discussion GrowlApplicationBridge uses a delegate to provide information //XXX + * to Growl (such as your application's name and what notifications it may + * post) and to provide information to your application (such as that Growl + * is listening for notifications or that a notification has been clicked). + * + * You can set the Growldelegate with Growl_SetDelegate and find out the + * current delegate with Growl_GetDelegate. See struct Growl_Delegate for more + * information about the delegate. + */ + +__BEGIN_DECLS + +/*! @struct Growl_Delegate + * @abstract Delegate to supply GrowlApplicationBridge with information and respond to events. + * @discussion The Growl delegate provides your interface to + * GrowlApplicationBridge. When GrowlApplicationBridge needs information about + * your application, it looks for it in the delegate; when Growl or the user + * does something that you might be interested in, GrowlApplicationBridge + * looks for a callback in the delegate and calls it if present + * (meaning, if it is not NULL). + * XXX on all of that + * @field size The size of the delegate structure. + * @field applicationName The name of your application. + * @field registrationDictionary A dictionary describing your application and the notifications it can send out. + * @field applicationIconData Your application's icon. + * @field growlInstallationWindowTitle The title of the installation window. + * @field growlInstallationInformation Text to display in the installation window. + * @field growlUpdateWindowTitle The title of the update window. + * @field growlUpdateInformation Text to display in the update window. + * @field referenceCount A count of owners of the delegate. + * @field retain Called when GrowlApplicationBridge receives this delegate. + * @field release Called when GrowlApplicationBridge no longer needs this delegate. + * @field growlIsReady Called when GrowlHelperApp is listening for notifications. + * @field growlNotificationWasClicked Called when a Growl notification is clicked. + * @field growlNotificationTimedOut Called when a Growl notification timed out. + */ +struct Growl_Delegate { + /* @discussion This should be sizeof(struct Growl_Delegate). + */ + size_t size; + + /*All of these attributes are optional. + *Optional attributes can be NULL; required attributes that + * are NULL cause setting the Growl delegate to fail. + *XXX - move optional/required status into the discussion for each field + */ + + /* This name is used both internally and in the Growl preferences. + * + * This should remain stable between different versions and incarnations of + * your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + * + * This can be NULL if it is provided elsewhere, namely in an + * auto-discoverable plist file in your app bundle + * (XXX refer to more information on that) or in registrationDictionary. + */ + CFStringRef applicationName; + + /* + * Must contain at least these keys: + * GROWL_NOTIFICATIONS_ALL (CFArray): + * Contains the names of all notifications your application may post. + * + * Can also contain these keys: + * GROWL_NOTIFICATIONS_DEFAULT (CFArray): + * Names of notifications that should be enabled by default. + * If omitted, GROWL_NOTIFICATIONS_ALL will be used. + * GROWL_APP_NAME (CFString): + * Same as the applicationName member of this structure. + * If both are present, the applicationName member shall prevail. + * If this key is present, you may omit applicationName (set it to NULL). + * GROWL_APP_ICON (CFData): + * Same as the iconData member of this structure. + * If both are present, the iconData member shall prevail. + * If this key is present, you may omit iconData (set it to NULL). + * + * If you change the contents of this dictionary after setting the delegate, + * be sure to call Growl_Reregister. + * + * This can be NULL if you have an auto-discoverable plist file in your app + * bundle. (XXX refer to more information on that) + */ + CFDictionaryRef registrationDictionary; + + /* The data can be in any format supported by NSImage. As of + * Mac OS X 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and + * PICT formats. + * + * If this is not supplied, Growl will look up your application's icon by + * its application name. + */ + CFDataRef applicationIconData; + + /* Installer display attributes + * + * These four attributes are used by the Growl installer, if this framework + * supports it. + * For any of these being NULL, a localised default will be + * supplied. + */ + + /* If this is NULL, Growl will use a default, + * localized title. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlInstallationWindowTitle; + /* This information may be as long or short as desired (the + * window will be sized to fit it). If Growl is not installed, it will + * be displayed to the user as an explanation of what Growl is and what + * it can do in your application. + * It should probably note that no download is required to install. + * + * If this is NULL, Growl will use a default, localized + * explanation. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlInstallationInformation; + /* If this is NULL, Growl will use a default, + * localized title. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlUpdateWindowTitle; + /* This information may be as long or short as desired (the + * window will be sized to fit it). If an older version of Growl is + * installed, it will be displayed to the user as an explanation that an + * updated version of Growl is included in your application and + * no download is required. + * + * If this is NULL, Growl will use a default, localized + * explanation. + * + * Only used if you're using Growl-WithInstaller.framework. Otherwise, + * this member is ignored. + */ + CFStringRef growlUpdateInformation; + + /* This member is provided for use by your retain and release + * callbacks (see below). + * + * GrowlApplicationBridge never directly uses this member. Instead, it + * calls your retain callback (if non-NULL) and your release + * callback (if non-NULL). + */ + unsigned referenceCount; + + //Functions. Currently all of these are optional (any of them can be NULL). + + /* When you call Growl_SetDelegate(newDelegate), it will call + * oldDelegate->release(oldDelegate), and then it will call + * newDelegate->retain(newDelegate), and the return value from retain + * is what will be set as the delegate. + * (This means that this member works like CFRetain and -[NSObject retain].) + * This member is optional (it can be NULL). + * For a delegate allocated with malloc, this member would be + * NULL. + * @result A delegate to which GrowlApplicationBridge holds a reference. + */ + void *(*retain)(void *); + /* When you call Growl_SetDelegate(newDelegate), it will call + * oldDelegate->release(oldDelegate), and then it will call + * newDelegate->retain(newDelegate), and the return value from retain + * is what will be set as the delegate. + * (This means that this member works like CFRelease and + * -[NSObject release].) + * This member is optional (it can be NULL). + * For a delegate allocated with malloc, this member might be + * free(3). + */ + void (*release)(void *); + + /* Informs the delegate that Growl (specifically, the GrowlHelperApp) was + * launched successfully (or was already running). The application can + * take actions with the knowledge that Growl is installed and functional. + */ + void (*growlIsReady)(void); + + /* Informs the delegate that a Growl notification was clicked. It is only + * sent for notifications sent with a non-NULL clickContext, + * so if you want to receive a message when a notification is clicked, + * clickContext must not be NULL when calling + * Growl_PostNotification or + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext. + */ + void (*growlNotificationWasClicked)(CFPropertyListRef clickContext); + + /* Informs the delegate that a Growl notification timed out. It is only + * sent for notifications sent with a non-NULL clickContext, + * so if you want to receive a message when a notification is clicked, + * clickContext must not be NULL when calling + * Growl_PostNotification or + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext. + */ + void (*growlNotificationTimedOut)(CFPropertyListRef clickContext); +}; + +/*! @struct Growl_Notification + * @abstract Structure describing a Growl notification. + * @discussion XXX + * @field size The size of the notification structure. + * @field name Identifies the notification. + * @field title Short synopsis of the notification. + * @field description Additional text. + * @field iconData An icon for the notification. + * @field priority An indicator of the notification's importance. + * @field reserved Bits reserved for future usage. + * @field isSticky Requests that a notification stay on-screen until dismissed explicitly. + * @field clickContext An identifier to be passed to your click callback when a notification is clicked. + * @field clickCallback A callback to call when the notification is clicked. + */ +struct Growl_Notification { + /* This should be sizeof(struct Growl_Notification). + */ + size_t size; + + /* The notification name distinguishes one type of + * notification from another. The name should be human-readable, as it + * will be displayed in the Growl preference pane. + * + * The name is used in the GROWL_NOTIFICATIONS_ALL and + * GROWL_NOTIFICATIONS_DEFAULT arrays in the registration dictionary, and + * in this member of the Growl_Notification structure. + */ + CFStringRef name; + + /* A notification's title describes the notification briefly. + * It should be easy to read quickly by the user. + */ + CFStringRef title; + + /* The description supplements the title with more + * information. It is usually longer and sometimes involves a list of + * subjects. For example, for a 'Download complete' notification, the + * description might have one filename per line. GrowlMail in Growl 0.6 + * uses a description of '%d new mail(s)' (formatted with the number of + * messages). + */ + CFStringRef description; + + /* The notification icon usually indicates either what + * happened (it may have the same icon as e.g. a toolbar item that + * started the process that led to the notification), or what it happened + * to (e.g. a document icon). + * + * The icon data is optional, so it can be NULL. In that + * case, the application icon is used alone. Not all displays support + * icons. + * + * The data can be in any format supported by NSImage. As of Mac OS X + * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT form + * ats. + */ + CFDataRef iconData; + + /* Priority is new in Growl 0.6, and is represented as a + * signed integer from -2 to +2. 0 is Normal priority, -2 is Very Low + * priority, and +2 is Very High priority. + * + * Not all displays support priority. If you do not wish to assign a + * priority to your notification, assign 0. + */ + signed int priority; + + /* These bits are not used in Growl 0.6. Set them to 0. + */ + unsigned reserved: 31; + + /* When the sticky bit is clear, in most displays, + * notifications disappear after a certain amount of time. Sticky + * notifications, however, remain on-screen until the user dismisses them + * explicitly, usually by clicking them. + * + * Sticky notifications were introduced in Growl 0.6. Most notifications + * should not be sticky. Not all displays support sticky notifications, + * and the user may choose in Growl's preference pane to force the + * notification to be sticky or non-sticky, in which case the sticky bit + * in the notification will be ignored. + */ + unsigned isSticky: 1; + + /* If this is not NULL, and your click callback + * is not NULL either, this will be passed to the callback + * when your notification is clicked by the user. + * + * Click feedback was introduced in Growl 0.6, and it is optional. Not + * all displays support click feedback. + */ + CFPropertyListRef clickContext; + + /* If this is not NULL, it will be called instead + * of the Growl delegate's click callback when clickContext is + * non-NULL and the notification is clicked on by the user. + * + * Click feedback was introduced in Growl 0.6, and it is optional. Not + * all displays support click feedback. + * + * The per-notification click callback is not yet supported as of Growl + * 0.7. + */ + void (*clickCallback)(CFPropertyListRef clickContext); + + CFStringRef identifier; +}; + +#pragma mark - +#pragma mark Easy initialisers + +/*! @defined InitGrowlDelegate + * @abstract Callable macro. Initializes a Growl delegate structure to defaults. + * @discussion Call with a pointer to a struct Growl_Delegate. All of the + * members of the structure will be set to 0 or NULL, except for + * size (which will be set to sizeof(struct Growl_Delegate)) and + * referenceCount (which will be set to 1). + */ +#define InitGrowlDelegate(delegate) \ + do { \ + if (delegate) { \ + (delegate)->size = sizeof(struct Growl_Delegate); \ + (delegate)->applicationName = NULL; \ + (delegate)->registrationDictionary = NULL; \ + (delegate)->applicationIconData = NULL; \ + (delegate)->growlInstallationWindowTitle = NULL; \ + (delegate)->growlInstallationInformation = NULL; \ + (delegate)->growlUpdateWindowTitle = NULL; \ + (delegate)->growlUpdateInformation = NULL; \ + (delegate)->referenceCount = 1U; \ + (delegate)->retain = NULL; \ + (delegate)->release = NULL; \ + (delegate)->growlIsReady = NULL; \ + (delegate)->growlNotificationWasClicked = NULL; \ + (delegate)->growlNotificationTimedOut = NULL; \ + } \ + } while(0) + +/*! @defined InitGrowlNotification + * @abstract Callable macro. Initializes a Growl notification structure to defaults. + * @discussion Call with a pointer to a struct Growl_Notification. All of + * the members of the structure will be set to 0 or NULL, except + * for size (which will be set to + * sizeof(struct Growl_Notification)). + */ +#define InitGrowlNotification(notification) \ + do { \ + if (notification) { \ + (notification)->size = sizeof(struct Growl_Notification); \ + (notification)->name = NULL; \ + (notification)->title = NULL; \ + (notification)->description = NULL; \ + (notification)->iconData = NULL; \ + (notification)->priority = 0; \ + (notification)->reserved = 0U; \ + (notification)->isSticky = false; \ + (notification)->clickContext = NULL; \ + (notification)->clickCallback = NULL; \ + (notification)->identifier = NULL; \ + } \ + } while(0) + +#pragma mark - +#pragma mark Public API + +// @functiongroup Managing the Growl delegate + +/*! @function Growl_SetDelegate + * @abstract Replaces the current Growl delegate with a new one, or removes + * the Growl delegate. + * @param newDelegate + * @result Returns false and does nothing else if a pointer that was passed in + * is unsatisfactory (because it is non-NULL, but at least one + * required member of it is NULL). Otherwise, sets or unsets the + * delegate and returns true. + * @discussion When newDelegate is non-NULL, sets + * the delegate to newDelegate. When it is NULL, + * the current delegate will be unset, and no delegate will be in place. + * + * It is legal for newDelegate to be the current delegate; + * nothing will happen, and Growl_SetDelegate will return true. It is also + * legal for it to be NULL, as described above; again, it will + * return true. + * + * If there was a delegate in place before the call, Growl_SetDelegate will + * call the old delegate's release member if it was non-NULL. If + * newDelegate is non-NULL, Growl_SetDelegate will + * call newDelegate->retain, and set the delegate to its return + * value. + * + * If you are using Growl-WithInstaller.framework, and an older version of + * Growl is installed on the user's system, the user will automatically be + * prompted to update. + * + * GrowlApplicationBridge currently does not copy this structure, nor does it + * retain any of the CF objects in the structure (it regards the structure as + * a container that retains the objects when they are added and releases them + * when they are removed or the structure is destroyed). Also, + * GrowlApplicationBridge currently does not modify any member of the + * structure, except possibly the referenceCount by calling the retain and + * release members. + */ +GROWL_EXPORT Boolean Growl_SetDelegate(struct Growl_Delegate *newDelegate); + +/*! @function Growl_GetDelegate + * @abstract Returns the current Growl delegate, if any. + * @result The current Growl delegate. + * @discussion Returns the last pointer passed into Growl_SetDelegate, or + * NULL if no such call has been made. + * + * This function follows standard Core Foundation reference-counting rules. + * Because it is a Get function, not a Copy function, it will not retain the + * delegate on your behalf. You are responsible for retaining and releasing + * the delegate as needed. + */ +GROWL_EXPORT struct Growl_Delegate *Growl_GetDelegate(void); + +#pragma mark - + +// @functiongroup Posting Growl notifications + +/*! @function Growl_PostNotification + * @abstract Posts a Growl notification. + * @param notification The notification to post. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * NULL (or 0 or false as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. + * If the user cancels, this function will have no effect until the next + * application session, at which time when it is called the user will be + * prompted again. The user is also given the option to not be prompted again. + * If the user does choose to install Growl, the requested notification will + * be displayed once Growl is installed and running. + */ +GROWL_EXPORT void Growl_PostNotification(const struct Growl_Notification *notification); + +/*! @function Growl_PostNotificationWithDictionary +* @abstract Notifies using a userInfo dictionary suitable for passing to +* CFDistributedNotificationCenter. +* @param userInfo The dictionary to notify with. +* @discussion Before Growl 0.6, your application would have posted +* notifications using CFDistributedNotificationCenter by creating a userInfo +* dictionary with the notification data. This had the advantage of allowing +* you to add other data to the dictionary for programs besides Growl that +* might be listening. +* +* This function allows you to use such dictionaries without being restricted +* to using CFDistributedNotificationCenter. The keys for this dictionary + * can be found in GrowlDefines.h. +*/ +GROWL_EXPORT void Growl_PostNotificationWithDictionary(CFDictionaryRef userInfo); + +/*! @function Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext + * @abstract Posts a Growl notification using parameter values. + * @param title The title of the notification. + * @param description The description of the notification. + * @param notificationName The name of the notification as listed in the + * registration dictionary. + * @param iconData Data representing a notification icon. Can be NULL. + * @param priority The priority of the notification (-2 to +2, with -2 + * being Very Low and +2 being Very High). + * @param isSticky If true, requests that this notification wait for a + * response from the user. + * @param clickContext An object to pass to the clickCallback, if any. Can + * be NULL, in which case the clickCallback is not called. + * @discussion Creates a temporary Growl_Notification, fills it out with the + * supplied information, and calls Growl_PostNotification on it. + * See struct Growl_Notification and Growl_PostNotification for more + * information. + * + * The icon data can be in any format supported by NSImage. As of Mac OS X + * 10.3, this includes the .icns, TIFF, JPEG, GIF, PNG, PDF, and PICT formats. + */ +GROWL_EXPORT void Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext( + /*inhale*/ + CFStringRef title, + CFStringRef description, + CFStringRef notificationName, + CFDataRef iconData, + signed int priority, + Boolean isSticky, + CFPropertyListRef clickContext); + +#pragma mark - + +// @functiongroup Registering + +/*! @function Growl_RegisterWithDictionary + * @abstract Register your application with Growl without setting a delegate. + * @discussion When you call this function with a dictionary, + * GrowlApplicationBridge registers your application using that dictionary. + * If you pass NULL, GrowlApplicationBridge will ask the delegate + * (if there is one) for a dictionary, and if that doesn't work, it will look + * in your application's bundle for an auto-discoverable plist. + * (XXX refer to more information on that) + * + * If you pass a dictionary to this function, it must include the + * GROWL_APP_NAME key, unless a delegate is set. + * + * This function is mainly an alternative to the delegate system introduced + * with Growl 0.6. Without a delegate, you cannot receive callbacks such as + * growlIsReady (since they are sent to the delegate). You can, + * however, set a delegate after registering without one. + * + * This function was introduced in Growl.framework 0.7. + * @result false if registration failed (e.g. if Growl isn't installed). + */ +GROWL_EXPORT Boolean Growl_RegisterWithDictionary(CFDictionaryRef regDict); + +/*! @function Growl_Reregister + * @abstract Updates your registration with Growl. + * @discussion If your application changes the contents of the + * GROWL_NOTIFICATIONS_ALL key in the registrationDictionary member of the + * Growl delegate, or if it changes the value of that member, or if it + * changes the contents of its auto-discoverable plist, call this function + * to have Growl update its registration information for your application. + * + * Otherwise, this function does not normally need to be called. If you're + * using a delegate, your application will be registered when you set the + * delegate if both the delegate and its registrationDictionary member are + * non-NULL. + * + * This function is now implemented using + * Growl_RegisterWithDictionary. + */ +GROWL_EXPORT void Growl_Reregister(void); + +#pragma mark - + +/*! @function Growl_SetWillRegisterWhenGrowlIsReady + * @abstract Tells GrowlApplicationBridge to register with Growl when Growl + * launches (or not). + * @discussion When Growl has started listening for notifications, it posts a + * GROWL_IS_READY notification on the Distributed Notification + * Center. GrowlApplicationBridge listens for this notification, using it to + * perform various tasks (such as calling your delegate's + * growlIsReady callback, if it has one). If this function is + * called with true, one of those tasks will be to reregister + * with Growl (in the manner of Growl_Reregister). + * + * This attribute is automatically set back to false + * (the default) after every GROWL_IS_READY notification. + * @param flag true if you want GrowlApplicationBridge to register with + * Growl when next it is ready; false if not. + */ +GROWL_EXPORT void Growl_SetWillRegisterWhenGrowlIsReady(Boolean flag); +/*! @function Growl_WillRegisterWhenGrowlIsReady + * @abstract Reports whether GrowlApplicationBridge will register with Growl + * when Growl next launches. + * @result true if GrowlApplicationBridge will register with + * Growl when next it posts GROWL_IS_READY; false if not. + */ +GROWL_EXPORT Boolean Growl_WillRegisterWhenGrowlIsReady(void); + +#pragma mark - + +// @functiongroup Obtaining registration dictionaries + +/*! @function Growl_CopyRegistrationDictionaryFromDelegate + * @abstract Asks the delegate for a registration dictionary. + * @discussion If no delegate is set, or if the delegate's + * registrationDictionary member is NULL, this + * function returns NULL. + * + * This function does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use + * Growl_CreateRegistrationDictionaryByFillingInDictionary or + * Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * to try to fill in missing keys. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromDelegate(void); + +/*! @function Growl_CopyRegistrationDictionaryFromBundle + * @abstract Looks in a bundle for a registration dictionary. + * @discussion This function looks in a bundle for an auto-discoverable + * registration dictionary file using CFBundleCopyResourceURL. + * If it finds one, it loads the file using CFPropertyList and + * returns the result. + * + * If you pass NULL as the bundle, the main bundle is examined. + * + * This function does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use + * Growl_CreateRegistrationDictionaryByFillingInDictionary: or + * Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * to try to fill in missing keys. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CopyRegistrationDictionaryFromBundle(CFBundleRef bundle); + +/*! @function Growl_CreateBestRegistrationDictionary + * @abstract Obtains a registration dictionary, filled out to the best of + * GrowlApplicationBridge's knowledge. + * @discussion This function creates a registration dictionary as best + * GrowlApplicationBridge knows how. + * + * First, GrowlApplicationBridge examines the Growl delegate (if there is + * one) and gets the registration dictionary from that. If no such dictionary + * was obtained, GrowlApplicationBridge looks in your application's main + * bundle for an auto-discoverable registration dictionary file. If that + * doesn't exist either, this function returns NULL. + * + * Second, GrowlApplicationBridge calls + * Growl_CreateRegistrationDictionaryByFillingInDictionary with + * whatever dictionary was obtained. The result of that function is the + * result of this function. + * + * GrowlApplicationBridge uses this function when you call + * Growl_SetDelegate, or when you call + * Growl_RegisterWithDictionary with NULL. + * + * This function was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateBestRegistrationDictionary(void); + +#pragma mark - + +// @functiongroup Filling in registration dictionaries + +/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionary + * @abstract Tries to fill in missing keys in a registration dictionary. + * @param regDict The dictionary to fill in. + * @result The dictionary with the keys filled in. + * @discussion This function examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Keys are only filled in if missing; if a key is present in the dictionary, + * its value will not be changed. + * + * This function was introduced in Growl.framework 0.7. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionary(CFDictionaryRef regDict); +/*! @function Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys + * @abstract Tries to fill in missing keys in a registration dictionary. + * @param regDict The dictionary to fill in. + * @param keys The keys to fill in. If NULL, any missing keys are filled in. + * @result The dictionary with the keys filled in. + * @discussion This function examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Only those keys that are listed in keys will be filled in. + * Other missing keys are ignored. Also, keys are only filled in if missing; + * if a key is present in the dictionary, its value will not be changed. + * + * This function was introduced in Growl.framework 0.7. + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateRegistrationDictionaryByFillingInDictionaryRestrictedToKeys(CFDictionaryRef regDict, CFSetRef keys); + +/*! @brief Tries to fill in missing keys in a notification dictionary. + * @param notifDict The dictionary to fill in. + * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict. + * @discussion This function examines the \a notifDict for missing keys, and + * tries to get them from the last known registration dictionary. As of 1.1, + * the keys that it will look for are: + * + * \li GROWL_APP_NAME + * \li GROWL_APP_ICON + * + * @since Growl.framework 1.1 + */ +GROWL_EXPORT CFDictionaryRef Growl_CreateNotificationDictionaryByFillingInDictionary(CFDictionaryRef notifDict); + +#pragma mark - + +// @functiongroup Querying Growl's status + +/*! @function Growl_IsInstalled + * @abstract Determines whether the Growl prefpane and its helper app are + * installed. + * @result Returns true if Growl is installed, false otherwise. + */ +GROWL_EXPORT Boolean Growl_IsInstalled(void); + +/*! @function Growl_IsRunning + * @abstract Cycles through the process list to find whether GrowlHelperApp + * is running. + * @result Returns true if Growl is running, false otherwise. + */ +GROWL_EXPORT Boolean Growl_IsRunning(void); + +#pragma mark - + +// @functiongroup Launching Growl + +/*! @typedef GrowlLaunchCallback + * @abstract Callback to notify you that Growl is running. + * @param context The context pointer passed to Growl_LaunchIfInstalled. + * @discussion Growl_LaunchIfInstalled calls this callback function if Growl + * was already running or if it launched Growl successfully. + */ +typedef void (*GrowlLaunchCallback)(void *context); + +/*! @function Growl_LaunchIfInstalled + * @abstract Launches GrowlHelperApp if it is not already running. + * @param callback A callback function which will be called if Growl was successfully + * launched or was already running. Can be NULL. + * @param context The context pointer to pass to the callback. Can be NULL. + * @result Returns true if Growl was successfully launched or was already + * running; returns false and does not call the callback otherwise. + * @discussion Returns true and calls the callback (if the callback is not + * NULL) if the Growl helper app began launching or was already + * running. Returns false and performs no other action if Growl could not be + * launched (e.g. because the Growl preference pane is not properly installed). + * + * If Growl_CreateBestRegistrationDictionary returns + * non-NULL, this function will register with Growl atomically. + * + * The callback should take a single argument; this is to allow applications + * to have context-relevant information passed back. It is perfectly + * acceptable for context to be NULL. The callback itself can be + * NULL if you don't want one. + */ +GROWL_EXPORT Boolean Growl_LaunchIfInstalled(GrowlLaunchCallback callback, void *context); + +#pragma mark - +#pragma mark Constants + +/*! @defined GROWL_PREFPANE_BUNDLE_IDENTIFIER + * @abstract The CFBundleIdentifier of the Growl preference pane bundle. + * @discussion GrowlApplicationBridge uses this to determine whether Growl is + * currently installed, by searching for the Growl preference pane. Your + * application probably does not need to use this macro itself. + */ +#ifndef GROWL_PREFPANE_BUNDLE_IDENTIFIER +#define GROWL_PREFPANE_BUNDLE_IDENTIFIER CFSTR("com.growl.prefpanel") +#endif + +__END_DECLS + +#endif /* _GROWLAPPLICATIONBRIDGE_CARBON_H_ */ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h new file mode 100644 index 0000000..4341f3f --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlApplicationBridge.h @@ -0,0 +1,609 @@ +// +// GrowlApplicationBridge.h +// Growl +// +// Created by Evan Schoenberg on Wed Jun 16 2004. +// Copyright 2004-2006 The Growl Project. All rights reserved. +// + +/*! + * @header GrowlApplicationBridge.h + * @abstract Defines the GrowlApplicationBridge class. + * @discussion This header defines the GrowlApplicationBridge class as well as + * the GROWL_PREFPANE_BUNDLE_IDENTIFIER constant. + */ + +#ifndef __GrowlApplicationBridge_h__ +#define __GrowlApplicationBridge_h__ + +#import +#import +#import "GrowlDefines.h" + +//Forward declarations +@protocol GrowlApplicationBridgeDelegate; + +//Internal notification when the user chooses not to install (to avoid continuing to cache notifications awaiting installation) +#define GROWL_USER_CHOSE_NOT_TO_INSTALL_NOTIFICATION @"User chose not to install" + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @class GrowlApplicationBridge + * @abstract A class used to interface with Growl. + * @discussion This class provides a means to interface with Growl. + * + * Currently it provides a way to detect if Growl is installed and launch the + * GrowlHelperApp if it's not already running. + */ +@interface GrowlApplicationBridge : NSObject { + +} + +/*! + * @method isGrowlInstalled + * @abstract Detects whether Growl is installed. + * @discussion Determines if the Growl prefpane and its helper app are installed. + * @result Returns YES if Growl is installed, NO otherwise. + */ ++ (BOOL) isGrowlInstalled; + +/*! + * @method isGrowlRunning + * @abstract Detects whether GrowlHelperApp is currently running. + * @discussion Cycles through the process list to find whether GrowlHelperApp is running and returns its findings. + * @result Returns YES if GrowlHelperApp is running, NO otherwise. + */ ++ (BOOL) isGrowlRunning; + +#pragma mark - + +/*! + * @method setGrowlDelegate: + * @abstract Set the object which will be responsible for providing and receiving Growl information. + * @discussion This must be called before using GrowlApplicationBridge. + * + * The methods in the GrowlApplicationBridgeDelegate protocol are required + * and return the basic information needed to register with Growl. + * + * The methods in the GrowlApplicationBridgeDelegate_InformalProtocol + * informal protocol are individually optional. They provide a greater + * degree of interaction between the application and growl such as informing + * the application when one of its Growl notifications is clicked by the user. + * + * The methods in the GrowlApplicationBridgeDelegate_Installation_InformalProtocol + * informal protocol are individually optional and are only applicable when + * using the Growl-WithInstaller.framework which allows for automated Growl + * installation. + * + * When this method is called, data will be collected from inDelegate, Growl + * will be launched if it is not already running, and the application will be + * registered with Growl. + * + * If using the Growl-WithInstaller framework, if Growl is already installed + * but this copy of the framework has an updated version of Growl, the user + * will be prompted to update automatically. + * + * @param inDelegate The delegate for the GrowlApplicationBridge. It must conform to the GrowlApplicationBridgeDelegate protocol. + */ ++ (void) setGrowlDelegate:(NSObject *)inDelegate; + +/*! + * @method growlDelegate + * @abstract Return the object responsible for providing and receiving Growl information. + * @discussion See setGrowlDelegate: for details. + * @result The Growl delegate. + */ ++ (NSObject *) growlDelegate; + +#pragma mark - + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext; + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:identifier: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + * @param identifier An identifier for this notification. Notifications with equal identifiers are coalesced. + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext + identifier:(NSString *)identifier; + +/*! + * @method notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:identifier: + * @abstract Send a Growl notification. + * @discussion This is the preferred means for sending a Growl notification. + * The notification name and at least one of the title and description are + * required (all three are preferred). All other parameters may be + * nil (or 0 or NO as appropriate) to accept default values. + * + * If using the Growl-WithInstaller framework, if Growl is not installed the + * user will be prompted to install Growl. If the user cancels, this method + * will have no effect until the next application session, at which time when + * it is called the user will be prompted again. The user is also given the + * option to not be prompted again. If the user does choose to install Growl, + * the requested notification will be displayed once Growl is installed and + * running. + * + * @param title The title of the notification displayed to the user. + * @param description The full description of the notification displayed to the user. + * @param notifName The internal name of the notification. Should be human-readable, as it will be displayed in the Growl preference pane. + * @param iconData NSData object to show with the notification as its icon. If nil, the application's icon will be used instead. + * @param priority The priority of the notification. The default value is 0; positive values are higher priority and negative values are lower priority. Not all Growl displays support priority. + * @param isSticky If YES, the notification will remain on screen until clicked. Not all Growl displays support sticky notifications. + * @param clickContext A context passed back to the Growl delegate if it implements -(void)growlNotificationWasClicked: and the notification is clicked. Not all display plugins support clicking. The clickContext must be plist-encodable (completely of NSString, NSArray, NSNumber, NSDictionary, and NSData types). + * @param identifier An identifier for this notification. Notifications with equal identifiers are coalesced. + */ ++ (void) notifyWithTitle:(NSString *)title + description:(NSString *)description + notificationName:(NSString *)notifName + iconData:(NSData *)iconData + priority:(signed int)priority + isSticky:(BOOL)isSticky + clickContext:(id)clickContext + identifier:(NSString *)identifier; + +/*! @method notifyWithDictionary: + * @abstract Notifies using a userInfo dictionary suitable for passing to + * NSDistributedNotificationCenter. + * @param userInfo The dictionary to notify with. + * @discussion Before Growl 0.6, your application would have posted + * notifications using NSDistributedNotificationCenter by + * creating a userInfo dictionary with the notification data. This had the + * advantage of allowing you to add other data to the dictionary for programs + * besides Growl that might be listening. + * + * This method allows you to use such dictionaries without being restricted + * to using NSDistributedNotificationCenter. The keys for this dictionary + * can be found in GrowlDefines.h. + */ ++ (void) notifyWithDictionary:(NSDictionary *)userInfo; + +#pragma mark - + +/*! @method registerWithDictionary: + * @abstract Register your application with Growl without setting a delegate. + * @discussion When you call this method with a dictionary, + * GrowlApplicationBridge registers your application using that dictionary. + * If you pass nil, GrowlApplicationBridge will ask the delegate + * (if there is one) for a dictionary, and if that doesn't work, it will look + * in your application's bundle for an auto-discoverable plist. + * (XXX refer to more information on that) + * + * If you pass a dictionary to this method, it must include the + * GROWL_APP_NAME key, unless a delegate is set. + * + * This method is mainly an alternative to the delegate system introduced + * with Growl 0.6. Without a delegate, you cannot receive callbacks such as + * -growlIsReady (since they are sent to the delegate). You can, + * however, set a delegate after registering without one. + * + * This method was introduced in Growl.framework 0.7. + */ ++ (BOOL) registerWithDictionary:(NSDictionary *)regDict; + +/*! @method reregisterGrowlNotifications + * @abstract Reregister the notifications for this application. + * @discussion This method does not normally need to be called. If your + * application changes what notifications it is registering with Growl, call + * this method to have the Growl delegate's + * -registrationDictionaryForGrowl method called again and the + * Growl registration information updated. + * + * This method is now implemented using -registerWithDictionary:. + */ ++ (void) reregisterGrowlNotifications; + +#pragma mark - + +/*! @method setWillRegisterWhenGrowlIsReady: + * @abstract Tells GrowlApplicationBridge to register with Growl when Growl + * launches (or not). + * @discussion When Growl has started listening for notifications, it posts a + * GROWL_IS_READY notification on the Distributed Notification + * Center. GrowlApplicationBridge listens for this notification, using it to + * perform various tasks (such as calling your delegate's + * -growlIsReady method, if it has one). If this method is + * called with YES, one of those tasks will be to reregister + * with Growl (in the manner of -reregisterGrowlNotifications). + * + * This attribute is automatically set back to NO (the default) + * after every GROWL_IS_READY notification. + * @param flag YES if you want GrowlApplicationBridge to register with + * Growl when next it is ready; NO if not. + */ ++ (void) setWillRegisterWhenGrowlIsReady:(BOOL)flag; +/*! @method willRegisterWhenGrowlIsReady + * @abstract Reports whether GrowlApplicationBridge will register with Growl + * when Growl next launches. + * @result YES if GrowlApplicationBridge will register with Growl + * when next it posts GROWL_IS_READY; NO if not. + */ ++ (BOOL) willRegisterWhenGrowlIsReady; + +#pragma mark - + +/*! @method registrationDictionaryFromDelegate + * @abstract Asks the delegate for a registration dictionary. + * @discussion If no delegate is set, or if the delegate's + * -registrationDictionaryForGrowl method returns + * nil, this method returns nil. + * + * This method does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:] or + * +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:restrictToKeys:] to try + * to fill in missing keys. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) registrationDictionaryFromDelegate; + +/*! @method registrationDictionaryFromBundle: + * @abstract Looks in a bundle for a registration dictionary. + * @discussion This method looks in a bundle for an auto-discoverable + * registration dictionary file using -[NSBundle + * pathForResource:ofType:]. If it finds one, it loads the file using + * +[NSDictionary dictionaryWithContentsOfFile:] and returns the + * result. + * + * If you pass nil as the bundle, the main bundle is examined. + * + * This method does not attempt to clean up the dictionary in any way - for + * example, if it is missing the GROWL_APP_NAME key, the result + * will be missing it too. Use +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:] or + * +[GrowlApplicationBridge + * registrationDictionaryByFillingInDictionary:restrictToKeys:] to try + * to fill in missing keys. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) registrationDictionaryFromBundle:(NSBundle *)bundle; + +/*! @method bestRegistrationDictionary + * @abstract Obtains a registration dictionary, filled out to the best of + * GrowlApplicationBridge's knowledge. + * @discussion This method creates a registration dictionary as best + * GrowlApplicationBridge knows how. + * + * First, GrowlApplicationBridge contacts the Growl delegate (if there is + * one) and gets the registration dictionary from that. If no such dictionary + * was obtained, GrowlApplicationBridge looks in your application's main + * bundle for an auto-discoverable registration dictionary file. If that + * doesn't exist either, this method returns nil. + * + * Second, GrowlApplicationBridge calls + * +registrationDictionaryByFillingInDictionary: with whatever + * dictionary was obtained. The result of that method is the result of this + * method. + * + * GrowlApplicationBridge uses this method when you call + * +setGrowlDelegate:, or when you call + * +registerWithDictionary: with nil. + * + * This method was introduced in Growl.framework 0.7. + * @result A registration dictionary. + */ ++ (NSDictionary *) bestRegistrationDictionary; + +#pragma mark - + +/*! @method registrationDictionaryByFillingInDictionary: + * @abstract Tries to fill in missing keys in a registration dictionary. + * @discussion This method examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Keys are only filled in if missing; if a key is present in the dictionary, + * its value will not be changed. + * + * This method was introduced in Growl.framework 0.7. + * @param regDict The dictionary to fill in. + * @result The dictionary with the keys filled in. This is an autoreleased + * copy of regDict. + */ ++ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict; +/*! @method registrationDictionaryByFillingInDictionary:restrictToKeys: + * @abstract Tries to fill in missing keys in a registration dictionary. + * @discussion This method examines the passed-in dictionary for missing keys, + * and tries to work out correct values for them. As of 0.7, it uses: + * + * Key Value + * --- ----- + * GROWL_APP_NAME CFBundleExecutableName + * GROWL_APP_ICON The icon of the application. + * GROWL_APP_LOCATION The location of the application. + * GROWL_NOTIFICATIONS_DEFAULT GROWL_NOTIFICATIONS_ALL + * + * Only those keys that are listed in keys will be filled in. + * Other missing keys are ignored. Also, keys are only filled in if missing; + * if a key is present in the dictionary, its value will not be changed. + * + * This method was introduced in Growl.framework 0.7. + * @param regDict The dictionary to fill in. + * @param keys The keys to fill in. If nil, any missing keys are filled in. + * @result The dictionary with the keys filled in. This is an autoreleased + * copy of regDict. + */ ++ (NSDictionary *) registrationDictionaryByFillingInDictionary:(NSDictionary *)regDict restrictToKeys:(NSSet *)keys; + +/*! @brief Tries to fill in missing keys in a notification dictionary. + * @param notifDict The dictionary to fill in. + * @return The dictionary with the keys filled in. This will be a separate instance from \a notifDict. + * @discussion This function examines the \a notifDict for missing keys, and + * tries to get them from the last known registration dictionary. As of 1.1, + * the keys that it will look for are: + * + * \li GROWL_APP_NAME + * \li GROWL_APP_ICON + * + * @since Growl.framework 1.1 + */ ++ (NSDictionary *) notificationDictionaryByFillingInDictionary:(NSDictionary *)regDict; + ++ (NSDictionary *) frameworkInfoDictionary; +@end + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @protocol GrowlApplicationBridgeDelegate + * @abstract Required protocol for the Growl delegate. + * @discussion The methods in this protocol are required and are called + * automatically as needed by GrowlApplicationBridge. See + * +[GrowlApplicationBridge setGrowlDelegate:]. + * See also GrowlApplicationBridgeDelegate_InformalProtocol. + */ + +@protocol GrowlApplicationBridgeDelegate + +// -registrationDictionaryForGrowl has moved to the informal protocol as of 0.7. + +@end + +//------------------------------------------------------------------------------ +#pragma mark - + +/*! + * @category NSObject(GrowlApplicationBridgeDelegate_InformalProtocol) + * @abstract Methods which may be optionally implemented by the GrowlDelegate. + * @discussion The methods in this informal protocol will only be called if implemented by the delegate. + */ +@interface NSObject (GrowlApplicationBridgeDelegate_InformalProtocol) + +/*! + * @method registrationDictionaryForGrowl + * @abstract Return the dictionary used to register this application with Growl. + * @discussion The returned dictionary gives Growl the complete list of + * notifications this application will ever send, and it also specifies which + * notifications should be enabled by default. Each is specified by an array + * of NSString objects. + * + * For most applications, these two arrays can be the same (if all sent + * notifications should be displayed by default). + * + * The NSString objects of these arrays will correspond to the + * notificationName: parameter passed in + * +[GrowlApplicationBridge + * notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:] calls. + * + * The dictionary should have the required key object pairs: + * key: GROWL_NOTIFICATIONS_ALL object: NSArray of NSString objects + * key: GROWL_NOTIFICATIONS_DEFAULT object: NSArray of NSString objects + * + * The dictionary may have the following key object pairs: + * key: GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES object: NSDictionary of key: notification name object: human-readable notification name + * + * You do not need to implement this method if you have an auto-discoverable + * plist file in your app bundle. (XXX refer to more information on that) + * + * @result The NSDictionary to use for registration. + */ +- (NSDictionary *) registrationDictionaryForGrowl; + +/*! + * @method applicationNameForGrowl + * @abstract Return the name of this application which will be used for Growl bookkeeping. + * @discussion This name is used both internally and in the Growl preferences. + * + * This should remain stable between different versions and incarnations of + * your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + * + * You do not need to implement this method if you are providing the + * application name elsewhere, meaning in an auto-discoverable plist file in + * your app bundle (XXX refer to more information on that) or in the result + * of -registrationDictionaryForGrowl. + * + * @result The name of the application using Growl. + */ +- (NSString *) applicationNameForGrowl; + +/*! + * @method applicationIconForGrowl + * @abstract Return the NSImage to treat as the application icon. + * @discussion The delegate may optionally return an NSImage + * object to use as the application icon. If this method is not implemented, + * {{{-applicationIconDataForGrowl}}} is tried. If that method is not + * implemented, the application's own icon is used. Neither method is + * generally needed. + * @result The NSImage to treat as the application icon. + */ +- (NSImage *) applicationIconForGrowl; + +/*! + * @method applicationIconDataForGrowl + * @abstract Return the NSData to treat as the application icon. + * @discussion The delegate may optionally return an NSData + * object to use as the application icon; if this is not implemented, the + * application's own icon is used. This is not generally needed. + * @result The NSData to treat as the application icon. + * @deprecated In version 1.1, in favor of {{{-applicationIconForGrowl}}}. + */ +- (NSData *) applicationIconDataForGrowl; + +/*! + * @method growlIsReady + * @abstract Informs the delegate that Growl has launched. + * @discussion Informs the delegate that Growl (specifically, the + * GrowlHelperApp) was launched successfully. The application can take actions + * with the knowledge that Growl is installed and functional. + */ +- (void) growlIsReady; + +/*! + * @method growlNotificationWasClicked: + * @abstract Informs the delegate that a Growl notification was clicked. + * @discussion Informs the delegate that a Growl notification was clicked. It + * is only sent for notifications sent with a non-nil + * clickContext, so if you want to receive a message when a notification is + * clicked, clickContext must not be nil when calling + * +[GrowlApplicationBridge notifyWithTitle: description:notificationName:iconData:priority:isSticky:clickContext:]. + * @param clickContext The clickContext passed when displaying the notification originally via +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:]. + */ +- (void) growlNotificationWasClicked:(id)clickContext; + +/*! + * @method growlNotificationTimedOut: + * @abstract Informs the delegate that a Growl notification timed out. + * @discussion Informs the delegate that a Growl notification timed out. It + * is only sent for notifications sent with a non-nil + * clickContext, so if you want to receive a message when a notification is + * clicked, clickContext must not be nil when calling + * +[GrowlApplicationBridge notifyWithTitle: description:notificationName:iconData:priority:isSticky:clickContext:]. + * @param clickContext The clickContext passed when displaying the notification originally via +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:]. + */ +- (void) growlNotificationTimedOut:(id)clickContext; + +@end + +#pragma mark - +/*! + * @category NSObject(GrowlApplicationBridgeDelegate_Installation_InformalProtocol) + * @abstract Methods which may be optionally implemented by the Growl delegate when used with Growl-WithInstaller.framework. + * @discussion The methods in this informal protocol will only be called if + * implemented by the delegate. They allow greater control of the information + * presented to the user when installing or upgrading Growl from within your + * application when using Growl-WithInstaller.framework. + */ +@interface NSObject (GrowlApplicationBridgeDelegate_Installation_InformalProtocol) + +/*! + * @method growlInstallationWindowTitle + * @abstract Return the title of the installation window. + * @discussion If not implemented, Growl will use a default, localized title. + * @result An NSString object to use as the title. + */ +- (NSString *)growlInstallationWindowTitle; + +/*! + * @method growlUpdateWindowTitle + * @abstract Return the title of the upgrade window. + * @discussion If not implemented, Growl will use a default, localized title. + * @result An NSString object to use as the title. + */ +- (NSString *)growlUpdateWindowTitle; + +/*! + * @method growlInstallationInformation + * @abstract Return the information to display when installing. + * @discussion This information may be as long or short as desired (the window + * will be sized to fit it). It will be displayed to the user as an + * explanation of what Growl is and what it can do in your application. It + * should probably note that no download is required to install. + * + * If this is not implemented, Growl will use a default, localized explanation. + * @result An NSAttributedString object to display. + */ +- (NSAttributedString *)growlInstallationInformation; + +/*! + * @method growlUpdateInformation + * @abstract Return the information to display when upgrading. + * @discussion This information may be as long or short as desired (the window + * will be sized to fit it). It will be displayed to the user as an + * explanation that an updated version of Growl is included in your + * application and no download is required. + * + * If this is not implemented, Growl will use a default, localized explanation. + * @result An NSAttributedString object to display. + */ +- (NSAttributedString *)growlUpdateInformation; + +@end + +//private +@interface GrowlApplicationBridge (GrowlInstallationPrompt_private) ++ (void) _userChoseNotToInstallGrowl; +@end + +#endif /* __GrowlApplicationBridge_h__ */ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h new file mode 100644 index 0000000..2b971cf --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Headers/GrowlDefines.h @@ -0,0 +1,348 @@ +// +// GrowlDefines.h +// + +#ifndef _GROWLDEFINES_H +#define _GROWLDEFINES_H + +#ifdef __OBJC__ +#define XSTR(x) (@x) +#define STRING_TYPE NSString * +#else +#define XSTR CFSTR +#define STRING_TYPE CFStringRef +#endif + +/*! @header GrowlDefines.h + * @abstract Defines all the notification keys. + * @discussion Defines all the keys used for registration with Growl and for + * Growl notifications. + * + * Most applications should use the functions or methods of Growl.framework + * instead of posting notifications such as those described here. + * @updated 2004-01-25 + */ + +// UserInfo Keys for Registration +#pragma mark UserInfo Keys for Registration + +/*! @group Registration userInfo keys */ +/* @abstract Keys for the userInfo dictionary of a GROWL_APP_REGISTRATION distributed notification. + * @discussion The values of these keys describe the application and the + * notifications it may post. + * + * Your application must register with Growl before it can post Growl + * notifications (and have them not be ignored). However, as of Growl 0.6, + * posting GROWL_APP_REGISTRATION notifications directly is no longer the + * preferred way to register your application. Your application should instead + * use Growl.framework's delegate system. + * See +[GrowlApplicationBridge setGrowlDelegate:] or Growl_SetDelegate for + * more information. + */ + +/*! @defined GROWL_APP_NAME + * @abstract The name of your application. + * @discussion The name of your application. This should remain stable between + * different versions and incarnations of your application. + * For example, "SurfWriter" is a good app name, whereas "SurfWriter 2.0" and + * "SurfWriter Lite" are not. + */ +#define GROWL_APP_NAME XSTR("ApplicationName") +/*! @defined GROWL_APP_ID + * @abstract The bundle identifier of your application. + * @discussion The bundle identifier of your application. This key should + * be unique for your application while there may be several applications + * with the same GROWL_APP_NAME. + * This key is optional. + */ +#define GROWL_APP_ID XSTR("ApplicationId") +/*! @defined GROWL_APP_ICON + * @abstract The image data for your application's icon. + * @discussion Image data representing your application's icon. This may be + * superimposed on a notification icon as a badge, used as the notification + * icon when a notification-specific icon is not supplied, or ignored + * altogether, depending on the display. Must be in a format supported by + * NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_APP_ICON XSTR("ApplicationIcon") +/*! @defined GROWL_NOTIFICATIONS_DEFAULT + * @abstract The array of notifications to turn on by default. + * @discussion These are the names of the notifications that should be enabled + * by default when your application registers for the first time. If your + * application reregisters, Growl will look here for any new notification + * names found in GROWL_NOTIFICATIONS_ALL, but ignore any others. + */ +#define GROWL_NOTIFICATIONS_DEFAULT XSTR("DefaultNotifications") +/*! @defined GROWL_NOTIFICATIONS_ALL + * @abstract The array of all notifications your application can send. + * @discussion These are the names of all of the notifications that your + * application may post. See GROWL_NOTIFICATION_NAME for a discussion of good + * notification names. + */ +#define GROWL_NOTIFICATIONS_ALL XSTR("AllNotifications") +/*! @defined GROWL_NOTIFICATIONS_HUMAN_READABLE_DESCRIPTIONS + * @abstract A dictionary of human-readable names for your notifications. + * @discussion By default, the Growl UI will display notifications by the names given in GROWL_NOTIFICATIONS_ALL + * which correspond to the GROWL_NOTIFICATION_NAME. This dictionary specifies the human-readable name to display. + * The keys of the dictionary are GROWL_NOTIFICATION_NAME strings; the objects are the human-readable versions. + * For any GROWL_NOTIFICATION_NAME not specific in this dictionary, the GROWL_NOTIFICATION_NAME will be displayed. + * + * This key is optional. + */ +#define GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES XSTR("HumanReadableNames") +/*! @defined GROWL_NOTIFICATIONS_DESCRIPTIONS +* @abstract A dictionary of descriptions of _when_ each notification occurs +* @discussion This is an NSDictionary whose keys are GROWL_NOTIFICATION_NAME strings and whose objects are +* descriptions of _when_ each notification occurs, such as "You received a new mail message" or +* "A file finished downloading". +* +* This key is optional. +*/ +#define GROWL_NOTIFICATIONS_DESCRIPTIONS XSTR("NotificationDescriptions") + +/*! @defined GROWL_TICKET_VERSION + * @abstract The version of your registration ticket. + * @discussion Include this key in a ticket plist file that you put in your + * application bundle for auto-discovery. The current ticket version is 1. + */ +#define GROWL_TICKET_VERSION XSTR("TicketVersion") +// UserInfo Keys for Notifications +#pragma mark UserInfo Keys for Notifications + +/*! @group Notification userInfo keys */ +/* @abstract Keys for the userInfo dictionary of a GROWL_NOTIFICATION distributed notification. + * @discussion The values of these keys describe the content of a Growl + * notification. + * + * Not all of these keys are supported by all displays. Only the name, title, + * and description of a notification are universal. Most of the built-in + * displays do support all of these keys, and most other visual displays + * probably will also. But, as of 0.6, the Log, MailMe, and Speech displays + * support only textual data. + */ + +/*! @defined GROWL_NOTIFICATION_NAME + * @abstract The name of the notification. + * @discussion The name of the notification. Note that if you do not define + * GROWL_NOTIFICATIONS_HUMAN_READABLE_NAMES when registering your ticket originally this name + * will the one displayed within the Growl preference pane and should be human-readable. + */ +#define GROWL_NOTIFICATION_NAME XSTR("NotificationName") +/*! @defined GROWL_NOTIFICATION_TITLE + * @abstract The title to display in the notification. + * @discussion The title of the notification. Should be very brief. + * The title usually says what happened, e.g. "Download complete". + */ +#define GROWL_NOTIFICATION_TITLE XSTR("NotificationTitle") +/*! @defined GROWL_NOTIFICATION_DESCRIPTION + * @abstract The description to display in the notification. + * @discussion The description should be longer and more verbose than the title. + * The description usually tells the subject of the action, + * e.g. "Growl-0.6.dmg downloaded in 5.02 minutes". + */ +#define GROWL_NOTIFICATION_DESCRIPTION XSTR("NotificationDescription") +/*! @defined GROWL_NOTIFICATION_ICON + * @discussion Image data for the notification icon. Must be in a format + * supported by NSImage, such as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_ICON XSTR("NotificationIcon") +/*! @defined GROWL_NOTIFICATION_APP_ICON + * @discussion Image data for the application icon, in case GROWL_APP_ICON does + * not apply for some reason. Must be in a format supported by NSImage, such + * as TIFF, PNG, GIF, JPEG, BMP, PICT, or PDF. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_APP_ICON XSTR("NotificationAppIcon") +/*! @defined GROWL_NOTIFICATION_PRIORITY + * @discussion The priority of the notification as an integer number from + * -2 to +2 (+2 being highest). + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_PRIORITY XSTR("NotificationPriority") +/*! @defined GROWL_NOTIFICATION_STICKY + * @discussion A Boolean number controlling whether the notification is sticky. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_STICKY XSTR("NotificationSticky") +/*! @defined GROWL_NOTIFICATION_CLICK_CONTEXT + * @abstract Identifies which notification was clicked. + * @discussion An identifier for the notification for clicking purposes. + * + * This will be passed back to the application when the notification is + * clicked. It must be plist-encodable (a data, dictionary, array, number, or + * string object), and it should be unique for each notification you post. + * A good click context would be a UUID string returned by NSProcessInfo or + * CFUUID. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_CLICK_CONTEXT XSTR("NotificationClickContext") + +/*! @defined GROWL_DISPLAY_PLUGIN + * @discussion The name of a display plugin which should be used for this notification. + * Optional. If this key is not set or the specified display plugin does not + * exist, the display plugin stored in the application ticket is used. This key + * allows applications to use different default display plugins for their + * notifications. The user can still override those settings in the preference + * pane. + */ +#define GROWL_DISPLAY_PLUGIN XSTR("NotificationDisplayPlugin") + +/*! @defined GROWL_NOTIFICATION_IDENTIFIER + * @abstract An identifier for the notification for coalescing purposes. + * Notifications with the same identifier fall into the same class; only + * the last notification of a class is displayed on the screen. If a + * notification of the same class is currently being displayed, it is + * replaced by this notification. + * + * Optional. Not supported by all display plugins. + */ +#define GROWL_NOTIFICATION_IDENTIFIER XSTR("GrowlNotificationIdentifier") + +/*! @defined GROWL_APP_PID + * @abstract The process identifier of the process which sends this + * notification. If this field is set, the application will only receive + * clicked and timed out notifications which originate from this process. + * + * Optional. + */ +#define GROWL_APP_PID XSTR("ApplicationPID") + +/*! @defined GROWL_NOTIFICATION_PROGRESS +* @abstract If this key is set, it should contain a double value wrapped +* in a NSNumber which describes some sort of progress (from 0.0 to 100.0). +* If this is key is not set, no progress bar is shown. +* +* Optional. Not supported by all display plugins. +*/ +#define GROWL_NOTIFICATION_PROGRESS XSTR("NotificationProgress") + +// Notifications +#pragma mark Notifications + +/*! @group Notification names */ +/* @abstract Names of distributed notifications used by Growl. + * @discussion These are notifications used by applications (directly or + * indirectly) to interact with Growl, and by Growl for interaction between + * its components. + * + * Most of these should no longer be used in Growl 0.6 and later, in favor of + * Growl.framework's GrowlApplicationBridge APIs. + */ + +/*! @defined GROWL_APP_REGISTRATION + * @abstract The distributed notification for registering your application. + * @discussion This is the name of the distributed notification that can be + * used to register applications with Growl. + * + * The userInfo dictionary for this notification can contain these keys: + *
    + *
  • GROWL_APP_NAME
  • + *
  • GROWL_APP_ICON
  • + *
  • GROWL_NOTIFICATIONS_ALL
  • + *
  • GROWL_NOTIFICATIONS_DEFAULT
  • + *
+ * + * No longer recommended as of Growl 0.6. An alternate method of registering + * is to use Growl.framework's delegate system. + * See +[GrowlApplicationBridge setGrowlDelegate:] or Growl_SetDelegate for + * more information. + */ +#define GROWL_APP_REGISTRATION XSTR("GrowlApplicationRegistrationNotification") +/*! @defined GROWL_APP_REGISTRATION_CONF + * @abstract The distributed notification for confirming registration. + * @discussion The name of the distributed notification sent to confirm the + * registration. Used by the Growl preference pane. Your application probably + * does not need to use this notification. + */ +#define GROWL_APP_REGISTRATION_CONF XSTR("GrowlApplicationRegistrationConfirmationNotification") +/*! @defined GROWL_NOTIFICATION + * @abstract The distributed notification for Growl notifications. + * @discussion This is what it all comes down to. This is the name of the + * distributed notification that your application posts to actually send a + * Growl notification. + * + * The userInfo dictionary for this notification can contain these keys: + *
    + *
  • GROWL_NOTIFICATION_NAME (required)
  • + *
  • GROWL_NOTIFICATION_TITLE (required)
  • + *
  • GROWL_NOTIFICATION_DESCRIPTION (required)
  • + *
  • GROWL_NOTIFICATION_ICON
  • + *
  • GROWL_NOTIFICATION_APP_ICON
  • + *
  • GROWL_NOTIFICATION_PRIORITY
  • + *
  • GROWL_NOTIFICATION_STICKY
  • + *
  • GROWL_NOTIFICATION_CLICK_CONTEXT
  • + *
  • GROWL_APP_NAME (required)
  • + *
+ * + * No longer recommended as of Growl 0.6. Three alternate methods of posting + * notifications are +[GrowlApplicationBridge notifyWithTitle:description:notificationName:iconData:priority:isSticky:clickContext:], + * Growl_NotifyWithTitleDescriptionNameIconPriorityStickyClickContext, and + * Growl_PostNotification. + */ +#define GROWL_NOTIFICATION XSTR("GrowlNotification") +/*! @defined GROWL_SHUTDOWN +* @abstract The distributed notification name that tells Growl to shutdown. +* @discussion The Growl preference pane posts this notification when the +* "Stop Growl" button is clicked. +*/ +#define GROWL_SHUTDOWN XSTR("GrowlShutdown") +/*! @defined GROWL_PING + * @abstract A distributed notification to check whether Growl is running. + * @discussion This is used by the Growl preference pane. If it receives a + * GROWL_PONG, the preference pane takes this to mean that Growl is running. + */ +#define GROWL_PING XSTR("Honey, Mind Taking Out The Trash") +/*! @defined GROWL_PONG + * @abstract The distributed notification sent in reply to GROWL_PING. + * @discussion GrowlHelperApp posts this in reply to GROWL_PING. + */ +#define GROWL_PONG XSTR("What Do You Want From Me, Woman") +/*! @defined GROWL_IS_READY + * @abstract The distributed notification sent when Growl starts up. + * @discussion GrowlHelperApp posts this when it has begin listening on all of + * its sources for new notifications. GrowlApplicationBridge (in + * Growl.framework), upon receiving this notification, reregisters using the + * registration dictionary supplied by its delegate. + */ +#define GROWL_IS_READY XSTR("Lend Me Some Sugar; I Am Your Neighbor!") +/*! @defined GROWL_NOTIFICATION_CLICKED + * @abstract The distributed notification sent when a supported notification is clicked. + * @discussion When a Growl notification with a click context is clicked on by + * the user, Growl posts this distributed notification. + * The GrowlApplicationBridge responds to this notification by calling a + * callback in its delegate. + */ +#define GROWL_NOTIFICATION_CLICKED XSTR("GrowlClicked!") +#define GROWL_NOTIFICATION_TIMED_OUT XSTR("GrowlTimedOut!") + +/*! @group Other symbols */ +/* Symbols which don't fit into any of the other categories. */ + +/*! @defined GROWL_KEY_CLICKED_CONTEXT + * @abstract Used internally as the key for the clickedContext passed over DNC. + * @discussion This key is used in GROWL_NOTIFICATION_CLICKED, and contains the + * click context that was supplied in the original notification. + */ +#define GROWL_KEY_CLICKED_CONTEXT XSTR("ClickedContext") +/*! @defined GROWL_REG_DICT_EXTENSION + * @abstract The filename extension for registration dictionaries. + * @discussion The GrowlApplicationBridge in Growl.framework registers with + * Growl by creating a file with the extension of .(GROWL_REG_DICT_EXTENSION) + * and opening it in the GrowlHelperApp. This happens whether or not Growl is + * running; if it was stopped, it quits immediately without listening for + * notifications. + */ +#define GROWL_REG_DICT_EXTENSION XSTR("growlRegDict") + + +#define GROWL_POSITION_PREFERENCE_KEY @"GrowlSelectedPosition" + +#endif //ndef _GROWLDEFINES_H diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Resources/Info.plist b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..38bfb23 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + Growl + CFBundleIdentifier + com.growl.growlframework + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.1.4 + CFBundleSignature + GRRR + CFBundleVersion + 1.1.4 + NSPrincipalClass + GrowlApplicationBridge + + diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/Current b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Growl.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Headers b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Resources b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder new file mode 120000 index 0000000..2be0db1 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/ShortcutRecorder @@ -0,0 +1 @@ +Versions/Current/ShortcutRecorder \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h new file mode 100644 index 0000000..84ed22c --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/CTGradient.h @@ -0,0 +1,69 @@ +// +// CTGradient.h +// +// Created by Chad Weider on 12/3/05. +// Copyright (c) 2006 Cotingent. +// Some rights reserved: +// +// Version: 1.5 + +#import + +typedef struct _CTGradientElement + { + float red, green, blue, alpha; + float position; + + struct _CTGradientElement *nextElement; + } CTGradientElement; + +typedef enum _CTBlendingMode + { + CTLinearBlendingMode, + CTChromaticBlendingMode, + CTInverseChromaticBlendingMode + } CTGradientBlendingMode; + + +@interface CTGradient : NSObject + { + CTGradientElement* elementList; + CTGradientBlendingMode blendingMode; + + CGFunctionRef gradientFunction; + } + ++ (id)gradientWithBeginningColor:(NSColor *)begin endingColor:(NSColor *)end; + ++ (id)aquaSelectedGradient; ++ (id)aquaNormalGradient; ++ (id)aquaPressedGradient; + ++ (id)unifiedSelectedGradient; ++ (id)unifiedNormalGradient; ++ (id)unifiedPressedGradient; ++ (id)unifiedDarkGradient; + ++ (id)rainbowGradient; ++ (id)hydrogenSpectrumGradient; + ++ (id)sourceListSelectedGradient; ++ (id)sourceListUnselectedGradient; + +- (CTGradient *)gradientWithAlphaComponent:(float)alpha; + +- (CTGradient *)addColorStop:(NSColor *)color atPosition:(float)position; //positions given relative to [0,1] +- (CTGradient *)removeColorStopAtIndex:(unsigned)index; +- (CTGradient *)removeColorStopAtPosition:(float)position; + +- (CTGradientBlendingMode)blendingMode; +- (NSColor *)colorStopAtIndex:(unsigned)index; +- (NSColor *)colorAtPosition:(float)position; + + +- (void)drawSwatchInRect:(NSRect)rect; +- (void)fillRect:(NSRect)rect angle:(float)angle; //fills rect with axial gradient + // angle in degrees +- (void)radialFillRect:(NSRect)rect; //fills rect with radial gradient + // gradient from center outwards +@end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h new file mode 100644 index 0000000..2ce34ff --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRCommon.h @@ -0,0 +1,214 @@ +// +// SRCommon.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import +#import +#import + + +#pragma mark Define magic +/* +#ifdef DEPRECATED_ATTRIBUTE +# define SR_DEPRECATED_ATTRIBUTE DEPRECATED_ATTRIBUTE +#else +# define SR_DEPRECATED_ATTRIBUTE +#endif*/ +// uncomment when this won't cause build errors +#define SR_DEPRECATED_ATTRIBUTE + +#pragma mark Dummy class + +@interface SRDummyClass : NSObject {} @end + +#pragma mark - +#pragma mark Typedefs + +typedef struct _KeyCombo { + unsigned int flags; // 0 for no flags + signed short code; // -1 for no code +} KeyCombo; + +#pragma mark - +#pragma mark Enums + +// Unicode values of some keyboard glyphs +enum { + KeyboardTabRightGlyph = 0x21E5, + KeyboardTabLeftGlyph = 0x21E4, + KeyboardCommandGlyph = kCommandUnicode, + KeyboardOptionGlyph = kOptionUnicode, + KeyboardShiftGlyph = kShiftUnicode, + KeyboardControlGlyph = kControlUnicode, + KeyboardReturnGlyph = 0x2305, + KeyboardReturnR2LGlyph = 0x21A9, + KeyboardDeleteLeftGlyph = 0x232B, + KeyboardDeleteRightGlyph = 0x2326, + KeyboardPadClearGlyph = 0x2327, + KeyboardLeftArrowGlyph = 0x2190, + KeyboardRightArrowGlyph = 0x2192, + KeyboardUpArrowGlyph = 0x2191, + KeyboardDownArrowGlyph = 0x2193, + KeyboardPageDownGlyph = 0x21DF, + KeyboardPageUpGlyph = 0x21DE, + KeyboardNorthwestArrowGlyph = 0x2196, + KeyboardSoutheastArrowGlyph = 0x2198, + KeyboardEscapeGlyph = 0x238B, + KeyboardHelpGlyph = 0x003F, + KeyboardUpArrowheadGlyph = 0x2303, +}; + +// Special keys +enum { + kSRKeysF1 = 122, + kSRKeysF2 = 120, + kSRKeysF3 = 99, + kSRKeysF4 = 118, + kSRKeysF5 = 96, + kSRKeysF6 = 97, + kSRKeysF7 = 98, + kSRKeysF8 = 100, + kSRKeysF9 = 101, + kSRKeysF10 = 109, + kSRKeysF11 = 103, + kSRKeysF12 = 111, + kSRKeysF13 = 105, + kSRKeysF14 = 107, + kSRKeysF15 = 113, + kSRKeysF16 = 106, + kSRKeysF17 = 0x40, /* kVK_F17, */ + kSRKeysF18 = 0x4F, /* kVK_F18 */ + kSRKeysF19 = 0x50, /* kVK_F19 */ + kSRKeysF20 = 0x5A, /* kVK_F20 */ + kSRKeysSpace = 49, + kSRKeysDeleteLeft = 51, + kSRKeysDeleteRight = 117, + kSRKeysPadClear = 71, + kSRKeysLeftArrow = 123, + kSRKeysRightArrow = 124, + kSRKeysUpArrow = 126, + kSRKeysDownArrow = 125, + kSRKeysSoutheastArrow = 119, + kSRKeysNorthwestArrow = 115, + kSRKeysEscape = 53, + kSRKeysPageDown = 121, + kSRKeysPageUp = 116, + kSRKeysReturnR2L = 36, + kSRKeysReturn = 76, + kSRKeysTabRight = 48, + kSRKeysHelp = 114 +}; + +#pragma mark - +#pragma mark Macros + +// Localization macros, for use in any bundle +#define SRLoc(key) SRLocalizedString(key, nil) +#define SRLocalizedString(key, comment) NSLocalizedStringFromTableInBundle(key, @"ShortcutRecorder", [NSBundle bundleForClass: [SRDummyClass class]], comment) + +// Image macros, for use in any bundle +//#define SRImage(name) [[[NSImage alloc] initWithContentsOfFile: [[NSBundle bundleForClass: [self class]] pathForImageResource: name]] autorelease] +#define SRResIndImage(name) [SRSharedImageProvider supportingImageWithName:name] +#define SRImage(name) SRResIndImage(name) + +//#define SRCommonWriteDebugImagery + +// Macros for glyps +#define SRInt(x) [NSNumber numberWithInt: x] +#define SRChar(x) [NSString stringWithFormat: @"%C", x] + +// Some default values +#define ShortcutRecorderEmptyFlags 0 +#define ShortcutRecorderAllFlags ShortcutRecorderEmptyFlags | (NSCommandKeyMask | NSAlternateKeyMask | NSControlKeyMask | NSShiftKeyMask | NSFunctionKeyMask) +#define ShortcutRecorderEmptyCode -1 + +// These keys will cancel the recoding mode if not pressed with any modifier +#define ShortcutRecorderEscapeKey 53 +#define ShortcutRecorderBackspaceKey 51 +#define ShortcutRecorderDeleteKey 117 + +#pragma mark - +#pragma mark Getting a string of the key combination + +// +// ################### +- Returns string from keyCode like NSEvent's -characters +// # EXPLANATORY # | +- Returns string from keyCode like NSEvent's -charactersUsingModifiers +// # CHART # | | +- Returns fully readable and localized name of modifier (if modifier given) +// ################### | | | +- Returns glyph of modifier (if modifier given) +// SRString... X - - X +// SRReadableString... X - X - +// SRCharacter... - X - - +// +NSString *SRStringForKeyCode( signed short keyCode ); +NSString *SRStringForCarbonModifierFlags( unsigned int flags ); +NSString *SRStringForCarbonModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRStringForCocoaModifierFlags( unsigned int flags ); +NSString *SRStringForCocoaModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRReadableStringForCarbonModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRReadableStringForCocoaModifierFlagsAndKeyCode( unsigned int flags, signed short keyCode ); +NSString *SRCharacterForKeyCodeAndCarbonFlags(signed short keyCode, unsigned int carbonFlags); +NSString *SRCharacterForKeyCodeAndCocoaFlags(signed short keyCode, unsigned int cocoaFlags); + +#pragma mark Converting between Cocoa and Carbon modifier flags + +unsigned int SRCarbonToCocoaFlags( unsigned int carbonFlags ); +unsigned int SRCocoaToCarbonFlags( unsigned int cocoaFlags ); + +#pragma mark - +#pragma mark Animation pace function + +double SRAnimationEaseInOut(double t); + +#pragma mark - +#pragma mark Inlines + +FOUNDATION_STATIC_INLINE KeyCombo SRMakeKeyCombo(signed short code, unsigned int flags) { + KeyCombo kc; + kc.code = code; + kc.flags = flags; + return kc; +} + +FOUNDATION_STATIC_INLINE BOOL SRIsSpecialKey(signed short keyCode) { + return (keyCode == kSRKeysF1 || keyCode == kSRKeysF2 || keyCode == kSRKeysF3 || keyCode == kSRKeysF4 || keyCode == kSRKeysF5 || keyCode == kSRKeysF6 || keyCode == kSRKeysF7 || keyCode == kSRKeysF8 || keyCode == kSRKeysF9 || keyCode == kSRKeysF10 || keyCode == kSRKeysF11 || keyCode == kSRKeysF12 || keyCode == kSRKeysF13 || keyCode == kSRKeysF14 || keyCode == kSRKeysF15 || keyCode == kSRKeysF16 || keyCode == kSRKeysF17 || keyCode == kSRKeysF18 || keyCode == kSRKeysF19 || keyCode == kSRKeysF20 || keyCode == kSRKeysSpace || keyCode == kSRKeysDeleteLeft || keyCode == kSRKeysDeleteRight || keyCode == kSRKeysPadClear || keyCode == kSRKeysLeftArrow || keyCode == kSRKeysRightArrow || keyCode == kSRKeysUpArrow || keyCode == kSRKeysDownArrow || keyCode == kSRKeysSoutheastArrow || keyCode == kSRKeysNorthwestArrow || keyCode == kSRKeysEscape || keyCode == kSRKeysPageDown || keyCode == kSRKeysPageUp || keyCode == kSRKeysReturnR2L || keyCode == kSRKeysReturn || keyCode == kSRKeysTabRight || keyCode == kSRKeysHelp); +} + +#pragma mark - +#pragma mark Additions + +// +// This segment is a category on NSBezierPath to supply roundrects. It's a common thing if you're drawing, +// so to integrate well, we use an oddball method signature to not implement the same method twice. +// +// This code is originally from http://www.cocoadev.com/index.pl?RoundedRectangles and no license demands +// (or Copyright demands) are stated, so we pretend it's public domain. +// +@interface NSBezierPath( SRAdditions ) ++ (NSBezierPath*)bezierPathWithSRCRoundRectInRect:(NSRect)aRect radius:(float)radius; +@end + +@interface NSError( SRAdditions ) +- (NSString *)localizedFailureReason; +- (NSString *)localizedRecoverySuggestion; +- (NSArray *)localizedRecoveryOptions; +@end + +@interface NSAlert( SRAdditions ) ++ (NSAlert *) alertWithNonRecoverableError:(NSError *)error; +@end + +#pragma mark - +#pragma mark Image provider + +@interface SRSharedImageProvider : NSObject ++ (NSImage *)supportingImageWithName:(NSString *)name; +@end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h new file mode 100644 index 0000000..6f252f3 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRKeyCodeTransformer.h @@ -0,0 +1,16 @@ +// +// SRKeyCodeTransformer.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import + +@interface SRKeyCodeTransformer : NSValueTransformer {} @end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h new file mode 100644 index 0000000..88f66d4 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderCell.h @@ -0,0 +1,138 @@ +// +// SRRecorderCell.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import +#import "SRCommon.h" + +#define SRMinWidth 50 +#define SRMaxHeight 22 + +#define SRTransitionFPS 30.0 +#define SRTransitionDuration 0.35 +//#define SRTransitionDuration 2.35 +#define SRTransitionFrames (SRTransitionFPS*SRTransitionDuration) +#define SRAnimationAxisIsY YES +#define ShortcutRecorderNewStyleDrawing + +#define SRAnimationOffsetRect(X,Y) (SRAnimationAxisIsY ? NSOffsetRect(X,0.0,-NSHeight(Y)) : NSOffsetRect(X,NSWidth(Y),0.0)) + +@class SRRecorderControl, CTGradient, SRValidator; + +enum SRRecorderStyle { + SRGradientBorderStyle = 0, + SRGreyStyle = 1 +}; +typedef enum SRRecorderStyle SRRecorderStyle; + +@interface SRRecorderCell : NSActionCell +{ + CTGradient *recordingGradient; + NSString *autosaveName; + + BOOL isRecording; + BOOL mouseInsideTrackingArea; + BOOL mouseDown; + + SRRecorderStyle style; + + BOOL isAnimating; + double transitionProgress; + BOOL isAnimatingNow; + BOOL isAnimatingTowardsRecording; + BOOL comboJustChanged; + + NSTrackingRectTag removeTrackingRectTag; + NSTrackingRectTag snapbackTrackingRectTag; + + KeyCombo keyCombo; + BOOL hasKeyChars; + NSString *keyChars; + NSString *keyCharsIgnoringModifiers; + + unsigned int allowedFlags; + unsigned int requiredFlags; + unsigned int recordingFlags; + + BOOL allowsKeyOnly; + BOOL escapeKeysRecord; + + NSSet *cancelCharacterSet; + + SRValidator *validator; + + IBOutlet id delegate; + BOOL globalHotKeys; + void *hotKeyModeToken; +} + +- (void)resetTrackingRects; + +#pragma mark *** Aesthetics *** + ++ (BOOL)styleSupportsAnimation:(SRRecorderStyle)style; + +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** + +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Responder Control *** + +- (BOOL)becomeFirstResponder; +- (BOOL)resignFirstResponder; + +#pragma mark *** Key Combination Control *** + +- (BOOL)performKeyEquivalent:(NSEvent *)theEvent; +- (void)flagsChanged:(NSEvent *)theEvent; + +- (unsigned int)allowedFlags; +- (void)setAllowedFlags:(unsigned int)flags; + +- (unsigned int)requiredFlags; +- (void)setRequiredFlags:(unsigned int)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; +- (void)clearKeyCombo; + +#pragma mark *** Autosave Control *** + +- (NSString *)autosaveName; +- (void)setAutosaveName:(NSString *)aName; + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderCellDelegate) +- (BOOL)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +- (void)shortcutRecorderCell:(SRRecorderCell *)aRecorderCell keyComboDidChange:(KeyCombo)newCombo; +@end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h new file mode 100644 index 0000000..1db0a4c --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRRecorderControl.h @@ -0,0 +1,82 @@ +// +// SRRecorderControl.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import +#import "SRRecorderCell.h" + +@interface SRRecorderControl : NSControl +{ + IBOutlet id delegate; +} + +#pragma mark *** Aesthetics *** +- (BOOL)animates; +- (void)setAnimates:(BOOL)an; +- (SRRecorderStyle)style; +- (void)setStyle:(SRRecorderStyle)nStyle; + +#pragma mark *** Delegate *** +- (id)delegate; +- (void)setDelegate:(id)aDelegate; + +#pragma mark *** Key Combination Control *** + +- (unsigned int)allowedFlags; +- (void)setAllowedFlags:(unsigned int)flags; + +- (BOOL)allowsKeyOnly; +- (void)setAllowsKeyOnly:(BOOL)nAllowsKeyOnly escapeKeysRecord:(BOOL)nEscapeKeysRecord; +- (BOOL)escapeKeysRecord; + +- (BOOL)canCaptureGlobalHotKeys; +- (void)setCanCaptureGlobalHotKeys:(BOOL)inState; + +- (unsigned int)requiredFlags; +- (void)setRequiredFlags:(unsigned int)flags; + +- (KeyCombo)keyCombo; +- (void)setKeyCombo:(KeyCombo)aKeyCombo; +- (void)clearKeyCombo; + +- (NSString *)keyChars; +- (NSString *)keyCharsIgnoringModifiers; + +#pragma mark *** Deprecated *** + +- (NSString *)autosaveName SR_DEPRECATED_ATTRIBUTE; +- (void)setAutosaveName:(NSString *)aName SR_DEPRECATED_ATTRIBUTE; + +#pragma mark - + +#pragma mark IB3 tomfoolery + +- (void)forIBuse__nilOutDeprecatedAutosaveName:(id)sender; +- (BOOL)forIBuse__hasDeprecatedAutosaveName; + +#pragma mark - + +// Returns the displayed key combination if set +- (NSString *)keyComboString; + +#pragma mark *** Conversion Methods *** + +- (unsigned int)cocoaToCarbonFlags:(unsigned int)cocoaFlags; +- (unsigned int)carbonToCocoaFlags:(unsigned int)carbonFlags; + +@end + +// Delegate Methods +@interface NSObject (SRRecorderDelegate) +- (BOOL)shortcutRecorder:(SRRecorderControl *)aRecorder isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +- (void)shortcutRecorder:(SRRecorderControl *)aRecorder keyComboDidChange:(KeyCombo)newKeyCombo; +@end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h new file mode 100644 index 0000000..2b44b06 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SRValidator.h @@ -0,0 +1,34 @@ +// +// SRValidator.h +// ShortcutRecorder +// +// Copyright 2006-2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors: +// David Dauer +// Jesper +// Jamie Kirkpatrick + +#import + +@interface SRValidator : NSObject { + id delegate; +} + +- (id) initWithDelegate:(id)theDelegate; + +- (BOOL) isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags error:(NSError **)error; +- (BOOL) isKeyCode:(signed short)keyCode andFlags:(unsigned int)flags takenInMenu:(NSMenu *)menu error:(NSError **)error; + +- (id) delegate; +- (void) setDelegate: (id) theDelegate; + +@end + +#pragma mark - + +@interface NSObject( SRValidation ) +- (BOOL) shortcutValidator:(SRValidator *)validator isKeyCode:(signed short)keyCode andFlagsTaken:(unsigned int)flags reason:(NSString **)aReason; +@end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h new file mode 100644 index 0000000..26b78f3 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/SR_LeopardView.h @@ -0,0 +1,15 @@ +// +// SR_LeopardView.h +// SR Leopard +// +// Created by Jesper on 2007-10-19. +// Copyright 2007 __MyCompanyName__. All rights reserved. +// + +#import + +@interface SR_LeopardView : NSView { + +} + +@end \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h new file mode 100644 index 0000000..6474bcb --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Headers/ShortcutRecorder.h @@ -0,0 +1,18 @@ +// +// ShortcutRecorder.h +// ShortcutRecorder +// - 10.5 version only; master framework header +// +// Copyright 2007 Contributors. All rights reserved. +// +// License: BSD +// +// Contributors to this file: +// Jesper + +#import +#import +#import +#import +#import +#import diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..40a7e46 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,20 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + ShortcutRecorder + CFBundleIdentifier + net.wafflesoftware.ShortcutRecorder.framework.Leopard + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + FMWK + CFBundleSignature + ???? + CFBundleVersion + 1.0 + + diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder new file mode 100755 index 0000000..1238589 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/A/ShortcutRecorder differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/ShortcutRecorder.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Headers b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Headers new file mode 120000 index 0000000..a177d2a --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Headers @@ -0,0 +1 @@ +Versions/Current/Headers \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Resources b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Resources new file mode 120000 index 0000000..953ee36 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Resources @@ -0,0 +1 @@ +Versions/Current/Resources \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Sparkle b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Sparkle new file mode 120000 index 0000000..b2c5273 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Sparkle @@ -0,0 +1 @@ +Versions/Current/Sparkle \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h new file mode 100644 index 0000000..a29492c --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcast.h @@ -0,0 +1,33 @@ +// +// SUAppcast.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUAPPCAST_H +#define SUAPPCAST_H + +@class SUAppcastItem; +@interface SUAppcast : NSObject { + NSArray *items; + NSString *userAgentString; + id delegate; + NSString *downloadFilename; +} + +- (void)fetchAppcastFromURL:(NSURL *)url; +- (void)setDelegate:delegate; +- (void)setUserAgentString:(NSString *)userAgentString; + +- (NSArray *)items; + +@end + +@interface NSObject (SUAppcastDelegate) +- (void)appcastDidFinishLoading:(SUAppcast *)appcast; +- (void)appcast:(SUAppcast *)appcast failedToLoadWithError:(NSError *)error; +@end + +#endif diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h new file mode 100644 index 0000000..6cbd474 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUAppcastItem.h @@ -0,0 +1,52 @@ +// +// SUAppcastItem.h +// Sparkle +// +// Created by Andy Matuschak on 3/12/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUAPPCASTITEM_H +#define SUAPPCASTITEM_H + +@interface SUAppcastItem : NSObject { + NSString *title; + NSDate *date; + NSString *itemDescription; + + NSURL *releaseNotesURL; + + NSString *DSASignature; + NSString *minimumSystemVersion; + + NSURL *fileURL; + NSString *versionString; + NSString *displayVersionString; + + NSDictionary *propertiesDictionary; + + NSURL *infoURL; // UK 2007-08-31 +} + +// Initializes with data from a dictionary provided by the RSS class. +- initWithDictionary:(NSDictionary *)dict; +- initWithDictionary:(NSDictionary *)dict failureReason:(NSString**)error; + +- (NSString *)title; +- (NSString *)versionString; +- (NSString *)displayVersionString; +- (NSDate *)date; +- (NSString *)itemDescription; +- (NSURL *)releaseNotesURL; +- (NSURL *)fileURL; +- (NSString *)DSASignature; +- (NSString *)minimumSystemVersion; + +// Returns the dictionary provided in initWithDictionary; this might be useful later for extensions. +- (NSDictionary *)propertiesDictionary; + +- (NSURL *)infoURL; // UK 2007-08-31 + +@end + +#endif diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h new file mode 100644 index 0000000..7cffab0 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUUpdater.h @@ -0,0 +1,171 @@ +// +// SUUpdater.h +// Sparkle +// +// Created by Andy Matuschak on 1/4/06. +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SUUPDATER_H +#define SUUPDATER_H + +// ----------------------------------------------------------------------------- +// Headers: +// ----------------------------------------------------------------------------- + +#import "SUVersionComparisonProtocol.h" +#import "SUVersionDisplayProtocol.h" + + +// ----------------------------------------------------------------------------- +// Forwards: +// ----------------------------------------------------------------------------- + +@class SUUpdateDriver, SUAppcastItem, SUHost, SUAppcast; + + +// ----------------------------------------------------------------------------- +// SUUpdater: +// ----------------------------------------------------------------------------- + +@interface SUUpdater : NSObject +{ + NSTimer *checkTimer; + SUUpdateDriver *driver; + + NSString *customUserAgentString; + SUHost *host; + IBOutlet id delegate; +} + ++ (SUUpdater *)sharedUpdater; ++ (SUUpdater *)updaterForBundle:(NSBundle *)bundle; +- initForBundle:(NSBundle *)bundle; + +- (NSBundle *)hostBundle; + +- (void)setDelegate:(id)delegate; +- delegate; + +- (void)setAutomaticallyChecksForUpdates:(BOOL)automaticallyChecks; +- (BOOL)automaticallyChecksForUpdates; + +- (void)setUpdateCheckInterval:(NSTimeInterval)interval; +- (NSTimeInterval)updateCheckInterval; + +- (void)setFeedURL:(NSURL *)feedURL; +- (NSURL *)feedURL; // *** MUST BE CALLED ON MAIN THREAD *** + +- (void)setUserAgentString:(NSString *)userAgent; +- (NSString *)userAgentString; + +- (void)setSendsSystemProfile:(BOOL)sendsSystemProfile; +- (BOOL)sendsSystemProfile; + +- (void)setAutomaticallyDownloadsUpdates:(BOOL)automaticallyDownloadsUpdates; +- (BOOL)automaticallyDownloadsUpdates; + +// This IBAction is meant for a main menu item. Hook up any menu item to this action, +// and Sparkle will check for updates and report back its findings verbosely. +- (IBAction)checkForUpdates:(id)sender; + +// This kicks off an update meant to be programmatically initiated. That is, it will display no UI unless it actually finds an update, +// in which case it proceeds as usual. If the fully automated updating is turned on, however, this will invoke that behavior, and if an +// update is found, it will be downloaded and prepped for installation. +- (void)checkForUpdatesInBackground; + +// Date of last update check. Returns null if no check has been performed. +- (NSDate*)lastUpdateCheckDate; + +// This begins a "probing" check for updates which will not actually offer to update to that version. The delegate methods, though, +// (up to updater:didFindValidUpdate: and updaterDidNotFindUpdate:), are called, so you can use that information in your UI. +- (void)checkForUpdateInformation; + +// Call this to appropriately schedule or cancel the update checking timer according to the preferences for time interval and automatic checks. This call does not change the date of the next check, but only the internal NSTimer. +- (void)resetUpdateCycle; + +- (BOOL)updateInProgress; + +-(BOOL) mayUpdateAndRestart; // If we can't restart, don't update, because that'd mean anything the old app (still running) reads from disk + +@end + + +// ----------------------------------------------------------------------------- +// SUUpdater Delegate: +// ----------------------------------------------------------------------------- + +@interface NSObject (SUUpdaterDelegateInformalProtocol) + +// Use this to keep Sparkle from popping up e.g. while your setup assistant is showing: +- (BOOL)updaterMayCheckForUpdates:(SUUpdater *)bundle; + +// This method allows you to add extra parameters to the appcast URL, potentially based on whether or not Sparkle will also be sending along the system profile. This method should return an array of dictionaries with keys: "key", "value", "displayKey", "displayValue", the latter two being specifically for display to the user. +- (NSArray *)feedParametersForUpdater:(SUUpdater *)updater sendingSystemProfile:(BOOL)sendingProfile; + +// If you need to generate the whole URL: +-(NSString*) feedURLStringForUpdater: (SUUpdater*)updater; + +// Use this to override the default behavior for Sparkle prompting the user about automatic update checks. +- (BOOL)updaterShouldPromptForPermissionToCheckForUpdates:(SUUpdater *)bundle; + +// Implement this if you want to do some special handling with the appcast once it finishes loading. +- (void)updater:(SUUpdater *)updater didFinishLoadingAppcast:(SUAppcast *)appcast; + +// If you're using special logic or extensions in your appcast, implement this to use your own logic for finding +// a valid update, if any, in the given appcast. +- (SUAppcastItem *)bestValidUpdateInAppcast:(SUAppcast *)appcast forUpdater:(SUUpdater *)bundle; + +// Sent when a valid update is found by the update driver. +- (void)updater:(SUUpdater *)updater didFindValidUpdate:(SUAppcastItem *)update; + +// Sent when a valid update is not found. +- (void)updaterDidNotFindUpdate:(SUUpdater *)update; + +// Sent immediately before installing the specified update. +- (void)updater:(SUUpdater *)updater willInstallUpdate:(SUAppcastItem *)update; + +// Return YES to delay the relaunch until you do some processing; invoke the given NSInvocation to continue. +// This is not called if the user didn't relaunch on the previous update, in that case it will immediately +// restart. +- (BOOL)updater:(SUUpdater *)updater shouldPostponeRelaunchForUpdate:(SUAppcastItem *)update untilInvoking:(NSInvocation *)invocation; + +// Some apps *can not* be relaunched in certain circumstances. They can use this method +// to prevent a relaunch "hard": +- (BOOL)updaterShouldRelaunchApplication:(SUUpdater *)updater; + +// Called immediately before relaunching. +- (void)updaterWillRelaunchApplication:(SUUpdater *)updater; + +// This method allows you to provide a custom version comparator. +// If you don't implement this method or return nil, the standard version comparator will be used. +- (id )versionComparatorForUpdater:(SUUpdater *)updater; + +// This method allows you to provide a custom version comparator. +// If you don't implement this method or return nil, the standard version comparator will be used. +- (id )versionDisplayerForUpdater:(SUUpdater *)updater; + +// Returns the path which is used to relaunch the client after the update is installed. By default, the path of the host bundle. +- (NSString *)pathToRelaunchForUpdater:(SUUpdater *)updater; + +@end + + +// ----------------------------------------------------------------------------- +// Constants: +// ----------------------------------------------------------------------------- + +// Define some minimum intervals to avoid DOS-like checking attacks. These are in seconds. +#ifdef DEBUG +#define SU_MIN_CHECK_INTERVAL 60 +#else +#define SU_MIN_CHECK_INTERVAL 60*60 +#endif + +#ifdef DEBUG +#define SU_DEFAULT_CHECK_INTERVAL 60 +#else +#define SU_DEFAULT_CHECK_INTERVAL 60*60*24 +#endif + +#endif diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h new file mode 100644 index 0000000..6c65ea4 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionComparisonProtocol.h @@ -0,0 +1,29 @@ +// +// SUVersionComparisonProtocol.h +// Sparkle +// +// Created by Andy Matuschak on 12/21/07. +// Copyright 2007 Andy Matuschak. All rights reserved. +// + +#ifndef SUVERSIONCOMPARISONPROTOCOL_H +#define SUVERSIONCOMPARISONPROTOCOL_H + +#import + +/*! + @protocol + @abstract Implement this protocol to provide version comparison facilities for Sparkle. +*/ +@protocol SUVersionComparison + +/*! + @method + @abstract An abstract method to compare two version strings. + @discussion Should return NSOrderedAscending if b > a, NSOrderedDescending if b < a, and NSOrderedSame if they are equivalent. +*/ +- (NSComparisonResult)compareVersion:(NSString *)versionA toVersion:(NSString *)versionB; // *** MAY BE CALLED ON NON-MAIN THREAD! + +@end + +#endif diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h new file mode 100644 index 0000000..368b9c9 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/SUVersionDisplayProtocol.h @@ -0,0 +1,27 @@ +// +// SUVersionDisplayProtocol.h +// EyeTV +// +// Created by Uli Kusterer on 08.12.09. +// Copyright 2009 Elgato Systems GmbH. All rights reserved. +// + +#import + + +/*! + @protocol + @abstract Implement this protocol to apply special formatting to the two + version numbers. +*/ +@protocol SUVersionDisplay + +/*! + @method + @abstract An abstract method to format two version strings. + @discussion You get both so you can display important distinguishing + information, but leave out unnecessary/confusing parts. +*/ +-(void) formatVersion: (NSString**)inOutVersionA andVersion: (NSString**)inOutVersionB; + +@end diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/Sparkle.h b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/Sparkle.h new file mode 100644 index 0000000..08dd577 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Headers/Sparkle.h @@ -0,0 +1,21 @@ +// +// Sparkle.h +// Sparkle +// +// Created by Andy Matuschak on 3/16/06. (Modified by CDHW on 23/12/07) +// Copyright 2006 Andy Matuschak. All rights reserved. +// + +#ifndef SPARKLE_H +#define SPARKLE_H + +// This list should include the shared headers. It doesn't matter if some of them aren't shared (unless +// there are name-space collisions) so we can list all of them to start with: + +#import + +#import +#import +#import + +#endif diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Info.plist b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Info.plist new file mode 100644 index 0000000..bcb78eb --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/Info.plist @@ -0,0 +1,24 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + Sparkle + CFBundleIdentifier + org.andymatuschak.Sparkle + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + Sparkle + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.5 Beta (git) + CFBundleSignature + ???? + CFBundleVersion + f81bfd9 + + diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/License.txt b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/License.txt new file mode 100644 index 0000000..f81c9d4 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/License.txt @@ -0,0 +1,126 @@ +Copyright (c) 2006 Andy Matuschak + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +================= +EXTERNAL LICENSES +================= + +This project uses software developed by the OpenSSL Project for use in the OpenSSL +Toolkit (http://www.openssl.org). This toolkit is licensed as follows: +/* ==================================================================== +* Copyright (c) 1998-2005 The OpenSSL Project. All rights reserved. +* +* Redistribution and use in source and binary forms, with or without +* modiÞcation, are permitted provided that the following conditions +* are met: +* +* 1. Redistributions of source code must retain the above copyright +* notice, this list of conditions and the following disclaimer. +* +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in +* the documentation and/or other materials provided with the +* distribution. +* +* 3. All advertising materials mentioning features or use of this +* software must display the following acknowledgment: +* ÒThis product includes software developed by the OpenSSL Project +* for use in the OpenSSL Toolkit. (http://www.openssl.org/)Ó +* +* 4. The names ÒOpenSSL ToolkitÓ and ÒOpenSSL ProjectÓ must not be used to +* endorse or promote products derived from this software without +* prior written permission. For written permission, please contact +* openssl-core@openssl.org. +* +* 5. Products derived from this software may not be called ÒOpenSSLÓ +* nor may ÒOpenSSLÓ appear in their names without prior written +* permission of the OpenSSL Project. +* +* 6. Redistributions of any form whatsoever must retain the following + +* acknowledgment: +* ÒThis product includes software developed by the OpenSSL Project +* for use in the OpenSSL Toolkit (http://www.openssl.org/)Ó +* +* THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS ISÕÕ AND ANY +* EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR +* ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, +* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED +* OF THE POSSIBILITY OF SUCH DAMAGE. +* ==================================================================== +* +* This product includes cryptographic software written by Eric Young +* (eay@cryptsoft.com). This product includes software written by Tim +* Hudson (tjh@cryptsoft.com). +* +*/ + +Original SSLeay License +/* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com) +* All rights reserved. +* +* This package is an SSL implementation written +* by Eric Young (eay@cryptsoft.com). +* The implementation was written so as to conform with Netscapes SSL. +* +* This library is free for commercial and non-commercial use as long as +* the following conditions are aheared to. The following conditions +* apply to all code found in this distribution, be it the RC4, RSA, +* lhash, DES, etc., code; not just the SSL code. The SSL documentation +* included with this distribution is covered by the same copyright terms +* except that the holder is Tim Hudson (tjh@cryptsoft.com). +* +* Copyright remains Eric YoungÕs, and as such any Copyright notices in +* the code are not to be removed. +* If this package is used in a product, Eric Young should be given attribution +* as the author of the parts of the library used. +* This can be in the form of a textual message at program startup or +* in documentation (online or textual) provided with the package. +* +* Redistribution and use in source and binary forms, with or without +* modiÞcation, are permitted provided that the following conditions +* are met: +* 1. Redistributions of source code must retain the copyright +* notice, this list of conditions and the following disclaimer. +* 2. Redistributions in binary form must reproduce the above copyright +* notice, this list of conditions and the following disclaimer in the +* documentation and/or other materials provided with the distribution. +* 3. All advertising materials mentioning features or use of this software +* must display the following acknowledgement: +* ÒThis product includes cryptographic software written by +* Eric Young (eay@cryptsoft.com)Ó +* The word ÔcryptographicÕ can be left out if the rouines from the library +* being used are not cryptographic related :-). +* 4. If you include any Windows speciÞc code (or a derivative thereof) from +* the apps directory (application code) you must include an acknowledgement: +* ÒThis product includes software written by Tim Hudson (tjh@cryptsoft.com)Ó +* +* THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS ISÕÕ AND +* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +* SUCH DAMAGE. +* +* The licence and distribution terms for any publically available version or +* derivative of this code cannot be changed. i.e. this code cannot simply be +* copied and put under another distribution licence +* [including the GNU Public Licence.] +*/ \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist new file mode 100644 index 0000000..92ef947 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/SUModelTranslation.plist @@ -0,0 +1,174 @@ + + + + + ADP2,1 + Developer Transition Kit + MacBook1,1 + MacBook (Core Duo) + MacBook2,1 + MacBook (Core 2 Duo) + MacBook4,1 + MacBook (Core 2 Duo Feb 2008) + MacBookAir1,1 + MacBook Air (January 2008) + MacBookPro1,1 + MacBook Pro Core Duo (15-inch) + MacBookPro1,2 + MacBook Pro Core Duo (17-inch) + MacBookPro2,1 + MacBook Pro Core 2 Duo (17-inch) + MacBookPro2,2 + MacBook Pro Core 2 Duo (15-inch) + MacBookPro3,1 + MacBook Pro Core 2 Duo (15-inch LED, Core 2 Duo) + MacBookPro3,2 + MacBook Pro Core 2 Duo (17-inch HD, Core 2 Duo) + MacBookPro4,1 + MacBook Pro (Core 2 Duo Feb 2008) + MacPro1,1 + Mac Pro (four-core) + MacPro2,1 + Mac Pro (eight-core) + MacPro3,1 + Mac Pro (January 2008 4- or 8- core "Harpertown") + Macmini1,1 + Mac Mini (Core Solo/Duo) + PowerBook1,1 + PowerBook G3 + PowerBook2,1 + iBook G3 + PowerBook2,2 + iBook G3 (FireWire) + PowerBook2,3 + iBook G3 + PowerBook2,4 + iBook G3 + PowerBook3,1 + PowerBook G3 (FireWire) + PowerBook3,2 + PowerBook G4 + PowerBook3,3 + PowerBook G4 (Gigabit Ethernet) + PowerBook3,4 + PowerBook G4 (DVI) + PowerBook3,5 + PowerBook G4 (1GHz / 867MHz) + PowerBook4,1 + iBook G3 (Dual USB, Late 2001) + PowerBook4,2 + iBook G3 (16MB VRAM) + PowerBook4,3 + iBook G3 Opaque 16MB VRAM, 32MB VRAM, Early 2003) + PowerBook5,1 + PowerBook G4 (17 inch) + PowerBook5,2 + PowerBook G4 (15 inch FW 800) + PowerBook5,3 + PowerBook G4 (17-inch 1.33GHz) + PowerBook5,4 + PowerBook G4 (15 inch 1.5/1.33GHz) + PowerBook5,5 + PowerBook G4 (17-inch 1.5GHz) + PowerBook5,6 + PowerBook G4 (15 inch 1.67GHz/1.5GHz) + PowerBook5,7 + PowerBook G4 (17-inch 1.67GHz) + PowerBook5,8 + PowerBook G4 (Double layer SD, 15 inch) + PowerBook5,9 + PowerBook G4 (Double layer SD, 17 inch) + PowerBook6,1 + PowerBook G4 (12 inch) + PowerBook6,2 + PowerBook G4 (12 inch, DVI) + PowerBook6,3 + iBook G4 + PowerBook6,4 + PowerBook G4 (12 inch 1.33GHz) + PowerBook6,5 + iBook G4 (Early-Late 2004) + PowerBook6,7 + iBook G4 (Mid 2005) + PowerBook6,8 + PowerBook G4 (12 inch 1.5GHz) + PowerMac1,1 + Power Macintosh G3 (Blue & White) + PowerMac1,2 + Power Macintosh G4 (PCI Graphics) + PowerMac10,1 + Mac Mini G4 + PowerMac10,2 + Mac Mini (Late 2005) + PowerMac11,2 + Power Macintosh G5 (Late 2005) + PowerMac12,1 + iMac G5 (iSight) + PowerMac2,1 + iMac G3 (Slot-loading CD-ROM) + PowerMac2,2 + iMac G3 (Summer 2000) + PowerMac3,1 + Power Macintosh G4 (AGP Graphics) + PowerMac3,2 + Power Macintosh G4 (AGP Graphics) + PowerMac3,3 + Power Macintosh G4 (Gigabit Ethernet) + PowerMac3,4 + Power Macintosh G4 (Digital Audio) + PowerMac3,5 + Power Macintosh G4 (Quick Silver) + PowerMac3,6 + Power Macintosh G4 (Mirrored Drive Door) + PowerMac4,1 + iMac G3 (Early/Summer 2001) + PowerMac4,2 + iMac G4 (Flat Panel) + PowerMac4,4 + eMac + PowerMac4,5 + iMac G4 (17-inch Flat Panel) + PowerMac5,1 + Power Macintosh G4 Cube + PowerMac6,1 + iMac G4 (USB 2.0) + PowerMac6,3 + iMac G4 (20-inch Flat Panel) + PowerMac6,4 + eMac (USB 2.0, 2005) + PowerMac7,2 + Power Macintosh G5 + PowerMac7,3 + Power Macintosh G5 + PowerMac8,1 + iMac G5 + PowerMac8,2 + iMac G5 (Ambient Light Sensor) + PowerMac9,1 + Power Macintosh G5 (Late 2005) + RackMac1,1 + Xserve G4 + RackMac1,2 + Xserve G4 (slot-loading, cluster node) + RackMac3,1 + Xserve G5 + Xserve1,1 + Xserve (Intel Xeon) + Xserve2,1 + Xserve (January 2008 quad-core) + iMac1,1 + iMac G3 (Rev A-D) + iMac4,1 + iMac (Core Duo) + iMac4,2 + iMac for Education (17-inch, Core Duo) + iMac5,1 + iMac (Core 2 Duo, 17 or 20 inch, SuperDrive) + iMac5,2 + iMac (Core 2 Duo, 17 inch, Combo Drive) + iMac6,1 + iMac (Core 2 Duo, 24 inch, SuperDrive) + iMac8,1 + iMac (April 2008) + + diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib new file mode 100644 index 0000000..f67e677 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/SUStatus.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..a38f515 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..9ce92ab Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..0d2a88d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings new file mode 100644 index 0000000..f089371 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/cs.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..0ef484b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..48d0bac Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..4ef0a8b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings new file mode 100644 index 0000000..06f3c08 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/da.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..709d3ee Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..bdf425f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..9d870f3 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings new file mode 100644 index 0000000..d7d8fce Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/de.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..eab2990 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..9fb2516 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..e8dc5b8 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings new file mode 100644 index 0000000..0008c09 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/en.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..e801e60 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..4250d07 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..a8b097d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings new file mode 100644 index 0000000..a62d71b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/es.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist new file mode 100644 index 0000000..ac1e7cb --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Info.plist @@ -0,0 +1,34 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleExecutable + finish_installation + CFBundleIconFile + Sparkle + CFBundleIdentifier + org.andymatuschak.finish-installation + CFBundleInfoDictionaryVersion + 6.0 + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1 + LSBackgroundOnly + 1 + LSMinimumSystemVersion + 10.5 + LSUIElement + 1 + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation new file mode 100755 index 0000000..0ff4c7a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/MacOS/finish_installation differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo new file mode 100644 index 0000000..bd04210 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/PkgInfo @@ -0,0 +1 @@ +APPL???? \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib new file mode 100644 index 0000000..f67e677 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/SUStatus.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns new file mode 100644 index 0000000..8e56d45 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/Sparkle.icns differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings new file mode 100644 index 0000000..f089371 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/cs.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings new file mode 100644 index 0000000..06f3c08 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/da.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings new file mode 100644 index 0000000..d7d8fce Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/de.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings new file mode 100644 index 0000000..0008c09 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/en.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings new file mode 100644 index 0000000..a62d71b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/es.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings new file mode 100644 index 0000000..16bee71 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/fr.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings new file mode 100644 index 0000000..0c7fa89 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/is.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings new file mode 100644 index 0000000..c491872 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/it.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings new file mode 100644 index 0000000..f09fb6d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ja.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings new file mode 100644 index 0000000..e93e970 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/nl.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings new file mode 100644 index 0000000..8748ed6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pl.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings new file mode 100644 index 0000000..e4d51a1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/pt_BR.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings new file mode 100644 index 0000000..21f64dd Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/ru.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings new file mode 100644 index 0000000..47c5b18 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/sv.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings new file mode 100644 index 0000000..8ae19d8 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_CN.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings new file mode 100644 index 0000000..ad41389 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/finish_installation.app/Contents/Resources/zh_TW.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..678f3aa Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..adf1d73 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..2c42049 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings new file mode 100644 index 0000000..16bee71 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr_CA.lproj b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr_CA.lproj new file mode 120000 index 0000000..f9834a3 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/fr_CA.lproj @@ -0,0 +1 @@ +fr.lproj \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..9df8add Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..92f5370 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..6636734 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings new file mode 100644 index 0000000..0c7fa89 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/is.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..8ea2697 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..9d4dd3a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..52f294b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings new file mode 100644 index 0000000..c491872 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/it.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..02bce43 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..50434cc Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..2d62bc6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings new file mode 100644 index 0000000..f09fb6d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ja.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..15b9f73 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ko.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..aa38f86 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..ab9d0a7 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..d9a9888 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings new file mode 100644 index 0000000..e93e970 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/nl.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..592ecaf Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..584609e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..f3fb56c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings new file mode 100644 index 0000000..8748ed6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pl.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..d385ec0 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj new file mode 120000 index 0000000..3c1c9f6 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt.lproj/pt_BR.lproj @@ -0,0 +1 @@ +pt_BR.lproj \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..aa24217 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..871db32 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..a4fe848 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings new file mode 100644 index 0000000..e4d51a1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/pt_BR.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..9d36537 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..bf48047 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..d0f1747 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings new file mode 100644 index 0000000..21f64dd Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/ru.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..c640954 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sk.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..a56c528 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..07f49c4 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..c065b92 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings new file mode 100644 index 0000000..47c5b18 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/sv.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..edb4aa0 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..debeea6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..143866a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings new file mode 100644 index 0000000..8ae19d8 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_CN.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib new file mode 100644 index 0000000..e6ef86a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUAutomaticUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib new file mode 100644 index 0000000..75ab296 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdateAlert.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib new file mode 100644 index 0000000..92f7b5c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/SUUpdatePermissionPrompt.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings new file mode 100644 index 0000000..ad41389 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Resources/zh_TW.lproj/Sparkle.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Sparkle b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Sparkle new file mode 100755 index 0000000..d390784 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/A/Sparkle differ diff --git a/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/Current b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/Current new file mode 120000 index 0000000..8c7e5a6 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Frameworks/Sparkle.framework/Versions/Current @@ -0,0 +1 @@ +A \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Info.plist b/build/Release/Pocket Gnome.app/Contents/Info.plist new file mode 100644 index 0000000..b803772 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Info.plist @@ -0,0 +1,176 @@ + + + + + CFBundleDevelopmentRegion + English + CFBundleDisplayName + Pocket Gnome + CFBundleDocumentTypes + + + CFBundleTypeExtensions + + routecollection + + CFBundleTypeIconFile + pgRoute + CFBundleTypeName + Route Collection + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + RouteCollection + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + combatProfile + combatprofile + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + Combat Profile + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + CombatProfile + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + route + routeset + + CFBundleTypeIconFile + pgRoute + CFBundleTypeName + Route + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + RouteSet + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + behavior + behaviorset + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + Behavior + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + Behavior + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + pvpbehavior + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + PvP Behavior + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + PvPBehavior + NSPersistentStoreTypeKey + XML + + + CFBundleTypeExtensions + + mailprofile + + CFBundleTypeIconFile + pgBehavior + CFBundleTypeName + Mail Profile + CFBundleTypeRole + Editor + LSTypeIsPackage + + NSDocumentClass + MailActionProfile + NSPersistentStoreTypeKey + XML + + + CFBundleExecutable + Pocket Gnome + CFBundleGetInfoString + Pocket Gnome 1.5.1 + CFBundleIconFile + gnome2 + CFBundleIdentifier + com.savorydeviate.PocketGnome + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + Pocket Gnome + CFBundlePackageType + APPL + CFBundleShortVersionString + 1.5.1 (r566) + CFBundleSignature + ???? + CFBundleVersion + 566 + LSMinimumSystemVersion + 10.5 + NSAppleScriptEnabled + + NSMainNibFile + MainMenu + NSPrincipalClass + NoAccessApplication + SUEnableAutomaticChecks + YES + SUEnableSystemProfiling + YES + SUFeedURL + http://pg.savorydeviate.com/appcast.xml + SUPublicDSAKeyFile + dsa_pub.pem + UTExportedTypeDeclarations + + + UTTypeConformsTo + + public.data + + UTTypeIdentifier + com.savorydeviate.PocketGnome + UTTypeTagSpecification + + public.filename-extension + routes + + + + + diff --git a/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome b/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome new file mode 100755 index 0000000..91ef88f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/MacOS/Pocket Gnome differ diff --git a/build/Release/Pocket Gnome.app/Contents/PkgInfo b/build/Release/Pocket Gnome.app/Contents/PkgInfo new file mode 100644 index 0000000..bd04210 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/PkgInfo @@ -0,0 +1 @@ +APPL???? \ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png new file mode 100644 index 0000000..6ce5f3c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_DualWieldSpecialization.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png new file mode 100644 index 0000000..c5d9453 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Rogue_Sprint.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png new file mode 100644 index 0000000..ecdb9ff Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Challange.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png new file mode 100644 index 0000000..9cce4bf Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_ImprovedDisciplines.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png new file mode 100644 index 0000000..17433e4 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Ability_Warrior_Revenge.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png new file mode 100644 index 0000000..83136ab Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ActiveQuestIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif b/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif new file mode 100644 index 0000000..8e15d08 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/AllianceCrest.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib new file mode 100644 index 0000000..c8b7e29 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/AuraCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib new file mode 100644 index 0000000..8996d1b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/AuraStackCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png new file mode 100644 index 0000000..c2eba11 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/AvailableQuestIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png new file mode 100644 index 0000000..d0cb246 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BankerGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png b/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png new file mode 100644 index 0000000..ea1cd7b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BannerAlliance.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png b/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png new file mode 100644 index 0000000..29c27b3 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BannerHorde.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png b/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png new file mode 100644 index 0000000..5bd6c74 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BannerNeutral.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib new file mode 100644 index 0000000..5e9fe52 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Behaviors.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png new file mode 100644 index 0000000..84864ef Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BinderGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png new file mode 100644 index 0000000..d981023 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif new file mode 100644 index 0000000..c9747e9 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png new file mode 100644 index 0000000..84df29b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif new file mode 100644 index 0000000..ad2c7fd Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/BloodElf-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png b/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png new file mode 100644 index 0000000..3a5b47e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Bobber.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib new file mode 100644 index 0000000..09e25c6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Bot.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib b/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib new file mode 100644 index 0000000..c746484 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ChatLog.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png b/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png new file mode 100644 index 0000000..aa9a05a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Chicken.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png b/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png new file mode 100644 index 0000000..d0ba9a2 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Combat.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib b/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib new file mode 100644 index 0000000..84ac409 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/CombatCount.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib new file mode 100644 index 0000000..167cb46 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/CombatProfileAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib new file mode 100644 index 0000000..c028665 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ComboPointCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png b/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png new file mode 100644 index 0000000..b4096cf Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Dead.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png b/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png new file mode 100644 index 0000000..bd7fe5b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif new file mode 100644 index 0000000..0b87a05 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/DeathKnight_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib new file mode 100644 index 0000000..6c03fbc Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/DelayAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib new file mode 100644 index 0000000..590848d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/DistanceCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png new file mode 100644 index 0000000..1066f97 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif new file mode 100644 index 0000000..74adbd9 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png new file mode 100644 index 0000000..9c972e1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif new file mode 100644 index 0000000..6f743be Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Draenei-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png b/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png new file mode 100644 index 0000000..9c54242 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Druid.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif new file mode 100644 index 0000000..c0d5757 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Druid_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib new file mode 100644 index 0000000..2223153 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/DurabilityCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png new file mode 100644 index 0000000..f6c90b7 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif new file mode 100644 index 0000000..a5794d3 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png new file mode 100644 index 0000000..c232616 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif new file mode 100644 index 0000000..7ccdce5 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Dwarf-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist b/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist new file mode 100644 index 0000000..d1e0d25 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/Gathering.plist @@ -0,0 +1,579 @@ + + + + + Herbalism + + Firethorn + + Type + Herbalism + Skill + 360 + + Goldclover + + Type + Herbalism + Skill + 350 + + Frost Lotus + + Type + Herbalism + Skill + 450 + + Icethorn + + Type + Herbalism + Skill + 435 + + Lichbloom + + Type + Herbalism + Skill + 425 + + Adder's Tongue + + Type + Herbalism + Skill + 400 + + Frozen Herb + + Type + Herbalism + Skill + 400 + + Tiger Lily + + Type + Herbalism + Skill + 400 + + Talandra's Rose + + Type + Herbalism + Skill + 385 + + Purple Lotus + + Type + Herbalism + Skill + 210 + + Arthas' Tears + + Type + Herbalism + Skill + 220 + + Sungrass + + Type + Herbalism + Skill + 230 + + Blindweed + + Type + Herbalism + Skill + 235 + + Ghost Mushroom + + Type + Herbalism + Skill + 245 + + Gromsblood + + Type + Herbalism + Skill + 250 + + Silverleaf + + Type + Herbalism + Skill + 1 + + Peacebloom + + Type + Herbalism + Skill + 1 + + Earthroot + + Type + Herbalism + Skill + 15 + + Mageroyal + + Type + Herbalism + Skill + 50 + + Briarthorn + + Type + Herbalism + Skill + 70 + + Bruiseweed + + Type + Herbalism + Skill + 100 + + Wild Steelbloom + + Type + Herbalism + Skill + 115 + + Kingsblood + + Type + Herbalism + Skill + 125 + + Grave Moss + + Type + Herbalism + Skill + 120 + + Golden Sansam + + Type + Herbalism + Skill + 260 + + Dreamfoil + + Type + Herbalism + Skill + 270 + + Mountain Silversage + + Type + Herbalism + Skill + 280 + + Plaguebloom + + Type + Herbalism + Skill + 285 + + Icecap + + Type + Herbalism + Skill + 290 + + Black Lotus + + Type + Herbalism + Skill + 300 + + Bloodthistle + + Type + Herbalism + Skill + 1 + + Felweed + + Type + Herbalism + Skill + 300 + + Dreaming Glory + + Type + Herbalism + Skill + 315 + + Ragveil + + Type + Herbalism + Skill + 325 + + Flame Cap + + Type + Herbalism + Skill + 335 + + Terocone + + Type + Herbalism + Skill + 325 + + Ancient Lichen + + Type + Herbalism + Skill + 340 + + Netherbloom + + Type + Herbalism + Skill + 350 + + Nightmare Vine + + Type + Herbalism + Skill + 365 + + Mana Thistle + + Type + Herbalism + Skill + 375 + + Netherdust Bush + + Type + Herbalism + Skill + 350 + + Liferoot + + Type + Herbalism + Skill + 150 + + Fadeleaf + + Type + Herbalism + Skill + 160 + + Khadgar's Whisker + + Type + Herbalism + Skill + 185 + + Wintersbite + + Type + Herbalism + Skill + 195 + + Stranglekelp + + Type + Herbalism + Skill + 85 + + Goldthorn + + Type + Herbalism + Skill + 170 + + Firebloom + + Type + Herbalism + Skill + 205 + + + Mining + + Titanium Vein + + Type + Mining + Skill + 450 + + Rich Saronite Deposit + + Type + Mining + Skill + 425 + + Rich Cobalt Deposit + + Type + Mining + Skill + 375 + + Cobalt Deposit + + Type + Mining + Skill + 350 + + Ooze Covered Truesilver Deposit + + Type + Mining + Skill + 230 + + Ooze Covered Mithril Deposit + + Type + Mining + Skill + 175 + + Ooze Covered Thorium Vein + + Type + Mining + Skill + 245 + + Incendicite Mineral Vein + + Type + Mining + Skill + 65 + + Dark Iron Deposit + + Type + Mining + Skill + 230 + + Copper Vein + + Type + Mining + Skill + 1 + + Tin Vein + + Type + Mining + Skill + 65 + + Silver Vein + + Type + Mining + Skill + 75 + + Gold Vein + + Type + Mining + Skill + 155 + + Iron Deposit + + Type + Mining + Skill + 125 + + Rich Thorium Vein + + Type + Mining + Skill + 275 + + Ooze Covered Rich Thorium Vein + + Type + Mining + Skill + 275 + + Hakkari Thorium Vein + + Type + Mining + Skill + 275 + + Small Obsidian Chunk + + Type + Mining + Skill + 305 + + Large Obsidian Chunk + + Type + Mining + Skill + 305 + + Fel Iron Deposit + + Type + Mining + Skill + 300 + + Adamantite Deposit + + Type + Mining + Skill + 325 + + Khorium Vein + + Type + Mining + Skill + 375 + + Rich Adamantite Deposit + + Type + Mining + Skill + 350 + + Ancient Gem Vein + + Type + Mining + Skill + 375 + + Nethercite Deposit + + Type + Mining + Skill + 350 + + Indurium Mineral Vein + + Type + Mining + Skill + 150 + + Mithril Deposit + + Type + Mining + Skill + 175 + + Truesilver Deposit + + Type + Mining + Skill + 230 + + Lesser Bloodstone Deposit + + Type + Mining + Skill + 75 + + Small Thorium Vein + + Type + Mining + Skill + 245 + + Ooze Covered Silver Vein + + Type + Mining + Skill + 75 + + Ooze Covered Gold Vein + + Type + Mining + Skill + 155 + + Saronite Deposit + + Type + Mining + Skill + 400 + + + + diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings b/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings new file mode 100644 index 0000000..6c6705b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/English.lproj/InfoPlist.strings differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist b/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist new file mode 100644 index 0000000..31d2323 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/FactionTemplate.plist @@ -0,0 +1,12523 @@ + + + + + 1 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 10 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 100 + + EnemyFactions + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 101 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 8 + ReactMask + 0 + + 1014 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 629 + + FriendMask + 0 + ReactMask + 0 + + 1015 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 629 + + FriendMask + 0 + ReactMask + 0 + + 102 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 8 + ReactMask + 0 + + 103 + + EnemyFactions + + 689 + + EnemyMask + 1 + FriendFactions + + 80 + + FriendMask + 0 + ReactMask + 8 + + 1034 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 4 + + 104 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 105 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1054 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 3 + + 1055 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 2 + + 106 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 107 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1074 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1075 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 108 + + FriendMask + 2 + ReactMask + 2 + + 1076 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1077 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 108 + + FriendMask + 2 + ReactMask + 2 + + 1078 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 108 + + EnemyFactions + + 79 + + EnemyMask + 0 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 0 + + 1080 + + EnemyFactions + + 74 + + EnemyMask + 0 + FriendFactions + + 31 + 649 + + FriendMask + 1 + ReactMask + 0 + + 1081 + + EnemyFactions + + 649 + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 109 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 110 + 111 + + FriendMask + 0 + ReactMask + 8 + + 1094 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1095 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1096 + + EnemyFactions + + 679 + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1097 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 11 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 110 + + EnemyFactions + + 85 + + EnemyMask + 1 + FriendFactions + + 110 + + FriendMask + 0 + ReactMask + 8 + + 111 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 85 + 111 + + FriendMask + 0 + ReactMask + 8 + + 1114 + + EnemyFactions + + 80 + + EnemyMask + 1 + FriendFactions + + 689 + + FriendMask + 0 + ReactMask + 8 + + 112 + + EnemyFactions + + 110 + + EnemyMask + 1 + FriendFactions + + 85 + 111 + + FriendMask + 0 + ReactMask + 8 + + 113 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 1 + ReactMask + 1 + + 1134 + + EnemyFactions + + 679 + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 114 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 115 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1154 + + EnemyFactions + + 679 + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 116 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1174 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 118 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 119 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 87 + + FriendMask + 0 + ReactMask + 8 + + 1194 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 12 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 120 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 21 + + FriendMask + 0 + ReactMask + 0 + + 121 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 21 + + FriendMask + 0 + ReactMask + 1 + + 1214 + + EnemyFactions + + 730 + + EnemyMask + 10 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 5 + + 1215 + + EnemyFactions + + 730 + + EnemyMask + 2 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 4 + + 1216 + + EnemyFactions + + 729 + + EnemyMask + 12 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 3 + + 1217 + + EnemyFactions + + 729 + + EnemyMask + 4 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 2 + + 122 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 123 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1234 + + EnemyFactions + + 749 + + EnemyMask + 1 + FriendFactions + + 750 + + FriendMask + 0 + ReactMask + 8 + + 1235 + + EnemyFactions + + 749 + + EnemyMask + 1 + FriendFactions + + 750 + + FriendMask + 0 + ReactMask + 8 + + 1236 + + EnemyFactions + + 749 + + EnemyMask + 1 + FriendFactions + + 750 + + FriendMask + 0 + ReactMask + 8 + + 124 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 125 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1254 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 1 + + 126 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 127 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1274 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1275 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 128 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 88 + + FriendMask + 0 + ReactMask + 8 + + 129 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 89 + + FriendMask + 0 + ReactMask + 8 + + 1294 + + EnemyFactions + + 770 + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 130 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 90 + + FriendMask + 0 + ReactMask + 8 + + 131 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 91 + + FriendMask + 0 + ReactMask + 8 + + 1314 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1315 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 132 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 92 + + FriendMask + 0 + ReactMask + 8 + + 133 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 93 + + FriendMask + 0 + ReactMask + 8 + + 1334 + + EnemyFactions + + 729 + + EnemyMask + 4 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 2 + + 1335 + + EnemyFactions + + 730 + + EnemyMask + 2 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 4 + + 134 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 94 + + FriendMask + 0 + ReactMask + 8 + + 1354 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 809 + + FriendMask + 0 + ReactMask + 0 + + 1355 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 809 + + FriendMask + 0 + ReactMask + 0 + + 1374 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 38 + + FriendMask + 0 + ReactMask + 8 + + 1375 + + EnemyFactions + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1394 + + EnemyFactions + + 689 + 47 + + EnemyMask + 1 + FriendFactions + + 80 + + FriendMask + 0 + ReactMask + 8 + + 1395 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 916 + + FriendMask + 0 + ReactMask + 8 + + 14 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1414 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1415 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1434 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 869 + + FriendMask + 0 + ReactMask + 8 + + 1454 + + EnemyFactions + + 35 + + EnemyMask + 0 + FriendFactions + + 36 + + FriendMask + 1 + ReactMask + 0 + + 1474 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 59 + + FriendMask + 0 + ReactMask + 0 + + 1475 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 59 + + FriendMask + 0 + ReactMask + 0 + + 148 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 149 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1494 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 66 + + FriendMask + 4 + ReactMask + 4 + + 1495 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + 66 + + FriendMask + 4 + ReactMask + 5 + + 1496 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 66 + + FriendMask + 4 + ReactMask + 4 + + 15 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 7 + + FriendMask + 0 + ReactMask + 0 + + 150 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 151 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 2 + + 1514 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1515 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 152 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 109 + 111 + + FriendMask + 0 + ReactMask + 8 + + 153 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 109 + 111 + + FriendMask + 0 + ReactMask + 8 + + 1534 + + EnemyFactions + + 729 + + EnemyMask + 4 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 2 + + 154 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 109 + 85 + 111 + 110 + + FriendMask + 0 + ReactMask + 8 + + 1554 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1555 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 909 + + FriendMask + 0 + ReactMask + 0 + + 1574 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 270 + + FriendMask + 0 + ReactMask + 0 + + 1575 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1576 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 269 + + FriendMask + 2 + ReactMask + 2 + + 1577 + + EnemyFactions + + 510 + + EnemyMask + 4 + FriendFactions + + 509 + + FriendMask + 2 + ReactMask + 2 + + 1594 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1595 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1596 + + EnemyFactions + + 729 + + EnemyMask + 12 + FriendFactions + + 730 + + FriendMask + 2 + ReactMask + 3 + + 1597 + + EnemyFactions + + 730 + + EnemyMask + 10 + FriendFactions + + 729 + + FriendMask + 4 + ReactMask + 5 + + 1598 + + EnemyFactions + + 509 + + EnemyMask + 2 + FriendFactions + + 510 + + FriendMask + 4 + ReactMask + 4 + + 1599 + + EnemyFactions + + 510 + + EnemyMask + 4 + FriendFactions + + 509 + + FriendMask + 2 + ReactMask + 2 + + 16 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1600 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1601 + + EnemyFactions + + 249 + 80 + + EnemyMask + 0 + FriendFactions + + 910 + 531 + + FriendMask + 0 + ReactMask + 0 + + 1602 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1603 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1604 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1605 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 531 + + FriendMask + 0 + ReactMask + 0 + + 1606 + + EnemyFactions + + 7 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 0 + + 1607 + + EnemyFactions + + 7 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 0 + + 1608 + + EnemyFactions + + 249 + + EnemyMask + 8 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 1 + + 1610 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1611 + + EnemyFactions + + 916 + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1612 + + EnemyFactions + + 916 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1613 + + EnemyFactions + + 915 + + EnemyMask + 0 + FriendFactions + + 912 + + FriendMask + 1 + ReactMask + 1 + + 1614 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1615 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 21 + 577 + 369 + + FriendMask + 0 + ReactMask + 1 + + 1616 + + EnemyFactions + + 918 + + EnemyMask + 0 + FriendFactions + + 919 + + FriendMask + 15 + ReactMask + 0 + + 1617 + + EnemyFactions + + 919 + + EnemyMask + 1 + FriendFactions + + 918 + + FriendMask + 0 + ReactMask + 0 + + 1618 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1619 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1620 + + EnemyFactions + + EnemyMask + 15 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1621 + + EnemyFactions + + 920 + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 2 + + 1622 + + EnemyFactions + + 921 + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 2 + + 1623 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1624 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 1625 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 1626 + + EnemyFactions + + 679 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1627 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1628 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1629 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1630 + + EnemyFactions + + 14 + 148 + + EnemyMask + 7 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 1634 + + EnemyFactions + + 68 + 72 + + EnemyMask + 0 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 1635 + + EnemyFactions + + 891 + + EnemyMask + 0 + FriendFactions + + 169 + 892 + + FriendMask + 0 + ReactMask + 0 + + 1636 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1637 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1638 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1639 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1640 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1641 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1642 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1643 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 937 + + FriendMask + 0 + ReactMask + 8 + + 1644 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1645 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1646 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1647 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1648 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1649 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1650 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1651 + + EnemyFactions + + 28 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1652 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1653 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1654 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1655 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1656 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1657 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1658 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1659 + + EnemyFactions + + 60 + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1660 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1661 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1662 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1663 + + EnemyFactions + + 945 + + EnemyMask + 1 + FriendFactions + + 944 + + FriendMask + 0 + ReactMask + 8 + + 1664 + + EnemyFactions + + 944 + + EnemyMask + 1 + FriendFactions + + 945 + + FriendMask + 0 + ReactMask + 8 + + 1665 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 7 + ReactMask + 1 + + 1666 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1667 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1668 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1669 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1670 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1671 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1672 + + EnemyFactions + + 952 + + EnemyMask + 0 + FriendFactions + + 949 + + FriendMask + 7 + ReactMask + 1 + + 1673 + + EnemyFactions + + 951 + + EnemyMask + 0 + FriendFactions + + 950 + + FriendMask + 0 + ReactMask + 0 + + 1674 + + EnemyFactions + + 951 + + EnemyMask + 0 + FriendFactions + + 950 + 953 + + FriendMask + 15 + ReactMask + 0 + + 1675 + + EnemyFactions + + 949 + + EnemyMask + 0 + FriendFactions + + 952 + + FriendMask + 15 + ReactMask + 0 + + 1676 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 954 + + FriendMask + 15 + ReactMask + 0 + + 1677 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 954 + + FriendMask + 15 + ReactMask + 0 + + 1678 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1679 + + EnemyFactions + + 40 + + EnemyMask + 1 + FriendFactions + + 955 + + FriendMask + 0 + ReactMask + 8 + + 168 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1680 + + EnemyFactions + + 957 + + EnemyMask + 0 + FriendFactions + + 74 + + FriendMask + 1 + ReactMask + 0 + + 1681 + + EnemyFactions + + 74 + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 1682 + + EnemyFactions + + 958 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1683 + + EnemyFactions + + 960 + + EnemyMask + 0 + FriendFactions + + 959 + + FriendMask + 0 + ReactMask + 0 + + 1684 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 1685 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 961 + + FriendMask + 0 + ReactMask + 2 + + 1686 + + EnemyFactions + + 962 + + EnemyMask + 4 + FriendFactions + + 961 + + FriendMask + 2 + ReactMask + 2 + + 1687 + + EnemyFactions + + 961 + + EnemyMask + 1 + FriendFactions + + 962 + + FriendMask + 0 + ReactMask + 8 + + 1688 + + EnemyFactions + + 964 + + EnemyMask + 0 + FriendFactions + + 963 + + FriendMask + 1 + ReactMask + 0 + + 1689 + + EnemyFactions + + 963 + + EnemyMask + 0 + FriendFactions + + 964 + + FriendMask + 1 + ReactMask + 0 + + 1690 + + EnemyFactions + + 964 + + EnemyMask + 0 + FriendFactions + + 963 + + FriendMask + 1 + ReactMask + 0 + + 1691 + + EnemyFactions + + 963 + + EnemyMask + 0 + FriendFactions + + 964 + + FriendMask + 1 + ReactMask + 0 + + 1692 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1693 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1694 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1695 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1696 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 967 + + FriendMask + 0 + ReactMask + 0 + + 1697 + + EnemyFactions + + 946 + 947 + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1698 + + EnemyFactions + + 968 + + EnemyMask + 4 + FriendFactions + + 930 + + FriendMask + 2 + ReactMask + 2 + + 1699 + + EnemyFactions + + 968 + + EnemyMask + 4 + FriendFactions + + 930 + + FriendMask + 2 + ReactMask + 2 + + 17 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 15 + + FriendMask + 0 + ReactMask + 8 + + 1700 + + EnemyFactions + + 968 + + EnemyMask + 4 + FriendFactions + + 930 + + FriendMask + 2 + ReactMask + 2 + + 1701 + + EnemyFactions + + 930 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1702 + + EnemyFactions + + 930 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1703 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1704 + + EnemyFactions + + 679 + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1705 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 943 + 679 + + FriendMask + 0 + ReactMask + 8 + + 1706 + + EnemyFactions + + 970 + + EnemyMask + 1 + FriendFactions + + 971 + + FriendMask + 0 + ReactMask + 8 + + 1707 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1708 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1709 + + EnemyFactions + + 971 + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1710 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1711 + + EnemyFactions + + 974 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 1712 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 1713 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 1714 + + EnemyFactions + + 930 + 975 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1715 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 975 + + FriendMask + 0 + ReactMask + 8 + + 1716 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1717 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1718 + + EnemyFactions + + 977 + + EnemyMask + 0 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1719 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 976 + + FriendMask + 1 + ReactMask + 0 + + 1720 + + EnemyFactions + + 976 + + EnemyMask + 1 + FriendFactions + + 977 + + FriendMask + 0 + ReactMask + 8 + + 1721 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 3 + + 1722 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 2 + + 1723 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 2 + + 1724 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 978 + + FriendMask + 2 + ReactMask + 2 + + 1725 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 469 + 67 + + FriendMask + 7 + ReactMask + 0 + + 1726 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 469 + 67 + + FriendMask + 7 + ReactMask + 0 + + 1727 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 469 + 67 + + FriendMask + 7 + ReactMask + 0 + + 1728 + + EnemyFactions + + 14 + + EnemyMask + 8 + FriendFactions + + 942 + + FriendMask + 0 + ReactMask + 1 + + 1729 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1730 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1731 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1732 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1733 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 1734 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1735 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1736 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1737 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 72 + + FriendMask + 2 + ReactMask + 2 + + 1738 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 981 + + FriendMask + 0 + ReactMask + 8 + + 1739 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 982 + + FriendMask + 0 + ReactMask + 0 + + 1740 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 982 + + FriendMask + 0 + ReactMask + 0 + + 1741 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 935 + + FriendMask + 0 + ReactMask + 1 + + 1742 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 984 + + FriendMask + 0 + ReactMask + 0 + + 1743 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1744 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1745 + + EnemyFactions + + 679 + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 1746 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1747 + + EnemyFactions + + 986 + 987 + + EnemyMask + 0 + FriendFactions + + 985 + + FriendMask + 1 + ReactMask + 1 + + 1748 + + EnemyFactions + + 985 + + EnemyMask + 1 + FriendFactions + + 986 + + FriendMask + 0 + ReactMask + 8 + + 1749 + + EnemyFactions + + 985 + + EnemyMask + 0 + FriendFactions + + 987 + + FriendMask + 0 + ReactMask + 0 + + 1750 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1751 + + EnemyFactions + + 932 + 935 + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1752 + + EnemyFactions + + 991 + 992 + 943 + 529 + + EnemyMask + 7 + FriendFactions + + 993 + + FriendMask + 0 + ReactMask + 8 + + 1753 + + EnemyFactions + + 991 + 992 + 943 + 529 + + EnemyMask + 7 + FriendFactions + + 993 + + FriendMask + 0 + ReactMask + 8 + + 1754 + + EnemyFactions + + 991 + 992 + 943 + 529 + + EnemyMask + 7 + FriendFactions + + 993 + + FriendMask + 0 + ReactMask + 8 + + 1755 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 991 + 992 + + FriendMask + 2 + ReactMask + 2 + + 1756 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 991 + 992 + + FriendMask + 2 + ReactMask + 2 + + 1757 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 991 + 992 + + FriendMask + 2 + ReactMask + 2 + + 1758 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 992 + 991 + + FriendMask + 4 + ReactMask + 4 + + 1759 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 992 + 991 + + FriendMask + 4 + ReactMask + 4 + + 1760 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 992 + 991 + + FriendMask + 4 + ReactMask + 4 + + 1761 + + EnemyFactions + + 994 + + EnemyMask + 15 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1762 + + EnemyFactions + + 996 + 997 + 998 + 994 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1763 + + EnemyFactions + + 997 + 998 + 994 + 995 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1764 + + EnemyFactions + + 998 + 994 + 995 + 996 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1765 + + EnemyFactions + + 994 + 995 + 996 + 997 + + EnemyMask + 7 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1766 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 0 + + 1767 + + EnemyFactions + + 993 + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 0 + + 1768 + + EnemyFactions + + 14 + 529 + + EnemyMask + 15 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 0 + + 1769 + + EnemyFactions + + 14 + 529 + + EnemyMask + 15 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 0 + + 1770 + + EnemyFactions + + 960 + + EnemyMask + 0 + FriendFactions + + 959 + + FriendMask + 1 + ReactMask + 0 + + 1771 + + EnemyFactions + + 959 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 1772 + + EnemyFactions + + 968 + + EnemyMask + 1 + FriendFactions + + 999 + + FriendMask + 0 + ReactMask + 8 + + 1773 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1000 + + FriendMask + 1 + ReactMask + 0 + + 1774 + + EnemyFactions + + 1000 + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1775 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 935 + + FriendMask + 0 + ReactMask + 1 + + 1776 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1777 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1778 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 990 + + FriendMask + 0 + ReactMask + 0 + + 1779 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 989 + + FriendMask + 0 + ReactMask + 0 + + 1780 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1781 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1782 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1783 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1784 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1785 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1786 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 1787 + + EnemyFactions + + 994 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1788 + + EnemyFactions + + 968 + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1789 + + EnemyFactions + + 933 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1790 + + EnemyFactions + + 929 + + EnemyMask + 1 + FriendFactions + + 1001 + + FriendMask + 0 + ReactMask + 8 + + 1791 + + EnemyFactions + + 1001 + + EnemyMask + 1 + FriendFactions + + 929 + + FriendMask + 0 + ReactMask + 8 + + 1792 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 943 + + FriendMask + 0 + ReactMask + 8 + + 1793 + + EnemyFactions + + 930 + + EnemyMask + 7 + FriendFactions + + 968 + + FriendMask + 0 + ReactMask + 8 + + 1794 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 0 + + 1795 + + EnemyFactions + + 956 + + EnemyMask + 0 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 0 + + 1796 + + EnemyFactions + + 1003 + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1797 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 0 + + 1798 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 968 + 1004 + + FriendMask + 0 + ReactMask + 8 + + 1799 + + EnemyFactions + + 956 + + EnemyMask + 1 + FriendFactions + + 1002 + + FriendMask + 0 + ReactMask + 8 + + 18 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 19 + + FriendMask + 0 + ReactMask + 8 + + 1800 + + EnemyFactions + + 1002 + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1801 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 1802 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1803 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1804 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1805 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 1 + ReactMask + 1 + + 1806 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1807 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1003 + + FriendMask + 1 + ReactMask + 1 + + 1808 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1007 + + FriendMask + 0 + ReactMask + 8 + + 1809 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1009 + + FriendMask + 0 + ReactMask + 8 + + 1810 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1006 + + FriendMask + 0 + ReactMask + 8 + + 1811 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1008 + + FriendMask + 0 + ReactMask + 8 + + 1812 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1813 + + EnemyFactions + + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1814 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1815 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 29 + + FriendMask + 0 + ReactMask + 8 + + 1816 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 1818 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1011 + + FriendMask + 0 + ReactMask + 0 + + 1819 + + EnemyFactions + + 73 + + EnemyMask + 12 + FriendFactions + + 471 + + FriendMask + 2 + ReactMask + 2 + + 1820 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1012 + + FriendMask + 0 + ReactMask + 0 + + 1821 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1013 + + FriendMask + 1 + ReactMask + 0 + + 1822 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1013 + + FriendMask + 1 + ReactMask + 0 + + 1823 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 956 + + FriendMask + 0 + ReactMask + 8 + + 1824 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1015 + + FriendMask + 0 + ReactMask + 0 + + 1825 + + EnemyFactions + + 14 + 529 + + EnemyMask + 15 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 0 + + 1826 + + EnemyFactions + + 73 + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1827 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1016 + + FriendMask + 0 + ReactMask + 8 + + 1828 + + EnemyFactions + + 1016 + + EnemyMask + 0 + FriendFactions + + 1017 + + FriendMask + 0 + ReactMask + 0 + + 1829 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1018 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1830 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1019 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1831 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1020 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1832 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1021 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1833 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1022 + 14 + + FriendMask + 1 + ReactMask + 0 + + 1834 + + EnemyFactions + + 14 + 1010 + + EnemyMask + 15 + FriendFactions + + 1023 + + FriendMask + 0 + ReactMask + 0 + + 1835 + + EnemyFactions + + 73 + + EnemyMask + 10 + FriendFactions + + 471 + + FriendMask + 4 + ReactMask + 4 + + 1836 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 933 + + FriendMask + 0 + ReactMask + 1 + + 1837 + + EnemyFactions + + 971 + + EnemyMask + 8 + FriendFactions + + 970 + + FriendMask + 0 + ReactMask + 1 + + 1838 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1839 + + EnemyFactions + + 1025 + + EnemyMask + 1 + FriendFactions + + 1024 + + FriendMask + 0 + ReactMask + 8 + + 1840 + + EnemyFactions + + 1024 + + EnemyMask + 0 + FriendFactions + + 1025 + + FriendMask + 7 + ReactMask + 1 + + 1841 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1026 + + FriendMask + 1 + ReactMask + 0 + + 1842 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1843 + + EnemyFactions + + 932 + 934 + 1033 + 1012 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1844 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1845 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1846 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1028 + + FriendMask + 0 + ReactMask + 8 + + 1847 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1848 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1849 + + EnemyFactions + + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1850 + + EnemyFactions + + 52 + + EnemyMask + 0 + FriendFactions + + 1015 + + FriendMask + 0 + ReactMask + 0 + + 1851 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1011 + + FriendMask + 0 + ReactMask + 1 + + 1852 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 963 + 964 + 1029 + + FriendMask + 1 + ReactMask + 0 + + 1853 + + EnemyFactions + + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1854 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + + FriendMask + 0 + ReactMask + 0 + + 1855 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 934 + 932 + + FriendMask + 0 + ReactMask + 0 + + 1856 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1031 + + FriendMask + 0 + ReactMask + 1 + + 1857 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1032 + + FriendMask + 1 + ReactMask + 1 + + 1858 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1859 + + EnemyFactions + + 1030 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1860 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1034 + + FriendMask + 1 + ReactMask + 0 + + 1862 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1863 + + EnemyFactions + + 1015 + 1036 + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1864 + + EnemyFactions + + 52 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1865 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1866 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 1012 + + FriendMask + 0 + ReactMask + 1 + + 1867 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1868 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + 966 + + FriendMask + 1 + ReactMask + 0 + + 1869 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1870 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1031 + + FriendMask + 0 + ReactMask + 1 + + 1871 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1872 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1038 + + FriendMask + 0 + ReactMask + 1 + + 1873 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1024 + + FriendMask + 0 + ReactMask + 8 + + 1874 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1038 + + FriendMask + 0 + ReactMask + 1 + + 1875 + + EnemyFactions + + 52 + + EnemyMask + 0 + FriendFactions + + 932 + + FriendMask + 0 + ReactMask + 0 + + 1876 + + EnemyFactions + + 52 + + EnemyMask + 0 + FriendFactions + + 934 + + FriendMask + 0 + ReactMask + 0 + + 1877 + + EnemyFactions + + 1015 + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1878 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1041 + + FriendMask + 0 + ReactMask + 8 + + 1879 + + EnemyFactions + + 1031 + + EnemyMask + 1 + FriendFactions + + 1042 + + FriendMask + 0 + ReactMask + 8 + + 188 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 148 + 28 + + FriendMask + 0 + ReactMask + 0 + + 1880 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 1881 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1035 + + FriendMask + 0 + ReactMask + 8 + + 1882 + + EnemyFactions + + 1023 + + EnemyMask + 1 + FriendFactions + + 1010 + + FriendMask + 0 + ReactMask + 8 + + 1883 + + EnemyFactions + + EnemyMask + 7 + FriendFactions + + 1044 + + FriendMask + 0 + ReactMask + 8 + + 1884 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 8 + ReactMask + 8 + + 1885 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1886 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 7 + + FriendMask + 0 + ReactMask + 8 + + 1887 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 7 + 7 + + FriendMask + 0 + ReactMask + 8 + + 1888 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1046 + + FriendMask + 8 + ReactMask + 8 + + 1889 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1048 + + FriendMask + 0 + ReactMask + 8 + + 189 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1890 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1049 + + FriendMask + 0 + ReactMask + 8 + + 1891 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1892 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 1893 + + EnemyFactions + + 1045 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1894 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1895 + + EnemyFactions + + 1050 + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1896 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 1032 + + FriendMask + 1 + ReactMask + 1 + + 1897 + + EnemyFactions + + 1045 + 1050 + + EnemyMask + 2 + FriendFactions + + 1052 + 1067 + + FriendMask + 4 + ReactMask + 4 + + 1898 + + EnemyFactions + + 1067 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 1899 + + EnemyFactions + + 1067 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 19 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 17 + + FriendMask + 0 + ReactMask + 8 + + 190 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1900 + + EnemyFactions + + 1053 + + EnemyMask + 2 + FriendFactions + + 1052 + 1067 + + FriendMask + 4 + ReactMask + 4 + + 1901 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1052 + + FriendMask + 4 + ReactMask + 4 + + 1902 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1904 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1905 + + EnemyFactions + + 1054 + + EnemyMask + 0 + FriendFactions + + 1055 + + FriendMask + 0 + ReactMask + 0 + + 1906 + + EnemyFactions + + 1055 + + EnemyMask + 1 + FriendFactions + + 1054 + + FriendMask + 0 + ReactMask + 8 + + 1907 + + EnemyFactions + + 949 + + EnemyMask + 8 + FriendFactions + + 948 + + FriendMask + 0 + ReactMask + 1 + + 1908 + + EnemyFactions + + 949 + + EnemyMask + 0 + FriendFactions + + 948 + + FriendMask + 0 + ReactMask + 1 + + 1909 + + EnemyFactions + + 14 + + EnemyMask + 9 + FriendFactions + + 42 + + FriendMask + 0 + ReactMask + 0 + + 1910 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1056 + + FriendMask + 1 + ReactMask + 0 + + 1911 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1057 + + FriendMask + 1 + ReactMask + 0 + + 1912 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1058 + + FriendMask + 1 + ReactMask + 1 + + 1913 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1059 + + FriendMask + 7 + ReactMask + 0 + + 1914 + + EnemyFactions + + 1067 + 1085 + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 1915 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1060 + + FriendMask + 0 + ReactMask + 0 + + 1916 + + EnemyFactions + + 1010 + + EnemyMask + 0 + FriendFactions + + 932 + 934 + 1012 + 1033 + + FriendMask + 1 + ReactMask + 0 + + 1917 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 7 + + FriendMask + 0 + ReactMask + 0 + + 1918 + + EnemyFactions + + 679 + + EnemyMask + 2 + FriendFactions + + 1052 + + FriendMask + 4 + ReactMask + 4 + + 1919 + + EnemyFactions + + 1063 + + EnemyMask + 1 + FriendFactions + + 1062 + + FriendMask + 0 + ReactMask + 8 + + 1920 + + EnemyFactions + + 1062 + + EnemyMask + 4 + FriendFactions + + 1063 + + FriendMask + 0 + ReactMask + 3 + + 1921 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 1922 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 1923 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 1924 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1065 + + FriendMask + 0 + ReactMask + 8 + + 1925 + + EnemyFactions + + 14 + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 1926 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1068 + + FriendMask + 0 + ReactMask + 2 + + 1927 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1068 + + FriendMask + 0 + ReactMask + 2 + + 1928 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1067 + 1052 + + FriendMask + 0 + ReactMask + 4 + + 1929 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1067 + 1052 + + FriendMask + 0 + ReactMask + 4 + + 1930 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1069 + + FriendMask + 0 + ReactMask + 0 + + 1931 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1070 + + FriendMask + 0 + ReactMask + 0 + + 1932 + + EnemyFactions + + 14 + + EnemyMask + 15 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 0 + + 1933 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 4 + ReactMask + 0 + + 1934 + + EnemyFactions + + 960 + + EnemyMask + 4 + FriendFactions + + 959 + + FriendMask + 2 + ReactMask + 2 + + 1935 + + EnemyFactions + + 960 + + EnemyMask + 2 + FriendFactions + + 959 + + FriendMask + 4 + ReactMask + 4 + + 1936 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1937 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1938 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1939 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1940 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1941 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1942 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 1943 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1944 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1945 + + EnemyFactions + + EnemyMask + 15 + FriendFactions + + 1071 + 551 + 189 + + FriendMask + 15 + ReactMask + 15 + + 1947 + + EnemyFactions + + EnemyMask + 15 + FriendFactions + + 1071 + 551 + 189 + + FriendMask + 15 + ReactMask + 15 + + 1948 + + EnemyFactions + + 469 + + EnemyMask + 1 + FriendFactions + + 921 + + FriendMask + 2 + ReactMask + 1 + + 1949 + + EnemyFactions + + 1046 + + EnemyMask + 0 + FriendFactions + + 1073 + + FriendMask + 0 + ReactMask + 0 + + 1950 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1073 + + FriendMask + 0 + ReactMask + 0 + + 1951 + + EnemyFactions + + 22 + 29 + + EnemyMask + 12 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 1952 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1074 + + FriendMask + 1 + ReactMask + 0 + + 1953 + + EnemyFactions + + 974 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 1954 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1076 + + FriendMask + 0 + ReactMask + 8 + + 1955 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1076 + + FriendMask + 0 + ReactMask + 8 + + 1956 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1077 + + FriendMask + 0 + ReactMask + 1 + + 1957 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1077 + + FriendMask + 0 + ReactMask + 1 + + 1958 + + EnemyFactions + + 959 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 8 + + 1959 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 1 + ReactMask + 0 + + 1960 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1077 + + FriendMask + 0 + ReactMask + 1 + + 1961 + + EnemyFactions + + 1078 + + EnemyMask + 0 + FriendFactions + + FriendMask + 15 + ReactMask + 0 + + 1962 + + EnemyFactions + + 73 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1963 + + EnemyFactions + + 20 + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 1964 + + EnemyFactions + + 73 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1965 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1966 + + EnemyFactions + + 60 + + EnemyMask + 0 + FriendFactions + + 19 + + FriendMask + 0 + ReactMask + 8 + + 1967 + + EnemyFactions + + 1077 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 1 + + 1968 + + EnemyFactions + + 19 + + EnemyMask + 8 + FriendFactions + + 1079 + + FriendMask + 0 + ReactMask + 0 + + 1969 + + EnemyFactions + + 1079 + + EnemyMask + 1 + FriendFactions + + 19 + + FriendMask + 0 + ReactMask + 8 + + 1970 + + EnemyFactions + + 1079 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1971 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1080 + + FriendMask + 1 + ReactMask + 0 + + 1972 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1973 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1974 + + EnemyFactions + + 1084 + 20 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 1975 + + EnemyFactions + + 1050 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1976 + + EnemyFactions + + 679 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 1977 + + EnemyFactions + + 1050 + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 1978 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1979 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1980 + + EnemyFactions + + 20 + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1981 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 1982 + + EnemyFactions + + 1085 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1983 + + EnemyFactions + + 966 + + EnemyMask + 1 + FriendFactions + + 965 + + FriendMask + 8 + ReactMask + 8 + + 1984 + + EnemyFactions + + 965 + + EnemyMask + 1 + FriendFactions + + 966 + + FriendMask + 8 + ReactMask + 8 + + 1985 + + EnemyFactions + + 20 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 1986 + + EnemyFactions + + 1057 + 1058 + 1056 + + EnemyMask + 8 + FriendFactions + + 40 + + FriendMask + 1 + ReactMask + 1 + + 1987 + + EnemyFactions + + 1086 + + EnemyMask + 8 + FriendFactions + + 942 + 148 + + FriendMask + 0 + ReactMask + 1 + + 1988 + + EnemyFactions + + 1050 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 1989 + + EnemyFactions + + 148 + 942 + + EnemyMask + 1 + FriendFactions + + 1086 + + FriendMask + 0 + ReactMask + 8 + + 1990 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 148 + 942 + + FriendMask + 0 + ReactMask + 8 + + 1991 + + EnemyFactions + + 14 + 148 + + EnemyMask + 7 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 0 + + 1992 + + EnemyFactions + + 14 + + EnemyMask + 9 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 1993 + + EnemyFactions + + 966 + + EnemyMask + 4 + FriendFactions + + 965 + + FriendMask + 2 + ReactMask + 2 + + 1994 + + EnemyFactions + + 965 + + EnemyMask + 4 + FriendFactions + + 966 + + FriendMask + 2 + ReactMask + 2 + + 1995 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1059 + + FriendMask + 5 + ReactMask + 0 + + 1997 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1059 + + FriendMask + 3 + ReactMask + 0 + + 1998 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1087 + + FriendMask + 0 + ReactMask + 8 + + 1999 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 2 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 20 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 16 + + FriendMask + 0 + ReactMask + 8 + + 2000 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 974 + + FriendMask + 0 + ReactMask + 8 + + 2001 + + EnemyFactions + + 1089 + + EnemyMask + 1 + FriendFactions + + 1088 + + FriendMask + 8 + ReactMask + 8 + + 2003 + + EnemyFactions + + 1088 + + EnemyMask + 1 + FriendFactions + + 1089 + + FriendMask + 8 + ReactMask + 8 + + 2004 + + EnemyFactions + + 20 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 2005 + + EnemyFactions + + 1050 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2006 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2007 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2008 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2009 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1090 + + FriendMask + 0 + ReactMask + 0 + + 2010 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2011 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2012 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2013 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2014 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1092 + + FriendMask + 0 + ReactMask + 0 + + 2016 + + EnemyFactions + + 20 + + EnemyMask + 0 + FriendFactions + + 1092 + + FriendMask + 0 + ReactMask + 0 + + 2017 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1092 + + FriendMask + 0 + ReactMask + 0 + + 2018 + + EnemyFactions + + 1092 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2019 + + EnemyFactions + + 20 + + EnemyMask + 2 + FriendFactions + + 1064 + + FriendMask + 4 + ReactMask + 0 + + 2020 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 4 + ReactMask + 4 + + 2021 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1082 + + FriendMask + 2 + ReactMask + 3 + + 2022 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2023 + + EnemyFactions + + 14 + 148 + + EnemyMask + 7 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 2024 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1067 + + FriendMask + 0 + ReactMask + 5 + + 2025 + + EnemyFactions + + 67 + + EnemyMask + 4 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2026 + + EnemyFactions + + 67 + + EnemyMask + 4 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2027 + + EnemyFactions + + 67 + + EnemyMask + 4 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2028 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 1 + ReactMask + 0 + + 2029 + + EnemyFactions + + 974 + 28 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 2030 + + EnemyFactions + + 974 + 28 + + EnemyMask + 1 + FriendFactions + + 973 + + FriendMask + 0 + ReactMask + 8 + + 2031 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 148 + + FriendMask + 4 + ReactMask + 4 + + 2032 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 1095 + + FriendMask + 2 + ReactMask + 0 + + 2033 + + EnemyFactions + + 56 + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 2034 + + EnemyFactions + + 1095 + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 0 + ReactMask + 4 + + 2035 + + EnemyFactions + + 31 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2036 + + EnemyFactions + + 20 + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 2037 + + EnemyFactions + + 148 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 2 + + 2038 + + EnemyFactions + + 1050 + + EnemyMask + 0 + FriendFactions + + 148 + + FriendMask + 0 + ReactMask + 8 + + 2039 + + EnemyFactions + + 1050 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2040 + + EnemyFactions + + 14 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 3 + + 2041 + + EnemyFactions + + 20 + + EnemyMask + 0 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2042 + + EnemyFactions + + 1091 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2043 + + EnemyFactions + + 1050 + 1085 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2044 + + EnemyFactions + + 20 + + EnemyMask + 4 + FriendFactions + + 1050 + + FriendMask + 2 + ReactMask + 1 + + 2045 + + EnemyFactions + + 20 + + EnemyMask + 2 + FriendFactions + + 1085 + + FriendMask + 4 + ReactMask + 0 + + 2046 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 2047 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 2048 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 8 + + 2049 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 928 + 20 + + FriendMask + 0 + ReactMask + 0 + + 2050 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1098 + + FriendMask + 0 + ReactMask + 1 + + 2051 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1098 + + FriendMask + 0 + ReactMask + 1 + + 2052 + + EnemyFactions + + 1050 + 1085 + 1101 + 1100 + + EnemyMask + 0 + FriendFactions + + 1099 + + FriendMask + 1 + ReactMask + 8 + + 2053 + + EnemyFactions + + 20 + 1099 + + EnemyMask + 0 + FriendFactions + + 1100 + + FriendMask + 6 + ReactMask + 1 + + 2054 + + EnemyFactions + + 20 + 1099 + + EnemyMask + 0 + FriendFactions + + 1101 + + FriendMask + 6 + ReactMask + 0 + + 2055 + + EnemyFactions + + 966 + + EnemyMask + 2 + FriendFactions + + 965 + + FriendMask + 4 + ReactMask + 4 + + 2056 + + EnemyFactions + + 965 + + EnemyMask + 2 + FriendFactions + + 966 + + FriendMask + 4 + ReactMask + 4 + + 2057 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1066 + + FriendMask + 0 + ReactMask + 8 + + 2058 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1102 + + FriendMask + 7 + ReactMask + 0 + + 2059 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1103 + + FriendMask + 7 + ReactMask + 0 + + 2060 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1104 + + FriendMask + 0 + ReactMask + 0 + + 2061 + + EnemyFactions + + 1105 + + EnemyMask + 0 + FriendFactions + + 1104 + + FriendMask + 0 + ReactMask + 0 + + 2062 + + EnemyFactions + + 1105 + + EnemyMask + 0 + FriendFactions + + 1104 + + FriendMask + 0 + ReactMask + 0 + + 2063 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2064 + + EnemyFactions + + 1104 + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2065 + + EnemyFactions + + 14 + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2066 + + EnemyFactions + + 1104 + + EnemyMask + 0 + FriendFactions + + 1105 + + FriendMask + 0 + ReactMask + 0 + + 2067 + + EnemyFactions + + 14 + + EnemyMask + 8 + FriendFactions + + 1091 + + FriendMask + 0 + ReactMask + 0 + + 2068 + + EnemyFactions + + 1107 + 1106 + 959 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2069 + + EnemyFactions + + 1106 + 20 + + EnemyMask + 7 + FriendFactions + + 1107 + + FriendMask + 0 + ReactMask + 8 + + 2070 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2071 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2072 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2073 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 2074 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 986 + 987 + + FriendMask + 0 + ReactMask + 8 + + 2075 + + EnemyFactions + + 1108 + + EnemyMask + 1 + FriendFactions + + 1110 + + FriendMask + 0 + ReactMask + 8 + + 2076 + + EnemyFactions + + 1110 + 1109 + + EnemyMask + 0 + FriendFactions + + 1108 + + FriendMask + 1 + ReactMask + 0 + + 2077 + + EnemyFactions + + 1110 + 1109 + + EnemyMask + 0 + FriendFactions + + 1108 + + FriendMask + 1 + ReactMask + 0 + + 2078 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1109 + + FriendMask + 0 + ReactMask + 0 + + 2079 + + EnemyFactions + + 1110 + 1109 + + EnemyMask + 0 + FriendFactions + + 1108 + + FriendMask + 1 + ReactMask + 0 + + 208 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 168 + + FriendMask + 2 + ReactMask + 2 + + 2080 + + EnemyFactions + + 1111 + + EnemyMask + 7 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2081 + + EnemyFactions + + 20 + + EnemyMask + 0 + FriendFactions + + 1111 + + FriendMask + 1 + ReactMask + 0 + + 2082 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2083 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2084 + + EnemyFactions + + 529 + 56 + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2085 + + EnemyFactions + + 529 + 56 + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2086 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 8 + + 2087 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 8 + + 2088 + + EnemyFactions + + 20 + 56 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 2089 + + EnemyFactions + + 20 + 529 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 209 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 168 + + FriendMask + 2 + ReactMask + 2 + + 2090 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1112 + + FriendMask + 0 + ReactMask + 2 + + 2091 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1113 + + FriendMask + 0 + ReactMask + 4 + + 2092 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 1114 + + FriendMask + 1 + ReactMask + 0 + + 2093 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2094 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2095 + + EnemyFactions + + 20 + 529 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 2096 + + EnemyFactions + + 20 + 529 + + EnemyMask + 0 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 0 + + 2097 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 2098 + + EnemyFactions + + 1115 + + EnemyMask + 1 + FriendFactions + + 1116 + + FriendMask + 0 + ReactMask + 8 + + 2099 + + EnemyFactions + + 1116 + + EnemyMask + 1 + FriendFactions + + 1115 + + FriendMask + 0 + ReactMask + 8 + + 21 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 210 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 2 + + 2100 + + EnemyFactions + + 529 + 56 + + EnemyMask + 8 + FriendFactions + + 20 + + FriendMask + 1 + ReactMask + 0 + + 2101 + + EnemyFactions + + 959 + + EnemyMask + 0 + FriendFactions + + 960 + + FriendMask + 1 + ReactMask + 0 + + 2102 + + EnemyFactions + + 959 + + EnemyMask + 1 + FriendFactions + + 960 + + FriendMask + 0 + ReactMask + 0 + + 2103 + + EnemyFactions + + 20 + 529 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 2104 + + EnemyFactions + + 966 + + EnemyMask + 0 + FriendFactions + + 965 + + FriendMask + 1 + ReactMask + 1 + + 2105 + + EnemyFactions + + 965 + + EnemyMask + 0 + FriendFactions + + 966 + + FriendMask + 1 + ReactMask + 1 + + 2106 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 148 + + FriendMask + 0 + ReactMask + 8 + + 2107 + + EnemyFactions + + 1120 + 1121 + + EnemyMask + 0 + FriendFactions + + 1119 + + FriendMask + 0 + ReactMask + 8 + + 2108 + + EnemyFactions + + 1119 + + EnemyMask + 1 + FriendFactions + + 1120 + + FriendMask + 0 + ReactMask + 8 + + 2109 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2110 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 2111 + + EnemyFactions + + 31 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2112 + + EnemyFactions + + 1121 + + EnemyMask + 0 + FriendFactions + + 1119 + + FriendMask + 0 + ReactMask + 8 + + 2113 + + EnemyFactions + + 1119 + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2114 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + 20 + + FriendMask + 0 + ReactMask + 8 + + 2115 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 8 + FriendFactions + + 959 + + FriendMask + 1 + ReactMask + 0 + + 2116 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 1045 + + FriendMask + 0 + ReactMask + 8 + + 2117 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 8 + FriendFactions + + 959 + + FriendMask + 1 + ReactMask + 0 + + 2118 + + EnemyFactions + + 1120 + + EnemyMask + 0 + FriendFactions + + 1122 + + FriendMask + 0 + ReactMask + 0 + + 2119 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 965 + 966 + 1123 + + FriendMask + 0 + ReactMask + 8 + + 2120 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 965 + 966 + 1123 + + FriendMask + 0 + ReactMask + 8 + + 2121 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2122 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2123 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2124 + + EnemyFactions + + 1119 + + EnemyMask + 1 + FriendFactions + + 14 + + FriendMask + 0 + ReactMask + 8 + + 2125 + + EnemyFactions + + 148 + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2126 + + EnemyFactions + + 148 + + EnemyMask + 1 + FriendFactions + + 1121 + + FriendMask + 0 + ReactMask + 8 + + 2127 + + EnemyFactions + + 1121 + + EnemyMask + 0 + FriendFactions + + 148 + + FriendMask + 0 + ReactMask + 0 + + 2128 + + EnemyFactions + + 1125 + + EnemyMask + 0 + FriendFactions + + 1125 + + FriendMask + 1 + ReactMask + 0 + + 2129 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + 1124 + + FriendMask + 4 + ReactMask + 4 + + 2130 + + EnemyFactions + + 67 + + EnemyMask + 12 + FriendFactions + + 1094 + + FriendMask + 2 + ReactMask + 3 + + 2131 + + EnemyFactions + + 1107 + 20 + + EnemyMask + 0 + FriendFactions + + 1106 + + FriendMask + 0 + ReactMask + 0 + + 22 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 22 + + FriendMask + 0 + ReactMask + 8 + + 23 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 230 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 573 + + FriendMask + 0 + ReactMask + 8 + + 231 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 232 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 233 + + EnemyFactions + + 68 + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 24 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 24 + + FriendMask + 0 + ReactMask + 8 + + 25 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 25 + + FriendMask + 0 + ReactMask + 8 + + 250 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + FriendMask + 1 + ReactMask + 1 + + 26 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 25 + + FriendMask + 0 + ReactMask + 8 + + 27 + + EnemyFactions + + 1 + + EnemyMask + 1 + FriendFactions + + 15 + + FriendMask + 0 + ReactMask + 8 + + 270 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 229 + + FriendMask + 0 + ReactMask + 8 + + 28 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 26 + + FriendMask + 0 + ReactMask + 8 + + 29 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 290 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 1 + ReactMask + 1 + + 3 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 30 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 27 + + FriendMask + 0 + ReactMask + 8 + + 31 + + EnemyFactions + + 973 + + EnemyMask + 0 + FriendFactions + + 148 + 28 + + FriendMask + 0 + ReactMask + 0 + + 310 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 249 + + FriendMask + 0 + ReactMask + 8 + + 311 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 249 + + FriendMask + 0 + ReactMask + 8 + + 312 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 22 + + FriendMask + 0 + ReactMask + 8 + + 32 + + EnemyFactions + + 28 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 33 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 330 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 229 + + FriendMask + 0 + ReactMask + 8 + + 34 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 15 + + FriendMask + 0 + ReactMask + 8 + + 35 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 31 + + FriendMask + 1 + ReactMask + 0 + + 350 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 88 + + FriendMask + 0 + ReactMask + 8 + + 36 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 32 + + FriendMask + 0 + ReactMask + 0 + + 37 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 33 + + FriendMask + 0 + ReactMask + 8 + + 370 + + EnemyFactions + + 912 + + EnemyMask + 1 + FriendFactions + + 915 + + FriendMask + 8 + ReactMask + 8 + + 371 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 269 + + FriendMask + 2 + ReactMask + 2 + + 38 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 29 + + FriendMask + 0 + ReactMask + 8 + + 39 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 18 + + FriendMask + 0 + ReactMask + 8 + + 390 + + EnemyFactions + + 60 + + EnemyMask + 0 + FriendFactions + + 21 + + FriendMask + 0 + ReactMask + 0 + + 4 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 40 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 34 + + FriendMask + 0 + ReactMask + 8 + + 41 + + EnemyFactions + + 36 + + EnemyMask + 1 + FriendFactions + + 35 + + FriendMask + 0 + ReactMask + 8 + + 410 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 43 + + FriendMask + 0 + ReactMask + 8 + + 411 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 310 + + FriendMask + 0 + ReactMask + 8 + + 412 + + EnemyFactions + + 509 + + EnemyMask + 2 + FriendFactions + + 510 + + FriendMask + 4 + ReactMask + 4 + + 413 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 309 + + FriendMask + 0 + ReactMask + 8 + + 414 + + EnemyFactions + + 65 + + EnemyMask + 1 + FriendFactions + + 576 + + FriendMask + 0 + ReactMask + 8 + + 415 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 311 + + FriendMask + 0 + ReactMask + 8 + + 416 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 42 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 36 + + FriendMask + 1 + ReactMask + 1 + + 43 + + EnemyFactions + + 36 + + EnemyMask + 0 + FriendFactions + + 35 + + FriendMask + 0 + ReactMask + 8 + + 430 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 44 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 37 + + FriendMask + 0 + ReactMask + 8 + + 45 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 38 + + FriendMask + 0 + ReactMask + 8 + + 450 + + EnemyFactions + + 40 + + EnemyMask + 1 + FriendFactions + + 229 + + FriendMask + 0 + ReactMask + 8 + + 46 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 39 + + FriendMask + 0 + ReactMask + 8 + + 47 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 41 + + FriendMask + 0 + ReactMask + 8 + + 470 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 471 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 349 + + FriendMask + 0 + ReactMask + 0 + + 472 + + EnemyFactions + + 349 + + EnemyMask + 1 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 8 + + 473 + + EnemyFactions + + 70 + + EnemyMask + 0 + FriendFactions + + 349 + + FriendMask + 0 + ReactMask + 0 + + 474 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 369 + + FriendMask + 0 + ReactMask + 0 + + 475 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 369 + + FriendMask + 0 + ReactMask + 1 + + 48 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 42 + + FriendMask + 0 + ReactMask + 8 + + 49 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 43 + + FriendMask + 0 + ReactMask + 8 + + 494 + + EnemyFactions + + 53 + + EnemyMask + 1 + FriendFactions + + 389 + + FriendMask + 0 + ReactMask + 8 + + 495 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 40 + + FriendMask + 1 + ReactMask + 1 + + 5 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 50 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 44 + + FriendMask + 0 + ReactMask + 8 + + 51 + + EnemyFactions + + 46 + 40 + + EnemyMask + 1 + FriendFactions + + 45 + + FriendMask + 0 + ReactMask + 8 + + 514 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 409 + + FriendMask + 0 + ReactMask + 8 + + 52 + + EnemyFactions + + 770 + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 53 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 49 + + FriendMask + 2 + ReactMask + 2 + + 534 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 54 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 48 + + FriendMask + 0 + ReactMask + 8 + + 55 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 47 + + FriendMask + 2 + ReactMask + 2 + + 554 + + EnemyFactions + + EnemyMask + 7 + FriendFactions + + 429 + + FriendMask + 0 + ReactMask + 8 + + 56 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + 49 + + FriendMask + 2 + ReactMask + 2 + + 57 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 574 + + EnemyFactions + + 450 + + EnemyMask + 1 + FriendFactions + + 449 + + FriendMask + 0 + ReactMask + 8 + + 575 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 450 + + FriendMask + 0 + ReactMask + 8 + + 58 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 59 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 32 + + FriendMask + 0 + ReactMask + 8 + + 594 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 6 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 60 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 50 + + FriendMask + 0 + ReactMask + 8 + + 61 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 51 + + FriendMask + 0 + ReactMask + 8 + + 614 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 36 + + FriendMask + 1 + ReactMask + 0 + + 62 + + EnemyFactions + + 1015 + 932 + 934 + + EnemyMask + 1 + FriendFactions + + 52 + + FriendMask + 0 + ReactMask + 8 + + 63 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 53 + + FriendMask + 0 + ReactMask + 8 + + 634 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 635 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 0 + + 636 + + EnemyFactions + + 65 + + EnemyMask + 1 + FriendFactions + + 576 + + FriendMask + 0 + ReactMask + 8 + + 637 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 470 + + FriendMask + 0 + ReactMask + 1 + + 64 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 65 + + EnemyFactions + + 45 + + EnemyMask + 0 + FriendFactions + + 76 + + FriendMask + 0 + ReactMask + 0 + + 654 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 82 + + FriendMask + 0 + ReactMask + 8 + + 655 + + EnemyFactions + + EnemyMask + 5 + FriendFactions + + 90 + + FriendMask + 0 + ReactMask + 8 + + 66 + + EnemyFactions + + 28 + + EnemyMask + 1 + FriendFactions + + 55 + + FriendMask + 0 + ReactMask + 8 + + 67 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 674 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 48 + + FriendMask + 0 + ReactMask + 0 + + 68 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 69 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 470 + + FriendMask + 0 + ReactMask + 0 + + 694 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 189 + + FriendMask + 2 + ReactMask + 2 + + 695 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 749 + + FriendMask + 0 + ReactMask + 0 + + 7 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 70 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 57 + + FriendMask + 0 + ReactMask + 8 + + 71 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 714 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 72 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 58 + + FriendMask + 0 + ReactMask + 8 + + 73 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 669 + + FriendMask + 0 + ReactMask + 8 + + 734 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 48 + + FriendMask + 1 + ReactMask + 1 + + 735 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 489 + + FriendMask + 1 + ReactMask + 1 + + 736 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 489 + + FriendMask + 0 + ReactMask + 8 + + 74 + + EnemyFactions + + 289 + + EnemyMask + 1 + FriendFactions + + 60 + + FriendMask + 0 + ReactMask + 8 + + 754 + + EnemyFactions + + 34 + + EnemyMask + 1 + FriendFactions + + 48 + + FriendMask + 0 + ReactMask + 8 + + 76 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 61 + + FriendMask + 2 + ReactMask + 0 + + 77 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 774 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 775 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 776 + + EnemyFactions + + 249 + 80 + + EnemyMask + 0 + FriendFactions + + 910 + 531 + + FriendMask + 0 + ReactMask + 0 + + 777 + + EnemyFactions + + 915 + + EnemyMask + 0 + FriendFactions + + 912 + + FriendMask + 1 + ReactMask + 1 + + 778 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 511 + + FriendMask + 0 + ReactMask + 8 + + 78 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 79 + + EnemyFactions + + EnemyMask + 12 + FriendFactions + + FriendMask + 2 + ReactMask + 3 + + 794 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 795 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 572 + + FriendMask + 0 + ReactMask + 8 + + 80 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 69 + + FriendMask + 2 + ReactMask + 2 + + 81 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 64 + + FriendMask + 0 + ReactMask + 8 + + 814 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 529 + + FriendMask + 0 + ReactMask + 1 + + 82 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 65 + + FriendMask + 0 + ReactMask + 8 + + 83 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 834 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 84 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 85 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 854 + + EnemyFactions + + EnemyMask + 8 + FriendFactions + + 577 + + FriendMask + 0 + ReactMask + 1 + + 855 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 577 + + FriendMask + 0 + ReactMask + 0 + + 86 + + EnemyFactions + + 769 + + EnemyMask + 0 + FriendFactions + + 771 + + FriendMask + 1 + ReactMask + 0 + + 87 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 8 + + 874 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 875 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 876 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 877 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 5 + + 88 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 71 + + FriendMask + 2 + ReactMask + 2 + + 89 + + EnemyFactions + + 20 + + EnemyMask + 1 + FriendFactions + + 56 + + FriendMask + 0 + ReactMask + 8 + + 894 + + EnemyFactions + + EnemyMask + 4 + FriendFactions + + 108 + + FriendMask + 2 + ReactMask + 2 + + 90 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 91 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 74 + + FriendMask + 0 + ReactMask + 8 + + 914 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 0 + + 92 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 93 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 934 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 575 + + FriendMask + 0 + ReactMask + 8 + + 94 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 8 + ReactMask + 0 + + 95 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 78 + + FriendMask + 0 + ReactMask + 8 + + 954 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 73 + + FriendMask + 0 + ReactMask + 8 + + 96 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 2 + ReactMask + 2 + + 97 + + EnemyFactions + + 79 + + EnemyMask + 0 + FriendFactions + + 70 + + FriendMask + 0 + ReactMask + 8 + + 974 + + EnemyFactions + + EnemyMask + 1 + FriendFactions + + 20 + + FriendMask + 0 + ReactMask + 8 + + 98 + + EnemyFactions + + EnemyMask + 10 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 99 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + FriendMask + 0 + ReactMask + 8 + + 994 + + EnemyFactions + + EnemyMask + 0 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 0 + + 995 + + EnemyFactions + + EnemyMask + 2 + FriendFactions + + FriendMask + 4 + ReactMask + 4 + + 996 + + EnemyFactions + + 249 + + EnemyMask + 8 + FriendFactions + + 609 + + FriendMask + 0 + ReactMask + 1 + + + diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Female.png new file mode 100644 index 0000000..cf47eeb Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist b/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist new file mode 100644 index 0000000..628835a --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/French.lproj/Gathering.plist @@ -0,0 +1,544 @@ + + + + + Herbalism + + Fleur-de-liche + + Type + Herbalism + Skill + 425 + + Glacépine + + Type + Herbalism + Skill + 435 + + Lotus pourpre + + Type + Herbalism + Skill + 210 + + Larmes d'Arthas + + Type + Herbalism + Skill + 220 + + Soleillette + + Type + Herbalism + Skill + 230 + + Aveuglette + + Type + Herbalism + Skill + 235 + + Champignon fantôme + + Type + Herbalism + Skill + 245 + + Gromsang + + Type + Herbalism + Skill + 250 + + Feuillargent + + Type + Herbalism + Skill + 1 + + Pacifique + + Type + Herbalism + Skill + 1 + + Terrestrine + + Type + Herbalism + Skill + 15 + + Mage royal + + Type + Herbalism + Skill + 50 + + Eglantine + + Type + Herbalism + Skill + 70 + + Doulourante + + Type + Herbalism + Skill + 100 + + Aciérite sauvage + + Type + Herbalism + Skill + 115 + + Sang-royal + + Type + Herbalism + Skill + 125 + + Tombeline + + Type + Herbalism + Skill + 120 + + Sansam doré + + Type + Herbalism + Skill + 260 + + Feuillerêve + + Type + Herbalism + Skill + 270 + + Sauge-argent des montagnes + + Type + Herbalism + Skill + 280 + + Fleur de peste + + Type + Herbalism + Skill + 285 + + Calot de glace + + Type + Herbalism + Skill + 290 + + Lotus noir + + Type + Herbalism + Skill + 300 + + Chardon sanglant + + Type + Herbalism + Skill + 1 + + Gangrelette + + Type + Herbalism + Skill + 300 + + Glaurier + + Type + Herbalism + Skill + 315 + + Voile-misère + + Type + Herbalism + Skill + 325 + + Chapeflamme + + Type + Herbalism + Skill + 335 + + Terocône + + Type + Herbalism + Skill + 325 + + Lichen ancien + + Type + Herbalism + Skill + 340 + + Néantine + + Type + Herbalism + Skill + 350 + + Cauchemardelle + + Type + Herbalism + Skill + 365 + + Chardon de mana + + Type + Herbalism + Skill + 375 + + Buisson de pruinéante + + Type + Herbalism + Skill + 350 + + Vietérule + + Type + Herbalism + Skill + 150 + + Pâlerette + + Type + Herbalism + Skill + 160 + + Moustache de Khadgar + + Type + Herbalism + Skill + 185 + + Hivernale + + Type + Herbalism + Skill + 195 + + Etouffante + + Type + Herbalism + Skill + 85 + + Trèfle doré + + Type + Herbalism + Skill + 220 + + Verpérenne + + Type + Herbalism + Skill + 220 + + Langue de serpent + + Type + Herbalism + Skill + 220 + + Lys tigré + + Type + Herbalism + Skill + 220 + + Dorépine + + Type + Herbalism + Skill + 170 + + Fleur de feu + + Type + Herbalism + Skill + 205 + + + Mining + + Gisement de vrai-argent couvert de vase + + Type + Mining + Skill + 230 + + Gisement de mithril couvert de vase + + Type + Mining + Skill + 175 + + Filon de thorium couvert de limon + + Type + Mining + Skill + 245 + + Filon d'incendicite + + Type + Mining + Skill + 65 + + Gisement de sombrefer + + Type + Mining + Skill + 230 + + Filon de cuivre + + Type + Mining + Skill + 1 + + Filon d'étain + + Type + Mining + Skill + 65 + + Filon d'argent + + Type + Mining + Skill + 75 + + Filon d'or + + Type + Mining + Skill + 155 + + Gisement de fer + + Type + Mining + Skill + 125 + + Riche filon de thorium + + Type + Mining + Skill + 275 + + Riche filon de thorium couvert de limon + + Type + Mining + Skill + 275 + + Filon de thorium Hakkari + + Type + Mining + Skill + 275 + + Petit morceau d'obsidienne + + Type + Mining + Skill + 305 + + Grand morceau d'obsidienne + + Type + Mining + Skill + 305 + + Gisement de gangrefer + + Type + Mining + Skill + 300 + + Gisement d'adamantite + + Type + Mining + Skill + 325 + + Filon de khorium + + Type + Mining + Skill + 375 + + Riche gisement d'adamantite + + Type + Mining + Skill + 350 + + Ancien filon de gemmes + + Type + Mining + Skill + 375 + + Gisement de néanticite + + Type + Mining + Skill + 350 + + Filon d'indurium + + Type + Mining + Skill + 150 + + Gisement de mithril + + Type + Mining + Skill + 175 + + Gisement de vrai-argent + + Type + Mining + Skill + 230 + + Gisement de pierre de sang inférieure + + Type + Mining + Skill + 75 + + Petit filon de thorium + + Type + Mining + Skill + 245 + + Filon d'argent couvert de limon + + Type + Mining + Skill + 75 + + Filon d'or couvert de limon + + Type + Mining + Skill + 155 + + Gisement de saronite + + Type + Mining + Skill + 400 + + Riche gisement de saronite + + Type + Mining + Skill + 400 + + Veine de titane + + Type + Mining + Skill + 400 + + + + diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png b/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png new file mode 100644 index 0000000..7a8fdb2 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Friendly.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib new file mode 100644 index 0000000..e2dbdb8 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/GateCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png new file mode 100644 index 0000000..f68a948 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif new file mode 100644 index 0000000..2bbfc45 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png new file mode 100644 index 0000000..3821686 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif new file mode 100644 index 0000000..744505a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Gnome-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png new file mode 100644 index 0000000..ccda72b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/GossipGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict b/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict new file mode 100644 index 0000000..0c97f02 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/Growl Registration Ticket.growlRegDict @@ -0,0 +1,32 @@ + + + + + AllNotifications + + AddWaypoint + AddingUnit + KilledUnit + PlayerDied + PlayerLevelUp + BattlegroundEnter + BattlegroundLeave + FishCaught + PlayerReceivedMessage + + DefaultNotifications + + AddWaypoint + AddingUnit + KilledUnit + PlayerDied + PlayerLevelUp + BattlegroundEnter + BattlegroundLeave + FishCaught + PlayerReceivedMessage + + TicketVersion + 1 + + diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib new file mode 100644 index 0000000..52101d7 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/HealthCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif b/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif new file mode 100644 index 0000000..5ceed86 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/HordeCrest.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png b/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png new file mode 100644 index 0000000..197b9ec Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Hostile.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png b/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png new file mode 100644 index 0000000..325c90b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/HotkeyFinished.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png new file mode 100644 index 0000000..ab0e29a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif new file mode 100644 index 0000000..054236b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png new file mode 100644 index 0000000..b96fdb9 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif new file mode 100644 index 0000000..636b1ab Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Human-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png b/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png new file mode 100644 index 0000000..c243431 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Hunter.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif new file mode 100644 index 0000000..9315879 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Hunter_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png new file mode 100644 index 0000000..c8b2782 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Fishingpole_03.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png new file mode 100644 index 0000000..90db6be Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gear_01.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png new file mode 100644 index 0000000..413a774 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Gem_Bloodstone_01.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png new file mode 100644 index 0000000..a73db74 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Blue.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png new file mode 100644 index 0000000..5de5ad6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Head_Dragon_Bronze.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png new file mode 100644 index 0000000..264ee74 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/INV_Misc_Orb_05.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png b/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png new file mode 100644 index 0000000..d32537f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Innkeeper.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib new file mode 100644 index 0000000..bacaa7f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/InteractNPCAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib new file mode 100644 index 0000000..023e829 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/InteractObjectAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png b/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png new file mode 100644 index 0000000..b77010e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/InteractWithTarget.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png b/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png new file mode 100644 index 0000000..0f8836d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/InterfaceBars.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib new file mode 100644 index 0000000..6c705ff Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/InventoryCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib new file mode 100644 index 0000000..69ec353 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/InventoryFreeCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib new file mode 100644 index 0000000..54e482a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ItemAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib new file mode 100644 index 0000000..48d7f7f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/JumpAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib new file mode 100644 index 0000000..5c38439 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/JumpToWaypointAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png b/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png new file mode 100644 index 0000000..2c6504d Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Keybindings.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib b/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib new file mode 100644 index 0000000..801c0ed Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/LastSpellCast.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib new file mode 100644 index 0000000..6ba17fb Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/MacroAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist b/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist new file mode 100644 index 0000000..36d5a8c --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/Macros.plist @@ -0,0 +1,314 @@ + + + + + QueueForBattleground + + Macro + for i=1,GetNumBattlegroundTypes() do _,e,_,_,z=GetBattlegroundInfo(i); for j=1,#a do if (e==1 and a[j]==z) then tinsert(b,i); end end end if (#b>0) then RequestBattlegroundInstanceInfo(b[random(#b)]); end + Description + This will queue for battlegrounds! + + BGScrollUp + + Macro + /click PVPBattlegroundFrameTypeScrollFrameScrollBarScrollUpButton + Description + This will scroll up in the Battleground list + + PartyGreedLoot + + Macro + /click GroupLootFrame1GreedButton + Description + Roll greed on an item + + PartyNeedLoot + + Macro + /click GroupLootFrame1RollButton + Description + Roll need on an item + + PartyDisenchantLoot + + Macro + /click GroupLootFrame1DisenchantButton + Description + Roll disenchant on an item + + QuestCancel + + Macro + /click QuestFrameGoodbyeButton + Description + Click cancel + + QuestComplete + + Macro + /click QuestFrameCompleteQuestButton + Description + Complete quest + + QuestContinue + + Macro + /click QuestFrameCompleteButton + Description + Complete a quest when you are viewing the turn in panel + + QuestAccept + + Macro + /click QuestFrameAcceptButton + Description + Accept a quest once you're viewing it + + QuestClickGossip + + Macro + /click GossipTitleButton + Description + Clicks an initial gossip (we need to add an int to it) + + CompleteQuest + + Macro + /click QuestFrameCompleteQuestButton + Description + Complete quest + + Questing + + Macro + /script SelectGossipAvailableQuest(1) +/script SelectGossipActiveQuest(1) +/script CompleteQuest() +/script SelectGossipOption(1) +/script AcceptQuest() + Description + This will turn in and grab quests! + + RepairAllGuild + + Macro + /click MerchantGuildBankRepairButton; + Description + This will repair everything + + RepairAll + + Macro + /click MerchantRepairAllButton; + Description + This will repair everything + + AuctioneerClick + + Macro + /run if (AucAdvancedBuyPromptYes) then AucAdvancedBuyPromptYes:Click() end + Description + This will confirm purchase! + + SelectTarget + + Macro + /cleartarget +/targetlasttarget + Description + This will correctly target the mob + + LootItems2 + + Macro + /script LootSlot(6); +/script ConfirmLootSlot(6); +/script LootSlot(7); +/script ConfirmLootSlot(7); +/script LootSlot(8); +/script ConfirmLootSlot(8); +/script LootSlot(9); +/script ConfirmLootSlot(9); + Description + This will loot items if for some reason it's not done automatically (or is a BoP item) + + LootItems1 + + Macro + /script LootSlot(1); +/script ConfirmLootSlot(1); +/script LootSlot(2); +/script ConfirmLootSlot(2); +/script LootSlot(3); +/script ConfirmLootSlot(3); +/script LootSlot(4); +/script ConfirmLootSlot(4); +/script LootSlot(5); +/script ConfirmLootSlot(5); + Description + This will loot items if for some reason it's not done automatically (or is a BoP item) + + BGMoveToBGTab + + Macro + /click PVPParentFrameTab2 + Description + This will move the honor window to the BG tab + + BGClickType1 + + Macro + /click BattlegroundType1 + Description + This will click the first item in the BG list + + BGClickType2 + + Macro + /click BattlegroundType2 + Description + This will click the second item in the BG list + + BGClickType3 + + Macro + /click BattlegroundType3 + Description + This will click the third item in the BG list + + BGClickType4 + + Macro + /click BattlegroundType4 + Description + This will click the fourth item in the BG list + + BGClickType5 + + Macro + /click BattlegroundType5 + Description + This will click the fifth item in the BG list + + BGClickJoin + + Macro + /click PVPBattlegroundFrameJoinButton + Description + This will click the join button + + BGScrollDown + + Macro + /click PVPBattlegroundFrameTypeScrollFrameScrollBarScrollDownButton + Description + This will scroll down in the Battleground list + + LeaveParty + + Macro + /script LeaveParty(); + Description + This will leave a party/raid + + ReleaseCorpse + + Macro + /script RepopMe(); + Description + This will release your corpse after you die + + JoinBattlefield + + Macro + /run JoinBattlefield(0); + Description + This will queue you for the battleground + + LeaveBattlefield + + Macro + /script LeaveBattlefield(); + Description + This will make you leave the battleground + + AcceptBattlefield + + Macro + /script AcceptBattlefieldPort(1,1); + Description + This will accept the battleground queue + + Resurrect + + Macro + /script RetrieveCorpse(); + Description + This will resurrect your body + + Dismount + + Macro + /dismount + Description + This will dismount + + CancelSwiftFlightForm + + Macro + /cancelaura Swift Flight Form + Description + This will dismount + + CancelFlightForm + + Macro + /cancelaura Flight Form + Description + This will dismount + + ClickFirstButton + + Macro + /run if StaticPopup1:IsVisible() then StaticPopup_OnClick(StaticPopup1, 1) end + Description + This will click a dialogue box. (useful for auto-joining WG or accepting a BoP button) + + PetFollow + + Macro + /petfollow + Description + This will make your pet follow or stop attack. + + Follow + + Macro + /follow + Description + This will make you follow the selected target. + + ReplyKK + + Macro + /r kk + Description + This will reply to the previous whisper with kk. + + ReplyOMW + + Macro + /r omw + Description + This will reply to the previous whisper with omw. + + StartAttack + + Macro + /startattack + Description + Starts your auto attack. + + + diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png b/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png new file mode 100644 index 0000000..3db1ae8 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Mage.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif new file mode 100644 index 0000000..71325dc Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Mage_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png b/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png new file mode 100644 index 0000000..946efb5 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Mail.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib new file mode 100644 index 0000000..516952f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/MailAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib b/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib new file mode 100644 index 0000000..dd1457e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/MainMenu.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Male.png new file mode 100644 index 0000000..c8bdeab Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib new file mode 100644 index 0000000..3475d85 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Memory.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png b/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png new file mode 100644 index 0000000..083623e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/MinimapGuideFlag.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib new file mode 100644 index 0000000..13b6ec4 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/MobsKilledCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png b/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png new file mode 100644 index 0000000..bb0bd9a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Neutral.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif b/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif new file mode 100644 index 0000000..15fe05b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/NeutralCrest.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png new file mode 100644 index 0000000..598f5ad Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif new file mode 100644 index 0000000..d10e767 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png new file mode 100644 index 0000000..510103c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif new file mode 100644 index 0000000..88fedf5 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/NightElf-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib new file mode 100644 index 0000000..8a9fc7c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Objects.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist b/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist new file mode 100644 index 0000000..cb788fa --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/OffsetSignatures.plist @@ -0,0 +1,811 @@ + + + + + PlayerField_Pointer + + Intel + + Signature + \x8B\x87\x1C\x13\x00\x00\xF6\x40\x08\x02\x75 + Mask + xx??xxxxxxx + Comment + From 4.0.1: lua_UnitIsAFK + + + BaseField_Spell_Channeling + + Intel + + Signature + \xC0\x8B\x41\x0C\x8B\x97\x20\x0B + Mask + xxxxxx?? + Comment + From 4.0.1: lua_UnitChannelInfo + + + BaseField_Spell_ChannelTimeStart + + Intel + + Signature + \x8B\x45\xC0\x3B\x87\x28\x0B\x00\x00\x79 + Mask + xxxxx??xxx + Comment + From 4.0.1: lua_UnitChannelInfo + + + BaseField_Spell_ChannelTimeEnd + + Intel + + Signature + \x89\x44\x24\x04\xE8\x0B\x0B\x16\x00\x8B\x87\x24\x0B\x00\x00\x2D + Mask + xxxxx%%%%xx??xxx + Comment + From 4.0.1: lua_UnitChannelInfo + + + BaseField_Spell_ToCast + + Intel + + Signature + \x85\xC0\x74\x0E\x8B\x88\x00\x0B\x00\x00\x85\xC9 + Mask + xxxxxx??xxxx + Comment + From 4.0.1: lua_SpellStopCasting + + + BaseField_Spell_TimeStart + + Intel + + Signature + \x4C\x24\x04\xE8\x66\x0E\x16\x00\x8B\x87\x18\x0B\x00\x00\x2D\x00\x00\x00\x80\x66\x0F\x6E\xC0 + Mask + xxxx%%%%xx??xxxxxxxxxxx + Comment + From 4.0.1: lua_UnitCastingInfo + + + BaseField_Spell_TimeEnd + + Intel + + Signature + \x74\x88\x3B\x9F\x1C\x0B\x00\x00\x79\x80\x8B\x4A\x50 + Mask + x%xx??xxx%xxx + Comment + From 4.0.1: lua_UnitCastingInfo + + + BaseField_Spell_Casting + + Intel + + Signature + \x74\xB6\xE8\x0B\x7A\x21\x00\x8B\x0D\x38\xC5\x21\x01\x8B\x97\x0C\x0B\x00\x00 + Mask + x%x%%%%xx%%%%xx??xx + Comment + From 4.0.1: lua_UnitCastingInfo + + + BagListOffset + + Intel + + Signature + \x55\x89\xE5\x8B\x4D\x08\x83\xF9\x0A\x77\x25\x83\xF9\x03\x7F\x10\x8B\x04\xCD\x60\x26\xD9\x00\x8B\x14\xCD\x64\x26\xD9\x00\xC9\xC3 + Mask + xxxxxxxxxxxxxxxxxxx????xxx%%%%xx + Comment + From 3.3.3a: sub_4D0B10 + + + Lua_GetWorldStateUIInfo + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x28\x8B\x0D\xD0\x78\x12\x01\x8B\x55\x08\x85\xC9 + Mask + xxxxxxxx????xxxxx + Comment + From 4.0.3: lua_GetWorldStateUIInfo + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + Lua_GetBattlefieldWinner + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x28\x8B\x0D\xD0\x78\x12\x01\x8B\x55\x08\x85\xC9\x75\x1D\x89\x14\x24 + Mask + xxxxxxxx????xxxxxxxxxx + Comment + From 4.0.3: lua_GetBattlefieldWinner + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + Lua_GetPartyMember + + Intel + + Signature + \x8B\x04\xD5\x24\xD4\xDA\x00\x0B\x04\xD5\x20\xD4\xDA\x00\x74\x30\x89\x1C\x24\xC7\x44\x24\x04\x00\x00\x00\x00\xC7\x44\x24\x08\x00\x00\xF0\x3F\xE8\xA8\xF9\x2A\x00\x83\xC4\x24\xB8\x01\x00\x00\x00\x5B\xC9\xC3 + Mask + xxx%%%%xxx????xxxxxxxxxxxxxxxxxxxxxx????xxxxxxxxxxx + Comment + From 3.3.3a: lua_GetPartyMember + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + PLAYER_GUID_NAME + + Intel + + Signature + \xC7\x44\x24\x08\x86\x01\x00\x00\xC7\x04\x24\xC0\x1B\xFD\x00\x89\x44\x24\x04 + Mask + xxxxxxxxxxx????xxxx + Comment + From 4.0.1: sub_6F93C0 + + ppc + + Signature + \x80\x63\x00\x04\x3D\x20\x00\xB3\x39\x29\xE8\xC0\x80\x49\x00\x00\x80\x03\x00\x00\x7F\x80\x10\x00\x40\xBE\x00\x30 + Mask + xxxxxx??xx??xxxxxxxxxxxxxxxx + SubtractOffset + 0x10000 + + + Lua_GetNumCompanions + + Intel + + Signature + \xC1\xE6\x04\x8B\x86\xE4\xFA\xFC\x00\x2D\x00\x00\x00\x80 + Mask + xxxxx????xxxxx + Comment + 4.0.1: lua_GetNumCompanions + + ppc + + Signature + + Mask + + + + Lua_GetBindingKey + + Intel + + Signature + \xA1\x40\xAF\xE9\x00\x31\xDB\x89\x45\xE4\xC7\x44\x24\x08\x00\x00\x00\x00 + Mask + x????xxxxxxxxxxxxx + Comment + From 4.0.1: lua_GetBindingKey + + ppc + + Signature + + Mask + + + + Lua_IsUsableAction + + Intel + + Signature + \x8B\x14\x85\x00\xEE\xD8\x00\x8B\x04\x85\x40\xF0\xD8\x00\x85\xC0\x74\xAC + Mask + xxx%%%%xxx????xxxx + Comment + From 3.3.0a: lua_IsUsableAction + + ppc + + Signature + + Mask + + + + Lua_IsUsableActionNotEnough + + Intel + + Signature + \x8B\x14\x85\x00\xEE\xD8\x00\x8B\x04\x85\x40\xF0\xD8\x00\x85\xC0\x74\xAC + Mask + xxx????xxx%%%%xxxx + Comment + From 3.3.0a: lua_IsUsableAction + + ppc + + Signature + + Mask + + + + Lua_GetRuneCount + + Intel + + Signature + \x83\xF9\x05\x77\x30\x8B\x15\xF8\xBA\x21\x01\xB8\x01\x00\x00\x00\x66\x0F\x57\xC0 + Mask + xxxxxxx????xxxxxxxxx + Comment + From 4.0.1: lua_GetRuneCount + + ppc + + Signature + + Mask + + + + PARTY_LEADER_PTR + + Intel + + Signature + \x55\x89\xE5\x57\x83\xEC\x14\xBF\xE0\xB9\x55\x01\xFC\xB9\x08\x00\x00\x00\x31\xC0\xF3\xAB + Mask + xxxxxxxx????xxxxxxxxxx + + ppc + + Signature + + Mask + + + + MACRO_LIST_PTR + + Intel + + Signature + \x89\xC8\xF7\xD0\x21\xC2\x89\x15\x60\x69\x19\x01\x8B\x15\xAC\xD6\xFC\x00\xC1\xE9\x10\x49\x89\x8D\x90\xF3\xFF\xFF\xF6\xC2\x01\x0F\x84\xCC\x00\x00\x00 + Mask + xxxxxxxx%%%%xx????xxxxxx%xxxxxxxx%%%% + Comment + For 3.3.0: sub_6B7C00 (this one definitely took some time to find, kind of sucked to get a good signature that worked for 3.3.0 and 3.3.0a) + + ppc + + Signature + \x3F\xA0\x01\x4D\x38\x5D\x53\xEC\x83\xE2\x00\x0C\x73\xE0\x00\x01\x40\x82\x00\x0C + Mask + xx??xx??xxxxxxxxxxxx + AdditionalOffset + 0xC + + + PLAYER_NAME_LIST + + Intel + + Signature + \x8B\x45\xC4\x8B\x55\xC8\x89\x7C\x24\x04\xC7\x04\x24\x40\xD2\xD2\x00\x89\x44\x24\x08\x89\x54\x24\x0C\xE8\xFD\x15\xFD\xFF\x8B\x75\xC8\x31\xC0\x8B\x5D\xC4\x89\xF2\x81\xE2\x00\x00\x00\xF0\x89\xD1\x81\xF1\x00\x00\x00\x10\x09\xC1\x75\x51 + Mask + xxxxxxxxxxxxx????xxxxxxxxx%%%%xxxxxxxxxxxxxxxxxxxxxxxxxxxx + Comment + For 3.3.3a: sub_185EF0 + + ppc + + Signature + + Mask + + + + WorldState + + Intel + + Signature + \xC7\x05\x74\x43\xC8\x00\x05\x00\x00\x00\xC7\x05\xFC\x3D\xC8\x00\x00\x00\x00\x00\xC7\x04\x24\x2E\x00\x00\x00\xE8\x42\x38\x48\x00\xC7\x44\x24\x08\x00\x00\x00\x00\xC7\x44\x24\x04\xFF\xFF\xFF\xFF\x89\x04\x24\xE8\x9A\x08\x55\x00\xC7\x44\x24\x08\x32\x54\xA9\x00\xC7\x44\x24\x04\x24\x8C\xAE\x00\xC7\x04\x24\x03\x00\x00\x00\x89\x44\x24\x0C\xE8\xFA\x1F\x55\x00\xE8\xB5\x29\x48\x00\x89\x5C\x24\x04\x89\x04\x24\xE8\x69\x66\x48\x00 + Mask + xx????xxxxxx????xxxxxxxxxxxx????xxxxxxxxxxxxxxxxxxxx????xxxx????xxxx????xxxxxxxxxxxx????x????xxxxxxxx???? + Comment + 3.3.3a: sub_2B4C30 + + ppc + + Signature + + Mask + + + + CHATLOG_START + + Intel + + Signature + \xC6\x80\xFC\x7D\xF4\x00\x00\xC6\x80\xB4\x89\xF4\x00\x00\xC7\x80\x6C\x95\xF4\x00\x00\x00\x00\x00\xC7\x80\x70\x95\xF4\x00\x00\x00\x00\x00\xC7\x80\x74\x95\xF4\x00\x00\x00\x00\x00\xC7\x80\x78\x95\xF4\x00\x00\x00\x00\x00\x05\xBC\x17\x00\x00 + Mask + xx????xxx%%%%xxx%%%%xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxxxxxxx + Comment + For 3.3.0: sub_535030 + + ppc + + Signature + + Mask + + + + BATTLEGROUND_STATUS + + Intel + + Signature + \xC1\xE0\x06\x05\xE0\x14\x1E\x01\x74\xD2\x8B\x70\x24\x85\xF6\x74\xCB + Mask + xxxx????xxxxxxxxx + Comment + From 4.0.3: lua_GetBattlefieldTimeWaited + + ppc + + Signature + \x3C\x40\x01\x47\x55\x29\x18\x38\x7C\x09\x00\x50\x38\x42\x1E\xB8\x7C\x40\x12\x15\x41\x82\x00\x24\x80\x02\x00\x30 + Mask + xx??xxxxxxxxxx??xxxxxxxxxxxx + + + LAST_RED_ERROR_MESSAGE + + Intel + + Comment + From 4.0.3: sub_5EE2A0 + Signature + \x8D\x45\x0C\xBB\x00\xCF\x23\x01\x8D\xB5\x4C\xF3\xFF\xFF\x89\x54\x24\x08\x89\x45\xE4 + Mask + xxxx????xxxxxxxxxxxxx + + ppc + + Signature + \x3C\x60\x01\x47\x38\x63\xA1\x3C\x7F\x64\xDB\x78\x38\xA0\x0B\xB8\x4B\xDB\x95\x9D + Mask + xx??xx??xxxxxxxxxxxx + SubtractOffset + 0x10000 + + + CTM_DISTANCE + + Intel + + Signature + \xF3\x0F\x51\x05\xFC\x74\x0C\x01\xC7\x05\xE4\x74\x0C\x01\x00\x00\x00\x00\xF3\x0F\x11\x05\xE8\x74\x0C\x01\x0F\x57\xC0 + Mask + xxxx%%%%xx%%%%xxxxxxxx????xxx + Comment + For 3.3.0: sub_42EF80 + + ppc + + Signature + \x3C\x40\x01\x1F\x91\x3F\x00\x08\x90\x1F\x00\x00\xC3\xC2\x4E\xD8\x48\x00\x01\x14 + Mask + xx??xxxxxxxxxx??xxxx + + + CTM_SCALE + + Intel + + Comment + For 3.3.0: sub_42EF80 + Signature + \xC7\x05\xEC\x74\x0C\x01\xDB\x0F\x49\x40 + Mask + xx????xxxx + + ppc + + Signature + \xC0\x02\x00\xA8\x3C\x40\x01\x1F\xD0\x02\x4E\xDC\x48\x00\x00\x14 + Mask + xxxxxx??xx??xxxx + + + CTM_GUID + + Intel + + Signature + \xC7\x05\xF0\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\xF4\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\x10\x75\x0C\x01\x00\x00\x00\x00\xC7\x05\xE4\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\xD8\x74\x0C\x01\x0D\x00\x00\x00 + Mask + xx????xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxx + Comment + For 3.3.0: sub_42EC50 + + ppc + + Signature + \x3F\x40\x01\x1F\x3C\xC0\x00\x82\x38\xA0\x00\x01\x38\x5A\x4E\xE0\x38\xC6\xBE\x64\x38\xE0\x48\xD9 + Mask + xx??xxxxxxxxxx??xxxxxxxx + + + CTM_ACTION + + Intel + + Comment + For 3.3.0: sub_41ADB0 + Signature + \xC7\x05\xD8\x74\x0C\x01\x0D\x00\x00\x00\xC7\x05\xE4\x74\x0C\x01\x00\x00\x00\x00\xC7\x05\x40\x75\x0C\x01\x00\x00\x00\x00\xC7\x05\x44\x75\x0C\x01\x00\x00\x00\x00 + Mask + xx????xxxxxx%%%%xxxxxx%%%%xxxxxx%%%%xxxx + + ppc + + Signature + \x3F\xA0\x01\x1F\x3B\xBD\x4E\xC8\x80\x1D\x00\x00\x2F\x80\x00\x0D\x41\x9E\x00\x60 + Mask + xx??xx??xxxxxxxxxxxx + + + CTM_POS + + Intel + + Signature + \xC7\x44\x24\x08\xBC\x76\x35\x01\x8B\x45\x08\x8D\x5D\xA8 + Mask + xxxx????xxxxxx + Comment + From 4.0.3: sub_4638F0 + + ppc + + Signature + \x3C\x80\x01\x1F\x38\x61\x00\x50\x38\x84\x4D\xEC\x48\x07\x0E\x05\x80\x01\x00\x50\x80\x41\x00\x54\x90\x01\x00\x38\x80\x01\x00\x58\x90\x41\x00\x3C\x90\x01\x00\x40\x80\x1D\x00\x00 + Mask + xx??xxxxxx??xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx + + + CD_LIST_STATIC + + Intel + + Signature + \xC7\x44\x24\x08\x00\x00\x00\x00\x8B\x55\x0C\x8B\x02\xC7\x04\x24\xE0\x81\x0A\x01 + Mask + xxxxxxxxxxxxxxxx???? + Comment + From 4.0.1: CGGameUI__ShowSpellFailed + + ppc + + Signature + + Mask + + + + PLAYER_CURRENT_ZONE + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x08\xC7\x05\xA0\xD7\xFC\x00\xFF\xFF\xFF\xFF\xC7\x05\x9C\xD7\xFC\x00\x00\x00\x00\x00 + Mask + xxxxxxxx%%%%xxxxxx????xxxx + Comment + For 3.3.0: sub_6D32D0 + + ppc + + Signature + \x3E\xA0\x00\xB3\x3C\x40\x00\xB6\x3D\x20\x00\xB3\x80\x15\xD1\xE8\x80\x42\xC1\x24\x2F\x80\x00\x00\x81\x62\x00\x00\x91\x69\xD1\xE0\x40\x9E\x02\x74 + Mask + xx%%xx%%xx??xx%%xx%%xxxxxxxxxx??xxxx + SubtractOffset + 0x10000 + + + ITEM_IN_LOOT_WINDOW + + Intel + + Signature + \x83\xFA\x17\x77\x35\x8D\x04\xD2\x8B\x04\x85\xA4\x9E\x25\x01 + Mask + xxxxxxxxxxx???? + Comment + From 4.0.3: lua_LootSlotIsItem + + ppc + + Signature + \x3E\xC0\x01\x4A\x3B\xF6\x5A\xD8\x3F\xA0\x00\x51\x3B\xBD\x5B\x0C\x3B\xDF\x02\x40 + Mask + xx??xx??xxxxxxxxxxxx + AdditionalOffset + 0x4 + + + CORPSE_POSITION_STATIC + + Intel + + Signature + \x8B\x02\x85\xC9\xA3\x80\x29\xFA\x00\x8B\x42\x04\xA3\x84\x29\xFA\x00\x8B\x42\x08\xA3\x88\x29\xFA\x00 + Mask + xxxxx????xxxx%%%%xxxx%%%% + Comment + For 3.3.0: sub_5A0A50 + + ppc + + Signature + + Mask + + + + CHAT_BOX_OPEN_STATIC + + Intel + + Signature + \x55\x89\xE5\x53\x83\xEC\x14\x8B\x5D\x08\x39\x1D\x80\x5A\x22\x01\x74\x34 + Mask + xxxxxxxxxxxx????xx + Comment + From 3.3.0: sub_9E3630 + + ppc + + Signature + \x7C\x08\x02\xA6\xBF\x61\xFF\xEC\x3F\xC0\x00\xBB\x7C\x7F\x1B\x78\x90\x01\x00\x08\x94\x21\xFF\xA0\x80\x1E\x13\x58\x7F\x80\x18\x00\x41\x9E\x00\x98 + Mask + xxxxxxxxxx??xxxxxxxxxxxxxx??xxxxxxxx + + + LAST_SPELL_THAT_DIDNT_CAST_STATIC + + Intel + + Signature + \xE8\xC2\xEB\x5F\x00\x8B\x9D\x8C\xF5\xFF\xFF\x3B\x1D\x0C\x83\x0A\x01\x89\xDE\x89\xC2\x0F\x84\xDA\x06\x00\x00 + Mask + x%%%%xxxxxxxx????xxxxxx???? + Comment + From 4.0.1: CGGameUI__ShowSpellFailed + + ppc + + Signature + \x3C\x40\x01\x1E\x7E\xA3\xAB\x78\x7E\xE4\xBB\x78\x90\x02\x17\xC8\x7E\x65\x9B\x78\x38\xC0\x00\xBA + Mask + xx??xxxxxxxxxx??xxxxxxxx + + + HOTBAR_BASE_STATIC + + Intel + + Signature + \x55\x89\xE5\x83\xEC\x18\xC7\x44\x24\x08\x40\x02\x00\x00\xC7\x44\x24\x04\x00\x00\x00\x00\xC7\x04\x24\x20\x52\xF4\x00 + Mask + xxxxx%xxxxxxxxxxxxxxxxxxx???? + Comment + From 3.3.0: sub_4E8860 + + ppc + + Signature + \x7C\x08\x02\xA6\x3C\x60\x01\x4B\x38\x80\x00\x00\x38\xA0\x02\x40\x38\x63\xFE\x70 + Mask + xxxxxx??xxxxxxxxxx?? + SubtractOffset + 0x10000 + + + lua_GetSpellBookItemInfo + + Intel + + Signature + \x78\x24\x85\xC0\x75\x30\x3B\x15\x68\xFB\xFC\x00 + Mask + xxxxxxxx???? + Comment + From 4.0.1: lua_GetSpellBookItemInfo + + ppc + + Signature + \x3D\x20\x01\x4C\x54\x00\x10\x3A\x81\x62\x60\x0C\x39\x29\xCE\xD0 + Mask + xx??xxxxxxxxxx?? + SubtractOffset + 0x10000 + + + TARGET_TABLE_STATIC + + Intel + + Signature + \x33\x05\xC0\x90\x12\x01\x31\xD1\x09\xC1\x74\x4B\xC7\x04\x24\x04\x00\x00\x00\xE8\xE3\x67\xFF\xFF + Mask + xx????xxxxxxxxxxxxxx%%%% + Comment + From 4.0.3: sub_5D1FC0 + + ppc + + SubtractOffset + 0x10000 + Signature + \x7C\x08\x02\xA6\xBF\xC1\xFF\xF8\x3F\xC0\x00\xB3\x7C\x7F\x1B\x78\x38\x5E\xDD\x28 + Mask + xxxxxxxxxx??xxxxxx?? + + + COMBO_POINTS_STATIC + + Intel + + Signature + \x74\xB7\x0F\xB6\x05\x0C\x76\xE9\x00\x83\xC4\x24\x5B\xC9\xC3 + Mask + xxxxx????xxxxxx + Comment + From 4.0.1: GetComboPoints + + ppc + + Signature + + Mask + + SubtractOffset + + + + ACCOUNT_NAME_STATIC + + Intel + + Signature + \xC7\x05\x10\xF2\x11\x01\xFF\xFF\xFF\xFF\xBE\x50\xF2\x11\x01\xC7\x05\x0C\xF2\x11\x01\xFF\xFF\xFF\xFF\xC7\x05\x08\xF2\x11\x01\xFF\xFF\xFF\xFF\xC7\x05\x04\xF2\x11\x01\xFF\xFF\xFF\xFF\xC6\x05\x00\xF2\x11\x01\x00 + Mask + xx%%%%xxxxx????xx????xxxxxx????xxxxxx????xxxxxx????x + Comment + From 4.0.1: GetRealmName + + ppc + + Signature + \x7C\x08\x02\xA6\xBF\xA1\xFF\xF4\x3F\xA0\x00\xB3\x3B\xBD\xEA\x70\x7C\x64\x1B\x78\x38\xA0\x05\x00 + Mask + xxxxxxxxxx??xx??xxxxxxxx + SubtractOffset + 0x10000 + + + OBJECT_LIST_LL_PTR + + Intel + + Signature + \x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x0D\x0C\x76\x0E\x01\x8D\x91\xAC\x00\x00\x00\x8B\x42\x08\xA8\x01 + Mask + xxxxxxxx%xx????xx%xxxxx%xx + Comment + From 3.3.0: sub_49D820 + + ppc + + Signature + \x3F\xA0\x01\x1D\x3C\xA0\x00\x0F\x80\x42\xBF\xFC\x3B\xBD\x76\xCC\x38\xA5\x39\x84\x91\x9D\x00\x00\x38\x80\x00\xA9\x38\xC0\x00\x00 + Mask + xx??xxxxxx%%xx??xxxxxxxxxxxxxxxx + + + SERVER_NAME_STATIC + + Intel + + Signature + \x55\x31\xC0\x89\xE5\xBA\xE0\x22\xFD\x00\x80\x3D\x01\xCE\xE9\x00\x00 + Mask + xxxxxx????xx????x + AdditionalOffset + 0x6 + Count + 2 + Comment + From 4.0.3: sub_82F550 + + ppc + + Signature + \x38\x00\x00\x01\x3C\x40\x00\xB3\x3C\x60\x01\x41\x90\x02\xCE\x64\x38\x63\x01\x18\x38\xA0\x01\x48\x80\x9C\x00\x08\x7C\x84\xF2\x14\x48\x61\x11\x0D\x38\x60\x00\x01\x48\x00\x00\x24 + Mask + xxxxxx%%xx??xx%%xx??xxxxxxxxxxxxxxxxxxxxxxxx + AdditionalOffset + 0x6 + + + FIRST_OBJECT_OFFSET + + Intel + + Signature + \x55\x89\xE5\x57\x56\x53\x83\xEC\x1C\x8B\x0D\x0C\x76\x0E\x01\x8D\x91\xAC\x00\x00\x00\x8B\x42\x08\xA8\x01 + Mask + xxxxxxxx%xx%%%%xx?xxxxx%xx + AdditionalOffset + 0x8 + Comment + From 3.3.0: sub_49D820 I don't believe the last % of 8 would change, but if so, that would be added to the offset retreived by the above signature + + ppc + + Signature + \x3F\xA0\x01\x1D\x3C\xA0\x00\x0F\x80\x42\xBF\xFC\x3B\xBD\x76\xCC\x38\xA5\x39\x84\x91\x9D\x00\x00\x38\x80\x00\xA9\x38\xC0\x00\x00 + Mask + xx??xxxxxx%%xx??xxxxxxxxxxxxxxxx + + + + diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png new file mode 100644 index 0000000..a887949 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif new file mode 100644 index 0000000..ea72a03 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png new file mode 100644 index 0000000..ab06d65 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif new file mode 100644 index 0000000..ebb4278 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Orc-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png b/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png new file mode 100644 index 0000000..e888fd8 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/PVP.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png b/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png new file mode 100644 index 0000000..58fd2ad Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Paladin.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif new file mode 100644 index 0000000..53e7cce Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Paladin_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png new file mode 100644 index 0000000..99bdfc2 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/PetitionGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib new file mode 100644 index 0000000..8575b25 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Player.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib new file mode 100644 index 0000000..00382ec Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/PlayerLevelCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib new file mode 100644 index 0000000..0db16c0 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/PlayerZoneCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png b/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png new file mode 100644 index 0000000..8a982d3 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Priest.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif new file mode 100644 index 0000000..1298e49 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Priest_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib new file mode 100644 index 0000000..f88e2d2 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Profiles.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib b/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib new file mode 100644 index 0000000..bea02e9 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ProximityCount.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib b/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib new file mode 100644 index 0000000..990f553 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/PvP.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib new file mode 100644 index 0000000..f49d3f7 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/QuestCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib new file mode 100644 index 0000000..48b7fc4 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/QuestGrabAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib new file mode 100644 index 0000000..af1639e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/QuestTurnInAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png b/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png new file mode 100644 index 0000000..2d9c81c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Repair.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib new file mode 100644 index 0000000..8f1085c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/RepairAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png b/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png new file mode 100644 index 0000000..60c335b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ResourceBlip.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Result.png b/build/Release/Pocket Gnome.app/Contents/Resources/Result.png new file mode 100644 index 0000000..734433f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Result.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib new file mode 100644 index 0000000..e97f02a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/ReverseRouteAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png b/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png new file mode 100644 index 0000000..16a6594 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Rogue.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif new file mode 100644 index 0000000..072c561 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Rogue_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib new file mode 100644 index 0000000..f98922e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunCountCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib new file mode 100644 index 0000000..dc63826 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/RouteRunTimeCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib new file mode 100644 index 0000000..78190c9 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Routes.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib new file mode 100644 index 0000000..74c134e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/RuneCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif b/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif new file mode 100644 index 0000000..47a7b71 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcut.tif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif b/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif new file mode 100644 index 0000000..0119610 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutPressed.tif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif b/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif new file mode 100644 index 0000000..3af4f0b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SRRemoveShortcutRollover.tif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff b/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff new file mode 100644 index 0000000..0be1e49 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SRSnapback.tiff differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png b/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png new file mode 100644 index 0000000..f7694bb Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Scroll.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png b/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png new file mode 100644 index 0000000..494d9a1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Shaman.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif new file mode 100644 index 0000000..8684655 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Shaman_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png b/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png new file mode 100644 index 0000000..d29f0ba Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Skull.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib new file mode 100644 index 0000000..8e28fbd Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SpellAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib b/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib new file mode 100644 index 0000000..f48bf05 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SpellCooldown.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png new file mode 100644 index 0000000..a37ec62 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_FireResistanceTotem_01.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png new file mode 100644 index 0000000..406cbe1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_MindVision.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png new file mode 100644 index 0000000..3edbfd2 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Holy_PrayerofSpirit.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png new file mode 100644 index 0000000..f366d1e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Spell_Nature_PoisonCleansingTotem.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib new file mode 100644 index 0000000..426c464 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Spells.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png b/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png new file mode 100644 index 0000000..5585426 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Stable.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib b/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib new file mode 100644 index 0000000..5296dcc Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Statistics.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib new file mode 100644 index 0000000..3f50c86 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/StatusCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib b/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib new file mode 100644 index 0000000..f5a6dd6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/StrandStatus.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib new file mode 100644 index 0000000..349d013 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/SwitchRouteAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png new file mode 100644 index 0000000..33dcfeb Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TabardGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib b/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib new file mode 100644 index 0000000..0f9cfb1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TargetClass.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib b/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib new file mode 100644 index 0000000..ea8f8f2 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TargetType.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png new file mode 100644 index 0000000..c152076 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif new file mode 100644 index 0000000..6891790 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png new file mode 100644 index 0000000..a943551 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif new file mode 100644 index 0000000..e0c094f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Tauren-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png new file mode 100644 index 0000000..ec0644a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TaxiGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib new file mode 100644 index 0000000..b50272a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TempEnchantCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib b/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib new file mode 100644 index 0000000..b73738f Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TotemCondition.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png b/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png new file mode 100644 index 0000000..9a32ebd Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Trade_Engraving.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png new file mode 100644 index 0000000..9be14a0 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TrainerGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png new file mode 100644 index 0000000..7d2cc47 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif new file mode 100644 index 0000000..42fccfa Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png new file mode 100644 index 0000000..87513d4 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif new file mode 100644 index 0000000..73f2d29 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Troll-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png b/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png new file mode 100644 index 0000000..e8a9fe6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/TypeShortcut.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png new file mode 100644 index 0000000..7588fb1 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif new file mode 100644 index 0000000..52d976a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Female_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png new file mode 100644 index 0000000..06019f7 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif new file mode 100644 index 0000000..14569af Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Undead-Male_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png b/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png new file mode 100644 index 0000000..e74844a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/UnknownSmall.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib b/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib new file mode 100644 index 0000000..a948cdd Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/VendorAction.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png b/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png new file mode 100644 index 0000000..d94cb5c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/VendorGossipIcon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png b/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png new file mode 100644 index 0000000..393a7d4 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Warlock.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif new file mode 100644 index 0000000..de66e6b Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Warlock_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png b/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png new file mode 100644 index 0000000..8ee0013 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/WarnTriangle.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png b/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png new file mode 100644 index 0000000..cd4493c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Warrior.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif b/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif new file mode 100644 index 0000000..69f21f7 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/Warrior_Small.gif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib b/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib new file mode 100644 index 0000000..977a400 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/WaypointActionEditor.nib differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 b/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 new file mode 100755 index 0000000..dd0636c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/alarm.mp3 differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml b/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml new file mode 100644 index 0000000..ffadb6e --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/appcast.xml @@ -0,0 +1,121 @@ + + + + Pocket Gnome Appcast + http://pg.savorydeviate.com/appcast.xml + Appcast for PocketGnome + en + + + Pocket Gnome 1.5.1.1 (Build 566) + Wed, 23 June 2010 09:07:00 -0400 + Pocket Gnome 1.5.1.1 (Build 566) Release Notes

+
    +
  • Fishing + Applying lure now works correctly
  • +
  • Untested: Added options for Holy Power, Eclipse, and Soul Shards for behaviors
  • +
  • Untested: Fixed combo points rule
  • +
  • Re-wrote how some conditions were calculated (/annoyed)
  • +
  • Untested: Rune checks should now function correctly, except death runes (are those still around?)
  • +
  • Security tab removed from Settings (it was pointless)
  • +
  • Updated base fields to use offset signatures (more likely for things to NOT break between patches)
  • +
+ ]]> +
+ +
+ + Pocket Gnome 1.5.1 (Build 551) + Wed, 23 June 2010 09:07:00 -0400 + Pocket Gnome 1.5.1 (Build 551) Release Notes

+
    +
  • Updated for 4.0.1!
  • +
  • Offset controller completely re-written, gnome should no longer crash withe goblin!
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.2 (Build 516) + Tue, 1 June 2010 13:44:00 -0400 + Pocket Gnome 1.5.0.2 (Build 516) Release Notes

+
    +
  • Strand of the Ancients - Updated for Horde to walk you off of the boat
  • +
  • PvP - Queue preparation weight update
  • +
  • PvP - Crash fixed w/respect to PvP route switching and following
  • +
  • Bug fix - Deleting an ignore entry no longer delete the combat profile, sorry!
  • +
  • Casting - Update on casting when items/spells are no longer usable/available
  • +
  • UI - Gathering/Looting/PvP Options moved to combat profiles
  • +
  • UI - PvP/Normal is now separated on the main screen
  • +
  • UI - Click and drag support added to the rule editor
  • +
  • Combat - /startattack option added in behaviors, you no longer have to create a macro
  • +
  • Spells - Error handling re-written
  • +
  • Movement - Large portion of the movement controller was re-written, should be smoother
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.3 (Build 518) + Wed, 23 June 2010 09:07:00 -0400 + Pocket Gnome 1.5.0.3 (Build 518) Release Notes

+
    +
  • Updated for 3.3.5
  • +
  • WARNING: This has NOT been tested with the new Warden (nor has it been confirmed on mac), use at your own risk
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.2 (Build 516) + Tue, 1 June 2010 13:44:00 -0400 + Pocket Gnome 1.5.0.2 (Build 516) Release Notes

+
    +
  • Strand of the Ancients - Updated for Horde to walk you off of the boat
  • +
  • PvP - Queue preparation weight update
  • +
  • PvP - Crash fixed w/respect to PvP route switching and following
  • +
  • Bug fix - Deleting an ignore entry no longer delete the combat profile, sorry!
  • +
  • Casting - Update on casting when items/spells are no longer usable/available
  • +
  • UI - Gathering/Looting/PvP Options moved to combat profiles
  • +
  • UI - PvP/Normal is now separated on the main screen
  • +
  • UI - Click and drag support added to the rule editor
  • +
  • Combat - /startattack option added in behaviors, you no longer have to create a macro
  • +
  • Spells - Error handling re-written
  • +
  • Movement - Large portion of the movement controller was re-written, should be smoother
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0.1 (Build 506) + Sun, 24 May 2010 13:44:00 -0400 + Pocket Gnome 1.5.0.1 (Build 506) Release Notes

+
    +
  • Mail Actions should actually function now
  • +
  • Dropdowns within combat profiles actually populate players now
  • +
  • PvP route handling updates
  • +
  • Follow updates
  • +
+ + ]]> +
+ +
+ + Pocket Gnome 1.5.0 (Build 501) + Sun, 23 May 2010 15:44:00 -0400 + Pocket Gnome 1.5.0 (Build 501) Release Notes

+
Get all of the release notes here!]]> +
+ +
+ +
+
\ No newline at end of file diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif b/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif new file mode 100644 index 0000000..6590dad Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/bad.tif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig b/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig new file mode 100644 index 0000000..1d28d45 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/buildnumber.xcconfig @@ -0,0 +1 @@ +BUILD_NUMBER = 566S diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem b/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem new file mode 100644 index 0000000..74fa784 --- /dev/null +++ b/build/Release/Pocket Gnome.app/Contents/Resources/dsa_pub.pem @@ -0,0 +1,20 @@ +-----BEGIN PUBLIC KEY----- +MIIDPDCCAi4GByqGSM44BAEwggIhAoIBAQDeZ+bJ7ETqxXupVlhORZnMJRxMdyYL +1OtzwUMem3dbjka2phPWxeh95wrv4zOp3TBcv5ylKHLAWMohZXWF2FVaCiPtbqmU +Ssg22ehxHFNXhRSP2zvZlNzkBYSc45Q+6PCvXBznxXPFsSM4qdTNyc36liYUK9LE +Muck9VuPnhf8BwijqqhJHsy8Kei9SoBoTo9DPnxefdo/yfu2+I5j7zGfipNCxzQq +Ufsohqudc0o6adSTc9u6lM7h0l4Uj+EELcdwNW4sRdEuExUb2WWDIghHJeBi17KU +s23v+gkmJgFvhmivgdG4FlWZqEFvATb+19kEb+otBM3pkF2+3hX7E03rAhUAzlRO +Yl9N5W45N8CoKyWoQZ/OxmcCggEBAJXZykJiW6pU1sOqchED/EfK8doxv0NtD3z1 +iVKTXMU02ptlQq9/PPTTXclot2+6+hctkc2OPOYB0imLpeVk7FV9N/J8raIw2gME +Ktk89wA+7qGIvm8ilIgWG99j7FuRf8g+H7VZSPWig09FSqybin95GbdmvehEDTv9 +y9qoXlkUtcqLMT1nN4NGHNWZqADOR7o3tVWnQibdeXQWlj6fFIfKvhNOUVWWi7QL +MqhpjgIsHGpQyT7sIYe4Ee62Ty12fnjfkJYYkkES/VVaVKQNTuM1pHIFXKbaOS5n +Ht+PfUVlxO0Y7iNUOmvakkX05BrmBV/euBoT/2WuX8iop4JQ0ssDggEGAAKCAQEA +hGkR7EULqNSenMPtjsxmnKH1Iubkyqw4KUrY53sheFHM08D1KhVY+vtOnHtL0Tks +28z/gFTr87fElkSl/s4ox50WKEbj6OtD3cHlLTftYBxpuTShxoZ0Aa/qRxUfQnp9 +q+NmVKNAAXcw6Zog3LGfyDQSRK+HiNX8qW6kIq7bvV1xFb4Tnqu9OzzHTUDYA4xh +0cYWwgZGJOlIpuHQWwfH8F0uhH/W9iAF5iAhp2kyecIjTR8hB9dqRKNWs2iZ/umN +l6hDpIghY06+1l8uTsK7Yn9TWPcttToZOu9wJ33KFHlxc+ZHhGKU5CgqExh3K56J +a3cZlXOsOdFPGSG+HiYD+A== +-----END PUBLIC KEY----- diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns b/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns new file mode 100644 index 0000000..8e66777 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/gnome2.icns differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/good.tif b/build/Release/Pocket Gnome.app/Contents/Resources/good.tif new file mode 100644 index 0000000..b09ebc9 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/good.tif differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png b/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png new file mode 100644 index 0000000..fcbff6c Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/iChat.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png b/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png new file mode 100644 index 0000000..791145e Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/inv_misc_bag_14.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png b/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png new file mode 100644 index 0000000..c8ddca6 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/mbobbleicon.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png b/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png new file mode 100644 index 0000000..5b22a70 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/mixed.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/off.png b/build/Release/Pocket Gnome.app/Contents/Resources/off.png new file mode 100644 index 0000000..0e2727a Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/off.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/on.png b/build/Release/Pocket Gnome.app/Contents/Resources/on.png new file mode 100644 index 0000000..6b0fc43 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/on.png differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns b/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns new file mode 100644 index 0000000..0bc9576 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/pgBehavior.icns differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns b/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns new file mode 100644 index 0000000..e4ef086 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/pgRoute.icns differ diff --git a/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 b/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 new file mode 100644 index 0000000..712a237 Binary files /dev/null and b/build/Release/Pocket Gnome.app/Contents/Resources/splash.mp3 differ diff --git a/buildnumber.xcconfig b/buildnumber.xcconfig new file mode 100644 index 0000000..16ef54f --- /dev/null +++ b/buildnumber.xcconfig @@ -0,0 +1 @@ +BUILD_NUMBER = 567S diff --git a/config.yaml b/config.yaml new file mode 100644 index 0000000..bba6ba1 --- /dev/null +++ b/config.yaml @@ -0,0 +1,7 @@ +build_now: 'YES' +download_base_url: 'http://pg.savorydeviate.com/download/' +appcast_basefolder: '~/Documents/9-Development/pocketgnome/1.5/' +appcast_xml_name: 'appcast.xml' +keychain_privkey_name: 'Sparkle Private Key 1' +css_file_name: 'rnotes.css' + diff --git a/dsa_pub.pem b/dsa_pub.pem new file mode 100644 index 0000000..74fa784 --- /dev/null +++ b/dsa_pub.pem @@ -0,0 +1,20 @@ +-----BEGIN PUBLIC KEY----- +MIIDPDCCAi4GByqGSM44BAEwggIhAoIBAQDeZ+bJ7ETqxXupVlhORZnMJRxMdyYL +1OtzwUMem3dbjka2phPWxeh95wrv4zOp3TBcv5ylKHLAWMohZXWF2FVaCiPtbqmU +Ssg22ehxHFNXhRSP2zvZlNzkBYSc45Q+6PCvXBznxXPFsSM4qdTNyc36liYUK9LE +Muck9VuPnhf8BwijqqhJHsy8Kei9SoBoTo9DPnxefdo/yfu2+I5j7zGfipNCxzQq +Ufsohqudc0o6adSTc9u6lM7h0l4Uj+EELcdwNW4sRdEuExUb2WWDIghHJeBi17KU +s23v+gkmJgFvhmivgdG4FlWZqEFvATb+19kEb+otBM3pkF2+3hX7E03rAhUAzlRO +Yl9N5W45N8CoKyWoQZ/OxmcCggEBAJXZykJiW6pU1sOqchED/EfK8doxv0NtD3z1 +iVKTXMU02ptlQq9/PPTTXclot2+6+hctkc2OPOYB0imLpeVk7FV9N/J8raIw2gME +Ktk89wA+7qGIvm8ilIgWG99j7FuRf8g+H7VZSPWig09FSqybin95GbdmvehEDTv9 +y9qoXlkUtcqLMT1nN4NGHNWZqADOR7o3tVWnQibdeXQWlj6fFIfKvhNOUVWWi7QL +MqhpjgIsHGpQyT7sIYe4Ee62Ty12fnjfkJYYkkES/VVaVKQNTuM1pHIFXKbaOS5n +Ht+PfUVlxO0Y7iNUOmvakkX05BrmBV/euBoT/2WuX8iop4JQ0ssDggEGAAKCAQEA +hGkR7EULqNSenMPtjsxmnKH1Iubkyqw4KUrY53sheFHM08D1KhVY+vtOnHtL0Tks +28z/gFTr87fElkSl/s4ox50WKEbj6OtD3cHlLTftYBxpuTShxoZ0Aa/qRxUfQnp9 +q+NmVKNAAXcw6Zog3LGfyDQSRK+HiNX8qW6kIq7bvV1xFb4Tnqu9OzzHTUDYA4xh +0cYWwgZGJOlIpuHQWwfH8F0uhH/W9iAF5iAhp2kyecIjTR8hB9dqRKNWs2iZ/umN +l6hDpIghY06+1l8uTsK7Yn9TWPcttToZOu9wJ33KFHlxc+ZHhGKU5CgqExh3K56J +a3cZlXOsOdFPGSG+HiYD+A== +-----END PUBLIC KEY----- diff --git a/en.lproj/.svn/all-wcprops b/en.lproj/.svn/all-wcprops new file mode 100644 index 0000000..747019f --- /dev/null +++ b/en.lproj/.svn/all-wcprops @@ -0,0 +1,5 @@ +K 25 +svn:wc:ra_dav:version-url +V 32 +/svn/!svn/ver/445/trunk/en.lproj +END diff --git a/en.lproj/.svn/entries b/en.lproj/.svn/entries new file mode 100644 index 0000000..b1a8711 --- /dev/null +++ b/en.lproj/.svn/entries @@ -0,0 +1,28 @@ +10 + +dir +532 +https://pocketgnome.googlecode.com/svn/trunk/en.lproj +https://pocketgnome.googlecode.com/svn + + + +2010-03-26T18:30:53.389693Z +273 +cfredwine@gmail.com + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + diff --git a/gnome.icns b/gnome.icns new file mode 100644 index 0000000..ca89f60 Binary files /dev/null and b/gnome.icns differ diff --git a/gnome2.icns b/gnome2.icns new file mode 100644 index 0000000..8e66777 Binary files /dev/null and b/gnome2.icns differ diff --git a/good.tif b/good.tif new file mode 100644 index 0000000..b09ebc9 Binary files /dev/null and b/good.tif differ diff --git a/iChat.png b/iChat.png new file mode 100644 index 0000000..fcbff6c Binary files /dev/null and b/iChat.png differ diff --git a/inv_misc_bag_14.png b/inv_misc_bag_14.png new file mode 100644 index 0000000..791145e Binary files /dev/null and b/inv_misc_bag_14.png differ diff --git a/lua-5.1.4/.svn/all-wcprops b/lua-5.1.4/.svn/all-wcprops new file mode 100644 index 0000000..1a45e14 --- /dev/null +++ b/lua-5.1.4/.svn/all-wcprops @@ -0,0 +1,11 @@ +K 25 +svn:wc:ra_dav:version-url +V 33 +/svn/!svn/ver/547/trunk/lua-5.1.4 +END +COPYRIGHT +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/COPYRIGHT +END diff --git a/lua-5.1.4/.svn/entries b/lua-5.1.4/.svn/entries new file mode 100644 index 0000000..ab1fcdf --- /dev/null +++ b/lua-5.1.4/.svn/entries @@ -0,0 +1,65 @@ +10 + +dir +547 +https://pocketgnome.googlecode.com/svn/trunk/lua-5.1.4 +https://pocketgnome.googlecode.com/svn + + + +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +src +dir + +COPYRIGHT +file + + + + +2010-10-08T19:42:08.000000Z +90c3badc6055c699194c4a7cea583296 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1528 + diff --git a/lua-5.1.4/.svn/text-base/COPYRIGHT.svn-base b/lua-5.1.4/.svn/text-base/COPYRIGHT.svn-base new file mode 100644 index 0000000..3a53e74 --- /dev/null +++ b/lua-5.1.4/.svn/text-base/COPYRIGHT.svn-base @@ -0,0 +1,34 @@ +Lua License +----------- + +Lua is licensed under the terms of the MIT license reproduced below. +This means that Lua is free software and can be used for both academic +and commercial purposes at absolutely no cost. + +For details and rationale, see http://www.lua.org/license.html . + +=============================================================================== + +Copyright (C) 1994-2008 Lua.org, PUC-Rio. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=============================================================================== + +(end of COPYRIGHT) diff --git a/lua-5.1.4/COPYRIGHT b/lua-5.1.4/COPYRIGHT new file mode 100644 index 0000000..3a53e74 --- /dev/null +++ b/lua-5.1.4/COPYRIGHT @@ -0,0 +1,34 @@ +Lua License +----------- + +Lua is licensed under the terms of the MIT license reproduced below. +This means that Lua is free software and can be used for both academic +and commercial purposes at absolutely no cost. + +For details and rationale, see http://www.lua.org/license.html . + +=============================================================================== + +Copyright (C) 1994-2008 Lua.org, PUC-Rio. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +=============================================================================== + +(end of COPYRIGHT) diff --git a/lua-5.1.4/src/.svn/all-wcprops b/lua-5.1.4/src/.svn/all-wcprops new file mode 100644 index 0000000..820eba3 --- /dev/null +++ b/lua-5.1.4/src/.svn/all-wcprops @@ -0,0 +1,347 @@ +K 25 +svn:wc:ra_dav:version-url +V 37 +/svn/!svn/ver/547/trunk/lua-5.1.4/src +END +lauxlib.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lauxlib.c +END +ldebug.c +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ldebug.c +END +lauxlib.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lauxlib.h +END +ldebug.h +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ldebug.h +END +ltablib.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ltablib.c +END +liolib.c +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/liolib.c +END +lstrlib.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lstrlib.c +END +lualib.h +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lualib.h +END +floo +K 25 +svn:wc:ra_dav:version-url +V 42 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/floo +END +ldo.c +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ldo.c +END +ldump.c +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ldump.c +END +ldo.h +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ldo.h +END +loslib.c +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/loslib.c +END +luac.c +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/luac.c +END +lundump.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lundump.c +END +ldblib.c +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ldblib.c +END +lundump.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lundump.h +END +lmem.c +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lmem.c +END +lmathlib.c +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lmathlib.c +END +Makefile +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/Makefile +END +lstate.c +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lstate.c +END +ltm.c +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ltm.c +END +lvm.c +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lvm.c +END +lmem.h +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lmem.h +END +lstate.h +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lstate.h +END +ltm.h +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ltm.h +END +ltable.c +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ltable.c +END +lvm.h +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lvm.h +END +llex.c +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/llex.c +END +lgc.c +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lgc.c +END +loadlib.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/loadlib.c +END +lfunc.c +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lfunc.c +END +lopcodes.c +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lopcodes.c +END +lparser.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lparser.c +END +ltable.h +K 25 +svn:wc:ra_dav:version-url +V 46 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/ltable.h +END +llex.h +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/llex.h +END +lgc.h +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lgc.h +END +lfunc.h +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lfunc.h +END +lbaselib.c +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lbaselib.c +END +lopcodes.h +K 25 +svn:wc:ra_dav:version-url +V 48 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lopcodes.h +END +lparser.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lparser.h +END +lzio.c +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lzio.c +END +linit.c +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/linit.c +END +lua.c +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lua.c +END +lobject.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lobject.c +END +llimits.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/llimits.h +END +lstring.c +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lstring.c +END +lzio.h +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lzio.h +END +lapi.c +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lapi.c +END +lcode.c +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lcode.c +END +lua.h +K 25 +svn:wc:ra_dav:version-url +V 43 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lua.h +END +lobject.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lobject.h +END +lstring.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lstring.h +END +lapi.h +K 25 +svn:wc:ra_dav:version-url +V 44 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lapi.h +END +lcode.h +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/lcode.h +END +luaconf.h +K 25 +svn:wc:ra_dav:version-url +V 47 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/luaconf.h +END +print.c +K 25 +svn:wc:ra_dav:version-url +V 45 +/svn/!svn/ver/547/trunk/lua-5.1.4/src/print.c +END diff --git a/lua-5.1.4/src/.svn/entries b/lua-5.1.4/src/.svn/entries new file mode 100644 index 0000000..8b21d0a --- /dev/null +++ b/lua-5.1.4/src/.svn/entries @@ -0,0 +1,1966 @@ +10 + +dir +547 +https://pocketgnome.googlecode.com/svn/trunk/lua-5.1.4/src +https://pocketgnome.googlecode.com/svn + + + +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + +4a9c585c-cb2d-11dd-a3c7-fda619b15ae3 + +lauxlib.c +file + + + + +2010-10-08T19:42:09.000000Z +036e167458cdea501bd65bac3b28bc1e +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +17417 + +ldebug.c +file + + + + +2010-10-08T19:42:10.000000Z +82c84cf040bf99a5ab821a64b3d17974 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +16840 + +lauxlib.h +file + + + + +2010-10-08T19:42:09.000000Z +9ee455010892bdf666d56ba254ef06e5 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +5777 + +ldebug.h +file + + + + +2010-10-08T19:42:10.000000Z +302eafbfb9fc69dbd9d14f5ab176471f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1061 + +ltablib.c +file + + + + +2010-10-08T19:42:17.000000Z +25d290590652591f222de3bc384ce9a8 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +7343 + +liolib.c +file + + + + +2010-10-08T19:42:12.000000Z +0b6389d39a7c1fe8ff286919dcac334d +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +13406 + +lstrlib.c +file + + + + +2010-10-08T19:42:17.000000Z +dbaf7cf3c47d558cd0235f69116faf39 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +23481 + +lualib.h +file + + + + +2010-10-08T19:42:19.000000Z +03b9f9c3f7a82bee2f7eab03315eae7d +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1026 + +floo +file + + + + +2010-10-08T19:42:08.000000Z +d3a2bf0324813e39b7e1c191f4582f39 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +272 + +ldo.c +file + + + + +2010-10-08T19:42:10.000000Z +6ac8b3237c6186ca13f786e546545868 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +14851 + +ldump.c +file + + + + +2010-10-08T19:42:11.000000Z +70784f35ce52f1310af1c582beb1b3b7 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +3114 + +ldo.h +file + + + + +2010-10-08T19:42:11.000000Z +5944c62605bcc1d79caa49970aebeade +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1897 + +loslib.c +file + + + + +2010-10-08T19:42:15.000000Z +e516ae0ffc3d215ea581246517e85c7f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +5992 + +luac.c +file + + + + +2010-10-08T19:42:18.000000Z +18b78f5cdc6fc59f6f3e53026a7fe446 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +4661 + +lundump.c +file + + + + +2010-10-08T19:42:19.000000Z +70843533ca4b52caaea45e0561cf8ced +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +4629 + +ldblib.c +file + + + + +2010-10-08T19:42:10.000000Z +02e4c11fecbdf5466991910c50b549f7 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +10069 + +lundump.h +file + + + + +2010-10-08T19:42:19.000000Z +c1ac612e124b276b85737affc8e816f1 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +890 + +lmem.c +file + + + + +2010-10-08T19:42:13.000000Z +6656f31d1a52aa8031194428787764d7 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +2172 + +Makefile +file + + + + +2010-10-08T19:42:20.000000Z +d204bbeb8646333e0501092cb0413dfe +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +6088 + +ltm.c +file + + + + +2010-10-08T19:42:17.000000Z +4ef6dd80b6678def7366157b127dd801 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1650 + +lstate.c +file + + + + +2010-10-08T19:42:16.000000Z +c82b593a33e6460cf2254056e9184d6e +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +5674 + +lmathlib.c +file + + + + +2010-10-08T19:42:13.000000Z +103b2bbf31c0ed89c373f217559550df +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +5831 + +lvm.c +file + + + + +2010-10-08T19:42:19.000000Z +009df5dea34190295d8b3c79d6910cc3 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +23126 + +lmem.h +file + + + + +2010-10-08T19:42:14.000000Z +368761f75f040c81f9213c4e0e51192f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1494 + +ltm.h +file + + + + +2010-10-08T19:42:17.000000Z +1397b90da4d859afce633dbbb8c535c2 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1018 + +lstate.h +file + + + + +2010-10-08T19:42:16.000000Z +0b9a678b6645ac6fc80d215017f50b04 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +5011 + +lvm.h +file + + + + +2010-10-08T19:42:19.000000Z +7594c3494d64becc726364fc8ba3ed9f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1159 + +ltable.c +file + + + + +2010-10-08T19:42:17.000000Z +29c90679a22e5723578a88a267fe463f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +16263 + +llex.c +file + + + + +2010-10-08T19:42:13.000000Z +d6b38fc47ecba77449a5957a0b864348 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +12474 + +lgc.c +file + + + + +2010-10-08T19:42:12.000000Z +94ed711f5a231c770b015f62c7fb1ac5 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +20099 + +loadlib.c +file + + + + +2010-10-08T19:42:14.000000Z +4bb5982122e987e8daff9208a6d5a7a3 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +19216 + +lfunc.c +file + + + + +2010-10-08T19:42:11.000000Z +20bdd3463590fa03c54ed57e2168485f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +4618 + +lopcodes.c +file + + + + +2010-10-08T19:42:14.000000Z +bd304355af8dde4fef9e58476663975a +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +2884 + +lparser.c +file + + + + +2010-10-08T19:42:15.000000Z +ee183362e7aa77276b08be18083d77dc +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +36696 + +ltable.h +file + + + + +2010-10-08T19:42:17.000000Z +301f444a7170b24e293c2323f35115c4 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1184 + +llex.h +file + + + + +2010-10-08T19:42:13.000000Z +0954f33df5b5264df63ad176af6fd8cd +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +2177 + +lgc.h +file + + + + +2010-10-08T19:42:12.000000Z +c24d8d859d1defa912e75d65a06e61c3 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +3159 + +lfunc.h +file + + + + +2010-10-08T19:42:11.000000Z +3a4553282901dc2daa29c535a387e815 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1125 + +lopcodes.h +file + + + + +2010-10-08T19:42:15.000000Z +88a90c5ea4dbec97eb08d306daac2d26 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +8086 + +lbaselib.c +file + + + + +2010-10-08T19:42:09.000000Z +99e7c6c0a82c8ebdfc766114aeed42d7 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +17046 + +lparser.h +file + + + + +2010-10-08T19:42:15.000000Z +85895dd17a4e1bb0ee81c191b0e64b5d +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +2261 + +lzio.c +file + + + + +2010-10-08T19:42:20.000000Z +ea9e7b4a4db44a184580bf0fbefa1600 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1628 + +linit.c +file + + + + +2010-10-08T19:42:12.000000Z +87c49be9d212f531933e19b8a8f4fc9b +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +765 + +lua.c +file + + + + +2010-10-08T19:42:18.000000Z +50502857aab32e8a1886b491b3fe1ddb +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +10163 + +lobject.c +file + + + + +2010-10-08T19:42:14.000000Z +7321da04b0f05c85dfe7d37f4cd4400f +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +5498 + +llimits.h +file + + + + +2010-10-08T19:42:13.000000Z +49146162c71b60bac7d70aa68ad987c9 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +2349 + +lstring.c +file + + + + +2010-10-08T19:42:16.000000Z +0ffb701fcc7fc6aeae1d2779b47a1694 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +3110 + +lzio.h +file + + + + +2010-10-08T19:42:20.000000Z +5f93a1157272ff89030b0a1b6f69ed47 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +1556 + +lapi.c +file + + + + +2010-10-08T19:42:08.000000Z +2751d5c9103e098a6eb4850009a6a205 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +22708 + +lcode.c +file + + + + +2010-10-08T19:42:09.000000Z +4c793d782a899cef8efea6c01fe0387a +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +21335 + +lua.h +file + + + + +2010-10-08T19:42:18.000000Z +4d005694d896524f5b8e62d4480de5bb +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +11688 + +lobject.h +file + + + + +2010-10-08T19:42:14.000000Z +5d4be69f06b6832adf6d94a84cfdc58b +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +8502 + +lstring.h +file + + + + +2010-10-08T19:42:16.000000Z +267a74b442487c2d9aa7c7a87f691325 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +814 + +lapi.h +file + + + + +2010-10-08T19:42:08.000000Z +ef97b96a4ca47aa96944985ade67a2cf +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +262 + +lcode.h +file + + + + +2010-10-08T19:42:10.000000Z +88bd055ac668e3262ca79d9e9c5717e3 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +2750 + +luaconf.h +file + + + + +2010-10-08T19:42:18.000000Z +034b876b7026c4f569a9f090b8769b0b +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +22299 + +print.c +file + + + + +2010-10-08T19:42:20.000000Z +a866cf686914f35a76fff22587fb9f66 +2010-10-08T20:27:58.570213Z +547 +ootoaoo + + + + + + + + + + + + + + + + + + + + + +4944 + diff --git a/lua-5.1.4/src/.svn/text-base/Makefile.svn-base b/lua-5.1.4/src/.svn/text-base/Makefile.svn-base new file mode 100644 index 0000000..e4a3cd6 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/Makefile.svn-base @@ -0,0 +1,182 @@ +# makefile for building Lua +# see ../INSTALL for installation instructions +# see ../Makefile and luaconf.h for further customization + +# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= + +# Your platform. See PLATS for possible values. +PLAT= none + +CC= gcc +CFLAGS= -O2 -Wall $(MYCFLAGS) +AR= ar rcu +RANLIB= ranlib +RM= rm -f +LIBS= -lm $(MYLIBS) + +MYCFLAGS= +MYLDFLAGS= +MYLIBS= + +# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= + +PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris + +LUA_A= liblua.a +CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ + lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ + lundump.o lvm.o lzio.o +LIB_O= lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o \ + lstrlib.o loadlib.o linit.o + +LUA_T= lua +LUA_O= lua.o + +LUAC_T= luac +LUAC_O= luac.o print.o + +ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) +ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) +ALL_A= $(LUA_A) + +default: $(PLAT) + +all: $(ALL_T) + +o: $(ALL_O) + +a: $(ALL_A) + +$(LUA_A): $(CORE_O) $(LIB_O) + $(AR) $@ $? + $(RANLIB) $@ + +$(LUA_T): $(LUA_O) $(LUA_A) + $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) + +$(LUAC_T): $(LUAC_O) $(LUA_A) + $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) + +clean: + $(RM) $(ALL_T) $(ALL_O) + +depend: + @$(CC) $(CFLAGS) -MM l*.c print.c + +echo: + @echo "PLAT = $(PLAT)" + @echo "CC = $(CC)" + @echo "CFLAGS = $(CFLAGS)" + @echo "AR = $(AR)" + @echo "RANLIB = $(RANLIB)" + @echo "RM = $(RM)" + @echo "MYCFLAGS = $(MYCFLAGS)" + @echo "MYLDFLAGS = $(MYLDFLAGS)" + @echo "MYLIBS = $(MYLIBS)" + +# convenience targets for popular platforms + +none: + @echo "Please choose a platform:" + @echo " $(PLATS)" + +aix: + $(MAKE) all CC="xlc" CFLAGS="-O2 -DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" MYLDFLAGS="-brtl -bexpall" + +ansi: + $(MAKE) all MYCFLAGS=-DLUA_ANSI + +bsd: + $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-Wl,-E" + +freebsd: + $(MAKE) all MYCFLAGS="-DLUA_USE_LINUX" MYLIBS="-Wl,-E -lreadline" + +generic: + $(MAKE) all MYCFLAGS= + +linux: + $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses" + +macosx: + $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-lreadline" +# use this on Mac OS X 10.3- +# $(MAKE) all MYCFLAGS=-DLUA_USE_MACOSX + +mingw: + $(MAKE) "LUA_A=lua51.dll" "LUA_T=lua.exe" \ + "AR=$(CC) -shared -o" "RANLIB=strip --strip-unneeded" \ + "MYCFLAGS=-DLUA_BUILD_AS_DLL" "MYLIBS=" "MYLDFLAGS=-s" lua.exe + $(MAKE) "LUAC_T=luac.exe" luac.exe + +posix: + $(MAKE) all MYCFLAGS=-DLUA_USE_POSIX + +solaris: + $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" + +# list targets that do not create files (but not all makes understand .PHONY) +.PHONY: all $(PLATS) default o a clean depend echo none + +# DO NOT DELETE + +lapi.o: lapi.c lua.h luaconf.h lapi.h lobject.h llimits.h ldebug.h \ + lstate.h ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h \ + lundump.h lvm.h +lauxlib.o: lauxlib.c lua.h luaconf.h lauxlib.h +lbaselib.o: lbaselib.c lua.h luaconf.h lauxlib.h lualib.h +lcode.o: lcode.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ + lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h lgc.h \ + ltable.h +ldblib.o: ldblib.c lua.h luaconf.h lauxlib.h lualib.h +ldebug.o: ldebug.c lua.h luaconf.h lapi.h lobject.h llimits.h lcode.h \ + llex.h lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ + lfunc.h lstring.h lgc.h ltable.h lvm.h +ldo.o: ldo.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ + lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lparser.h lstring.h \ + ltable.h lundump.h lvm.h +ldump.o: ldump.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h \ + lzio.h lmem.h lundump.h +lfunc.o: lfunc.c lua.h luaconf.h lfunc.h lobject.h llimits.h lgc.h lmem.h \ + lstate.h ltm.h lzio.h +lgc.o: lgc.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ + lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h +linit.o: linit.c lua.h luaconf.h lualib.h lauxlib.h +liolib.o: liolib.c lua.h luaconf.h lauxlib.h lualib.h +llex.o: llex.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h ltm.h \ + lzio.h lmem.h llex.h lparser.h lstring.h lgc.h ltable.h +lmathlib.o: lmathlib.c lua.h luaconf.h lauxlib.h lualib.h +lmem.o: lmem.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h ldo.h +loadlib.o: loadlib.c lua.h luaconf.h lauxlib.h lualib.h +lobject.o: lobject.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h \ + ltm.h lzio.h lmem.h lstring.h lgc.h lvm.h +lopcodes.o: lopcodes.c lopcodes.h llimits.h lua.h luaconf.h +loslib.o: loslib.c lua.h luaconf.h lauxlib.h lualib.h +lparser.o: lparser.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ + lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ + lfunc.h lstring.h lgc.h ltable.h +lstate.o: lstate.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h llex.h lstring.h ltable.h +lstring.o: lstring.c lua.h luaconf.h lmem.h llimits.h lobject.h lstate.h \ + ltm.h lzio.h lstring.h lgc.h +lstrlib.o: lstrlib.c lua.h luaconf.h lauxlib.h lualib.h +ltable.o: ltable.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h ldo.h lgc.h ltable.h +ltablib.o: ltablib.c lua.h luaconf.h lauxlib.h lualib.h +ltm.o: ltm.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h lzio.h \ + lmem.h lstring.h lgc.h ltable.h +lua.o: lua.c lua.h luaconf.h lauxlib.h lualib.h +luac.o: luac.c lua.h luaconf.h lauxlib.h ldo.h lobject.h llimits.h \ + lstate.h ltm.h lzio.h lmem.h lfunc.h lopcodes.h lstring.h lgc.h \ + lundump.h +lundump.o: lundump.c lua.h luaconf.h ldebug.h lstate.h lobject.h \ + llimits.h ltm.h lzio.h lmem.h ldo.h lfunc.h lstring.h lgc.h lundump.h +lvm.o: lvm.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ + lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lstring.h ltable.h lvm.h +lzio.o: lzio.c lua.h luaconf.h llimits.h lmem.h lstate.h lobject.h ltm.h \ + lzio.h +print.o: print.c ldebug.h lstate.h lua.h luaconf.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h lopcodes.h lundump.h + +# (end of Makefile) diff --git a/lua-5.1.4/src/.svn/text-base/floo.svn-base b/lua-5.1.4/src/.svn/text-base/floo.svn-base new file mode 100644 index 0000000..26ab2c7 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/floo.svn-base @@ -0,0 +1,32 @@ +lapi.c +lauxlib.c +lbaselib.c +lcode.c +ldblib.c +ldebug.c +ldo.c +ldump.c +lfunc.c +lgc.c +linit.c +liolib.c +llex.c +lmathlib.c +lmem.c +loadlib.c +lobject.c +lopcodes.c +loslib.c +lparser.c +lstate.c +lstring.c +lstrlib.c +ltable.c +ltablib.c +ltm.c +lua.c +luac.c +lundump.c +lvm.c +lzio.c +print.c diff --git a/lua-5.1.4/src/.svn/text-base/lapi.c.svn-base b/lua-5.1.4/src/.svn/text-base/lapi.c.svn-base new file mode 100644 index 0000000..5d5145d --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lapi.c.svn-base @@ -0,0 +1,1087 @@ +/* +** $Id: lapi.c,v 2.55.1.5 2008/07/04 18:41:18 roberto Exp $ +** Lua API +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include + +#define lapi_c +#define LUA_CORE + +#include "lua.h" + +#include "lapi.h" +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lundump.h" +#include "lvm.h" + + + +const char lua_ident[] = + "$Lua: " LUA_RELEASE " " LUA_COPYRIGHT " $\n" + "$Authors: " LUA_AUTHORS " $\n" + "$URL: www.lua.org $\n"; + + + +#define api_checknelems(L, n) api_check(L, (n) <= (L->top - L->base)) + +#define api_checkvalidindex(L, i) api_check(L, (i) != luaO_nilobject) + +#define api_incr_top(L) {api_check(L, L->top < L->ci->top); L->top++;} + + + +static TValue *index2adr (lua_State *L, int idx) { + if (idx > 0) { + TValue *o = L->base + (idx - 1); + api_check(L, idx <= L->ci->top - L->base); + if (o >= L->top) return cast(TValue *, luaO_nilobject); + else return o; + } + else if (idx > LUA_REGISTRYINDEX) { + api_check(L, idx != 0 && -idx <= L->top - L->base); + return L->top + idx; + } + else switch (idx) { /* pseudo-indices */ + case LUA_REGISTRYINDEX: return registry(L); + case LUA_ENVIRONINDEX: { + Closure *func = curr_func(L); + sethvalue(L, &L->env, func->c.env); + return &L->env; + } + case LUA_GLOBALSINDEX: return gt(L); + default: { + Closure *func = curr_func(L); + idx = LUA_GLOBALSINDEX - idx; + return (idx <= func->c.nupvalues) + ? &func->c.upvalue[idx-1] + : cast(TValue *, luaO_nilobject); + } + } +} + + +static Table *getcurrenv (lua_State *L) { + if (L->ci == L->base_ci) /* no enclosing function? */ + return hvalue(gt(L)); /* use global table as environment */ + else { + Closure *func = curr_func(L); + return func->c.env; + } +} + + +void luaA_pushobject (lua_State *L, const TValue *o) { + setobj2s(L, L->top, o); + api_incr_top(L); +} + + +LUA_API int lua_checkstack (lua_State *L, int size) { + int res = 1; + lua_lock(L); + if (size > LUAI_MAXCSTACK || (L->top - L->base + size) > LUAI_MAXCSTACK) + res = 0; /* stack overflow */ + else if (size > 0) { + luaD_checkstack(L, size); + if (L->ci->top < L->top + size) + L->ci->top = L->top + size; + } + lua_unlock(L); + return res; +} + + +LUA_API void lua_xmove (lua_State *from, lua_State *to, int n) { + int i; + if (from == to) return; + lua_lock(to); + api_checknelems(from, n); + api_check(from, G(from) == G(to)); + api_check(from, to->ci->top - to->top >= n); + from->top -= n; + for (i = 0; i < n; i++) { + setobj2s(to, to->top++, from->top + i); + } + lua_unlock(to); +} + + +LUA_API void lua_setlevel (lua_State *from, lua_State *to) { + to->nCcalls = from->nCcalls; +} + + +LUA_API lua_CFunction lua_atpanic (lua_State *L, lua_CFunction panicf) { + lua_CFunction old; + lua_lock(L); + old = G(L)->panic; + G(L)->panic = panicf; + lua_unlock(L); + return old; +} + + +LUA_API lua_State *lua_newthread (lua_State *L) { + lua_State *L1; + lua_lock(L); + luaC_checkGC(L); + L1 = luaE_newthread(L); + setthvalue(L, L->top, L1); + api_incr_top(L); + lua_unlock(L); + luai_userstatethread(L, L1); + return L1; +} + + + +/* +** basic stack manipulation +*/ + + +LUA_API int lua_gettop (lua_State *L) { + return cast_int(L->top - L->base); +} + + +LUA_API void lua_settop (lua_State *L, int idx) { + lua_lock(L); + if (idx >= 0) { + api_check(L, idx <= L->stack_last - L->base); + while (L->top < L->base + idx) + setnilvalue(L->top++); + L->top = L->base + idx; + } + else { + api_check(L, -(idx+1) <= (L->top - L->base)); + L->top += idx+1; /* `subtract' index (index is negative) */ + } + lua_unlock(L); +} + + +LUA_API void lua_remove (lua_State *L, int idx) { + StkId p; + lua_lock(L); + p = index2adr(L, idx); + api_checkvalidindex(L, p); + while (++p < L->top) setobjs2s(L, p-1, p); + L->top--; + lua_unlock(L); +} + + +LUA_API void lua_insert (lua_State *L, int idx) { + StkId p; + StkId q; + lua_lock(L); + p = index2adr(L, idx); + api_checkvalidindex(L, p); + for (q = L->top; q>p; q--) setobjs2s(L, q, q-1); + setobjs2s(L, p, L->top); + lua_unlock(L); +} + + +LUA_API void lua_replace (lua_State *L, int idx) { + StkId o; + lua_lock(L); + /* explicit test for incompatible code */ + if (idx == LUA_ENVIRONINDEX && L->ci == L->base_ci) + luaG_runerror(L, "no calling environment"); + api_checknelems(L, 1); + o = index2adr(L, idx); + api_checkvalidindex(L, o); + if (idx == LUA_ENVIRONINDEX) { + Closure *func = curr_func(L); + api_check(L, ttistable(L->top - 1)); + func->c.env = hvalue(L->top - 1); + luaC_barrier(L, func, L->top - 1); + } + else { + setobj(L, o, L->top - 1); + if (idx < LUA_GLOBALSINDEX) /* function upvalue? */ + luaC_barrier(L, curr_func(L), L->top - 1); + } + L->top--; + lua_unlock(L); +} + + +LUA_API void lua_pushvalue (lua_State *L, int idx) { + lua_lock(L); + setobj2s(L, L->top, index2adr(L, idx)); + api_incr_top(L); + lua_unlock(L); +} + + + +/* +** access functions (stack -> C) +*/ + + +LUA_API int lua_type (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return (o == luaO_nilobject) ? LUA_TNONE : ttype(o); +} + + +LUA_API const char *lua_typename (lua_State *L, int t) { + UNUSED(L); + return (t == LUA_TNONE) ? "no value" : luaT_typenames[t]; +} + + +LUA_API int lua_iscfunction (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return iscfunction(o); +} + + +LUA_API int lua_isnumber (lua_State *L, int idx) { + TValue n; + const TValue *o = index2adr(L, idx); + return tonumber(o, &n); +} + + +LUA_API int lua_isstring (lua_State *L, int idx) { + int t = lua_type(L, idx); + return (t == LUA_TSTRING || t == LUA_TNUMBER); +} + + +LUA_API int lua_isuserdata (lua_State *L, int idx) { + const TValue *o = index2adr(L, idx); + return (ttisuserdata(o) || ttislightuserdata(o)); +} + + +LUA_API int lua_rawequal (lua_State *L, int index1, int index2) { + StkId o1 = index2adr(L, index1); + StkId o2 = index2adr(L, index2); + return (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 + : luaO_rawequalObj(o1, o2); +} + + +LUA_API int lua_equal (lua_State *L, int index1, int index2) { + StkId o1, o2; + int i; + lua_lock(L); /* may call tag method */ + o1 = index2adr(L, index1); + o2 = index2adr(L, index2); + i = (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 : equalobj(L, o1, o2); + lua_unlock(L); + return i; +} + + +LUA_API int lua_lessthan (lua_State *L, int index1, int index2) { + StkId o1, o2; + int i; + lua_lock(L); /* may call tag method */ + o1 = index2adr(L, index1); + o2 = index2adr(L, index2); + i = (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 + : luaV_lessthan(L, o1, o2); + lua_unlock(L); + return i; +} + + + +LUA_API lua_Number lua_tonumber (lua_State *L, int idx) { + TValue n; + const TValue *o = index2adr(L, idx); + if (tonumber(o, &n)) + return nvalue(o); + else + return 0; +} + + +LUA_API lua_Integer lua_tointeger (lua_State *L, int idx) { + TValue n; + const TValue *o = index2adr(L, idx); + if (tonumber(o, &n)) { + lua_Integer res; + lua_Number num = nvalue(o); + lua_number2integer(res, num); + return res; + } + else + return 0; +} + + +LUA_API int lua_toboolean (lua_State *L, int idx) { + const TValue *o = index2adr(L, idx); + return !l_isfalse(o); +} + + +LUA_API const char *lua_tolstring (lua_State *L, int idx, size_t *len) { + StkId o = index2adr(L, idx); + if (!ttisstring(o)) { + lua_lock(L); /* `luaV_tostring' may create a new string */ + if (!luaV_tostring(L, o)) { /* conversion failed? */ + if (len != NULL) *len = 0; + lua_unlock(L); + return NULL; + } + luaC_checkGC(L); + o = index2adr(L, idx); /* previous call may reallocate the stack */ + lua_unlock(L); + } + if (len != NULL) *len = tsvalue(o)->len; + return svalue(o); +} + + +LUA_API size_t lua_objlen (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + switch (ttype(o)) { + case LUA_TSTRING: return tsvalue(o)->len; + case LUA_TUSERDATA: return uvalue(o)->len; + case LUA_TTABLE: return luaH_getn(hvalue(o)); + case LUA_TNUMBER: { + size_t l; + lua_lock(L); /* `luaV_tostring' may create a new string */ + l = (luaV_tostring(L, o) ? tsvalue(o)->len : 0); + lua_unlock(L); + return l; + } + default: return 0; + } +} + + +LUA_API lua_CFunction lua_tocfunction (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return (!iscfunction(o)) ? NULL : clvalue(o)->c.f; +} + + +LUA_API void *lua_touserdata (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + switch (ttype(o)) { + case LUA_TUSERDATA: return (rawuvalue(o) + 1); + case LUA_TLIGHTUSERDATA: return pvalue(o); + default: return NULL; + } +} + + +LUA_API lua_State *lua_tothread (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return (!ttisthread(o)) ? NULL : thvalue(o); +} + + +LUA_API const void *lua_topointer (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + switch (ttype(o)) { + case LUA_TTABLE: return hvalue(o); + case LUA_TFUNCTION: return clvalue(o); + case LUA_TTHREAD: return thvalue(o); + case LUA_TUSERDATA: + case LUA_TLIGHTUSERDATA: + return lua_touserdata(L, idx); + default: return NULL; + } +} + + + +/* +** push functions (C -> stack) +*/ + + +LUA_API void lua_pushnil (lua_State *L) { + lua_lock(L); + setnilvalue(L->top); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushnumber (lua_State *L, lua_Number n) { + lua_lock(L); + setnvalue(L->top, n); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushinteger (lua_State *L, lua_Integer n) { + lua_lock(L); + setnvalue(L->top, cast_num(n)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushlstring (lua_State *L, const char *s, size_t len) { + lua_lock(L); + luaC_checkGC(L); + setsvalue2s(L, L->top, luaS_newlstr(L, s, len)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushstring (lua_State *L, const char *s) { + if (s == NULL) + lua_pushnil(L); + else + lua_pushlstring(L, s, strlen(s)); +} + + +LUA_API const char *lua_pushvfstring (lua_State *L, const char *fmt, + va_list argp) { + const char *ret; + lua_lock(L); + luaC_checkGC(L); + ret = luaO_pushvfstring(L, fmt, argp); + lua_unlock(L); + return ret; +} + + +LUA_API const char *lua_pushfstring (lua_State *L, const char *fmt, ...) { + const char *ret; + va_list argp; + lua_lock(L); + luaC_checkGC(L); + va_start(argp, fmt); + ret = luaO_pushvfstring(L, fmt, argp); + va_end(argp); + lua_unlock(L); + return ret; +} + + +LUA_API void lua_pushcclosure (lua_State *L, lua_CFunction fn, int n) { + Closure *cl; + lua_lock(L); + luaC_checkGC(L); + api_checknelems(L, n); + cl = luaF_newCclosure(L, n, getcurrenv(L)); + cl->c.f = fn; + L->top -= n; + while (n--) + setobj2n(L, &cl->c.upvalue[n], L->top+n); + setclvalue(L, L->top, cl); + lua_assert(iswhite(obj2gco(cl))); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushboolean (lua_State *L, int b) { + lua_lock(L); + setbvalue(L->top, (b != 0)); /* ensure that true is 1 */ + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushlightuserdata (lua_State *L, void *p) { + lua_lock(L); + setpvalue(L->top, p); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API int lua_pushthread (lua_State *L) { + lua_lock(L); + setthvalue(L, L->top, L); + api_incr_top(L); + lua_unlock(L); + return (G(L)->mainthread == L); +} + + + +/* +** get functions (Lua -> stack) +*/ + + +LUA_API void lua_gettable (lua_State *L, int idx) { + StkId t; + lua_lock(L); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + luaV_gettable(L, t, L->top - 1, L->top - 1); + lua_unlock(L); +} + + +LUA_API void lua_getfield (lua_State *L, int idx, const char *k) { + StkId t; + TValue key; + lua_lock(L); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + setsvalue(L, &key, luaS_new(L, k)); + luaV_gettable(L, t, &key, L->top); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_rawget (lua_State *L, int idx) { + StkId t; + lua_lock(L); + t = index2adr(L, idx); + api_check(L, ttistable(t)); + setobj2s(L, L->top - 1, luaH_get(hvalue(t), L->top - 1)); + lua_unlock(L); +} + + +LUA_API void lua_rawgeti (lua_State *L, int idx, int n) { + StkId o; + lua_lock(L); + o = index2adr(L, idx); + api_check(L, ttistable(o)); + setobj2s(L, L->top, luaH_getnum(hvalue(o), n)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_createtable (lua_State *L, int narray, int nrec) { + lua_lock(L); + luaC_checkGC(L); + sethvalue(L, L->top, luaH_new(L, narray, nrec)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API int lua_getmetatable (lua_State *L, int objindex) { + const TValue *obj; + Table *mt = NULL; + int res; + lua_lock(L); + obj = index2adr(L, objindex); + switch (ttype(obj)) { + case LUA_TTABLE: + mt = hvalue(obj)->metatable; + break; + case LUA_TUSERDATA: + mt = uvalue(obj)->metatable; + break; + default: + mt = G(L)->mt[ttype(obj)]; + break; + } + if (mt == NULL) + res = 0; + else { + sethvalue(L, L->top, mt); + api_incr_top(L); + res = 1; + } + lua_unlock(L); + return res; +} + + +LUA_API void lua_getfenv (lua_State *L, int idx) { + StkId o; + lua_lock(L); + o = index2adr(L, idx); + api_checkvalidindex(L, o); + switch (ttype(o)) { + case LUA_TFUNCTION: + sethvalue(L, L->top, clvalue(o)->c.env); + break; + case LUA_TUSERDATA: + sethvalue(L, L->top, uvalue(o)->env); + break; + case LUA_TTHREAD: + setobj2s(L, L->top, gt(thvalue(o))); + break; + default: + setnilvalue(L->top); + break; + } + api_incr_top(L); + lua_unlock(L); +} + + +/* +** set functions (stack -> Lua) +*/ + + +LUA_API void lua_settable (lua_State *L, int idx) { + StkId t; + lua_lock(L); + api_checknelems(L, 2); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + luaV_settable(L, t, L->top - 2, L->top - 1); + L->top -= 2; /* pop index and value */ + lua_unlock(L); +} + + +LUA_API void lua_setfield (lua_State *L, int idx, const char *k) { + StkId t; + TValue key; + lua_lock(L); + api_checknelems(L, 1); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + setsvalue(L, &key, luaS_new(L, k)); + luaV_settable(L, t, &key, L->top - 1); + L->top--; /* pop value */ + lua_unlock(L); +} + + +LUA_API void lua_rawset (lua_State *L, int idx) { + StkId t; + lua_lock(L); + api_checknelems(L, 2); + t = index2adr(L, idx); + api_check(L, ttistable(t)); + setobj2t(L, luaH_set(L, hvalue(t), L->top-2), L->top-1); + luaC_barriert(L, hvalue(t), L->top-1); + L->top -= 2; + lua_unlock(L); +} + + +LUA_API void lua_rawseti (lua_State *L, int idx, int n) { + StkId o; + lua_lock(L); + api_checknelems(L, 1); + o = index2adr(L, idx); + api_check(L, ttistable(o)); + setobj2t(L, luaH_setnum(L, hvalue(o), n), L->top-1); + luaC_barriert(L, hvalue(o), L->top-1); + L->top--; + lua_unlock(L); +} + + +LUA_API int lua_setmetatable (lua_State *L, int objindex) { + TValue *obj; + Table *mt; + lua_lock(L); + api_checknelems(L, 1); + obj = index2adr(L, objindex); + api_checkvalidindex(L, obj); + if (ttisnil(L->top - 1)) + mt = NULL; + else { + api_check(L, ttistable(L->top - 1)); + mt = hvalue(L->top - 1); + } + switch (ttype(obj)) { + case LUA_TTABLE: { + hvalue(obj)->metatable = mt; + if (mt) + luaC_objbarriert(L, hvalue(obj), mt); + break; + } + case LUA_TUSERDATA: { + uvalue(obj)->metatable = mt; + if (mt) + luaC_objbarrier(L, rawuvalue(obj), mt); + break; + } + default: { + G(L)->mt[ttype(obj)] = mt; + break; + } + } + L->top--; + lua_unlock(L); + return 1; +} + + +LUA_API int lua_setfenv (lua_State *L, int idx) { + StkId o; + int res = 1; + lua_lock(L); + api_checknelems(L, 1); + o = index2adr(L, idx); + api_checkvalidindex(L, o); + api_check(L, ttistable(L->top - 1)); + switch (ttype(o)) { + case LUA_TFUNCTION: + clvalue(o)->c.env = hvalue(L->top - 1); + break; + case LUA_TUSERDATA: + uvalue(o)->env = hvalue(L->top - 1); + break; + case LUA_TTHREAD: + sethvalue(L, gt(thvalue(o)), hvalue(L->top - 1)); + break; + default: + res = 0; + break; + } + if (res) luaC_objbarrier(L, gcvalue(o), hvalue(L->top - 1)); + L->top--; + lua_unlock(L); + return res; +} + + +/* +** `load' and `call' functions (run Lua code) +*/ + + +#define adjustresults(L,nres) \ + { if (nres == LUA_MULTRET && L->top >= L->ci->top) L->ci->top = L->top; } + + +#define checkresults(L,na,nr) \ + api_check(L, (nr) == LUA_MULTRET || (L->ci->top - L->top >= (nr) - (na))) + + +LUA_API void lua_call (lua_State *L, int nargs, int nresults) { + StkId func; + lua_lock(L); + api_checknelems(L, nargs+1); + checkresults(L, nargs, nresults); + func = L->top - (nargs+1); + luaD_call(L, func, nresults); + adjustresults(L, nresults); + lua_unlock(L); +} + + + +/* +** Execute a protected call. +*/ +struct CallS { /* data to `f_call' */ + StkId func; + int nresults; +}; + + +static void f_call (lua_State *L, void *ud) { + struct CallS *c = cast(struct CallS *, ud); + luaD_call(L, c->func, c->nresults); +} + + + +LUA_API int lua_pcall (lua_State *L, int nargs, int nresults, int errfunc) { + struct CallS c; + int status; + ptrdiff_t func; + lua_lock(L); + api_checknelems(L, nargs+1); + checkresults(L, nargs, nresults); + if (errfunc == 0) + func = 0; + else { + StkId o = index2adr(L, errfunc); + api_checkvalidindex(L, o); + func = savestack(L, o); + } + c.func = L->top - (nargs+1); /* function to be called */ + c.nresults = nresults; + status = luaD_pcall(L, f_call, &c, savestack(L, c.func), func); + adjustresults(L, nresults); + lua_unlock(L); + return status; +} + + +/* +** Execute a protected C call. +*/ +struct CCallS { /* data to `f_Ccall' */ + lua_CFunction func; + void *ud; +}; + + +static void f_Ccall (lua_State *L, void *ud) { + struct CCallS *c = cast(struct CCallS *, ud); + Closure *cl; + cl = luaF_newCclosure(L, 0, getcurrenv(L)); + cl->c.f = c->func; + setclvalue(L, L->top, cl); /* push function */ + api_incr_top(L); + setpvalue(L->top, c->ud); /* push only argument */ + api_incr_top(L); + luaD_call(L, L->top - 2, 0); +} + + +LUA_API int lua_cpcall (lua_State *L, lua_CFunction func, void *ud) { + struct CCallS c; + int status; + lua_lock(L); + c.func = func; + c.ud = ud; + status = luaD_pcall(L, f_Ccall, &c, savestack(L, L->top), 0); + lua_unlock(L); + return status; +} + + +LUA_API int lua_load (lua_State *L, lua_Reader reader, void *data, + const char *chunkname) { + ZIO z; + int status; + lua_lock(L); + if (!chunkname) chunkname = "?"; + luaZ_init(L, &z, reader, data); + status = luaD_protectedparser(L, &z, chunkname); + lua_unlock(L); + return status; +} + + +LUA_API int lua_dump (lua_State *L, lua_Writer writer, void *data) { + int status; + TValue *o; + lua_lock(L); + api_checknelems(L, 1); + o = L->top - 1; + if (isLfunction(o)) + status = luaU_dump(L, clvalue(o)->l.p, writer, data, 0); + else + status = 1; + lua_unlock(L); + return status; +} + + +LUA_API int lua_status (lua_State *L) { + return L->status; +} + + +/* +** Garbage-collection function +*/ + +LUA_API int lua_gc (lua_State *L, int what, int data) { + int res = 0; + global_State *g; + lua_lock(L); + g = G(L); + switch (what) { + case LUA_GCSTOP: { + g->GCthreshold = MAX_LUMEM; + break; + } + case LUA_GCRESTART: { + g->GCthreshold = g->totalbytes; + break; + } + case LUA_GCCOLLECT: { + luaC_fullgc(L); + break; + } + case LUA_GCCOUNT: { + /* GC values are expressed in Kbytes: #bytes/2^10 */ + res = cast_int(g->totalbytes >> 10); + break; + } + case LUA_GCCOUNTB: { + res = cast_int(g->totalbytes & 0x3ff); + break; + } + case LUA_GCSTEP: { + lu_mem a = (cast(lu_mem, data) << 10); + if (a <= g->totalbytes) + g->GCthreshold = g->totalbytes - a; + else + g->GCthreshold = 0; + while (g->GCthreshold <= g->totalbytes) { + luaC_step(L); + if (g->gcstate == GCSpause) { /* end of cycle? */ + res = 1; /* signal it */ + break; + } + } + break; + } + case LUA_GCSETPAUSE: { + res = g->gcpause; + g->gcpause = data; + break; + } + case LUA_GCSETSTEPMUL: { + res = g->gcstepmul; + g->gcstepmul = data; + break; + } + default: res = -1; /* invalid option */ + } + lua_unlock(L); + return res; +} + + + +/* +** miscellaneous functions +*/ + + +LUA_API int lua_error (lua_State *L) { + lua_lock(L); + api_checknelems(L, 1); + luaG_errormsg(L); + lua_unlock(L); + return 0; /* to avoid warnings */ +} + + +LUA_API int lua_next (lua_State *L, int idx) { + StkId t; + int more; + lua_lock(L); + t = index2adr(L, idx); + api_check(L, ttistable(t)); + more = luaH_next(L, hvalue(t), L->top - 1); + if (more) { + api_incr_top(L); + } + else /* no more elements */ + L->top -= 1; /* remove key */ + lua_unlock(L); + return more; +} + + +LUA_API void lua_concat (lua_State *L, int n) { + lua_lock(L); + api_checknelems(L, n); + if (n >= 2) { + luaC_checkGC(L); + luaV_concat(L, n, cast_int(L->top - L->base) - 1); + L->top -= (n-1); + } + else if (n == 0) { /* push empty string */ + setsvalue2s(L, L->top, luaS_newlstr(L, "", 0)); + api_incr_top(L); + } + /* else n == 1; nothing to do */ + lua_unlock(L); +} + + +LUA_API lua_Alloc lua_getallocf (lua_State *L, void **ud) { + lua_Alloc f; + lua_lock(L); + if (ud) *ud = G(L)->ud; + f = G(L)->frealloc; + lua_unlock(L); + return f; +} + + +LUA_API void lua_setallocf (lua_State *L, lua_Alloc f, void *ud) { + lua_lock(L); + G(L)->ud = ud; + G(L)->frealloc = f; + lua_unlock(L); +} + + +LUA_API void *lua_newuserdata (lua_State *L, size_t size) { + Udata *u; + lua_lock(L); + luaC_checkGC(L); + u = luaS_newudata(L, size, getcurrenv(L)); + setuvalue(L, L->top, u); + api_incr_top(L); + lua_unlock(L); + return u + 1; +} + + + + +static const char *aux_upvalue (StkId fi, int n, TValue **val) { + Closure *f; + if (!ttisfunction(fi)) return NULL; + f = clvalue(fi); + if (f->c.isC) { + if (!(1 <= n && n <= f->c.nupvalues)) return NULL; + *val = &f->c.upvalue[n-1]; + return ""; + } + else { + Proto *p = f->l.p; + if (!(1 <= n && n <= p->sizeupvalues)) return NULL; + *val = f->l.upvals[n-1]->v; + return getstr(p->upvalues[n-1]); + } +} + + +LUA_API const char *lua_getupvalue (lua_State *L, int funcindex, int n) { + const char *name; + TValue *val; + lua_lock(L); + name = aux_upvalue(index2adr(L, funcindex), n, &val); + if (name) { + setobj2s(L, L->top, val); + api_incr_top(L); + } + lua_unlock(L); + return name; +} + + +LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n) { + const char *name; + TValue *val; + StkId fi; + lua_lock(L); + fi = index2adr(L, funcindex); + api_checknelems(L, 1); + name = aux_upvalue(fi, n, &val); + if (name) { + L->top--; + setobj(L, val, L->top); + luaC_barrier(L, clvalue(fi), L->top); + } + lua_unlock(L); + return name; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lapi.h.svn-base b/lua-5.1.4/src/.svn/text-base/lapi.h.svn-base new file mode 100644 index 0000000..2c3fab2 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lapi.h.svn-base @@ -0,0 +1,16 @@ +/* +** $Id: lapi.h,v 2.2.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions from Lua API +** See Copyright Notice in lua.h +*/ + +#ifndef lapi_h +#define lapi_h + + +#include "lobject.h" + + +LUAI_FUNC void luaA_pushobject (lua_State *L, const TValue *o); + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lauxlib.c.svn-base b/lua-5.1.4/src/.svn/text-base/lauxlib.c.svn-base new file mode 100644 index 0000000..10f14e2 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lauxlib.c.svn-base @@ -0,0 +1,652 @@ +/* +** $Id: lauxlib.c,v 1.159.1.3 2008/01/21 13:20:51 roberto Exp $ +** Auxiliary functions for building Lua libraries +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include +#include +#include + + +/* This file uses only the official API of Lua. +** Any function declared here could be written as an application function. +*/ + +#define lauxlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" + + +#define FREELIST_REF 0 /* free list of references */ + + +/* convert a stack index to positive */ +#define abs_index(L, i) ((i) > 0 || (i) <= LUA_REGISTRYINDEX ? (i) : \ + lua_gettop(L) + (i) + 1) + + +/* +** {====================================================== +** Error-report functions +** ======================================================= +*/ + + +LUALIB_API int luaL_argerror (lua_State *L, int narg, const char *extramsg) { + lua_Debug ar; + if (!lua_getstack(L, 0, &ar)) /* no stack frame? */ + return luaL_error(L, "bad argument #%d (%s)", narg, extramsg); + lua_getinfo(L, "n", &ar); + if (strcmp(ar.namewhat, "method") == 0) { + narg--; /* do not count `self' */ + if (narg == 0) /* error is in the self argument itself? */ + return luaL_error(L, "calling " LUA_QS " on bad self (%s)", + ar.name, extramsg); + } + if (ar.name == NULL) + ar.name = "?"; + return luaL_error(L, "bad argument #%d to " LUA_QS " (%s)", + narg, ar.name, extramsg); +} + + +LUALIB_API int luaL_typerror (lua_State *L, int narg, const char *tname) { + const char *msg = lua_pushfstring(L, "%s expected, got %s", + tname, luaL_typename(L, narg)); + return luaL_argerror(L, narg, msg); +} + + +static void tag_error (lua_State *L, int narg, int tag) { + luaL_typerror(L, narg, lua_typename(L, tag)); +} + + +LUALIB_API void luaL_where (lua_State *L, int level) { + lua_Debug ar; + if (lua_getstack(L, level, &ar)) { /* check function at level */ + lua_getinfo(L, "Sl", &ar); /* get info about it */ + if (ar.currentline > 0) { /* is there info? */ + lua_pushfstring(L, "%s:%d: ", ar.short_src, ar.currentline); + return; + } + } + lua_pushliteral(L, ""); /* else, no information available... */ +} + + +LUALIB_API int luaL_error (lua_State *L, const char *fmt, ...) { + va_list argp; + va_start(argp, fmt); + luaL_where(L, 1); + lua_pushvfstring(L, fmt, argp); + va_end(argp); + lua_concat(L, 2); + return lua_error(L); +} + +/* }====================================================== */ + + +LUALIB_API int luaL_checkoption (lua_State *L, int narg, const char *def, + const char *const lst[]) { + const char *name = (def) ? luaL_optstring(L, narg, def) : + luaL_checkstring(L, narg); + int i; + for (i=0; lst[i]; i++) + if (strcmp(lst[i], name) == 0) + return i; + return luaL_argerror(L, narg, + lua_pushfstring(L, "invalid option " LUA_QS, name)); +} + + +LUALIB_API int luaL_newmetatable (lua_State *L, const char *tname) { + lua_getfield(L, LUA_REGISTRYINDEX, tname); /* get registry.name */ + if (!lua_isnil(L, -1)) /* name already in use? */ + return 0; /* leave previous value on top, but return 0 */ + lua_pop(L, 1); + lua_newtable(L); /* create metatable */ + lua_pushvalue(L, -1); + lua_setfield(L, LUA_REGISTRYINDEX, tname); /* registry.name = metatable */ + return 1; +} + + +LUALIB_API void *luaL_checkudata (lua_State *L, int ud, const char *tname) { + void *p = lua_touserdata(L, ud); + if (p != NULL) { /* value is a userdata? */ + if (lua_getmetatable(L, ud)) { /* does it have a metatable? */ + lua_getfield(L, LUA_REGISTRYINDEX, tname); /* get correct metatable */ + if (lua_rawequal(L, -1, -2)) { /* does it have the correct mt? */ + lua_pop(L, 2); /* remove both metatables */ + return p; + } + } + } + luaL_typerror(L, ud, tname); /* else error */ + return NULL; /* to avoid warnings */ +} + + +LUALIB_API void luaL_checkstack (lua_State *L, int space, const char *mes) { + if (!lua_checkstack(L, space)) + luaL_error(L, "stack overflow (%s)", mes); +} + + +LUALIB_API void luaL_checktype (lua_State *L, int narg, int t) { + if (lua_type(L, narg) != t) + tag_error(L, narg, t); +} + + +LUALIB_API void luaL_checkany (lua_State *L, int narg) { + if (lua_type(L, narg) == LUA_TNONE) + luaL_argerror(L, narg, "value expected"); +} + + +LUALIB_API const char *luaL_checklstring (lua_State *L, int narg, size_t *len) { + const char *s = lua_tolstring(L, narg, len); + if (!s) tag_error(L, narg, LUA_TSTRING); + return s; +} + + +LUALIB_API const char *luaL_optlstring (lua_State *L, int narg, + const char *def, size_t *len) { + if (lua_isnoneornil(L, narg)) { + if (len) + *len = (def ? strlen(def) : 0); + return def; + } + else return luaL_checklstring(L, narg, len); +} + + +LUALIB_API lua_Number luaL_checknumber (lua_State *L, int narg) { + lua_Number d = lua_tonumber(L, narg); + if (d == 0 && !lua_isnumber(L, narg)) /* avoid extra test when d is not 0 */ + tag_error(L, narg, LUA_TNUMBER); + return d; +} + + +LUALIB_API lua_Number luaL_optnumber (lua_State *L, int narg, lua_Number def) { + return luaL_opt(L, luaL_checknumber, narg, def); +} + + +LUALIB_API lua_Integer luaL_checkinteger (lua_State *L, int narg) { + lua_Integer d = lua_tointeger(L, narg); + if (d == 0 && !lua_isnumber(L, narg)) /* avoid extra test when d is not 0 */ + tag_error(L, narg, LUA_TNUMBER); + return d; +} + + +LUALIB_API lua_Integer luaL_optinteger (lua_State *L, int narg, + lua_Integer def) { + return luaL_opt(L, luaL_checkinteger, narg, def); +} + + +LUALIB_API int luaL_getmetafield (lua_State *L, int obj, const char *event) { + if (!lua_getmetatable(L, obj)) /* no metatable? */ + return 0; + lua_pushstring(L, event); + lua_rawget(L, -2); + if (lua_isnil(L, -1)) { + lua_pop(L, 2); /* remove metatable and metafield */ + return 0; + } + else { + lua_remove(L, -2); /* remove only metatable */ + return 1; + } +} + + +LUALIB_API int luaL_callmeta (lua_State *L, int obj, const char *event) { + obj = abs_index(L, obj); + if (!luaL_getmetafield(L, obj, event)) /* no metafield? */ + return 0; + lua_pushvalue(L, obj); + lua_call(L, 1, 1); + return 1; +} + + +LUALIB_API void (luaL_register) (lua_State *L, const char *libname, + const luaL_Reg *l) { + luaI_openlib(L, libname, l, 0); +} + + +static int libsize (const luaL_Reg *l) { + int size = 0; + for (; l->name; l++) size++; + return size; +} + + +LUALIB_API void luaI_openlib (lua_State *L, const char *libname, + const luaL_Reg *l, int nup) { + if (libname) { + int size = libsize(l); + /* check whether lib already exists */ + luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 1); + lua_getfield(L, -1, libname); /* get _LOADED[libname] */ + if (!lua_istable(L, -1)) { /* not found? */ + lua_pop(L, 1); /* remove previous result */ + /* try global variable (and create one if it does not exist) */ + if (luaL_findtable(L, LUA_GLOBALSINDEX, libname, size) != NULL) + luaL_error(L, "name conflict for module " LUA_QS, libname); + lua_pushvalue(L, -1); + lua_setfield(L, -3, libname); /* _LOADED[libname] = new table */ + } + lua_remove(L, -2); /* remove _LOADED table */ + lua_insert(L, -(nup+1)); /* move library table to below upvalues */ + } + for (; l->name; l++) { + int i; + for (i=0; ifunc, nup); + lua_setfield(L, -(nup+2), l->name); + } + lua_pop(L, nup); /* remove upvalues */ +} + + + +/* +** {====================================================== +** getn-setn: size for arrays +** ======================================================= +*/ + +#if defined(LUA_COMPAT_GETN) + +static int checkint (lua_State *L, int topop) { + int n = (lua_type(L, -1) == LUA_TNUMBER) ? lua_tointeger(L, -1) : -1; + lua_pop(L, topop); + return n; +} + + +static void getsizes (lua_State *L) { + lua_getfield(L, LUA_REGISTRYINDEX, "LUA_SIZES"); + if (lua_isnil(L, -1)) { /* no `size' table? */ + lua_pop(L, 1); /* remove nil */ + lua_newtable(L); /* create it */ + lua_pushvalue(L, -1); /* `size' will be its own metatable */ + lua_setmetatable(L, -2); + lua_pushliteral(L, "kv"); + lua_setfield(L, -2, "__mode"); /* metatable(N).__mode = "kv" */ + lua_pushvalue(L, -1); + lua_setfield(L, LUA_REGISTRYINDEX, "LUA_SIZES"); /* store in register */ + } +} + + +LUALIB_API void luaL_setn (lua_State *L, int t, int n) { + t = abs_index(L, t); + lua_pushliteral(L, "n"); + lua_rawget(L, t); + if (checkint(L, 1) >= 0) { /* is there a numeric field `n'? */ + lua_pushliteral(L, "n"); /* use it */ + lua_pushinteger(L, n); + lua_rawset(L, t); + } + else { /* use `sizes' */ + getsizes(L); + lua_pushvalue(L, t); + lua_pushinteger(L, n); + lua_rawset(L, -3); /* sizes[t] = n */ + lua_pop(L, 1); /* remove `sizes' */ + } +} + + +LUALIB_API int luaL_getn (lua_State *L, int t) { + int n; + t = abs_index(L, t); + lua_pushliteral(L, "n"); /* try t.n */ + lua_rawget(L, t); + if ((n = checkint(L, 1)) >= 0) return n; + getsizes(L); /* else try sizes[t] */ + lua_pushvalue(L, t); + lua_rawget(L, -2); + if ((n = checkint(L, 2)) >= 0) return n; + return (int)lua_objlen(L, t); +} + +#endif + +/* }====================================================== */ + + + +LUALIB_API const char *luaL_gsub (lua_State *L, const char *s, const char *p, + const char *r) { + const char *wild; + size_t l = strlen(p); + luaL_Buffer b; + luaL_buffinit(L, &b); + while ((wild = strstr(s, p)) != NULL) { + luaL_addlstring(&b, s, wild - s); /* push prefix */ + luaL_addstring(&b, r); /* push replacement in place of pattern */ + s = wild + l; /* continue after `p' */ + } + luaL_addstring(&b, s); /* push last suffix */ + luaL_pushresult(&b); + return lua_tostring(L, -1); +} + + +LUALIB_API const char *luaL_findtable (lua_State *L, int idx, + const char *fname, int szhint) { + const char *e; + lua_pushvalue(L, idx); + do { + e = strchr(fname, '.'); + if (e == NULL) e = fname + strlen(fname); + lua_pushlstring(L, fname, e - fname); + lua_rawget(L, -2); + if (lua_isnil(L, -1)) { /* no such field? */ + lua_pop(L, 1); /* remove this nil */ + lua_createtable(L, 0, (*e == '.' ? 1 : szhint)); /* new table for field */ + lua_pushlstring(L, fname, e - fname); + lua_pushvalue(L, -2); + lua_settable(L, -4); /* set new table into field */ + } + else if (!lua_istable(L, -1)) { /* field has a non-table value? */ + lua_pop(L, 2); /* remove table and value */ + return fname; /* return problematic part of the name */ + } + lua_remove(L, -2); /* remove previous table */ + fname = e + 1; + } while (*e == '.'); + return NULL; +} + + + +/* +** {====================================================== +** Generic Buffer manipulation +** ======================================================= +*/ + + +#define bufflen(B) ((B)->p - (B)->buffer) +#define bufffree(B) ((size_t)(LUAL_BUFFERSIZE - bufflen(B))) + +#define LIMIT (LUA_MINSTACK/2) + + +static int emptybuffer (luaL_Buffer *B) { + size_t l = bufflen(B); + if (l == 0) return 0; /* put nothing on stack */ + else { + lua_pushlstring(B->L, B->buffer, l); + B->p = B->buffer; + B->lvl++; + return 1; + } +} + + +static void adjuststack (luaL_Buffer *B) { + if (B->lvl > 1) { + lua_State *L = B->L; + int toget = 1; /* number of levels to concat */ + size_t toplen = lua_strlen(L, -1); + do { + size_t l = lua_strlen(L, -(toget+1)); + if (B->lvl - toget + 1 >= LIMIT || toplen > l) { + toplen += l; + toget++; + } + else break; + } while (toget < B->lvl); + lua_concat(L, toget); + B->lvl = B->lvl - toget + 1; + } +} + + +LUALIB_API char *luaL_prepbuffer (luaL_Buffer *B) { + if (emptybuffer(B)) + adjuststack(B); + return B->buffer; +} + + +LUALIB_API void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l) { + while (l--) + luaL_addchar(B, *s++); +} + + +LUALIB_API void luaL_addstring (luaL_Buffer *B, const char *s) { + luaL_addlstring(B, s, strlen(s)); +} + + +LUALIB_API void luaL_pushresult (luaL_Buffer *B) { + emptybuffer(B); + lua_concat(B->L, B->lvl); + B->lvl = 1; +} + + +LUALIB_API void luaL_addvalue (luaL_Buffer *B) { + lua_State *L = B->L; + size_t vl; + const char *s = lua_tolstring(L, -1, &vl); + if (vl <= bufffree(B)) { /* fit into buffer? */ + memcpy(B->p, s, vl); /* put it there */ + B->p += vl; + lua_pop(L, 1); /* remove from stack */ + } + else { + if (emptybuffer(B)) + lua_insert(L, -2); /* put buffer before new value */ + B->lvl++; /* add new value into B stack */ + adjuststack(B); + } +} + + +LUALIB_API void luaL_buffinit (lua_State *L, luaL_Buffer *B) { + B->L = L; + B->p = B->buffer; + B->lvl = 0; +} + +/* }====================================================== */ + + +LUALIB_API int luaL_ref (lua_State *L, int t) { + int ref; + t = abs_index(L, t); + if (lua_isnil(L, -1)) { + lua_pop(L, 1); /* remove from stack */ + return LUA_REFNIL; /* `nil' has a unique fixed reference */ + } + lua_rawgeti(L, t, FREELIST_REF); /* get first free element */ + ref = (int)lua_tointeger(L, -1); /* ref = t[FREELIST_REF] */ + lua_pop(L, 1); /* remove it from stack */ + if (ref != 0) { /* any free element? */ + lua_rawgeti(L, t, ref); /* remove it from list */ + lua_rawseti(L, t, FREELIST_REF); /* (t[FREELIST_REF] = t[ref]) */ + } + else { /* no free elements */ + ref = (int)lua_objlen(L, t); + ref++; /* create new reference */ + } + lua_rawseti(L, t, ref); + return ref; +} + + +LUALIB_API void luaL_unref (lua_State *L, int t, int ref) { + if (ref >= 0) { + t = abs_index(L, t); + lua_rawgeti(L, t, FREELIST_REF); + lua_rawseti(L, t, ref); /* t[ref] = t[FREELIST_REF] */ + lua_pushinteger(L, ref); + lua_rawseti(L, t, FREELIST_REF); /* t[FREELIST_REF] = ref */ + } +} + + + +/* +** {====================================================== +** Load functions +** ======================================================= +*/ + +typedef struct LoadF { + int extraline; + FILE *f; + char buff[LUAL_BUFFERSIZE]; +} LoadF; + + +static const char *getF (lua_State *L, void *ud, size_t *size) { + LoadF *lf = (LoadF *)ud; + (void)L; + if (lf->extraline) { + lf->extraline = 0; + *size = 1; + return "\n"; + } + if (feof(lf->f)) return NULL; + *size = fread(lf->buff, 1, sizeof(lf->buff), lf->f); + return (*size > 0) ? lf->buff : NULL; +} + + +static int errfile (lua_State *L, const char *what, int fnameindex) { + const char *serr = strerror(errno); + const char *filename = lua_tostring(L, fnameindex) + 1; + lua_pushfstring(L, "cannot %s %s: %s", what, filename, serr); + lua_remove(L, fnameindex); + return LUA_ERRFILE; +} + + +LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) { + LoadF lf; + int status, readstatus; + int c; + int fnameindex = lua_gettop(L) + 1; /* index of filename on the stack */ + lf.extraline = 0; + if (filename == NULL) { + lua_pushliteral(L, "=stdin"); + lf.f = stdin; + } + else { + lua_pushfstring(L, "@%s", filename); + lf.f = fopen(filename, "r"); + if (lf.f == NULL) return errfile(L, "open", fnameindex); + } + c = getc(lf.f); + if (c == '#') { /* Unix exec. file? */ + lf.extraline = 1; + while ((c = getc(lf.f)) != EOF && c != '\n') ; /* skip first line */ + if (c == '\n') c = getc(lf.f); + } + if (c == LUA_SIGNATURE[0] && filename) { /* binary file? */ + lf.f = freopen(filename, "rb", lf.f); /* reopen in binary mode */ + if (lf.f == NULL) return errfile(L, "reopen", fnameindex); + /* skip eventual `#!...' */ + while ((c = getc(lf.f)) != EOF && c != LUA_SIGNATURE[0]) ; + lf.extraline = 0; + } + ungetc(c, lf.f); + status = lua_load(L, getF, &lf, lua_tostring(L, -1)); + readstatus = ferror(lf.f); + if (filename) fclose(lf.f); /* close file (even in case of errors) */ + if (readstatus) { + lua_settop(L, fnameindex); /* ignore results from `lua_load' */ + return errfile(L, "read", fnameindex); + } + lua_remove(L, fnameindex); + return status; +} + + +typedef struct LoadS { + const char *s; + size_t size; +} LoadS; + + +static const char *getS (lua_State *L, void *ud, size_t *size) { + LoadS *ls = (LoadS *)ud; + (void)L; + if (ls->size == 0) return NULL; + *size = ls->size; + ls->size = 0; + return ls->s; +} + + +LUALIB_API int luaL_loadbuffer (lua_State *L, const char *buff, size_t size, + const char *name) { + LoadS ls; + ls.s = buff; + ls.size = size; + return lua_load(L, getS, &ls, name); +} + + +LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s) { + return luaL_loadbuffer(L, s, strlen(s), s); +} + + + +/* }====================================================== */ + + +static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) { + (void)ud; + (void)osize; + if (nsize == 0) { + free(ptr); + return NULL; + } + else + return realloc(ptr, nsize); +} + + +static int panic (lua_State *L) { + (void)L; /* to avoid warnings */ + fprintf(stderr, "PANIC: unprotected error in call to Lua API (%s)\n", + lua_tostring(L, -1)); + return 0; +} + + +LUALIB_API lua_State *luaL_newstate (void) { + lua_State *L = lua_newstate(l_alloc, NULL); + if (L) lua_atpanic(L, &panic); + return L; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lauxlib.h.svn-base b/lua-5.1.4/src/.svn/text-base/lauxlib.h.svn-base new file mode 100644 index 0000000..3425823 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lauxlib.h.svn-base @@ -0,0 +1,174 @@ +/* +** $Id: lauxlib.h,v 1.88.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions for building Lua libraries +** See Copyright Notice in lua.h +*/ + + +#ifndef lauxlib_h +#define lauxlib_h + + +#include +#include + +#include "lua.h" + + +#if defined(LUA_COMPAT_GETN) +LUALIB_API int (luaL_getn) (lua_State *L, int t); +LUALIB_API void (luaL_setn) (lua_State *L, int t, int n); +#else +#define luaL_getn(L,i) ((int)lua_objlen(L, i)) +#define luaL_setn(L,i,j) ((void)0) /* no op! */ +#endif + +#if defined(LUA_COMPAT_OPENLIB) +#define luaI_openlib luaL_openlib +#endif + + +/* extra error code for `luaL_load' */ +#define LUA_ERRFILE (LUA_ERRERR+1) + + +typedef struct luaL_Reg { + const char *name; + lua_CFunction func; +} luaL_Reg; + + + +LUALIB_API void (luaI_openlib) (lua_State *L, const char *libname, + const luaL_Reg *l, int nup); +LUALIB_API void (luaL_register) (lua_State *L, const char *libname, + const luaL_Reg *l); +LUALIB_API int (luaL_getmetafield) (lua_State *L, int obj, const char *e); +LUALIB_API int (luaL_callmeta) (lua_State *L, int obj, const char *e); +LUALIB_API int (luaL_typerror) (lua_State *L, int narg, const char *tname); +LUALIB_API int (luaL_argerror) (lua_State *L, int numarg, const char *extramsg); +LUALIB_API const char *(luaL_checklstring) (lua_State *L, int numArg, + size_t *l); +LUALIB_API const char *(luaL_optlstring) (lua_State *L, int numArg, + const char *def, size_t *l); +LUALIB_API lua_Number (luaL_checknumber) (lua_State *L, int numArg); +LUALIB_API lua_Number (luaL_optnumber) (lua_State *L, int nArg, lua_Number def); + +LUALIB_API lua_Integer (luaL_checkinteger) (lua_State *L, int numArg); +LUALIB_API lua_Integer (luaL_optinteger) (lua_State *L, int nArg, + lua_Integer def); + +LUALIB_API void (luaL_checkstack) (lua_State *L, int sz, const char *msg); +LUALIB_API void (luaL_checktype) (lua_State *L, int narg, int t); +LUALIB_API void (luaL_checkany) (lua_State *L, int narg); + +LUALIB_API int (luaL_newmetatable) (lua_State *L, const char *tname); +LUALIB_API void *(luaL_checkudata) (lua_State *L, int ud, const char *tname); + +LUALIB_API void (luaL_where) (lua_State *L, int lvl); +LUALIB_API int (luaL_error) (lua_State *L, const char *fmt, ...); + +LUALIB_API int (luaL_checkoption) (lua_State *L, int narg, const char *def, + const char *const lst[]); + +LUALIB_API int (luaL_ref) (lua_State *L, int t); +LUALIB_API void (luaL_unref) (lua_State *L, int t, int ref); + +LUALIB_API int (luaL_loadfile) (lua_State *L, const char *filename); +LUALIB_API int (luaL_loadbuffer) (lua_State *L, const char *buff, size_t sz, + const char *name); +LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s); + +LUALIB_API lua_State *(luaL_newstate) (void); + + +LUALIB_API const char *(luaL_gsub) (lua_State *L, const char *s, const char *p, + const char *r); + +LUALIB_API const char *(luaL_findtable) (lua_State *L, int idx, + const char *fname, int szhint); + + + + +/* +** =============================================================== +** some useful macros +** =============================================================== +*/ + +#define luaL_argcheck(L, cond,numarg,extramsg) \ + ((void)((cond) || luaL_argerror(L, (numarg), (extramsg)))) +#define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) +#define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) +#define luaL_checkint(L,n) ((int)luaL_checkinteger(L, (n))) +#define luaL_optint(L,n,d) ((int)luaL_optinteger(L, (n), (d))) +#define luaL_checklong(L,n) ((long)luaL_checkinteger(L, (n))) +#define luaL_optlong(L,n,d) ((long)luaL_optinteger(L, (n), (d))) + +#define luaL_typename(L,i) lua_typename(L, lua_type(L,(i))) + +#define luaL_dofile(L, fn) \ + (luaL_loadfile(L, fn) || lua_pcall(L, 0, LUA_MULTRET, 0)) + +#define luaL_dostring(L, s) \ + (luaL_loadstring(L, s) || lua_pcall(L, 0, LUA_MULTRET, 0)) + +#define luaL_getmetatable(L,n) (lua_getfield(L, LUA_REGISTRYINDEX, (n))) + +#define luaL_opt(L,f,n,d) (lua_isnoneornil(L,(n)) ? (d) : f(L,(n))) + +/* +** {====================================================== +** Generic Buffer manipulation +** ======================================================= +*/ + + + +typedef struct luaL_Buffer { + char *p; /* current position in buffer */ + int lvl; /* number of strings in the stack (level) */ + lua_State *L; + char buffer[LUAL_BUFFERSIZE]; +} luaL_Buffer; + +#define luaL_addchar(B,c) \ + ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ + (*(B)->p++ = (char)(c))) + +/* compatibility only */ +#define luaL_putchar(B,c) luaL_addchar(B,c) + +#define luaL_addsize(B,n) ((B)->p += (n)) + +LUALIB_API void (luaL_buffinit) (lua_State *L, luaL_Buffer *B); +LUALIB_API char *(luaL_prepbuffer) (luaL_Buffer *B); +LUALIB_API void (luaL_addlstring) (luaL_Buffer *B, const char *s, size_t l); +LUALIB_API void (luaL_addstring) (luaL_Buffer *B, const char *s); +LUALIB_API void (luaL_addvalue) (luaL_Buffer *B); +LUALIB_API void (luaL_pushresult) (luaL_Buffer *B); + + +/* }====================================================== */ + + +/* compatibility with ref system */ + +/* pre-defined references */ +#define LUA_NOREF (-2) +#define LUA_REFNIL (-1) + +#define lua_ref(L,lock) ((lock) ? luaL_ref(L, LUA_REGISTRYINDEX) : \ + (lua_pushstring(L, "unlocked references are obsolete"), lua_error(L), 0)) + +#define lua_unref(L,ref) luaL_unref(L, LUA_REGISTRYINDEX, (ref)) + +#define lua_getref(L,ref) lua_rawgeti(L, LUA_REGISTRYINDEX, (ref)) + + +#define luaL_reg luaL_Reg + +#endif + + diff --git a/lua-5.1.4/src/.svn/text-base/lbaselib.c.svn-base b/lua-5.1.4/src/.svn/text-base/lbaselib.c.svn-base new file mode 100644 index 0000000..2a4c079 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lbaselib.c.svn-base @@ -0,0 +1,653 @@ +/* +** $Id: lbaselib.c,v 1.191.1.6 2008/02/14 16:46:22 roberto Exp $ +** Basic library +** See Copyright Notice in lua.h +*/ + + + +#include +#include +#include +#include + +#define lbaselib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + + +/* +** If your system does not support `stdout', you can just remove this function. +** If you need, you can define your own `print' function, following this +** model but changing `fputs' to put the strings at a proper place +** (a console window or a log file, for instance). +*/ +static int luaB_print (lua_State *L) { + int n = lua_gettop(L); /* number of arguments */ + int i; + lua_getglobal(L, "tostring"); + for (i=1; i<=n; i++) { + const char *s; + lua_pushvalue(L, -1); /* function to be called */ + lua_pushvalue(L, i); /* value to print */ + lua_call(L, 1, 1); + s = lua_tostring(L, -1); /* get result */ + if (s == NULL) + return luaL_error(L, LUA_QL("tostring") " must return a string to " + LUA_QL("print")); + if (i>1) fputs("\t", stdout); + fputs(s, stdout); + lua_pop(L, 1); /* pop result */ + } + fputs("\n", stdout); + return 0; +} + + +static int luaB_tonumber (lua_State *L) { + int base = luaL_optint(L, 2, 10); + if (base == 10) { /* standard conversion */ + luaL_checkany(L, 1); + if (lua_isnumber(L, 1)) { + lua_pushnumber(L, lua_tonumber(L, 1)); + return 1; + } + } + else { + const char *s1 = luaL_checkstring(L, 1); + char *s2; + unsigned long n; + luaL_argcheck(L, 2 <= base && base <= 36, 2, "base out of range"); + n = strtoul(s1, &s2, base); + if (s1 != s2) { /* at least one valid digit? */ + while (isspace((unsigned char)(*s2))) s2++; /* skip trailing spaces */ + if (*s2 == '\0') { /* no invalid trailing characters? */ + lua_pushnumber(L, (lua_Number)n); + return 1; + } + } + } + lua_pushnil(L); /* else not a number */ + return 1; +} + + +static int luaB_error (lua_State *L) { + int level = luaL_optint(L, 2, 1); + lua_settop(L, 1); + if (lua_isstring(L, 1) && level > 0) { /* add extra information? */ + luaL_where(L, level); + lua_pushvalue(L, 1); + lua_concat(L, 2); + } + return lua_error(L); +} + + +static int luaB_getmetatable (lua_State *L) { + luaL_checkany(L, 1); + if (!lua_getmetatable(L, 1)) { + lua_pushnil(L); + return 1; /* no metatable */ + } + luaL_getmetafield(L, 1, "__metatable"); + return 1; /* returns either __metatable field (if present) or metatable */ +} + + +static int luaB_setmetatable (lua_State *L) { + int t = lua_type(L, 2); + luaL_checktype(L, 1, LUA_TTABLE); + luaL_argcheck(L, t == LUA_TNIL || t == LUA_TTABLE, 2, + "nil or table expected"); + if (luaL_getmetafield(L, 1, "__metatable")) + luaL_error(L, "cannot change a protected metatable"); + lua_settop(L, 2); + lua_setmetatable(L, 1); + return 1; +} + + +static void getfunc (lua_State *L, int opt) { + if (lua_isfunction(L, 1)) lua_pushvalue(L, 1); + else { + lua_Debug ar; + int level = opt ? luaL_optint(L, 1, 1) : luaL_checkint(L, 1); + luaL_argcheck(L, level >= 0, 1, "level must be non-negative"); + if (lua_getstack(L, level, &ar) == 0) + luaL_argerror(L, 1, "invalid level"); + lua_getinfo(L, "f", &ar); + if (lua_isnil(L, -1)) + luaL_error(L, "no function environment for tail call at level %d", + level); + } +} + + +static int luaB_getfenv (lua_State *L) { + getfunc(L, 1); + if (lua_iscfunction(L, -1)) /* is a C function? */ + lua_pushvalue(L, LUA_GLOBALSINDEX); /* return the thread's global env. */ + else + lua_getfenv(L, -1); + return 1; +} + + +static int luaB_setfenv (lua_State *L) { + luaL_checktype(L, 2, LUA_TTABLE); + getfunc(L, 0); + lua_pushvalue(L, 2); + if (lua_isnumber(L, 1) && lua_tonumber(L, 1) == 0) { + /* change environment of current thread */ + lua_pushthread(L); + lua_insert(L, -2); + lua_setfenv(L, -2); + return 0; + } + else if (lua_iscfunction(L, -2) || lua_setfenv(L, -2) == 0) + luaL_error(L, + LUA_QL("setfenv") " cannot change environment of given object"); + return 1; +} + + +static int luaB_rawequal (lua_State *L) { + luaL_checkany(L, 1); + luaL_checkany(L, 2); + lua_pushboolean(L, lua_rawequal(L, 1, 2)); + return 1; +} + + +static int luaB_rawget (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + luaL_checkany(L, 2); + lua_settop(L, 2); + lua_rawget(L, 1); + return 1; +} + +static int luaB_rawset (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + luaL_checkany(L, 2); + luaL_checkany(L, 3); + lua_settop(L, 3); + lua_rawset(L, 1); + return 1; +} + + +static int luaB_gcinfo (lua_State *L) { + lua_pushinteger(L, lua_getgccount(L)); + return 1; +} + + +static int luaB_collectgarbage (lua_State *L) { + static const char *const opts[] = {"stop", "restart", "collect", + "count", "step", "setpause", "setstepmul", NULL}; + static const int optsnum[] = {LUA_GCSTOP, LUA_GCRESTART, LUA_GCCOLLECT, + LUA_GCCOUNT, LUA_GCSTEP, LUA_GCSETPAUSE, LUA_GCSETSTEPMUL}; + int o = luaL_checkoption(L, 1, "collect", opts); + int ex = luaL_optint(L, 2, 0); + int res = lua_gc(L, optsnum[o], ex); + switch (optsnum[o]) { + case LUA_GCCOUNT: { + int b = lua_gc(L, LUA_GCCOUNTB, 0); + lua_pushnumber(L, res + ((lua_Number)b/1024)); + return 1; + } + case LUA_GCSTEP: { + lua_pushboolean(L, res); + return 1; + } + default: { + lua_pushnumber(L, res); + return 1; + } + } +} + + +static int luaB_type (lua_State *L) { + luaL_checkany(L, 1); + lua_pushstring(L, luaL_typename(L, 1)); + return 1; +} + + +static int luaB_next (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + lua_settop(L, 2); /* create a 2nd argument if there isn't one */ + if (lua_next(L, 1)) + return 2; + else { + lua_pushnil(L); + return 1; + } +} + + +static int luaB_pairs (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + lua_pushvalue(L, lua_upvalueindex(1)); /* return generator, */ + lua_pushvalue(L, 1); /* state, */ + lua_pushnil(L); /* and initial value */ + return 3; +} + + +static int ipairsaux (lua_State *L) { + int i = luaL_checkint(L, 2); + luaL_checktype(L, 1, LUA_TTABLE); + i++; /* next value */ + lua_pushinteger(L, i); + lua_rawgeti(L, 1, i); + return (lua_isnil(L, -1)) ? 0 : 2; +} + + +static int luaB_ipairs (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + lua_pushvalue(L, lua_upvalueindex(1)); /* return generator, */ + lua_pushvalue(L, 1); /* state, */ + lua_pushinteger(L, 0); /* and initial value */ + return 3; +} + + +static int load_aux (lua_State *L, int status) { + if (status == 0) /* OK? */ + return 1; + else { + lua_pushnil(L); + lua_insert(L, -2); /* put before error message */ + return 2; /* return nil plus error message */ + } +} + + +static int luaB_loadstring (lua_State *L) { + size_t l; + const char *s = luaL_checklstring(L, 1, &l); + const char *chunkname = luaL_optstring(L, 2, s); + return load_aux(L, luaL_loadbuffer(L, s, l, chunkname)); +} + + +static int luaB_loadfile (lua_State *L) { + const char *fname = luaL_optstring(L, 1, NULL); + return load_aux(L, luaL_loadfile(L, fname)); +} + + +/* +** Reader for generic `load' function: `lua_load' uses the +** stack for internal stuff, so the reader cannot change the +** stack top. Instead, it keeps its resulting string in a +** reserved slot inside the stack. +*/ +static const char *generic_reader (lua_State *L, void *ud, size_t *size) { + (void)ud; /* to avoid warnings */ + luaL_checkstack(L, 2, "too many nested functions"); + lua_pushvalue(L, 1); /* get function */ + lua_call(L, 0, 1); /* call it */ + if (lua_isnil(L, -1)) { + *size = 0; + return NULL; + } + else if (lua_isstring(L, -1)) { + lua_replace(L, 3); /* save string in a reserved stack slot */ + return lua_tolstring(L, 3, size); + } + else luaL_error(L, "reader function must return a string"); + return NULL; /* to avoid warnings */ +} + + +static int luaB_load (lua_State *L) { + int status; + const char *cname = luaL_optstring(L, 2, "=(load)"); + luaL_checktype(L, 1, LUA_TFUNCTION); + lua_settop(L, 3); /* function, eventual name, plus one reserved slot */ + status = lua_load(L, generic_reader, NULL, cname); + return load_aux(L, status); +} + + +static int luaB_dofile (lua_State *L) { + const char *fname = luaL_optstring(L, 1, NULL); + int n = lua_gettop(L); + if (luaL_loadfile(L, fname) != 0) lua_error(L); + lua_call(L, 0, LUA_MULTRET); + return lua_gettop(L) - n; +} + + +static int luaB_assert (lua_State *L) { + luaL_checkany(L, 1); + if (!lua_toboolean(L, 1)) + return luaL_error(L, "%s", luaL_optstring(L, 2, "assertion failed!")); + return lua_gettop(L); +} + + +static int luaB_unpack (lua_State *L) { + int i, e, n; + luaL_checktype(L, 1, LUA_TTABLE); + i = luaL_optint(L, 2, 1); + e = luaL_opt(L, luaL_checkint, 3, luaL_getn(L, 1)); + if (i > e) return 0; /* empty range */ + n = e - i + 1; /* number of elements */ + if (n <= 0 || !lua_checkstack(L, n)) /* n <= 0 means arith. overflow */ + return luaL_error(L, "too many results to unpack"); + lua_rawgeti(L, 1, i); /* push arg[i] (avoiding overflow problems) */ + while (i++ < e) /* push arg[i + 1...e] */ + lua_rawgeti(L, 1, i); + return n; +} + + +static int luaB_select (lua_State *L) { + int n = lua_gettop(L); + if (lua_type(L, 1) == LUA_TSTRING && *lua_tostring(L, 1) == '#') { + lua_pushinteger(L, n-1); + return 1; + } + else { + int i = luaL_checkint(L, 1); + if (i < 0) i = n + i; + else if (i > n) i = n; + luaL_argcheck(L, 1 <= i, 1, "index out of range"); + return n - i; + } +} + + +static int luaB_pcall (lua_State *L) { + int status; + luaL_checkany(L, 1); + status = lua_pcall(L, lua_gettop(L) - 1, LUA_MULTRET, 0); + lua_pushboolean(L, (status == 0)); + lua_insert(L, 1); + return lua_gettop(L); /* return status + all results */ +} + + +static int luaB_xpcall (lua_State *L) { + int status; + luaL_checkany(L, 2); + lua_settop(L, 2); + lua_insert(L, 1); /* put error function under function to be called */ + status = lua_pcall(L, 0, LUA_MULTRET, 1); + lua_pushboolean(L, (status == 0)); + lua_replace(L, 1); + return lua_gettop(L); /* return status + all results */ +} + + +static int luaB_tostring (lua_State *L) { + luaL_checkany(L, 1); + if (luaL_callmeta(L, 1, "__tostring")) /* is there a metafield? */ + return 1; /* use its value */ + switch (lua_type(L, 1)) { + case LUA_TNUMBER: + lua_pushstring(L, lua_tostring(L, 1)); + break; + case LUA_TSTRING: + lua_pushvalue(L, 1); + break; + case LUA_TBOOLEAN: + lua_pushstring(L, (lua_toboolean(L, 1) ? "true" : "false")); + break; + case LUA_TNIL: + lua_pushliteral(L, "nil"); + break; + default: + lua_pushfstring(L, "%s: %p", luaL_typename(L, 1), lua_topointer(L, 1)); + break; + } + return 1; +} + + +static int luaB_newproxy (lua_State *L) { + lua_settop(L, 1); + lua_newuserdata(L, 0); /* create proxy */ + if (lua_toboolean(L, 1) == 0) + return 1; /* no metatable */ + else if (lua_isboolean(L, 1)) { + lua_newtable(L); /* create a new metatable `m' ... */ + lua_pushvalue(L, -1); /* ... and mark `m' as a valid metatable */ + lua_pushboolean(L, 1); + lua_rawset(L, lua_upvalueindex(1)); /* weaktable[m] = true */ + } + else { + int validproxy = 0; /* to check if weaktable[metatable(u)] == true */ + if (lua_getmetatable(L, 1)) { + lua_rawget(L, lua_upvalueindex(1)); + validproxy = lua_toboolean(L, -1); + lua_pop(L, 1); /* remove value */ + } + luaL_argcheck(L, validproxy, 1, "boolean or proxy expected"); + lua_getmetatable(L, 1); /* metatable is valid; get it */ + } + lua_setmetatable(L, 2); + return 1; +} + + +static const luaL_Reg base_funcs[] = { + {"assert", luaB_assert}, + {"collectgarbage", luaB_collectgarbage}, + {"dofile", luaB_dofile}, + {"error", luaB_error}, + {"gcinfo", luaB_gcinfo}, + {"getfenv", luaB_getfenv}, + {"getmetatable", luaB_getmetatable}, + {"loadfile", luaB_loadfile}, + {"load", luaB_load}, + {"loadstring", luaB_loadstring}, + {"next", luaB_next}, + {"pcall", luaB_pcall}, + {"print", luaB_print}, + {"rawequal", luaB_rawequal}, + {"rawget", luaB_rawget}, + {"rawset", luaB_rawset}, + {"select", luaB_select}, + {"setfenv", luaB_setfenv}, + {"setmetatable", luaB_setmetatable}, + {"tonumber", luaB_tonumber}, + {"tostring", luaB_tostring}, + {"type", luaB_type}, + {"unpack", luaB_unpack}, + {"xpcall", luaB_xpcall}, + {NULL, NULL} +}; + + +/* +** {====================================================== +** Coroutine library +** ======================================================= +*/ + +#define CO_RUN 0 /* running */ +#define CO_SUS 1 /* suspended */ +#define CO_NOR 2 /* 'normal' (it resumed another coroutine) */ +#define CO_DEAD 3 + +static const char *const statnames[] = + {"running", "suspended", "normal", "dead"}; + +static int costatus (lua_State *L, lua_State *co) { + if (L == co) return CO_RUN; + switch (lua_status(co)) { + case LUA_YIELD: + return CO_SUS; + case 0: { + lua_Debug ar; + if (lua_getstack(co, 0, &ar) > 0) /* does it have frames? */ + return CO_NOR; /* it is running */ + else if (lua_gettop(co) == 0) + return CO_DEAD; + else + return CO_SUS; /* initial state */ + } + default: /* some error occured */ + return CO_DEAD; + } +} + + +static int luaB_costatus (lua_State *L) { + lua_State *co = lua_tothread(L, 1); + luaL_argcheck(L, co, 1, "coroutine expected"); + lua_pushstring(L, statnames[costatus(L, co)]); + return 1; +} + + +static int auxresume (lua_State *L, lua_State *co, int narg) { + int status = costatus(L, co); + if (!lua_checkstack(co, narg)) + luaL_error(L, "too many arguments to resume"); + if (status != CO_SUS) { + lua_pushfstring(L, "cannot resume %s coroutine", statnames[status]); + return -1; /* error flag */ + } + lua_xmove(L, co, narg); + lua_setlevel(L, co); + status = lua_resume(co, narg); + if (status == 0 || status == LUA_YIELD) { + int nres = lua_gettop(co); + if (!lua_checkstack(L, nres + 1)) + luaL_error(L, "too many results to resume"); + lua_xmove(co, L, nres); /* move yielded values */ + return nres; + } + else { + lua_xmove(co, L, 1); /* move error message */ + return -1; /* error flag */ + } +} + + +static int luaB_coresume (lua_State *L) { + lua_State *co = lua_tothread(L, 1); + int r; + luaL_argcheck(L, co, 1, "coroutine expected"); + r = auxresume(L, co, lua_gettop(L) - 1); + if (r < 0) { + lua_pushboolean(L, 0); + lua_insert(L, -2); + return 2; /* return false + error message */ + } + else { + lua_pushboolean(L, 1); + lua_insert(L, -(r + 1)); + return r + 1; /* return true + `resume' returns */ + } +} + + +static int luaB_auxwrap (lua_State *L) { + lua_State *co = lua_tothread(L, lua_upvalueindex(1)); + int r = auxresume(L, co, lua_gettop(L)); + if (r < 0) { + if (lua_isstring(L, -1)) { /* error object is a string? */ + luaL_where(L, 1); /* add extra info */ + lua_insert(L, -2); + lua_concat(L, 2); + } + lua_error(L); /* propagate error */ + } + return r; +} + + +static int luaB_cocreate (lua_State *L) { + lua_State *NL = lua_newthread(L); + luaL_argcheck(L, lua_isfunction(L, 1) && !lua_iscfunction(L, 1), 1, + "Lua function expected"); + lua_pushvalue(L, 1); /* move function to top */ + lua_xmove(L, NL, 1); /* move function from L to NL */ + return 1; +} + + +static int luaB_cowrap (lua_State *L) { + luaB_cocreate(L); + lua_pushcclosure(L, luaB_auxwrap, 1); + return 1; +} + + +static int luaB_yield (lua_State *L) { + return lua_yield(L, lua_gettop(L)); +} + + +static int luaB_corunning (lua_State *L) { + if (lua_pushthread(L)) + lua_pushnil(L); /* main thread is not a coroutine */ + return 1; +} + + +static const luaL_Reg co_funcs[] = { + {"create", luaB_cocreate}, + {"resume", luaB_coresume}, + {"running", luaB_corunning}, + {"status", luaB_costatus}, + {"wrap", luaB_cowrap}, + {"yield", luaB_yield}, + {NULL, NULL} +}; + +/* }====================================================== */ + + +static void auxopen (lua_State *L, const char *name, + lua_CFunction f, lua_CFunction u) { + lua_pushcfunction(L, u); + lua_pushcclosure(L, f, 1); + lua_setfield(L, -2, name); +} + + +static void base_open (lua_State *L) { + /* set global _G */ + lua_pushvalue(L, LUA_GLOBALSINDEX); + lua_setglobal(L, "_G"); + /* open lib into global table */ + luaL_register(L, "_G", base_funcs); + lua_pushliteral(L, LUA_VERSION); + lua_setglobal(L, "_VERSION"); /* set global _VERSION */ + /* `ipairs' and `pairs' need auxliliary functions as upvalues */ + auxopen(L, "ipairs", luaB_ipairs, ipairsaux); + auxopen(L, "pairs", luaB_pairs, luaB_next); + /* `newproxy' needs a weaktable as upvalue */ + lua_createtable(L, 0, 1); /* new table `w' */ + lua_pushvalue(L, -1); /* `w' will be its own metatable */ + lua_setmetatable(L, -2); + lua_pushliteral(L, "kv"); + lua_setfield(L, -2, "__mode"); /* metatable(w).__mode = "kv" */ + lua_pushcclosure(L, luaB_newproxy, 1); + lua_setglobal(L, "newproxy"); /* set global `newproxy' */ +} + + +LUALIB_API int luaopen_base (lua_State *L) { + base_open(L); + luaL_register(L, LUA_COLIBNAME, co_funcs); + return 2; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lcode.c.svn-base b/lua-5.1.4/src/.svn/text-base/lcode.c.svn-base new file mode 100644 index 0000000..cff626b --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lcode.c.svn-base @@ -0,0 +1,839 @@ +/* +** $Id: lcode.c,v 2.25.1.3 2007/12/28 15:32:23 roberto Exp $ +** Code generator for Lua +** See Copyright Notice in lua.h +*/ + + +#include + +#define lcode_c +#define LUA_CORE + +#include "lua.h" + +#include "lcode.h" +#include "ldebug.h" +#include "ldo.h" +#include "lgc.h" +#include "llex.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" +#include "ltable.h" + + +#define hasjumps(e) ((e)->t != (e)->f) + + +static int isnumeral(expdesc *e) { + return (e->k == VKNUM && e->t == NO_JUMP && e->f == NO_JUMP); +} + + +void luaK_nil (FuncState *fs, int from, int n) { + Instruction *previous; + if (fs->pc > fs->lasttarget) { /* no jumps to current position? */ + if (fs->pc == 0) { /* function start? */ + if (from >= fs->nactvar) + return; /* positions are already clean */ + } + else { + previous = &fs->f->code[fs->pc-1]; + if (GET_OPCODE(*previous) == OP_LOADNIL) { + int pfrom = GETARG_A(*previous); + int pto = GETARG_B(*previous); + if (pfrom <= from && from <= pto+1) { /* can connect both? */ + if (from+n-1 > pto) + SETARG_B(*previous, from+n-1); + return; + } + } + } + } + luaK_codeABC(fs, OP_LOADNIL, from, from+n-1, 0); /* else no optimization */ +} + + +int luaK_jump (FuncState *fs) { + int jpc = fs->jpc; /* save list of jumps to here */ + int j; + fs->jpc = NO_JUMP; + j = luaK_codeAsBx(fs, OP_JMP, 0, NO_JUMP); + luaK_concat(fs, &j, jpc); /* keep them on hold */ + return j; +} + + +void luaK_ret (FuncState *fs, int first, int nret) { + luaK_codeABC(fs, OP_RETURN, first, nret+1, 0); +} + + +static int condjump (FuncState *fs, OpCode op, int A, int B, int C) { + luaK_codeABC(fs, op, A, B, C); + return luaK_jump(fs); +} + + +static void fixjump (FuncState *fs, int pc, int dest) { + Instruction *jmp = &fs->f->code[pc]; + int offset = dest-(pc+1); + lua_assert(dest != NO_JUMP); + if (abs(offset) > MAXARG_sBx) + luaX_syntaxerror(fs->ls, "control structure too long"); + SETARG_sBx(*jmp, offset); +} + + +/* +** returns current `pc' and marks it as a jump target (to avoid wrong +** optimizations with consecutive instructions not in the same basic block). +*/ +int luaK_getlabel (FuncState *fs) { + fs->lasttarget = fs->pc; + return fs->pc; +} + + +static int getjump (FuncState *fs, int pc) { + int offset = GETARG_sBx(fs->f->code[pc]); + if (offset == NO_JUMP) /* point to itself represents end of list */ + return NO_JUMP; /* end of list */ + else + return (pc+1)+offset; /* turn offset into absolute position */ +} + + +static Instruction *getjumpcontrol (FuncState *fs, int pc) { + Instruction *pi = &fs->f->code[pc]; + if (pc >= 1 && testTMode(GET_OPCODE(*(pi-1)))) + return pi-1; + else + return pi; +} + + +/* +** check whether list has any jump that do not produce a value +** (or produce an inverted value) +*/ +static int need_value (FuncState *fs, int list) { + for (; list != NO_JUMP; list = getjump(fs, list)) { + Instruction i = *getjumpcontrol(fs, list); + if (GET_OPCODE(i) != OP_TESTSET) return 1; + } + return 0; /* not found */ +} + + +static int patchtestreg (FuncState *fs, int node, int reg) { + Instruction *i = getjumpcontrol(fs, node); + if (GET_OPCODE(*i) != OP_TESTSET) + return 0; /* cannot patch other instructions */ + if (reg != NO_REG && reg != GETARG_B(*i)) + SETARG_A(*i, reg); + else /* no register to put value or register already has the value */ + *i = CREATE_ABC(OP_TEST, GETARG_B(*i), 0, GETARG_C(*i)); + + return 1; +} + + +static void removevalues (FuncState *fs, int list) { + for (; list != NO_JUMP; list = getjump(fs, list)) + patchtestreg(fs, list, NO_REG); +} + + +static void patchlistaux (FuncState *fs, int list, int vtarget, int reg, + int dtarget) { + while (list != NO_JUMP) { + int next = getjump(fs, list); + if (patchtestreg(fs, list, reg)) + fixjump(fs, list, vtarget); + else + fixjump(fs, list, dtarget); /* jump to default target */ + list = next; + } +} + + +static void dischargejpc (FuncState *fs) { + patchlistaux(fs, fs->jpc, fs->pc, NO_REG, fs->pc); + fs->jpc = NO_JUMP; +} + + +void luaK_patchlist (FuncState *fs, int list, int target) { + if (target == fs->pc) + luaK_patchtohere(fs, list); + else { + lua_assert(target < fs->pc); + patchlistaux(fs, list, target, NO_REG, target); + } +} + + +void luaK_patchtohere (FuncState *fs, int list) { + luaK_getlabel(fs); + luaK_concat(fs, &fs->jpc, list); +} + + +void luaK_concat (FuncState *fs, int *l1, int l2) { + if (l2 == NO_JUMP) return; + else if (*l1 == NO_JUMP) + *l1 = l2; + else { + int list = *l1; + int next; + while ((next = getjump(fs, list)) != NO_JUMP) /* find last element */ + list = next; + fixjump(fs, list, l2); + } +} + + +void luaK_checkstack (FuncState *fs, int n) { + int newstack = fs->freereg + n; + if (newstack > fs->f->maxstacksize) { + if (newstack >= MAXSTACK) + luaX_syntaxerror(fs->ls, "function or expression too complex"); + fs->f->maxstacksize = cast_byte(newstack); + } +} + + +void luaK_reserveregs (FuncState *fs, int n) { + luaK_checkstack(fs, n); + fs->freereg += n; +} + + +static void freereg (FuncState *fs, int reg) { + if (!ISK(reg) && reg >= fs->nactvar) { + fs->freereg--; + lua_assert(reg == fs->freereg); + } +} + + +static void freeexp (FuncState *fs, expdesc *e) { + if (e->k == VNONRELOC) + freereg(fs, e->u.s.info); +} + + +static int addk (FuncState *fs, TValue *k, TValue *v) { + lua_State *L = fs->L; + TValue *idx = luaH_set(L, fs->h, k); + Proto *f = fs->f; + int oldsize = f->sizek; + if (ttisnumber(idx)) { + lua_assert(luaO_rawequalObj(&fs->f->k[cast_int(nvalue(idx))], v)); + return cast_int(nvalue(idx)); + } + else { /* constant not found; create a new entry */ + setnvalue(idx, cast_num(fs->nk)); + luaM_growvector(L, f->k, fs->nk, f->sizek, TValue, + MAXARG_Bx, "constant table overflow"); + while (oldsize < f->sizek) setnilvalue(&f->k[oldsize++]); + setobj(L, &f->k[fs->nk], v); + luaC_barrier(L, f, v); + return fs->nk++; + } +} + + +int luaK_stringK (FuncState *fs, TString *s) { + TValue o; + setsvalue(fs->L, &o, s); + return addk(fs, &o, &o); +} + + +int luaK_numberK (FuncState *fs, lua_Number r) { + TValue o; + setnvalue(&o, r); + return addk(fs, &o, &o); +} + + +static int boolK (FuncState *fs, int b) { + TValue o; + setbvalue(&o, b); + return addk(fs, &o, &o); +} + + +static int nilK (FuncState *fs) { + TValue k, v; + setnilvalue(&v); + /* cannot use nil as key; instead use table itself to represent nil */ + sethvalue(fs->L, &k, fs->h); + return addk(fs, &k, &v); +} + + +void luaK_setreturns (FuncState *fs, expdesc *e, int nresults) { + if (e->k == VCALL) { /* expression is an open function call? */ + SETARG_C(getcode(fs, e), nresults+1); + } + else if (e->k == VVARARG) { + SETARG_B(getcode(fs, e), nresults+1); + SETARG_A(getcode(fs, e), fs->freereg); + luaK_reserveregs(fs, 1); + } +} + + +void luaK_setoneret (FuncState *fs, expdesc *e) { + if (e->k == VCALL) { /* expression is an open function call? */ + e->k = VNONRELOC; + e->u.s.info = GETARG_A(getcode(fs, e)); + } + else if (e->k == VVARARG) { + SETARG_B(getcode(fs, e), 2); + e->k = VRELOCABLE; /* can relocate its simple result */ + } +} + + +void luaK_dischargevars (FuncState *fs, expdesc *e) { + switch (e->k) { + case VLOCAL: { + e->k = VNONRELOC; + break; + } + case VUPVAL: { + e->u.s.info = luaK_codeABC(fs, OP_GETUPVAL, 0, e->u.s.info, 0); + e->k = VRELOCABLE; + break; + } + case VGLOBAL: { + e->u.s.info = luaK_codeABx(fs, OP_GETGLOBAL, 0, e->u.s.info); + e->k = VRELOCABLE; + break; + } + case VINDEXED: { + freereg(fs, e->u.s.aux); + freereg(fs, e->u.s.info); + e->u.s.info = luaK_codeABC(fs, OP_GETTABLE, 0, e->u.s.info, e->u.s.aux); + e->k = VRELOCABLE; + break; + } + case VVARARG: + case VCALL: { + luaK_setoneret(fs, e); + break; + } + default: break; /* there is one value available (somewhere) */ + } +} + + +static int code_label (FuncState *fs, int A, int b, int jump) { + luaK_getlabel(fs); /* those instructions may be jump targets */ + return luaK_codeABC(fs, OP_LOADBOOL, A, b, jump); +} + + +static void discharge2reg (FuncState *fs, expdesc *e, int reg) { + luaK_dischargevars(fs, e); + switch (e->k) { + case VNIL: { + luaK_nil(fs, reg, 1); + break; + } + case VFALSE: case VTRUE: { + luaK_codeABC(fs, OP_LOADBOOL, reg, e->k == VTRUE, 0); + break; + } + case VK: { + luaK_codeABx(fs, OP_LOADK, reg, e->u.s.info); + break; + } + case VKNUM: { + luaK_codeABx(fs, OP_LOADK, reg, luaK_numberK(fs, e->u.nval)); + break; + } + case VRELOCABLE: { + Instruction *pc = &getcode(fs, e); + SETARG_A(*pc, reg); + break; + } + case VNONRELOC: { + if (reg != e->u.s.info) + luaK_codeABC(fs, OP_MOVE, reg, e->u.s.info, 0); + break; + } + default: { + lua_assert(e->k == VVOID || e->k == VJMP); + return; /* nothing to do... */ + } + } + e->u.s.info = reg; + e->k = VNONRELOC; +} + + +static void discharge2anyreg (FuncState *fs, expdesc *e) { + if (e->k != VNONRELOC) { + luaK_reserveregs(fs, 1); + discharge2reg(fs, e, fs->freereg-1); + } +} + + +static void exp2reg (FuncState *fs, expdesc *e, int reg) { + discharge2reg(fs, e, reg); + if (e->k == VJMP) + luaK_concat(fs, &e->t, e->u.s.info); /* put this jump in `t' list */ + if (hasjumps(e)) { + int final; /* position after whole expression */ + int p_f = NO_JUMP; /* position of an eventual LOAD false */ + int p_t = NO_JUMP; /* position of an eventual LOAD true */ + if (need_value(fs, e->t) || need_value(fs, e->f)) { + int fj = (e->k == VJMP) ? NO_JUMP : luaK_jump(fs); + p_f = code_label(fs, reg, 0, 1); + p_t = code_label(fs, reg, 1, 0); + luaK_patchtohere(fs, fj); + } + final = luaK_getlabel(fs); + patchlistaux(fs, e->f, final, reg, p_f); + patchlistaux(fs, e->t, final, reg, p_t); + } + e->f = e->t = NO_JUMP; + e->u.s.info = reg; + e->k = VNONRELOC; +} + + +void luaK_exp2nextreg (FuncState *fs, expdesc *e) { + luaK_dischargevars(fs, e); + freeexp(fs, e); + luaK_reserveregs(fs, 1); + exp2reg(fs, e, fs->freereg - 1); +} + + +int luaK_exp2anyreg (FuncState *fs, expdesc *e) { + luaK_dischargevars(fs, e); + if (e->k == VNONRELOC) { + if (!hasjumps(e)) return e->u.s.info; /* exp is already in a register */ + if (e->u.s.info >= fs->nactvar) { /* reg. is not a local? */ + exp2reg(fs, e, e->u.s.info); /* put value on it */ + return e->u.s.info; + } + } + luaK_exp2nextreg(fs, e); /* default */ + return e->u.s.info; +} + + +void luaK_exp2val (FuncState *fs, expdesc *e) { + if (hasjumps(e)) + luaK_exp2anyreg(fs, e); + else + luaK_dischargevars(fs, e); +} + + +int luaK_exp2RK (FuncState *fs, expdesc *e) { + luaK_exp2val(fs, e); + switch (e->k) { + case VKNUM: + case VTRUE: + case VFALSE: + case VNIL: { + if (fs->nk <= MAXINDEXRK) { /* constant fit in RK operand? */ + e->u.s.info = (e->k == VNIL) ? nilK(fs) : + (e->k == VKNUM) ? luaK_numberK(fs, e->u.nval) : + boolK(fs, (e->k == VTRUE)); + e->k = VK; + return RKASK(e->u.s.info); + } + else break; + } + case VK: { + if (e->u.s.info <= MAXINDEXRK) /* constant fit in argC? */ + return RKASK(e->u.s.info); + else break; + } + default: break; + } + /* not a constant in the right range: put it in a register */ + return luaK_exp2anyreg(fs, e); +} + + +void luaK_storevar (FuncState *fs, expdesc *var, expdesc *ex) { + switch (var->k) { + case VLOCAL: { + freeexp(fs, ex); + exp2reg(fs, ex, var->u.s.info); + return; + } + case VUPVAL: { + int e = luaK_exp2anyreg(fs, ex); + luaK_codeABC(fs, OP_SETUPVAL, e, var->u.s.info, 0); + break; + } + case VGLOBAL: { + int e = luaK_exp2anyreg(fs, ex); + luaK_codeABx(fs, OP_SETGLOBAL, e, var->u.s.info); + break; + } + case VINDEXED: { + int e = luaK_exp2RK(fs, ex); + luaK_codeABC(fs, OP_SETTABLE, var->u.s.info, var->u.s.aux, e); + break; + } + default: { + lua_assert(0); /* invalid var kind to store */ + break; + } + } + freeexp(fs, ex); +} + + +void luaK_self (FuncState *fs, expdesc *e, expdesc *key) { + int func; + luaK_exp2anyreg(fs, e); + freeexp(fs, e); + func = fs->freereg; + luaK_reserveregs(fs, 2); + luaK_codeABC(fs, OP_SELF, func, e->u.s.info, luaK_exp2RK(fs, key)); + freeexp(fs, key); + e->u.s.info = func; + e->k = VNONRELOC; +} + + +static void invertjump (FuncState *fs, expdesc *e) { + Instruction *pc = getjumpcontrol(fs, e->u.s.info); + lua_assert(testTMode(GET_OPCODE(*pc)) && GET_OPCODE(*pc) != OP_TESTSET && + GET_OPCODE(*pc) != OP_TEST); + SETARG_A(*pc, !(GETARG_A(*pc))); +} + + +static int jumponcond (FuncState *fs, expdesc *e, int cond) { + if (e->k == VRELOCABLE) { + Instruction ie = getcode(fs, e); + if (GET_OPCODE(ie) == OP_NOT) { + fs->pc--; /* remove previous OP_NOT */ + return condjump(fs, OP_TEST, GETARG_B(ie), 0, !cond); + } + /* else go through */ + } + discharge2anyreg(fs, e); + freeexp(fs, e); + return condjump(fs, OP_TESTSET, NO_REG, e->u.s.info, cond); +} + + +void luaK_goiftrue (FuncState *fs, expdesc *e) { + int pc; /* pc of last jump */ + luaK_dischargevars(fs, e); + switch (e->k) { + case VK: case VKNUM: case VTRUE: { + pc = NO_JUMP; /* always true; do nothing */ + break; + } + case VFALSE: { + pc = luaK_jump(fs); /* always jump */ + break; + } + case VJMP: { + invertjump(fs, e); + pc = e->u.s.info; + break; + } + default: { + pc = jumponcond(fs, e, 0); + break; + } + } + luaK_concat(fs, &e->f, pc); /* insert last jump in `f' list */ + luaK_patchtohere(fs, e->t); + e->t = NO_JUMP; +} + + +static void luaK_goiffalse (FuncState *fs, expdesc *e) { + int pc; /* pc of last jump */ + luaK_dischargevars(fs, e); + switch (e->k) { + case VNIL: case VFALSE: { + pc = NO_JUMP; /* always false; do nothing */ + break; + } + case VTRUE: { + pc = luaK_jump(fs); /* always jump */ + break; + } + case VJMP: { + pc = e->u.s.info; + break; + } + default: { + pc = jumponcond(fs, e, 1); + break; + } + } + luaK_concat(fs, &e->t, pc); /* insert last jump in `t' list */ + luaK_patchtohere(fs, e->f); + e->f = NO_JUMP; +} + + +static void codenot (FuncState *fs, expdesc *e) { + luaK_dischargevars(fs, e); + switch (e->k) { + case VNIL: case VFALSE: { + e->k = VTRUE; + break; + } + case VK: case VKNUM: case VTRUE: { + e->k = VFALSE; + break; + } + case VJMP: { + invertjump(fs, e); + break; + } + case VRELOCABLE: + case VNONRELOC: { + discharge2anyreg(fs, e); + freeexp(fs, e); + e->u.s.info = luaK_codeABC(fs, OP_NOT, 0, e->u.s.info, 0); + e->k = VRELOCABLE; + break; + } + default: { + lua_assert(0); /* cannot happen */ + break; + } + } + /* interchange true and false lists */ + { int temp = e->f; e->f = e->t; e->t = temp; } + removevalues(fs, e->f); + removevalues(fs, e->t); +} + + +void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k) { + t->u.s.aux = luaK_exp2RK(fs, k); + t->k = VINDEXED; +} + + +static int constfolding (OpCode op, expdesc *e1, expdesc *e2) { + lua_Number v1, v2, r; + if (!isnumeral(e1) || !isnumeral(e2)) return 0; + v1 = e1->u.nval; + v2 = e2->u.nval; + switch (op) { + case OP_ADD: r = luai_numadd(v1, v2); break; + case OP_SUB: r = luai_numsub(v1, v2); break; + case OP_MUL: r = luai_nummul(v1, v2); break; + case OP_DIV: + if (v2 == 0) return 0; /* do not attempt to divide by 0 */ + r = luai_numdiv(v1, v2); break; + case OP_MOD: + if (v2 == 0) return 0; /* do not attempt to divide by 0 */ + r = luai_nummod(v1, v2); break; + case OP_POW: r = luai_numpow(v1, v2); break; + case OP_UNM: r = luai_numunm(v1); break; + case OP_LEN: return 0; /* no constant folding for 'len' */ + default: lua_assert(0); r = 0; break; + } + if (luai_numisnan(r)) return 0; /* do not attempt to produce NaN */ + e1->u.nval = r; + return 1; +} + + +static void codearith (FuncState *fs, OpCode op, expdesc *e1, expdesc *e2) { + if (constfolding(op, e1, e2)) + return; + else { + int o2 = (op != OP_UNM && op != OP_LEN) ? luaK_exp2RK(fs, e2) : 0; + int o1 = luaK_exp2RK(fs, e1); + if (o1 > o2) { + freeexp(fs, e1); + freeexp(fs, e2); + } + else { + freeexp(fs, e2); + freeexp(fs, e1); + } + e1->u.s.info = luaK_codeABC(fs, op, 0, o1, o2); + e1->k = VRELOCABLE; + } +} + + +static void codecomp (FuncState *fs, OpCode op, int cond, expdesc *e1, + expdesc *e2) { + int o1 = luaK_exp2RK(fs, e1); + int o2 = luaK_exp2RK(fs, e2); + freeexp(fs, e2); + freeexp(fs, e1); + if (cond == 0 && op != OP_EQ) { + int temp; /* exchange args to replace by `<' or `<=' */ + temp = o1; o1 = o2; o2 = temp; /* o1 <==> o2 */ + cond = 1; + } + e1->u.s.info = condjump(fs, op, cond, o1, o2); + e1->k = VJMP; +} + + +void luaK_prefix (FuncState *fs, UnOpr op, expdesc *e) { + expdesc e2; + e2.t = e2.f = NO_JUMP; e2.k = VKNUM; e2.u.nval = 0; + switch (op) { + case OPR_MINUS: { + if (!isnumeral(e)) + luaK_exp2anyreg(fs, e); /* cannot operate on non-numeric constants */ + codearith(fs, OP_UNM, e, &e2); + break; + } + case OPR_NOT: codenot(fs, e); break; + case OPR_LEN: { + luaK_exp2anyreg(fs, e); /* cannot operate on constants */ + codearith(fs, OP_LEN, e, &e2); + break; + } + default: lua_assert(0); + } +} + + +void luaK_infix (FuncState *fs, BinOpr op, expdesc *v) { + switch (op) { + case OPR_AND: { + luaK_goiftrue(fs, v); + break; + } + case OPR_OR: { + luaK_goiffalse(fs, v); + break; + } + case OPR_CONCAT: { + luaK_exp2nextreg(fs, v); /* operand must be on the `stack' */ + break; + } + case OPR_ADD: case OPR_SUB: case OPR_MUL: case OPR_DIV: + case OPR_MOD: case OPR_POW: { + if (!isnumeral(v)) luaK_exp2RK(fs, v); + break; + } + default: { + luaK_exp2RK(fs, v); + break; + } + } +} + + +void luaK_posfix (FuncState *fs, BinOpr op, expdesc *e1, expdesc *e2) { + switch (op) { + case OPR_AND: { + lua_assert(e1->t == NO_JUMP); /* list must be closed */ + luaK_dischargevars(fs, e2); + luaK_concat(fs, &e2->f, e1->f); + *e1 = *e2; + break; + } + case OPR_OR: { + lua_assert(e1->f == NO_JUMP); /* list must be closed */ + luaK_dischargevars(fs, e2); + luaK_concat(fs, &e2->t, e1->t); + *e1 = *e2; + break; + } + case OPR_CONCAT: { + luaK_exp2val(fs, e2); + if (e2->k == VRELOCABLE && GET_OPCODE(getcode(fs, e2)) == OP_CONCAT) { + lua_assert(e1->u.s.info == GETARG_B(getcode(fs, e2))-1); + freeexp(fs, e1); + SETARG_B(getcode(fs, e2), e1->u.s.info); + e1->k = VRELOCABLE; e1->u.s.info = e2->u.s.info; + } + else { + luaK_exp2nextreg(fs, e2); /* operand must be on the 'stack' */ + codearith(fs, OP_CONCAT, e1, e2); + } + break; + } + case OPR_ADD: codearith(fs, OP_ADD, e1, e2); break; + case OPR_SUB: codearith(fs, OP_SUB, e1, e2); break; + case OPR_MUL: codearith(fs, OP_MUL, e1, e2); break; + case OPR_DIV: codearith(fs, OP_DIV, e1, e2); break; + case OPR_MOD: codearith(fs, OP_MOD, e1, e2); break; + case OPR_POW: codearith(fs, OP_POW, e1, e2); break; + case OPR_EQ: codecomp(fs, OP_EQ, 1, e1, e2); break; + case OPR_NE: codecomp(fs, OP_EQ, 0, e1, e2); break; + case OPR_LT: codecomp(fs, OP_LT, 1, e1, e2); break; + case OPR_LE: codecomp(fs, OP_LE, 1, e1, e2); break; + case OPR_GT: codecomp(fs, OP_LT, 0, e1, e2); break; + case OPR_GE: codecomp(fs, OP_LE, 0, e1, e2); break; + default: lua_assert(0); + } +} + + +void luaK_fixline (FuncState *fs, int line) { + fs->f->lineinfo[fs->pc - 1] = line; +} + + +static int luaK_code (FuncState *fs, Instruction i, int line) { + Proto *f = fs->f; + dischargejpc(fs); /* `pc' will change */ + /* put new instruction in code array */ + luaM_growvector(fs->L, f->code, fs->pc, f->sizecode, Instruction, + MAX_INT, "code size overflow"); + f->code[fs->pc] = i; + /* save corresponding line information */ + luaM_growvector(fs->L, f->lineinfo, fs->pc, f->sizelineinfo, int, + MAX_INT, "code size overflow"); + f->lineinfo[fs->pc] = line; + return fs->pc++; +} + + +int luaK_codeABC (FuncState *fs, OpCode o, int a, int b, int c) { + lua_assert(getOpMode(o) == iABC); + lua_assert(getBMode(o) != OpArgN || b == 0); + lua_assert(getCMode(o) != OpArgN || c == 0); + return luaK_code(fs, CREATE_ABC(o, a, b, c), fs->ls->lastline); +} + + +int luaK_codeABx (FuncState *fs, OpCode o, int a, unsigned int bc) { + lua_assert(getOpMode(o) == iABx || getOpMode(o) == iAsBx); + lua_assert(getCMode(o) == OpArgN); + return luaK_code(fs, CREATE_ABx(o, a, bc), fs->ls->lastline); +} + + +void luaK_setlist (FuncState *fs, int base, int nelems, int tostore) { + int c = (nelems - 1)/LFIELDS_PER_FLUSH + 1; + int b = (tostore == LUA_MULTRET) ? 0 : tostore; + lua_assert(tostore != 0); + if (c <= MAXARG_C) + luaK_codeABC(fs, OP_SETLIST, base, b, c); + else { + luaK_codeABC(fs, OP_SETLIST, base, b, 0); + luaK_code(fs, cast(Instruction, c), fs->ls->lastline); + } + fs->freereg = base + 1; /* free registers with list values */ +} + diff --git a/lua-5.1.4/src/.svn/text-base/lcode.h.svn-base b/lua-5.1.4/src/.svn/text-base/lcode.h.svn-base new file mode 100644 index 0000000..b941c60 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lcode.h.svn-base @@ -0,0 +1,76 @@ +/* +** $Id: lcode.h,v 1.48.1.1 2007/12/27 13:02:25 roberto Exp $ +** Code generator for Lua +** See Copyright Notice in lua.h +*/ + +#ifndef lcode_h +#define lcode_h + +#include "llex.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" + + +/* +** Marks the end of a patch list. It is an invalid value both as an absolute +** address, and as a list link (would link an element to itself). +*/ +#define NO_JUMP (-1) + + +/* +** grep "ORDER OPR" if you change these enums +*/ +typedef enum BinOpr { + OPR_ADD, OPR_SUB, OPR_MUL, OPR_DIV, OPR_MOD, OPR_POW, + OPR_CONCAT, + OPR_NE, OPR_EQ, + OPR_LT, OPR_LE, OPR_GT, OPR_GE, + OPR_AND, OPR_OR, + OPR_NOBINOPR +} BinOpr; + + +typedef enum UnOpr { OPR_MINUS, OPR_NOT, OPR_LEN, OPR_NOUNOPR } UnOpr; + + +#define getcode(fs,e) ((fs)->f->code[(e)->u.s.info]) + +#define luaK_codeAsBx(fs,o,A,sBx) luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx) + +#define luaK_setmultret(fs,e) luaK_setreturns(fs, e, LUA_MULTRET) + +LUAI_FUNC int luaK_codeABx (FuncState *fs, OpCode o, int A, unsigned int Bx); +LUAI_FUNC int luaK_codeABC (FuncState *fs, OpCode o, int A, int B, int C); +LUAI_FUNC void luaK_fixline (FuncState *fs, int line); +LUAI_FUNC void luaK_nil (FuncState *fs, int from, int n); +LUAI_FUNC void luaK_reserveregs (FuncState *fs, int n); +LUAI_FUNC void luaK_checkstack (FuncState *fs, int n); +LUAI_FUNC int luaK_stringK (FuncState *fs, TString *s); +LUAI_FUNC int luaK_numberK (FuncState *fs, lua_Number r); +LUAI_FUNC void luaK_dischargevars (FuncState *fs, expdesc *e); +LUAI_FUNC int luaK_exp2anyreg (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_exp2nextreg (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_exp2val (FuncState *fs, expdesc *e); +LUAI_FUNC int luaK_exp2RK (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_self (FuncState *fs, expdesc *e, expdesc *key); +LUAI_FUNC void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k); +LUAI_FUNC void luaK_goiftrue (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_storevar (FuncState *fs, expdesc *var, expdesc *e); +LUAI_FUNC void luaK_setreturns (FuncState *fs, expdesc *e, int nresults); +LUAI_FUNC void luaK_setoneret (FuncState *fs, expdesc *e); +LUAI_FUNC int luaK_jump (FuncState *fs); +LUAI_FUNC void luaK_ret (FuncState *fs, int first, int nret); +LUAI_FUNC void luaK_patchlist (FuncState *fs, int list, int target); +LUAI_FUNC void luaK_patchtohere (FuncState *fs, int list); +LUAI_FUNC void luaK_concat (FuncState *fs, int *l1, int l2); +LUAI_FUNC int luaK_getlabel (FuncState *fs); +LUAI_FUNC void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v); +LUAI_FUNC void luaK_infix (FuncState *fs, BinOpr op, expdesc *v); +LUAI_FUNC void luaK_posfix (FuncState *fs, BinOpr op, expdesc *v1, expdesc *v2); +LUAI_FUNC void luaK_setlist (FuncState *fs, int base, int nelems, int tostore); + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/ldblib.c.svn-base b/lua-5.1.4/src/.svn/text-base/ldblib.c.svn-base new file mode 100644 index 0000000..67de122 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ldblib.c.svn-base @@ -0,0 +1,397 @@ +/* +** $Id: ldblib.c,v 1.104.1.3 2008/01/21 13:11:21 roberto Exp $ +** Interface from Lua to its debug API +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define ldblib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + +static int db_getregistry (lua_State *L) { + lua_pushvalue(L, LUA_REGISTRYINDEX); + return 1; +} + + +static int db_getmetatable (lua_State *L) { + luaL_checkany(L, 1); + if (!lua_getmetatable(L, 1)) { + lua_pushnil(L); /* no metatable */ + } + return 1; +} + + +static int db_setmetatable (lua_State *L) { + int t = lua_type(L, 2); + luaL_argcheck(L, t == LUA_TNIL || t == LUA_TTABLE, 2, + "nil or table expected"); + lua_settop(L, 2); + lua_pushboolean(L, lua_setmetatable(L, 1)); + return 1; +} + + +static int db_getfenv (lua_State *L) { + lua_getfenv(L, 1); + return 1; +} + + +static int db_setfenv (lua_State *L) { + luaL_checktype(L, 2, LUA_TTABLE); + lua_settop(L, 2); + if (lua_setfenv(L, 1) == 0) + luaL_error(L, LUA_QL("setfenv") + " cannot change environment of given object"); + return 1; +} + + +static void settabss (lua_State *L, const char *i, const char *v) { + lua_pushstring(L, v); + lua_setfield(L, -2, i); +} + + +static void settabsi (lua_State *L, const char *i, int v) { + lua_pushinteger(L, v); + lua_setfield(L, -2, i); +} + + +static lua_State *getthread (lua_State *L, int *arg) { + if (lua_isthread(L, 1)) { + *arg = 1; + return lua_tothread(L, 1); + } + else { + *arg = 0; + return L; + } +} + + +static void treatstackoption (lua_State *L, lua_State *L1, const char *fname) { + if (L == L1) { + lua_pushvalue(L, -2); + lua_remove(L, -3); + } + else + lua_xmove(L1, L, 1); + lua_setfield(L, -2, fname); +} + + +static int db_getinfo (lua_State *L) { + lua_Debug ar; + int arg; + lua_State *L1 = getthread(L, &arg); + const char *options = luaL_optstring(L, arg+2, "flnSu"); + if (lua_isnumber(L, arg+1)) { + if (!lua_getstack(L1, (int)lua_tointeger(L, arg+1), &ar)) { + lua_pushnil(L); /* level out of range */ + return 1; + } + } + else if (lua_isfunction(L, arg+1)) { + lua_pushfstring(L, ">%s", options); + options = lua_tostring(L, -1); + lua_pushvalue(L, arg+1); + lua_xmove(L, L1, 1); + } + else + return luaL_argerror(L, arg+1, "function or level expected"); + if (!lua_getinfo(L1, options, &ar)) + return luaL_argerror(L, arg+2, "invalid option"); + lua_createtable(L, 0, 2); + if (strchr(options, 'S')) { + settabss(L, "source", ar.source); + settabss(L, "short_src", ar.short_src); + settabsi(L, "linedefined", ar.linedefined); + settabsi(L, "lastlinedefined", ar.lastlinedefined); + settabss(L, "what", ar.what); + } + if (strchr(options, 'l')) + settabsi(L, "currentline", ar.currentline); + if (strchr(options, 'u')) + settabsi(L, "nups", ar.nups); + if (strchr(options, 'n')) { + settabss(L, "name", ar.name); + settabss(L, "namewhat", ar.namewhat); + } + if (strchr(options, 'L')) + treatstackoption(L, L1, "activelines"); + if (strchr(options, 'f')) + treatstackoption(L, L1, "func"); + return 1; /* return table */ +} + + +static int db_getlocal (lua_State *L) { + int arg; + lua_State *L1 = getthread(L, &arg); + lua_Debug ar; + const char *name; + if (!lua_getstack(L1, luaL_checkint(L, arg+1), &ar)) /* out of range? */ + return luaL_argerror(L, arg+1, "level out of range"); + name = lua_getlocal(L1, &ar, luaL_checkint(L, arg+2)); + if (name) { + lua_xmove(L1, L, 1); + lua_pushstring(L, name); + lua_pushvalue(L, -2); + return 2; + } + else { + lua_pushnil(L); + return 1; + } +} + + +static int db_setlocal (lua_State *L) { + int arg; + lua_State *L1 = getthread(L, &arg); + lua_Debug ar; + if (!lua_getstack(L1, luaL_checkint(L, arg+1), &ar)) /* out of range? */ + return luaL_argerror(L, arg+1, "level out of range"); + luaL_checkany(L, arg+3); + lua_settop(L, arg+3); + lua_xmove(L, L1, 1); + lua_pushstring(L, lua_setlocal(L1, &ar, luaL_checkint(L, arg+2))); + return 1; +} + + +static int auxupvalue (lua_State *L, int get) { + const char *name; + int n = luaL_checkint(L, 2); + luaL_checktype(L, 1, LUA_TFUNCTION); + if (lua_iscfunction(L, 1)) return 0; /* cannot touch C upvalues from Lua */ + name = get ? lua_getupvalue(L, 1, n) : lua_setupvalue(L, 1, n); + if (name == NULL) return 0; + lua_pushstring(L, name); + lua_insert(L, -(get+1)); + return get + 1; +} + + +static int db_getupvalue (lua_State *L) { + return auxupvalue(L, 1); +} + + +static int db_setupvalue (lua_State *L) { + luaL_checkany(L, 3); + return auxupvalue(L, 0); +} + + + +static const char KEY_HOOK = 'h'; + + +static void hookf (lua_State *L, lua_Debug *ar) { + static const char *const hooknames[] = + {"call", "return", "line", "count", "tail return"}; + lua_pushlightuserdata(L, (void *)&KEY_HOOK); + lua_rawget(L, LUA_REGISTRYINDEX); + lua_pushlightuserdata(L, L); + lua_rawget(L, -2); + if (lua_isfunction(L, -1)) { + lua_pushstring(L, hooknames[(int)ar->event]); + if (ar->currentline >= 0) + lua_pushinteger(L, ar->currentline); + else lua_pushnil(L); + lua_assert(lua_getinfo(L, "lS", ar)); + lua_call(L, 2, 0); + } +} + + +static int makemask (const char *smask, int count) { + int mask = 0; + if (strchr(smask, 'c')) mask |= LUA_MASKCALL; + if (strchr(smask, 'r')) mask |= LUA_MASKRET; + if (strchr(smask, 'l')) mask |= LUA_MASKLINE; + if (count > 0) mask |= LUA_MASKCOUNT; + return mask; +} + + +static char *unmakemask (int mask, char *smask) { + int i = 0; + if (mask & LUA_MASKCALL) smask[i++] = 'c'; + if (mask & LUA_MASKRET) smask[i++] = 'r'; + if (mask & LUA_MASKLINE) smask[i++] = 'l'; + smask[i] = '\0'; + return smask; +} + + +static void gethooktable (lua_State *L) { + lua_pushlightuserdata(L, (void *)&KEY_HOOK); + lua_rawget(L, LUA_REGISTRYINDEX); + if (!lua_istable(L, -1)) { + lua_pop(L, 1); + lua_createtable(L, 0, 1); + lua_pushlightuserdata(L, (void *)&KEY_HOOK); + lua_pushvalue(L, -2); + lua_rawset(L, LUA_REGISTRYINDEX); + } +} + + +static int db_sethook (lua_State *L) { + int arg, mask, count; + lua_Hook func; + lua_State *L1 = getthread(L, &arg); + if (lua_isnoneornil(L, arg+1)) { + lua_settop(L, arg+1); + func = NULL; mask = 0; count = 0; /* turn off hooks */ + } + else { + const char *smask = luaL_checkstring(L, arg+2); + luaL_checktype(L, arg+1, LUA_TFUNCTION); + count = luaL_optint(L, arg+3, 0); + func = hookf; mask = makemask(smask, count); + } + gethooktable(L); + lua_pushlightuserdata(L, L1); + lua_pushvalue(L, arg+1); + lua_rawset(L, -3); /* set new hook */ + lua_pop(L, 1); /* remove hook table */ + lua_sethook(L1, func, mask, count); /* set hooks */ + return 0; +} + + +static int db_gethook (lua_State *L) { + int arg; + lua_State *L1 = getthread(L, &arg); + char buff[5]; + int mask = lua_gethookmask(L1); + lua_Hook hook = lua_gethook(L1); + if (hook != NULL && hook != hookf) /* external hook? */ + lua_pushliteral(L, "external hook"); + else { + gethooktable(L); + lua_pushlightuserdata(L, L1); + lua_rawget(L, -2); /* get hook */ + lua_remove(L, -2); /* remove hook table */ + } + lua_pushstring(L, unmakemask(mask, buff)); + lua_pushinteger(L, lua_gethookcount(L1)); + return 3; +} + + +static int db_debug (lua_State *L) { + for (;;) { + char buffer[250]; + fputs("lua_debug> ", stderr); + if (fgets(buffer, sizeof(buffer), stdin) == 0 || + strcmp(buffer, "cont\n") == 0) + return 0; + if (luaL_loadbuffer(L, buffer, strlen(buffer), "=(debug command)") || + lua_pcall(L, 0, 0, 0)) { + fputs(lua_tostring(L, -1), stderr); + fputs("\n", stderr); + } + lua_settop(L, 0); /* remove eventual returns */ + } +} + + +#define LEVELS1 12 /* size of the first part of the stack */ +#define LEVELS2 10 /* size of the second part of the stack */ + +static int db_errorfb (lua_State *L) { + int level; + int firstpart = 1; /* still before eventual `...' */ + int arg; + lua_State *L1 = getthread(L, &arg); + lua_Debug ar; + if (lua_isnumber(L, arg+2)) { + level = (int)lua_tointeger(L, arg+2); + lua_pop(L, 1); + } + else + level = (L == L1) ? 1 : 0; /* level 0 may be this own function */ + if (lua_gettop(L) == arg) + lua_pushliteral(L, ""); + else if (!lua_isstring(L, arg+1)) return 1; /* message is not a string */ + else lua_pushliteral(L, "\n"); + lua_pushliteral(L, "stack traceback:"); + while (lua_getstack(L1, level++, &ar)) { + if (level > LEVELS1 && firstpart) { + /* no more than `LEVELS2' more levels? */ + if (!lua_getstack(L1, level+LEVELS2, &ar)) + level--; /* keep going */ + else { + lua_pushliteral(L, "\n\t..."); /* too many levels */ + while (lua_getstack(L1, level+LEVELS2, &ar)) /* find last levels */ + level++; + } + firstpart = 0; + continue; + } + lua_pushliteral(L, "\n\t"); + lua_getinfo(L1, "Snl", &ar); + lua_pushfstring(L, "%s:", ar.short_src); + if (ar.currentline > 0) + lua_pushfstring(L, "%d:", ar.currentline); + if (*ar.namewhat != '\0') /* is there a name? */ + lua_pushfstring(L, " in function " LUA_QS, ar.name); + else { + if (*ar.what == 'm') /* main? */ + lua_pushfstring(L, " in main chunk"); + else if (*ar.what == 'C' || *ar.what == 't') + lua_pushliteral(L, " ?"); /* C function or tail call */ + else + lua_pushfstring(L, " in function <%s:%d>", + ar.short_src, ar.linedefined); + } + lua_concat(L, lua_gettop(L) - arg); + } + lua_concat(L, lua_gettop(L) - arg); + return 1; +} + + +static const luaL_Reg dblib[] = { + {"debug", db_debug}, + {"getfenv", db_getfenv}, + {"gethook", db_gethook}, + {"getinfo", db_getinfo}, + {"getlocal", db_getlocal}, + {"getregistry", db_getregistry}, + {"getmetatable", db_getmetatable}, + {"getupvalue", db_getupvalue}, + {"setfenv", db_setfenv}, + {"sethook", db_sethook}, + {"setlocal", db_setlocal}, + {"setmetatable", db_setmetatable}, + {"setupvalue", db_setupvalue}, + {"traceback", db_errorfb}, + {NULL, NULL} +}; + + +LUALIB_API int luaopen_debug (lua_State *L) { + luaL_register(L, LUA_DBLIBNAME, dblib); + return 1; +} + diff --git a/lua-5.1.4/src/.svn/text-base/ldebug.c.svn-base b/lua-5.1.4/src/.svn/text-base/ldebug.c.svn-base new file mode 100644 index 0000000..50ad3d3 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ldebug.c.svn-base @@ -0,0 +1,638 @@ +/* +** $Id: ldebug.c,v 2.29.1.6 2008/05/08 16:56:26 roberto Exp $ +** Debug Interface +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + + +#define ldebug_c +#define LUA_CORE + +#include "lua.h" + +#include "lapi.h" +#include "lcode.h" +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lvm.h" + + + +static const char *getfuncname (lua_State *L, CallInfo *ci, const char **name); + + +static int currentpc (lua_State *L, CallInfo *ci) { + if (!isLua(ci)) return -1; /* function is not a Lua function? */ + if (ci == L->ci) + ci->savedpc = L->savedpc; + return pcRel(ci->savedpc, ci_func(ci)->l.p); +} + + +static int currentline (lua_State *L, CallInfo *ci) { + int pc = currentpc(L, ci); + if (pc < 0) + return -1; /* only active lua functions have current-line information */ + else + return getline(ci_func(ci)->l.p, pc); +} + + +/* +** this function can be called asynchronous (e.g. during a signal) +*/ +LUA_API int lua_sethook (lua_State *L, lua_Hook func, int mask, int count) { + if (func == NULL || mask == 0) { /* turn off hooks? */ + mask = 0; + func = NULL; + } + L->hook = func; + L->basehookcount = count; + resethookcount(L); + L->hookmask = cast_byte(mask); + return 1; +} + + +LUA_API lua_Hook lua_gethook (lua_State *L) { + return L->hook; +} + + +LUA_API int lua_gethookmask (lua_State *L) { + return L->hookmask; +} + + +LUA_API int lua_gethookcount (lua_State *L) { + return L->basehookcount; +} + + +LUA_API int lua_getstack (lua_State *L, int level, lua_Debug *ar) { + int status; + CallInfo *ci; + lua_lock(L); + for (ci = L->ci; level > 0 && ci > L->base_ci; ci--) { + level--; + if (f_isLua(ci)) /* Lua function? */ + level -= ci->tailcalls; /* skip lost tail calls */ + } + if (level == 0 && ci > L->base_ci) { /* level found? */ + status = 1; + ar->i_ci = cast_int(ci - L->base_ci); + } + else if (level < 0) { /* level is of a lost tail call? */ + status = 1; + ar->i_ci = 0; + } + else status = 0; /* no such level */ + lua_unlock(L); + return status; +} + + +static Proto *getluaproto (CallInfo *ci) { + return (isLua(ci) ? ci_func(ci)->l.p : NULL); +} + + +static const char *findlocal (lua_State *L, CallInfo *ci, int n) { + const char *name; + Proto *fp = getluaproto(ci); + if (fp && (name = luaF_getlocalname(fp, n, currentpc(L, ci))) != NULL) + return name; /* is a local variable in a Lua function */ + else { + StkId limit = (ci == L->ci) ? L->top : (ci+1)->func; + if (limit - ci->base >= n && n > 0) /* is 'n' inside 'ci' stack? */ + return "(*temporary)"; + else + return NULL; + } +} + + +LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n) { + CallInfo *ci = L->base_ci + ar->i_ci; + const char *name = findlocal(L, ci, n); + lua_lock(L); + if (name) + luaA_pushobject(L, ci->base + (n - 1)); + lua_unlock(L); + return name; +} + + +LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) { + CallInfo *ci = L->base_ci + ar->i_ci; + const char *name = findlocal(L, ci, n); + lua_lock(L); + if (name) + setobjs2s(L, ci->base + (n - 1), L->top - 1); + L->top--; /* pop value */ + lua_unlock(L); + return name; +} + + +static void funcinfo (lua_Debug *ar, Closure *cl) { + if (cl->c.isC) { + ar->source = "=[C]"; + ar->linedefined = -1; + ar->lastlinedefined = -1; + ar->what = "C"; + } + else { + ar->source = getstr(cl->l.p->source); + ar->linedefined = cl->l.p->linedefined; + ar->lastlinedefined = cl->l.p->lastlinedefined; + ar->what = (ar->linedefined == 0) ? "main" : "Lua"; + } + luaO_chunkid(ar->short_src, ar->source, LUA_IDSIZE); +} + + +static void info_tailcall (lua_Debug *ar) { + ar->name = ar->namewhat = ""; + ar->what = "tail"; + ar->lastlinedefined = ar->linedefined = ar->currentline = -1; + ar->source = "=(tail call)"; + luaO_chunkid(ar->short_src, ar->source, LUA_IDSIZE); + ar->nups = 0; +} + + +static void collectvalidlines (lua_State *L, Closure *f) { + if (f == NULL || f->c.isC) { + setnilvalue(L->top); + } + else { + Table *t = luaH_new(L, 0, 0); + int *lineinfo = f->l.p->lineinfo; + int i; + for (i=0; il.p->sizelineinfo; i++) + setbvalue(luaH_setnum(L, t, lineinfo[i]), 1); + sethvalue(L, L->top, t); + } + incr_top(L); +} + + +static int auxgetinfo (lua_State *L, const char *what, lua_Debug *ar, + Closure *f, CallInfo *ci) { + int status = 1; + if (f == NULL) { + info_tailcall(ar); + return status; + } + for (; *what; what++) { + switch (*what) { + case 'S': { + funcinfo(ar, f); + break; + } + case 'l': { + ar->currentline = (ci) ? currentline(L, ci) : -1; + break; + } + case 'u': { + ar->nups = f->c.nupvalues; + break; + } + case 'n': { + ar->namewhat = (ci) ? getfuncname(L, ci, &ar->name) : NULL; + if (ar->namewhat == NULL) { + ar->namewhat = ""; /* not found */ + ar->name = NULL; + } + break; + } + case 'L': + case 'f': /* handled by lua_getinfo */ + break; + default: status = 0; /* invalid option */ + } + } + return status; +} + + +LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { + int status; + Closure *f = NULL; + CallInfo *ci = NULL; + lua_lock(L); + if (*what == '>') { + StkId func = L->top - 1; + luai_apicheck(L, ttisfunction(func)); + what++; /* skip the '>' */ + f = clvalue(func); + L->top--; /* pop function */ + } + else if (ar->i_ci != 0) { /* no tail call? */ + ci = L->base_ci + ar->i_ci; + lua_assert(ttisfunction(ci->func)); + f = clvalue(ci->func); + } + status = auxgetinfo(L, what, ar, f, ci); + if (strchr(what, 'f')) { + if (f == NULL) setnilvalue(L->top); + else setclvalue(L, L->top, f); + incr_top(L); + } + if (strchr(what, 'L')) + collectvalidlines(L, f); + lua_unlock(L); + return status; +} + + +/* +** {====================================================== +** Symbolic Execution and code checker +** ======================================================= +*/ + +#define check(x) if (!(x)) return 0; + +#define checkjump(pt,pc) check(0 <= pc && pc < pt->sizecode) + +#define checkreg(pt,reg) check((reg) < (pt)->maxstacksize) + + + +static int precheck (const Proto *pt) { + check(pt->maxstacksize <= MAXSTACK); + check(pt->numparams+(pt->is_vararg & VARARG_HASARG) <= pt->maxstacksize); + check(!(pt->is_vararg & VARARG_NEEDSARG) || + (pt->is_vararg & VARARG_HASARG)); + check(pt->sizeupvalues <= pt->nups); + check(pt->sizelineinfo == pt->sizecode || pt->sizelineinfo == 0); + check(pt->sizecode > 0 && GET_OPCODE(pt->code[pt->sizecode-1]) == OP_RETURN); + return 1; +} + + +#define checkopenop(pt,pc) luaG_checkopenop((pt)->code[(pc)+1]) + +int luaG_checkopenop (Instruction i) { + switch (GET_OPCODE(i)) { + case OP_CALL: + case OP_TAILCALL: + case OP_RETURN: + case OP_SETLIST: { + check(GETARG_B(i) == 0); + return 1; + } + default: return 0; /* invalid instruction after an open call */ + } +} + + +static int checkArgMode (const Proto *pt, int r, enum OpArgMask mode) { + switch (mode) { + case OpArgN: check(r == 0); break; + case OpArgU: break; + case OpArgR: checkreg(pt, r); break; + case OpArgK: + check(ISK(r) ? INDEXK(r) < pt->sizek : r < pt->maxstacksize); + break; + } + return 1; +} + + +static Instruction symbexec (const Proto *pt, int lastpc, int reg) { + int pc; + int last; /* stores position of last instruction that changed `reg' */ + last = pt->sizecode-1; /* points to final return (a `neutral' instruction) */ + check(precheck(pt)); + for (pc = 0; pc < lastpc; pc++) { + Instruction i = pt->code[pc]; + OpCode op = GET_OPCODE(i); + int a = GETARG_A(i); + int b = 0; + int c = 0; + check(op < NUM_OPCODES); + checkreg(pt, a); + switch (getOpMode(op)) { + case iABC: { + b = GETARG_B(i); + c = GETARG_C(i); + check(checkArgMode(pt, b, getBMode(op))); + check(checkArgMode(pt, c, getCMode(op))); + break; + } + case iABx: { + b = GETARG_Bx(i); + if (getBMode(op) == OpArgK) check(b < pt->sizek); + break; + } + case iAsBx: { + b = GETARG_sBx(i); + if (getBMode(op) == OpArgR) { + int dest = pc+1+b; + check(0 <= dest && dest < pt->sizecode); + if (dest > 0) { + int j; + /* check that it does not jump to a setlist count; this + is tricky, because the count from a previous setlist may + have the same value of an invalid setlist; so, we must + go all the way back to the first of them (if any) */ + for (j = 0; j < dest; j++) { + Instruction d = pt->code[dest-1-j]; + if (!(GET_OPCODE(d) == OP_SETLIST && GETARG_C(d) == 0)) break; + } + /* if 'j' is even, previous value is not a setlist (even if + it looks like one) */ + check((j&1) == 0); + } + } + break; + } + } + if (testAMode(op)) { + if (a == reg) last = pc; /* change register `a' */ + } + if (testTMode(op)) { + check(pc+2 < pt->sizecode); /* check skip */ + check(GET_OPCODE(pt->code[pc+1]) == OP_JMP); + } + switch (op) { + case OP_LOADBOOL: { + if (c == 1) { /* does it jump? */ + check(pc+2 < pt->sizecode); /* check its jump */ + check(GET_OPCODE(pt->code[pc+1]) != OP_SETLIST || + GETARG_C(pt->code[pc+1]) != 0); + } + break; + } + case OP_LOADNIL: { + if (a <= reg && reg <= b) + last = pc; /* set registers from `a' to `b' */ + break; + } + case OP_GETUPVAL: + case OP_SETUPVAL: { + check(b < pt->nups); + break; + } + case OP_GETGLOBAL: + case OP_SETGLOBAL: { + check(ttisstring(&pt->k[b])); + break; + } + case OP_SELF: { + checkreg(pt, a+1); + if (reg == a+1) last = pc; + break; + } + case OP_CONCAT: { + check(b < c); /* at least two operands */ + break; + } + case OP_TFORLOOP: { + check(c >= 1); /* at least one result (control variable) */ + checkreg(pt, a+2+c); /* space for results */ + if (reg >= a+2) last = pc; /* affect all regs above its base */ + break; + } + case OP_FORLOOP: + case OP_FORPREP: + checkreg(pt, a+3); + /* go through */ + case OP_JMP: { + int dest = pc+1+b; + /* not full check and jump is forward and do not skip `lastpc'? */ + if (reg != NO_REG && pc < dest && dest <= lastpc) + pc += b; /* do the jump */ + break; + } + case OP_CALL: + case OP_TAILCALL: { + if (b != 0) { + checkreg(pt, a+b-1); + } + c--; /* c = num. returns */ + if (c == LUA_MULTRET) { + check(checkopenop(pt, pc)); + } + else if (c != 0) + checkreg(pt, a+c-1); + if (reg >= a) last = pc; /* affect all registers above base */ + break; + } + case OP_RETURN: { + b--; /* b = num. returns */ + if (b > 0) checkreg(pt, a+b-1); + break; + } + case OP_SETLIST: { + if (b > 0) checkreg(pt, a + b); + if (c == 0) { + pc++; + check(pc < pt->sizecode - 1); + } + break; + } + case OP_CLOSURE: { + int nup, j; + check(b < pt->sizep); + nup = pt->p[b]->nups; + check(pc + nup < pt->sizecode); + for (j = 1; j <= nup; j++) { + OpCode op1 = GET_OPCODE(pt->code[pc + j]); + check(op1 == OP_GETUPVAL || op1 == OP_MOVE); + } + if (reg != NO_REG) /* tracing? */ + pc += nup; /* do not 'execute' these pseudo-instructions */ + break; + } + case OP_VARARG: { + check((pt->is_vararg & VARARG_ISVARARG) && + !(pt->is_vararg & VARARG_NEEDSARG)); + b--; + if (b == LUA_MULTRET) check(checkopenop(pt, pc)); + checkreg(pt, a+b-1); + break; + } + default: break; + } + } + return pt->code[last]; +} + +#undef check +#undef checkjump +#undef checkreg + +/* }====================================================== */ + + +int luaG_checkcode (const Proto *pt) { + return (symbexec(pt, pt->sizecode, NO_REG) != 0); +} + + +static const char *kname (Proto *p, int c) { + if (ISK(c) && ttisstring(&p->k[INDEXK(c)])) + return svalue(&p->k[INDEXK(c)]); + else + return "?"; +} + + +static const char *getobjname (lua_State *L, CallInfo *ci, int stackpos, + const char **name) { + if (isLua(ci)) { /* a Lua function? */ + Proto *p = ci_func(ci)->l.p; + int pc = currentpc(L, ci); + Instruction i; + *name = luaF_getlocalname(p, stackpos+1, pc); + if (*name) /* is a local? */ + return "local"; + i = symbexec(p, pc, stackpos); /* try symbolic execution */ + lua_assert(pc != -1); + switch (GET_OPCODE(i)) { + case OP_GETGLOBAL: { + int g = GETARG_Bx(i); /* global index */ + lua_assert(ttisstring(&p->k[g])); + *name = svalue(&p->k[g]); + return "global"; + } + case OP_MOVE: { + int a = GETARG_A(i); + int b = GETARG_B(i); /* move from `b' to `a' */ + if (b < a) + return getobjname(L, ci, b, name); /* get name for `b' */ + break; + } + case OP_GETTABLE: { + int k = GETARG_C(i); /* key index */ + *name = kname(p, k); + return "field"; + } + case OP_GETUPVAL: { + int u = GETARG_B(i); /* upvalue index */ + *name = p->upvalues ? getstr(p->upvalues[u]) : "?"; + return "upvalue"; + } + case OP_SELF: { + int k = GETARG_C(i); /* key index */ + *name = kname(p, k); + return "method"; + } + default: break; + } + } + return NULL; /* no useful name found */ +} + + +static const char *getfuncname (lua_State *L, CallInfo *ci, const char **name) { + Instruction i; + if ((isLua(ci) && ci->tailcalls > 0) || !isLua(ci - 1)) + return NULL; /* calling function is not Lua (or is unknown) */ + ci--; /* calling function */ + i = ci_func(ci)->l.p->code[currentpc(L, ci)]; + if (GET_OPCODE(i) == OP_CALL || GET_OPCODE(i) == OP_TAILCALL || + GET_OPCODE(i) == OP_TFORLOOP) + return getobjname(L, ci, GETARG_A(i), name); + else + return NULL; /* no useful name can be found */ +} + + +/* only ANSI way to check whether a pointer points to an array */ +static int isinstack (CallInfo *ci, const TValue *o) { + StkId p; + for (p = ci->base; p < ci->top; p++) + if (o == p) return 1; + return 0; +} + + +void luaG_typeerror (lua_State *L, const TValue *o, const char *op) { + const char *name = NULL; + const char *t = luaT_typenames[ttype(o)]; + const char *kind = (isinstack(L->ci, o)) ? + getobjname(L, L->ci, cast_int(o - L->base), &name) : + NULL; + if (kind) + luaG_runerror(L, "attempt to %s %s " LUA_QS " (a %s value)", + op, kind, name, t); + else + luaG_runerror(L, "attempt to %s a %s value", op, t); +} + + +void luaG_concaterror (lua_State *L, StkId p1, StkId p2) { + if (ttisstring(p1) || ttisnumber(p1)) p1 = p2; + lua_assert(!ttisstring(p1) && !ttisnumber(p1)); + luaG_typeerror(L, p1, "concatenate"); +} + + +void luaG_aritherror (lua_State *L, const TValue *p1, const TValue *p2) { + TValue temp; + if (luaV_tonumber(p1, &temp) == NULL) + p2 = p1; /* first operand is wrong */ + luaG_typeerror(L, p2, "perform arithmetic on"); +} + + +int luaG_ordererror (lua_State *L, const TValue *p1, const TValue *p2) { + const char *t1 = luaT_typenames[ttype(p1)]; + const char *t2 = luaT_typenames[ttype(p2)]; + if (t1[2] == t2[2]) + luaG_runerror(L, "attempt to compare two %s values", t1); + else + luaG_runerror(L, "attempt to compare %s with %s", t1, t2); + return 0; +} + + +static void addinfo (lua_State *L, const char *msg) { + CallInfo *ci = L->ci; + if (isLua(ci)) { /* is Lua code? */ + char buff[LUA_IDSIZE]; /* add file:line information */ + int line = currentline(L, ci); + luaO_chunkid(buff, getstr(getluaproto(ci)->source), LUA_IDSIZE); + luaO_pushfstring(L, "%s:%d: %s", buff, line, msg); + } +} + + +void luaG_errormsg (lua_State *L) { + if (L->errfunc != 0) { /* is there an error handling function? */ + StkId errfunc = restorestack(L, L->errfunc); + if (!ttisfunction(errfunc)) luaD_throw(L, LUA_ERRERR); + setobjs2s(L, L->top, L->top - 1); /* move argument */ + setobjs2s(L, L->top - 1, errfunc); /* push function */ + incr_top(L); + luaD_call(L, L->top - 2, 1); /* call it */ + } + luaD_throw(L, LUA_ERRRUN); +} + + +void luaG_runerror (lua_State *L, const char *fmt, ...) { + va_list argp; + va_start(argp, fmt); + addinfo(L, luaO_pushvfstring(L, fmt, argp)); + va_end(argp); + luaG_errormsg(L); +} + diff --git a/lua-5.1.4/src/.svn/text-base/ldebug.h.svn-base b/lua-5.1.4/src/.svn/text-base/ldebug.h.svn-base new file mode 100644 index 0000000..ba28a97 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ldebug.h.svn-base @@ -0,0 +1,33 @@ +/* +** $Id: ldebug.h,v 2.3.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions from Debug Interface module +** See Copyright Notice in lua.h +*/ + +#ifndef ldebug_h +#define ldebug_h + + +#include "lstate.h" + + +#define pcRel(pc, p) (cast(int, (pc) - (p)->code) - 1) + +#define getline(f,pc) (((f)->lineinfo) ? (f)->lineinfo[pc] : 0) + +#define resethookcount(L) (L->hookcount = L->basehookcount) + + +LUAI_FUNC void luaG_typeerror (lua_State *L, const TValue *o, + const char *opname); +LUAI_FUNC void luaG_concaterror (lua_State *L, StkId p1, StkId p2); +LUAI_FUNC void luaG_aritherror (lua_State *L, const TValue *p1, + const TValue *p2); +LUAI_FUNC int luaG_ordererror (lua_State *L, const TValue *p1, + const TValue *p2); +LUAI_FUNC void luaG_runerror (lua_State *L, const char *fmt, ...); +LUAI_FUNC void luaG_errormsg (lua_State *L); +LUAI_FUNC int luaG_checkcode (const Proto *pt); +LUAI_FUNC int luaG_checkopenop (Instruction i); + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/ldo.c.svn-base b/lua-5.1.4/src/.svn/text-base/ldo.c.svn-base new file mode 100644 index 0000000..8de05f7 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ldo.c.svn-base @@ -0,0 +1,518 @@ +/* +** $Id: ldo.c,v 2.38.1.3 2008/01/18 22:31:22 roberto Exp $ +** Stack and Call structure of Lua +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define ldo_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lundump.h" +#include "lvm.h" +#include "lzio.h" + + + + +/* +** {====================================================== +** Error-recovery functions +** ======================================================= +*/ + + +/* chain list of long jump buffers */ +struct lua_longjmp { + struct lua_longjmp *previous; + luai_jmpbuf b; + volatile int status; /* error code */ +}; + + +void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop) { + switch (errcode) { + case LUA_ERRMEM: { + setsvalue2s(L, oldtop, luaS_newliteral(L, MEMERRMSG)); + break; + } + case LUA_ERRERR: { + setsvalue2s(L, oldtop, luaS_newliteral(L, "error in error handling")); + break; + } + case LUA_ERRSYNTAX: + case LUA_ERRRUN: { + setobjs2s(L, oldtop, L->top - 1); /* error message on current top */ + break; + } + } + L->top = oldtop + 1; +} + + +static void restore_stack_limit (lua_State *L) { + lua_assert(L->stack_last - L->stack == L->stacksize - EXTRA_STACK - 1); + if (L->size_ci > LUAI_MAXCALLS) { /* there was an overflow? */ + int inuse = cast_int(L->ci - L->base_ci); + if (inuse + 1 < LUAI_MAXCALLS) /* can `undo' overflow? */ + luaD_reallocCI(L, LUAI_MAXCALLS); + } +} + + +static void resetstack (lua_State *L, int status) { + L->ci = L->base_ci; + L->base = L->ci->base; + luaF_close(L, L->base); /* close eventual pending closures */ + luaD_seterrorobj(L, status, L->base); + L->nCcalls = L->baseCcalls; + L->allowhook = 1; + restore_stack_limit(L); + L->errfunc = 0; + L->errorJmp = NULL; +} + + +void luaD_throw (lua_State *L, int errcode) { + if (L->errorJmp) { + L->errorJmp->status = errcode; + LUAI_THROW(L, L->errorJmp); + } + else { + L->status = cast_byte(errcode); + if (G(L)->panic) { + resetstack(L, errcode); + lua_unlock(L); + G(L)->panic(L); + } + exit(EXIT_FAILURE); + } +} + + +int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud) { + struct lua_longjmp lj; + lj.status = 0; + lj.previous = L->errorJmp; /* chain new error handler */ + L->errorJmp = &lj; + LUAI_TRY(L, &lj, + (*f)(L, ud); + ); + L->errorJmp = lj.previous; /* restore old error handler */ + return lj.status; +} + +/* }====================================================== */ + + +static void correctstack (lua_State *L, TValue *oldstack) { + CallInfo *ci; + GCObject *up; + L->top = (L->top - oldstack) + L->stack; + for (up = L->openupval; up != NULL; up = up->gch.next) + gco2uv(up)->v = (gco2uv(up)->v - oldstack) + L->stack; + for (ci = L->base_ci; ci <= L->ci; ci++) { + ci->top = (ci->top - oldstack) + L->stack; + ci->base = (ci->base - oldstack) + L->stack; + ci->func = (ci->func - oldstack) + L->stack; + } + L->base = (L->base - oldstack) + L->stack; +} + + +void luaD_reallocstack (lua_State *L, int newsize) { + TValue *oldstack = L->stack; + int realsize = newsize + 1 + EXTRA_STACK; + lua_assert(L->stack_last - L->stack == L->stacksize - EXTRA_STACK - 1); + luaM_reallocvector(L, L->stack, L->stacksize, realsize, TValue); + L->stacksize = realsize; + L->stack_last = L->stack+newsize; + correctstack(L, oldstack); +} + + +void luaD_reallocCI (lua_State *L, int newsize) { + CallInfo *oldci = L->base_ci; + luaM_reallocvector(L, L->base_ci, L->size_ci, newsize, CallInfo); + L->size_ci = newsize; + L->ci = (L->ci - oldci) + L->base_ci; + L->end_ci = L->base_ci + L->size_ci - 1; +} + + +void luaD_growstack (lua_State *L, int n) { + if (n <= L->stacksize) /* double size is enough? */ + luaD_reallocstack(L, 2*L->stacksize); + else + luaD_reallocstack(L, L->stacksize + n); +} + + +static CallInfo *growCI (lua_State *L) { + if (L->size_ci > LUAI_MAXCALLS) /* overflow while handling overflow? */ + luaD_throw(L, LUA_ERRERR); + else { + luaD_reallocCI(L, 2*L->size_ci); + if (L->size_ci > LUAI_MAXCALLS) + luaG_runerror(L, "stack overflow"); + } + return ++L->ci; +} + + +void luaD_callhook (lua_State *L, int event, int line) { + lua_Hook hook = L->hook; + if (hook && L->allowhook) { + ptrdiff_t top = savestack(L, L->top); + ptrdiff_t ci_top = savestack(L, L->ci->top); + lua_Debug ar; + ar.event = event; + ar.currentline = line; + if (event == LUA_HOOKTAILRET) + ar.i_ci = 0; /* tail call; no debug information about it */ + else + ar.i_ci = cast_int(L->ci - L->base_ci); + luaD_checkstack(L, LUA_MINSTACK); /* ensure minimum stack size */ + L->ci->top = L->top + LUA_MINSTACK; + lua_assert(L->ci->top <= L->stack_last); + L->allowhook = 0; /* cannot call hooks inside a hook */ + lua_unlock(L); + (*hook)(L, &ar); + lua_lock(L); + lua_assert(!L->allowhook); + L->allowhook = 1; + L->ci->top = restorestack(L, ci_top); + L->top = restorestack(L, top); + } +} + + +static StkId adjust_varargs (lua_State *L, Proto *p, int actual) { + int i; + int nfixargs = p->numparams; + Table *htab = NULL; + StkId base, fixed; + for (; actual < nfixargs; ++actual) + setnilvalue(L->top++); +#if defined(LUA_COMPAT_VARARG) + if (p->is_vararg & VARARG_NEEDSARG) { /* compat. with old-style vararg? */ + int nvar = actual - nfixargs; /* number of extra arguments */ + lua_assert(p->is_vararg & VARARG_HASARG); + luaC_checkGC(L); + htab = luaH_new(L, nvar, 1); /* create `arg' table */ + for (i=0; itop - nvar + i); + /* store counter in field `n' */ + setnvalue(luaH_setstr(L, htab, luaS_newliteral(L, "n")), cast_num(nvar)); + } +#endif + /* move fixed parameters to final position */ + fixed = L->top - actual; /* first fixed argument */ + base = L->top; /* final position of first argument */ + for (i=0; itop++, fixed+i); + setnilvalue(fixed+i); + } + /* add `arg' parameter */ + if (htab) { + sethvalue(L, L->top++, htab); + lua_assert(iswhite(obj2gco(htab))); + } + return base; +} + + +static StkId tryfuncTM (lua_State *L, StkId func) { + const TValue *tm = luaT_gettmbyobj(L, func, TM_CALL); + StkId p; + ptrdiff_t funcr = savestack(L, func); + if (!ttisfunction(tm)) + luaG_typeerror(L, func, "call"); + /* Open a hole inside the stack at `func' */ + for (p = L->top; p > func; p--) setobjs2s(L, p, p-1); + incr_top(L); + func = restorestack(L, funcr); /* previous call may change stack */ + setobj2s(L, func, tm); /* tag method is the new function to be called */ + return func; +} + + + +#define inc_ci(L) \ + ((L->ci == L->end_ci) ? growCI(L) : \ + (condhardstacktests(luaD_reallocCI(L, L->size_ci)), ++L->ci)) + + +int luaD_precall (lua_State *L, StkId func, int nresults) { + LClosure *cl; + ptrdiff_t funcr; + if (!ttisfunction(func)) /* `func' is not a function? */ + func = tryfuncTM(L, func); /* check the `function' tag method */ + funcr = savestack(L, func); + cl = &clvalue(func)->l; + L->ci->savedpc = L->savedpc; + if (!cl->isC) { /* Lua function? prepare its call */ + CallInfo *ci; + StkId st, base; + Proto *p = cl->p; + luaD_checkstack(L, p->maxstacksize); + func = restorestack(L, funcr); + if (!p->is_vararg) { /* no varargs? */ + base = func + 1; + if (L->top > base + p->numparams) + L->top = base + p->numparams; + } + else { /* vararg function */ + int nargs = cast_int(L->top - func) - 1; + base = adjust_varargs(L, p, nargs); + func = restorestack(L, funcr); /* previous call may change the stack */ + } + ci = inc_ci(L); /* now `enter' new function */ + ci->func = func; + L->base = ci->base = base; + ci->top = L->base + p->maxstacksize; + lua_assert(ci->top <= L->stack_last); + L->savedpc = p->code; /* starting point */ + ci->tailcalls = 0; + ci->nresults = nresults; + for (st = L->top; st < ci->top; st++) + setnilvalue(st); + L->top = ci->top; + if (L->hookmask & LUA_MASKCALL) { + L->savedpc++; /* hooks assume 'pc' is already incremented */ + luaD_callhook(L, LUA_HOOKCALL, -1); + L->savedpc--; /* correct 'pc' */ + } + return PCRLUA; + } + else { /* if is a C function, call it */ + CallInfo *ci; + int n; + luaD_checkstack(L, LUA_MINSTACK); /* ensure minimum stack size */ + ci = inc_ci(L); /* now `enter' new function */ + ci->func = restorestack(L, funcr); + L->base = ci->base = ci->func + 1; + ci->top = L->top + LUA_MINSTACK; + lua_assert(ci->top <= L->stack_last); + ci->nresults = nresults; + if (L->hookmask & LUA_MASKCALL) + luaD_callhook(L, LUA_HOOKCALL, -1); + lua_unlock(L); + n = (*curr_func(L)->c.f)(L); /* do the actual call */ + lua_lock(L); + if (n < 0) /* yielding? */ + return PCRYIELD; + else { + luaD_poscall(L, L->top - n); + return PCRC; + } + } +} + + +static StkId callrethooks (lua_State *L, StkId firstResult) { + ptrdiff_t fr = savestack(L, firstResult); /* next call may change stack */ + luaD_callhook(L, LUA_HOOKRET, -1); + if (f_isLua(L->ci)) { /* Lua function? */ + while ((L->hookmask & LUA_MASKRET) && L->ci->tailcalls--) /* tail calls */ + luaD_callhook(L, LUA_HOOKTAILRET, -1); + } + return restorestack(L, fr); +} + + +int luaD_poscall (lua_State *L, StkId firstResult) { + StkId res; + int wanted, i; + CallInfo *ci; + if (L->hookmask & LUA_MASKRET) + firstResult = callrethooks(L, firstResult); + ci = L->ci--; + res = ci->func; /* res == final position of 1st result */ + wanted = ci->nresults; + L->base = (ci - 1)->base; /* restore base */ + L->savedpc = (ci - 1)->savedpc; /* restore savedpc */ + /* move results to correct place */ + for (i = wanted; i != 0 && firstResult < L->top; i--) + setobjs2s(L, res++, firstResult++); + while (i-- > 0) + setnilvalue(res++); + L->top = res; + return (wanted - LUA_MULTRET); /* 0 iff wanted == LUA_MULTRET */ +} + + +/* +** Call a function (C or Lua). The function to be called is at *func. +** The arguments are on the stack, right after the function. +** When returns, all the results are on the stack, starting at the original +** function position. +*/ +void luaD_call (lua_State *L, StkId func, int nResults) { + if (++L->nCcalls >= LUAI_MAXCCALLS) { + if (L->nCcalls == LUAI_MAXCCALLS) + luaG_runerror(L, "C stack overflow"); + else if (L->nCcalls >= (LUAI_MAXCCALLS + (LUAI_MAXCCALLS>>3))) + luaD_throw(L, LUA_ERRERR); /* error while handing stack error */ + } + if (luaD_precall(L, func, nResults) == PCRLUA) /* is a Lua function? */ + luaV_execute(L, 1); /* call it */ + L->nCcalls--; + luaC_checkGC(L); +} + + +static void resume (lua_State *L, void *ud) { + StkId firstArg = cast(StkId, ud); + CallInfo *ci = L->ci; + if (L->status == 0) { /* start coroutine? */ + lua_assert(ci == L->base_ci && firstArg > L->base); + if (luaD_precall(L, firstArg - 1, LUA_MULTRET) != PCRLUA) + return; + } + else { /* resuming from previous yield */ + lua_assert(L->status == LUA_YIELD); + L->status = 0; + if (!f_isLua(ci)) { /* `common' yield? */ + /* finish interrupted execution of `OP_CALL' */ + lua_assert(GET_OPCODE(*((ci-1)->savedpc - 1)) == OP_CALL || + GET_OPCODE(*((ci-1)->savedpc - 1)) == OP_TAILCALL); + if (luaD_poscall(L, firstArg)) /* complete it... */ + L->top = L->ci->top; /* and correct top if not multiple results */ + } + else /* yielded inside a hook: just continue its execution */ + L->base = L->ci->base; + } + luaV_execute(L, cast_int(L->ci - L->base_ci)); +} + + +static int resume_error (lua_State *L, const char *msg) { + L->top = L->ci->base; + setsvalue2s(L, L->top, luaS_new(L, msg)); + incr_top(L); + lua_unlock(L); + return LUA_ERRRUN; +} + + +LUA_API int lua_resume (lua_State *L, int nargs) { + int status; + lua_lock(L); + if (L->status != LUA_YIELD && (L->status != 0 || L->ci != L->base_ci)) + return resume_error(L, "cannot resume non-suspended coroutine"); + if (L->nCcalls >= LUAI_MAXCCALLS) + return resume_error(L, "C stack overflow"); + luai_userstateresume(L, nargs); + lua_assert(L->errfunc == 0); + L->baseCcalls = ++L->nCcalls; + status = luaD_rawrunprotected(L, resume, L->top - nargs); + if (status != 0) { /* error? */ + L->status = cast_byte(status); /* mark thread as `dead' */ + luaD_seterrorobj(L, status, L->top); + L->ci->top = L->top; + } + else { + lua_assert(L->nCcalls == L->baseCcalls); + status = L->status; + } + --L->nCcalls; + lua_unlock(L); + return status; +} + + +LUA_API int lua_yield (lua_State *L, int nresults) { + luai_userstateyield(L, nresults); + lua_lock(L); + if (L->nCcalls > L->baseCcalls) + luaG_runerror(L, "attempt to yield across metamethod/C-call boundary"); + L->base = L->top - nresults; /* protect stack slots below */ + L->status = LUA_YIELD; + lua_unlock(L); + return -1; +} + + +int luaD_pcall (lua_State *L, Pfunc func, void *u, + ptrdiff_t old_top, ptrdiff_t ef) { + int status; + unsigned short oldnCcalls = L->nCcalls; + ptrdiff_t old_ci = saveci(L, L->ci); + lu_byte old_allowhooks = L->allowhook; + ptrdiff_t old_errfunc = L->errfunc; + L->errfunc = ef; + status = luaD_rawrunprotected(L, func, u); + if (status != 0) { /* an error occurred? */ + StkId oldtop = restorestack(L, old_top); + luaF_close(L, oldtop); /* close eventual pending closures */ + luaD_seterrorobj(L, status, oldtop); + L->nCcalls = oldnCcalls; + L->ci = restoreci(L, old_ci); + L->base = L->ci->base; + L->savedpc = L->ci->savedpc; + L->allowhook = old_allowhooks; + restore_stack_limit(L); + } + L->errfunc = old_errfunc; + return status; +} + + + +/* +** Execute a protected parser. +*/ +struct SParser { /* data to `f_parser' */ + ZIO *z; + Mbuffer buff; /* buffer to be used by the scanner */ + const char *name; +}; + +static void f_parser (lua_State *L, void *ud) { + int i; + Proto *tf; + Closure *cl; + struct SParser *p = cast(struct SParser *, ud); + int c = luaZ_lookahead(p->z); + luaC_checkGC(L); + tf = ((c == LUA_SIGNATURE[0]) ? luaU_undump : luaY_parser)(L, p->z, + &p->buff, p->name); + cl = luaF_newLclosure(L, tf->nups, hvalue(gt(L))); + cl->l.p = tf; + for (i = 0; i < tf->nups; i++) /* initialize eventual upvalues */ + cl->l.upvals[i] = luaF_newupval(L); + setclvalue(L, L->top, cl); + incr_top(L); +} + + +int luaD_protectedparser (lua_State *L, ZIO *z, const char *name) { + struct SParser p; + int status; + p.z = z; p.name = name; + luaZ_initbuffer(L, &p.buff); + status = luaD_pcall(L, f_parser, &p, savestack(L, L->top), L->errfunc); + luaZ_freebuffer(L, &p.buff); + return status; +} + + diff --git a/lua-5.1.4/src/.svn/text-base/ldo.h.svn-base b/lua-5.1.4/src/.svn/text-base/ldo.h.svn-base new file mode 100644 index 0000000..98fddac --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ldo.h.svn-base @@ -0,0 +1,57 @@ +/* +** $Id: ldo.h,v 2.7.1.1 2007/12/27 13:02:25 roberto Exp $ +** Stack and Call structure of Lua +** See Copyright Notice in lua.h +*/ + +#ifndef ldo_h +#define ldo_h + + +#include "lobject.h" +#include "lstate.h" +#include "lzio.h" + + +#define luaD_checkstack(L,n) \ + if ((char *)L->stack_last - (char *)L->top <= (n)*(int)sizeof(TValue)) \ + luaD_growstack(L, n); \ + else condhardstacktests(luaD_reallocstack(L, L->stacksize - EXTRA_STACK - 1)); + + +#define incr_top(L) {luaD_checkstack(L,1); L->top++;} + +#define savestack(L,p) ((char *)(p) - (char *)L->stack) +#define restorestack(L,n) ((TValue *)((char *)L->stack + (n))) + +#define saveci(L,p) ((char *)(p) - (char *)L->base_ci) +#define restoreci(L,n) ((CallInfo *)((char *)L->base_ci + (n))) + + +/* results from luaD_precall */ +#define PCRLUA 0 /* initiated a call to a Lua function */ +#define PCRC 1 /* did a call to a C function */ +#define PCRYIELD 2 /* C funtion yielded */ + + +/* type of protected functions, to be ran by `runprotected' */ +typedef void (*Pfunc) (lua_State *L, void *ud); + +LUAI_FUNC int luaD_protectedparser (lua_State *L, ZIO *z, const char *name); +LUAI_FUNC void luaD_callhook (lua_State *L, int event, int line); +LUAI_FUNC int luaD_precall (lua_State *L, StkId func, int nresults); +LUAI_FUNC void luaD_call (lua_State *L, StkId func, int nResults); +LUAI_FUNC int luaD_pcall (lua_State *L, Pfunc func, void *u, + ptrdiff_t oldtop, ptrdiff_t ef); +LUAI_FUNC int luaD_poscall (lua_State *L, StkId firstResult); +LUAI_FUNC void luaD_reallocCI (lua_State *L, int newsize); +LUAI_FUNC void luaD_reallocstack (lua_State *L, int newsize); +LUAI_FUNC void luaD_growstack (lua_State *L, int n); + +LUAI_FUNC void luaD_throw (lua_State *L, int errcode); +LUAI_FUNC int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud); + +LUAI_FUNC void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop); + +#endif + diff --git a/lua-5.1.4/src/.svn/text-base/ldump.c.svn-base b/lua-5.1.4/src/.svn/text-base/ldump.c.svn-base new file mode 100644 index 0000000..c9d3d48 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ldump.c.svn-base @@ -0,0 +1,164 @@ +/* +** $Id: ldump.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ +** save precompiled Lua chunks +** See Copyright Notice in lua.h +*/ + +#include + +#define ldump_c +#define LUA_CORE + +#include "lua.h" + +#include "lobject.h" +#include "lstate.h" +#include "lundump.h" + +typedef struct { + lua_State* L; + lua_Writer writer; + void* data; + int strip; + int status; +} DumpState; + +#define DumpMem(b,n,size,D) DumpBlock(b,(n)*(size),D) +#define DumpVar(x,D) DumpMem(&x,1,sizeof(x),D) + +static void DumpBlock(const void* b, size_t size, DumpState* D) +{ + if (D->status==0) + { + lua_unlock(D->L); + D->status=(*D->writer)(D->L,b,size,D->data); + lua_lock(D->L); + } +} + +static void DumpChar(int y, DumpState* D) +{ + char x=(char)y; + DumpVar(x,D); +} + +static void DumpInt(int x, DumpState* D) +{ + DumpVar(x,D); +} + +static void DumpNumber(lua_Number x, DumpState* D) +{ + DumpVar(x,D); +} + +static void DumpVector(const void* b, int n, size_t size, DumpState* D) +{ + DumpInt(n,D); + DumpMem(b,n,size,D); +} + +static void DumpString(const TString* s, DumpState* D) +{ + if (s==NULL || getstr(s)==NULL) + { + size_t size=0; + DumpVar(size,D); + } + else + { + size_t size=s->tsv.len+1; /* include trailing '\0' */ + DumpVar(size,D); + DumpBlock(getstr(s),size,D); + } +} + +#define DumpCode(f,D) DumpVector(f->code,f->sizecode,sizeof(Instruction),D) + +static void DumpFunction(const Proto* f, const TString* p, DumpState* D); + +static void DumpConstants(const Proto* f, DumpState* D) +{ + int i,n=f->sizek; + DumpInt(n,D); + for (i=0; ik[i]; + DumpChar(ttype(o),D); + switch (ttype(o)) + { + case LUA_TNIL: + break; + case LUA_TBOOLEAN: + DumpChar(bvalue(o),D); + break; + case LUA_TNUMBER: + DumpNumber(nvalue(o),D); + break; + case LUA_TSTRING: + DumpString(rawtsvalue(o),D); + break; + default: + lua_assert(0); /* cannot happen */ + break; + } + } + n=f->sizep; + DumpInt(n,D); + for (i=0; ip[i],f->source,D); +} + +static void DumpDebug(const Proto* f, DumpState* D) +{ + int i,n; + n= (D->strip) ? 0 : f->sizelineinfo; + DumpVector(f->lineinfo,n,sizeof(int),D); + n= (D->strip) ? 0 : f->sizelocvars; + DumpInt(n,D); + for (i=0; ilocvars[i].varname,D); + DumpInt(f->locvars[i].startpc,D); + DumpInt(f->locvars[i].endpc,D); + } + n= (D->strip) ? 0 : f->sizeupvalues; + DumpInt(n,D); + for (i=0; iupvalues[i],D); +} + +static void DumpFunction(const Proto* f, const TString* p, DumpState* D) +{ + DumpString((f->source==p || D->strip) ? NULL : f->source,D); + DumpInt(f->linedefined,D); + DumpInt(f->lastlinedefined,D); + DumpChar(f->nups,D); + DumpChar(f->numparams,D); + DumpChar(f->is_vararg,D); + DumpChar(f->maxstacksize,D); + DumpCode(f,D); + DumpConstants(f,D); + DumpDebug(f,D); +} + +static void DumpHeader(DumpState* D) +{ + char h[LUAC_HEADERSIZE]; + luaU_header(h); + DumpBlock(h,LUAC_HEADERSIZE,D); +} + +/* +** dump Lua function as precompiled chunk +*/ +int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip) +{ + DumpState D; + D.L=L; + D.writer=w; + D.data=data; + D.strip=strip; + D.status=0; + DumpHeader(&D); + DumpFunction(f,NULL,&D); + return D.status; +} diff --git a/lua-5.1.4/src/.svn/text-base/lfunc.c.svn-base b/lua-5.1.4/src/.svn/text-base/lfunc.c.svn-base new file mode 100644 index 0000000..813e88f --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lfunc.c.svn-base @@ -0,0 +1,174 @@ +/* +** $Id: lfunc.c,v 2.12.1.2 2007/12/28 14:58:43 roberto Exp $ +** Auxiliary functions to manipulate prototypes and closures +** See Copyright Notice in lua.h +*/ + + +#include + +#define lfunc_c +#define LUA_CORE + +#include "lua.h" + +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" + + + +Closure *luaF_newCclosure (lua_State *L, int nelems, Table *e) { + Closure *c = cast(Closure *, luaM_malloc(L, sizeCclosure(nelems))); + luaC_link(L, obj2gco(c), LUA_TFUNCTION); + c->c.isC = 1; + c->c.env = e; + c->c.nupvalues = cast_byte(nelems); + return c; +} + + +Closure *luaF_newLclosure (lua_State *L, int nelems, Table *e) { + Closure *c = cast(Closure *, luaM_malloc(L, sizeLclosure(nelems))); + luaC_link(L, obj2gco(c), LUA_TFUNCTION); + c->l.isC = 0; + c->l.env = e; + c->l.nupvalues = cast_byte(nelems); + while (nelems--) c->l.upvals[nelems] = NULL; + return c; +} + + +UpVal *luaF_newupval (lua_State *L) { + UpVal *uv = luaM_new(L, UpVal); + luaC_link(L, obj2gco(uv), LUA_TUPVAL); + uv->v = &uv->u.value; + setnilvalue(uv->v); + return uv; +} + + +UpVal *luaF_findupval (lua_State *L, StkId level) { + global_State *g = G(L); + GCObject **pp = &L->openupval; + UpVal *p; + UpVal *uv; + while (*pp != NULL && (p = ngcotouv(*pp))->v >= level) { + lua_assert(p->v != &p->u.value); + if (p->v == level) { /* found a corresponding upvalue? */ + if (isdead(g, obj2gco(p))) /* is it dead? */ + changewhite(obj2gco(p)); /* ressurect it */ + return p; + } + pp = &p->next; + } + uv = luaM_new(L, UpVal); /* not found: create a new one */ + uv->tt = LUA_TUPVAL; + uv->marked = luaC_white(g); + uv->v = level; /* current value lives in the stack */ + uv->next = *pp; /* chain it in the proper position */ + *pp = obj2gco(uv); + uv->u.l.prev = &g->uvhead; /* double link it in `uvhead' list */ + uv->u.l.next = g->uvhead.u.l.next; + uv->u.l.next->u.l.prev = uv; + g->uvhead.u.l.next = uv; + lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); + return uv; +} + + +static void unlinkupval (UpVal *uv) { + lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); + uv->u.l.next->u.l.prev = uv->u.l.prev; /* remove from `uvhead' list */ + uv->u.l.prev->u.l.next = uv->u.l.next; +} + + +void luaF_freeupval (lua_State *L, UpVal *uv) { + if (uv->v != &uv->u.value) /* is it open? */ + unlinkupval(uv); /* remove from open list */ + luaM_free(L, uv); /* free upvalue */ +} + + +void luaF_close (lua_State *L, StkId level) { + UpVal *uv; + global_State *g = G(L); + while (L->openupval != NULL && (uv = ngcotouv(L->openupval))->v >= level) { + GCObject *o = obj2gco(uv); + lua_assert(!isblack(o) && uv->v != &uv->u.value); + L->openupval = uv->next; /* remove from `open' list */ + if (isdead(g, o)) + luaF_freeupval(L, uv); /* free upvalue */ + else { + unlinkupval(uv); + setobj(L, &uv->u.value, uv->v); + uv->v = &uv->u.value; /* now current value lives here */ + luaC_linkupval(L, uv); /* link upvalue into `gcroot' list */ + } + } +} + + +Proto *luaF_newproto (lua_State *L) { + Proto *f = luaM_new(L, Proto); + luaC_link(L, obj2gco(f), LUA_TPROTO); + f->k = NULL; + f->sizek = 0; + f->p = NULL; + f->sizep = 0; + f->code = NULL; + f->sizecode = 0; + f->sizelineinfo = 0; + f->sizeupvalues = 0; + f->nups = 0; + f->upvalues = NULL; + f->numparams = 0; + f->is_vararg = 0; + f->maxstacksize = 0; + f->lineinfo = NULL; + f->sizelocvars = 0; + f->locvars = NULL; + f->linedefined = 0; + f->lastlinedefined = 0; + f->source = NULL; + return f; +} + + +void luaF_freeproto (lua_State *L, Proto *f) { + luaM_freearray(L, f->code, f->sizecode, Instruction); + luaM_freearray(L, f->p, f->sizep, Proto *); + luaM_freearray(L, f->k, f->sizek, TValue); + luaM_freearray(L, f->lineinfo, f->sizelineinfo, int); + luaM_freearray(L, f->locvars, f->sizelocvars, struct LocVar); + luaM_freearray(L, f->upvalues, f->sizeupvalues, TString *); + luaM_free(L, f); +} + + +void luaF_freeclosure (lua_State *L, Closure *c) { + int size = (c->c.isC) ? sizeCclosure(c->c.nupvalues) : + sizeLclosure(c->l.nupvalues); + luaM_freemem(L, c, size); +} + + +/* +** Look for n-th local variable at line `line' in function `func'. +** Returns NULL if not found. +*/ +const char *luaF_getlocalname (const Proto *f, int local_number, int pc) { + int i; + for (i = 0; isizelocvars && f->locvars[i].startpc <= pc; i++) { + if (pc < f->locvars[i].endpc) { /* is variable active? */ + local_number--; + if (local_number == 0) + return getstr(f->locvars[i].varname); + } + } + return NULL; /* not found */ +} + diff --git a/lua-5.1.4/src/.svn/text-base/lfunc.h.svn-base b/lua-5.1.4/src/.svn/text-base/lfunc.h.svn-base new file mode 100644 index 0000000..a68cf51 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lfunc.h.svn-base @@ -0,0 +1,34 @@ +/* +** $Id: lfunc.h,v 2.4.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions to manipulate prototypes and closures +** See Copyright Notice in lua.h +*/ + +#ifndef lfunc_h +#define lfunc_h + + +#include "lobject.h" + + +#define sizeCclosure(n) (cast(int, sizeof(CClosure)) + \ + cast(int, sizeof(TValue)*((n)-1))) + +#define sizeLclosure(n) (cast(int, sizeof(LClosure)) + \ + cast(int, sizeof(TValue *)*((n)-1))) + + +LUAI_FUNC Proto *luaF_newproto (lua_State *L); +LUAI_FUNC Closure *luaF_newCclosure (lua_State *L, int nelems, Table *e); +LUAI_FUNC Closure *luaF_newLclosure (lua_State *L, int nelems, Table *e); +LUAI_FUNC UpVal *luaF_newupval (lua_State *L); +LUAI_FUNC UpVal *luaF_findupval (lua_State *L, StkId level); +LUAI_FUNC void luaF_close (lua_State *L, StkId level); +LUAI_FUNC void luaF_freeproto (lua_State *L, Proto *f); +LUAI_FUNC void luaF_freeclosure (lua_State *L, Closure *c); +LUAI_FUNC void luaF_freeupval (lua_State *L, UpVal *uv); +LUAI_FUNC const char *luaF_getlocalname (const Proto *func, int local_number, + int pc); + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lgc.c.svn-base b/lua-5.1.4/src/.svn/text-base/lgc.c.svn-base new file mode 100644 index 0000000..d9e0b78 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lgc.c.svn-base @@ -0,0 +1,711 @@ +/* +** $Id: lgc.c,v 2.38.1.1 2007/12/27 13:02:25 roberto Exp $ +** Garbage Collector +** See Copyright Notice in lua.h +*/ + +#include + +#define lgc_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" + + +#define GCSTEPSIZE 1024u +#define GCSWEEPMAX 40 +#define GCSWEEPCOST 10 +#define GCFINALIZECOST 100 + + +#define maskmarks cast_byte(~(bitmask(BLACKBIT)|WHITEBITS)) + +#define makewhite(g,x) \ + ((x)->gch.marked = cast_byte(((x)->gch.marked & maskmarks) | luaC_white(g))) + +#define white2gray(x) reset2bits((x)->gch.marked, WHITE0BIT, WHITE1BIT) +#define black2gray(x) resetbit((x)->gch.marked, BLACKBIT) + +#define stringmark(s) reset2bits((s)->tsv.marked, WHITE0BIT, WHITE1BIT) + + +#define isfinalized(u) testbit((u)->marked, FINALIZEDBIT) +#define markfinalized(u) l_setbit((u)->marked, FINALIZEDBIT) + + +#define KEYWEAK bitmask(KEYWEAKBIT) +#define VALUEWEAK bitmask(VALUEWEAKBIT) + + + +#define markvalue(g,o) { checkconsistency(o); \ + if (iscollectable(o) && iswhite(gcvalue(o))) reallymarkobject(g,gcvalue(o)); } + +#define markobject(g,t) { if (iswhite(obj2gco(t))) \ + reallymarkobject(g, obj2gco(t)); } + + +#define setthreshold(g) (g->GCthreshold = (g->estimate/100) * g->gcpause) + + +static void removeentry (Node *n) { + lua_assert(ttisnil(gval(n))); + if (iscollectable(gkey(n))) + setttype(gkey(n), LUA_TDEADKEY); /* dead key; remove it */ +} + + +static void reallymarkobject (global_State *g, GCObject *o) { + lua_assert(iswhite(o) && !isdead(g, o)); + white2gray(o); + switch (o->gch.tt) { + case LUA_TSTRING: { + return; + } + case LUA_TUSERDATA: { + Table *mt = gco2u(o)->metatable; + gray2black(o); /* udata are never gray */ + if (mt) markobject(g, mt); + markobject(g, gco2u(o)->env); + return; + } + case LUA_TUPVAL: { + UpVal *uv = gco2uv(o); + markvalue(g, uv->v); + if (uv->v == &uv->u.value) /* closed? */ + gray2black(o); /* open upvalues are never black */ + return; + } + case LUA_TFUNCTION: { + gco2cl(o)->c.gclist = g->gray; + g->gray = o; + break; + } + case LUA_TTABLE: { + gco2h(o)->gclist = g->gray; + g->gray = o; + break; + } + case LUA_TTHREAD: { + gco2th(o)->gclist = g->gray; + g->gray = o; + break; + } + case LUA_TPROTO: { + gco2p(o)->gclist = g->gray; + g->gray = o; + break; + } + default: lua_assert(0); + } +} + + +static void marktmu (global_State *g) { + GCObject *u = g->tmudata; + if (u) { + do { + u = u->gch.next; + makewhite(g, u); /* may be marked, if left from previous GC */ + reallymarkobject(g, u); + } while (u != g->tmudata); + } +} + + +/* move `dead' udata that need finalization to list `tmudata' */ +size_t luaC_separateudata (lua_State *L, int all) { + global_State *g = G(L); + size_t deadmem = 0; + GCObject **p = &g->mainthread->next; + GCObject *curr; + while ((curr = *p) != NULL) { + if (!(iswhite(curr) || all) || isfinalized(gco2u(curr))) + p = &curr->gch.next; /* don't bother with them */ + else if (fasttm(L, gco2u(curr)->metatable, TM_GC) == NULL) { + markfinalized(gco2u(curr)); /* don't need finalization */ + p = &curr->gch.next; + } + else { /* must call its gc method */ + deadmem += sizeudata(gco2u(curr)); + markfinalized(gco2u(curr)); + *p = curr->gch.next; + /* link `curr' at the end of `tmudata' list */ + if (g->tmudata == NULL) /* list is empty? */ + g->tmudata = curr->gch.next = curr; /* creates a circular list */ + else { + curr->gch.next = g->tmudata->gch.next; + g->tmudata->gch.next = curr; + g->tmudata = curr; + } + } + } + return deadmem; +} + + +static int traversetable (global_State *g, Table *h) { + int i; + int weakkey = 0; + int weakvalue = 0; + const TValue *mode; + if (h->metatable) + markobject(g, h->metatable); + mode = gfasttm(g, h->metatable, TM_MODE); + if (mode && ttisstring(mode)) { /* is there a weak mode? */ + weakkey = (strchr(svalue(mode), 'k') != NULL); + weakvalue = (strchr(svalue(mode), 'v') != NULL); + if (weakkey || weakvalue) { /* is really weak? */ + h->marked &= ~(KEYWEAK | VALUEWEAK); /* clear bits */ + h->marked |= cast_byte((weakkey << KEYWEAKBIT) | + (weakvalue << VALUEWEAKBIT)); + h->gclist = g->weak; /* must be cleared after GC, ... */ + g->weak = obj2gco(h); /* ... so put in the appropriate list */ + } + } + if (weakkey && weakvalue) return 1; + if (!weakvalue) { + i = h->sizearray; + while (i--) + markvalue(g, &h->array[i]); + } + i = sizenode(h); + while (i--) { + Node *n = gnode(h, i); + lua_assert(ttype(gkey(n)) != LUA_TDEADKEY || ttisnil(gval(n))); + if (ttisnil(gval(n))) + removeentry(n); /* remove empty entries */ + else { + lua_assert(!ttisnil(gkey(n))); + if (!weakkey) markvalue(g, gkey(n)); + if (!weakvalue) markvalue(g, gval(n)); + } + } + return weakkey || weakvalue; +} + + +/* +** All marks are conditional because a GC may happen while the +** prototype is still being created +*/ +static void traverseproto (global_State *g, Proto *f) { + int i; + if (f->source) stringmark(f->source); + for (i=0; isizek; i++) /* mark literals */ + markvalue(g, &f->k[i]); + for (i=0; isizeupvalues; i++) { /* mark upvalue names */ + if (f->upvalues[i]) + stringmark(f->upvalues[i]); + } + for (i=0; isizep; i++) { /* mark nested protos */ + if (f->p[i]) + markobject(g, f->p[i]); + } + for (i=0; isizelocvars; i++) { /* mark local-variable names */ + if (f->locvars[i].varname) + stringmark(f->locvars[i].varname); + } +} + + + +static void traverseclosure (global_State *g, Closure *cl) { + markobject(g, cl->c.env); + if (cl->c.isC) { + int i; + for (i=0; ic.nupvalues; i++) /* mark its upvalues */ + markvalue(g, &cl->c.upvalue[i]); + } + else { + int i; + lua_assert(cl->l.nupvalues == cl->l.p->nups); + markobject(g, cl->l.p); + for (i=0; il.nupvalues; i++) /* mark its upvalues */ + markobject(g, cl->l.upvals[i]); + } +} + + +static void checkstacksizes (lua_State *L, StkId max) { + int ci_used = cast_int(L->ci - L->base_ci); /* number of `ci' in use */ + int s_used = cast_int(max - L->stack); /* part of stack in use */ + if (L->size_ci > LUAI_MAXCALLS) /* handling overflow? */ + return; /* do not touch the stacks */ + if (4*ci_used < L->size_ci && 2*BASIC_CI_SIZE < L->size_ci) + luaD_reallocCI(L, L->size_ci/2); /* still big enough... */ + condhardstacktests(luaD_reallocCI(L, ci_used + 1)); + if (4*s_used < L->stacksize && + 2*(BASIC_STACK_SIZE+EXTRA_STACK) < L->stacksize) + luaD_reallocstack(L, L->stacksize/2); /* still big enough... */ + condhardstacktests(luaD_reallocstack(L, s_used)); +} + + +static void traversestack (global_State *g, lua_State *l) { + StkId o, lim; + CallInfo *ci; + markvalue(g, gt(l)); + lim = l->top; + for (ci = l->base_ci; ci <= l->ci; ci++) { + lua_assert(ci->top <= l->stack_last); + if (lim < ci->top) lim = ci->top; + } + for (o = l->stack; o < l->top; o++) + markvalue(g, o); + for (; o <= lim; o++) + setnilvalue(o); + checkstacksizes(l, lim); +} + + +/* +** traverse one gray object, turning it to black. +** Returns `quantity' traversed. +*/ +static l_mem propagatemark (global_State *g) { + GCObject *o = g->gray; + lua_assert(isgray(o)); + gray2black(o); + switch (o->gch.tt) { + case LUA_TTABLE: { + Table *h = gco2h(o); + g->gray = h->gclist; + if (traversetable(g, h)) /* table is weak? */ + black2gray(o); /* keep it gray */ + return sizeof(Table) + sizeof(TValue) * h->sizearray + + sizeof(Node) * sizenode(h); + } + case LUA_TFUNCTION: { + Closure *cl = gco2cl(o); + g->gray = cl->c.gclist; + traverseclosure(g, cl); + return (cl->c.isC) ? sizeCclosure(cl->c.nupvalues) : + sizeLclosure(cl->l.nupvalues); + } + case LUA_TTHREAD: { + lua_State *th = gco2th(o); + g->gray = th->gclist; + th->gclist = g->grayagain; + g->grayagain = o; + black2gray(o); + traversestack(g, th); + return sizeof(lua_State) + sizeof(TValue) * th->stacksize + + sizeof(CallInfo) * th->size_ci; + } + case LUA_TPROTO: { + Proto *p = gco2p(o); + g->gray = p->gclist; + traverseproto(g, p); + return sizeof(Proto) + sizeof(Instruction) * p->sizecode + + sizeof(Proto *) * p->sizep + + sizeof(TValue) * p->sizek + + sizeof(int) * p->sizelineinfo + + sizeof(LocVar) * p->sizelocvars + + sizeof(TString *) * p->sizeupvalues; + } + default: lua_assert(0); return 0; + } +} + + +static size_t propagateall (global_State *g) { + size_t m = 0; + while (g->gray) m += propagatemark(g); + return m; +} + + +/* +** The next function tells whether a key or value can be cleared from +** a weak table. Non-collectable objects are never removed from weak +** tables. Strings behave as `values', so are never removed too. for +** other objects: if really collected, cannot keep them; for userdata +** being finalized, keep them in keys, but not in values +*/ +static int iscleared (const TValue *o, int iskey) { + if (!iscollectable(o)) return 0; + if (ttisstring(o)) { + stringmark(rawtsvalue(o)); /* strings are `values', so are never weak */ + return 0; + } + return iswhite(gcvalue(o)) || + (ttisuserdata(o) && (!iskey && isfinalized(uvalue(o)))); +} + + +/* +** clear collected entries from weaktables +*/ +static void cleartable (GCObject *l) { + while (l) { + Table *h = gco2h(l); + int i = h->sizearray; + lua_assert(testbit(h->marked, VALUEWEAKBIT) || + testbit(h->marked, KEYWEAKBIT)); + if (testbit(h->marked, VALUEWEAKBIT)) { + while (i--) { + TValue *o = &h->array[i]; + if (iscleared(o, 0)) /* value was collected? */ + setnilvalue(o); /* remove value */ + } + } + i = sizenode(h); + while (i--) { + Node *n = gnode(h, i); + if (!ttisnil(gval(n)) && /* non-empty entry? */ + (iscleared(key2tval(n), 1) || iscleared(gval(n), 0))) { + setnilvalue(gval(n)); /* remove value ... */ + removeentry(n); /* remove entry from table */ + } + } + l = h->gclist; + } +} + + +static void freeobj (lua_State *L, GCObject *o) { + switch (o->gch.tt) { + case LUA_TPROTO: luaF_freeproto(L, gco2p(o)); break; + case LUA_TFUNCTION: luaF_freeclosure(L, gco2cl(o)); break; + case LUA_TUPVAL: luaF_freeupval(L, gco2uv(o)); break; + case LUA_TTABLE: luaH_free(L, gco2h(o)); break; + case LUA_TTHREAD: { + lua_assert(gco2th(o) != L && gco2th(o) != G(L)->mainthread); + luaE_freethread(L, gco2th(o)); + break; + } + case LUA_TSTRING: { + G(L)->strt.nuse--; + luaM_freemem(L, o, sizestring(gco2ts(o))); + break; + } + case LUA_TUSERDATA: { + luaM_freemem(L, o, sizeudata(gco2u(o))); + break; + } + default: lua_assert(0); + } +} + + + +#define sweepwholelist(L,p) sweeplist(L,p,MAX_LUMEM) + + +static GCObject **sweeplist (lua_State *L, GCObject **p, lu_mem count) { + GCObject *curr; + global_State *g = G(L); + int deadmask = otherwhite(g); + while ((curr = *p) != NULL && count-- > 0) { + if (curr->gch.tt == LUA_TTHREAD) /* sweep open upvalues of each thread */ + sweepwholelist(L, &gco2th(curr)->openupval); + if ((curr->gch.marked ^ WHITEBITS) & deadmask) { /* not dead? */ + lua_assert(!isdead(g, curr) || testbit(curr->gch.marked, FIXEDBIT)); + makewhite(g, curr); /* make it white (for next cycle) */ + p = &curr->gch.next; + } + else { /* must erase `curr' */ + lua_assert(isdead(g, curr) || deadmask == bitmask(SFIXEDBIT)); + *p = curr->gch.next; + if (curr == g->rootgc) /* is the first element of the list? */ + g->rootgc = curr->gch.next; /* adjust first */ + freeobj(L, curr); + } + } + return p; +} + + +static void checkSizes (lua_State *L) { + global_State *g = G(L); + /* check size of string hash */ + if (g->strt.nuse < cast(lu_int32, g->strt.size/4) && + g->strt.size > MINSTRTABSIZE*2) + luaS_resize(L, g->strt.size/2); /* table is too big */ + /* check size of buffer */ + if (luaZ_sizebuffer(&g->buff) > LUA_MINBUFFER*2) { /* buffer too big? */ + size_t newsize = luaZ_sizebuffer(&g->buff) / 2; + luaZ_resizebuffer(L, &g->buff, newsize); + } +} + + +static void GCTM (lua_State *L) { + global_State *g = G(L); + GCObject *o = g->tmudata->gch.next; /* get first element */ + Udata *udata = rawgco2u(o); + const TValue *tm; + /* remove udata from `tmudata' */ + if (o == g->tmudata) /* last element? */ + g->tmudata = NULL; + else + g->tmudata->gch.next = udata->uv.next; + udata->uv.next = g->mainthread->next; /* return it to `root' list */ + g->mainthread->next = o; + makewhite(g, o); + tm = fasttm(L, udata->uv.metatable, TM_GC); + if (tm != NULL) { + lu_byte oldah = L->allowhook; + lu_mem oldt = g->GCthreshold; + L->allowhook = 0; /* stop debug hooks during GC tag method */ + g->GCthreshold = 2*g->totalbytes; /* avoid GC steps */ + setobj2s(L, L->top, tm); + setuvalue(L, L->top+1, udata); + L->top += 2; + luaD_call(L, L->top - 2, 0); + L->allowhook = oldah; /* restore hooks */ + g->GCthreshold = oldt; /* restore threshold */ + } +} + + +/* +** Call all GC tag methods +*/ +void luaC_callGCTM (lua_State *L) { + while (G(L)->tmudata) + GCTM(L); +} + + +void luaC_freeall (lua_State *L) { + global_State *g = G(L); + int i; + g->currentwhite = WHITEBITS | bitmask(SFIXEDBIT); /* mask to collect all elements */ + sweepwholelist(L, &g->rootgc); + for (i = 0; i < g->strt.size; i++) /* free all string lists */ + sweepwholelist(L, &g->strt.hash[i]); +} + + +static void markmt (global_State *g) { + int i; + for (i=0; imt[i]) markobject(g, g->mt[i]); +} + + +/* mark root set */ +static void markroot (lua_State *L) { + global_State *g = G(L); + g->gray = NULL; + g->grayagain = NULL; + g->weak = NULL; + markobject(g, g->mainthread); + /* make global table be traversed before main stack */ + markvalue(g, gt(g->mainthread)); + markvalue(g, registry(L)); + markmt(g); + g->gcstate = GCSpropagate; +} + + +static void remarkupvals (global_State *g) { + UpVal *uv; + for (uv = g->uvhead.u.l.next; uv != &g->uvhead; uv = uv->u.l.next) { + lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); + if (isgray(obj2gco(uv))) + markvalue(g, uv->v); + } +} + + +static void atomic (lua_State *L) { + global_State *g = G(L); + size_t udsize; /* total size of userdata to be finalized */ + /* remark occasional upvalues of (maybe) dead threads */ + remarkupvals(g); + /* traverse objects cautch by write barrier and by 'remarkupvals' */ + propagateall(g); + /* remark weak tables */ + g->gray = g->weak; + g->weak = NULL; + lua_assert(!iswhite(obj2gco(g->mainthread))); + markobject(g, L); /* mark running thread */ + markmt(g); /* mark basic metatables (again) */ + propagateall(g); + /* remark gray again */ + g->gray = g->grayagain; + g->grayagain = NULL; + propagateall(g); + udsize = luaC_separateudata(L, 0); /* separate userdata to be finalized */ + marktmu(g); /* mark `preserved' userdata */ + udsize += propagateall(g); /* remark, to propagate `preserveness' */ + cleartable(g->weak); /* remove collected objects from weak tables */ + /* flip current white */ + g->currentwhite = cast_byte(otherwhite(g)); + g->sweepstrgc = 0; + g->sweepgc = &g->rootgc; + g->gcstate = GCSsweepstring; + g->estimate = g->totalbytes - udsize; /* first estimate */ +} + + +static l_mem singlestep (lua_State *L) { + global_State *g = G(L); + /*lua_checkmemory(L);*/ + switch (g->gcstate) { + case GCSpause: { + markroot(L); /* start a new collection */ + return 0; + } + case GCSpropagate: { + if (g->gray) + return propagatemark(g); + else { /* no more `gray' objects */ + atomic(L); /* finish mark phase */ + return 0; + } + } + case GCSsweepstring: { + lu_mem old = g->totalbytes; + sweepwholelist(L, &g->strt.hash[g->sweepstrgc++]); + if (g->sweepstrgc >= g->strt.size) /* nothing more to sweep? */ + g->gcstate = GCSsweep; /* end sweep-string phase */ + lua_assert(old >= g->totalbytes); + g->estimate -= old - g->totalbytes; + return GCSWEEPCOST; + } + case GCSsweep: { + lu_mem old = g->totalbytes; + g->sweepgc = sweeplist(L, g->sweepgc, GCSWEEPMAX); + if (*g->sweepgc == NULL) { /* nothing more to sweep? */ + checkSizes(L); + g->gcstate = GCSfinalize; /* end sweep phase */ + } + lua_assert(old >= g->totalbytes); + g->estimate -= old - g->totalbytes; + return GCSWEEPMAX*GCSWEEPCOST; + } + case GCSfinalize: { + if (g->tmudata) { + GCTM(L); + if (g->estimate > GCFINALIZECOST) + g->estimate -= GCFINALIZECOST; + return GCFINALIZECOST; + } + else { + g->gcstate = GCSpause; /* end collection */ + g->gcdept = 0; + return 0; + } + } + default: lua_assert(0); return 0; + } +} + + +void luaC_step (lua_State *L) { + global_State *g = G(L); + l_mem lim = (GCSTEPSIZE/100) * g->gcstepmul; + if (lim == 0) + lim = (MAX_LUMEM-1)/2; /* no limit */ + g->gcdept += g->totalbytes - g->GCthreshold; + do { + lim -= singlestep(L); + if (g->gcstate == GCSpause) + break; + } while (lim > 0); + if (g->gcstate != GCSpause) { + if (g->gcdept < GCSTEPSIZE) + g->GCthreshold = g->totalbytes + GCSTEPSIZE; /* - lim/g->gcstepmul;*/ + else { + g->gcdept -= GCSTEPSIZE; + g->GCthreshold = g->totalbytes; + } + } + else { + lua_assert(g->totalbytes >= g->estimate); + setthreshold(g); + } +} + + +void luaC_fullgc (lua_State *L) { + global_State *g = G(L); + if (g->gcstate <= GCSpropagate) { + /* reset sweep marks to sweep all elements (returning them to white) */ + g->sweepstrgc = 0; + g->sweepgc = &g->rootgc; + /* reset other collector lists */ + g->gray = NULL; + g->grayagain = NULL; + g->weak = NULL; + g->gcstate = GCSsweepstring; + } + lua_assert(g->gcstate != GCSpause && g->gcstate != GCSpropagate); + /* finish any pending sweep phase */ + while (g->gcstate != GCSfinalize) { + lua_assert(g->gcstate == GCSsweepstring || g->gcstate == GCSsweep); + singlestep(L); + } + markroot(L); + while (g->gcstate != GCSpause) { + singlestep(L); + } + setthreshold(g); +} + + +void luaC_barrierf (lua_State *L, GCObject *o, GCObject *v) { + global_State *g = G(L); + lua_assert(isblack(o) && iswhite(v) && !isdead(g, v) && !isdead(g, o)); + lua_assert(g->gcstate != GCSfinalize && g->gcstate != GCSpause); + lua_assert(ttype(&o->gch) != LUA_TTABLE); + /* must keep invariant? */ + if (g->gcstate == GCSpropagate) + reallymarkobject(g, v); /* restore invariant */ + else /* don't mind */ + makewhite(g, o); /* mark as white just to avoid other barriers */ +} + + +void luaC_barrierback (lua_State *L, Table *t) { + global_State *g = G(L); + GCObject *o = obj2gco(t); + lua_assert(isblack(o) && !isdead(g, o)); + lua_assert(g->gcstate != GCSfinalize && g->gcstate != GCSpause); + black2gray(o); /* make table gray (again) */ + t->gclist = g->grayagain; + g->grayagain = o; +} + + +void luaC_link (lua_State *L, GCObject *o, lu_byte tt) { + global_State *g = G(L); + o->gch.next = g->rootgc; + g->rootgc = o; + o->gch.marked = luaC_white(g); + o->gch.tt = tt; +} + + +void luaC_linkupval (lua_State *L, UpVal *uv) { + global_State *g = G(L); + GCObject *o = obj2gco(uv); + o->gch.next = g->rootgc; /* link upvalue into `rootgc' list */ + g->rootgc = o; + if (isgray(o)) { + if (g->gcstate == GCSpropagate) { + gray2black(o); /* closed upvalues need barrier */ + luaC_barrier(L, uv, uv->v); + } + else { /* sweep phase: sweep it (turning it into white) */ + makewhite(g, o); + lua_assert(g->gcstate != GCSfinalize && g->gcstate != GCSpause); + } + } +} + diff --git a/lua-5.1.4/src/.svn/text-base/lgc.h.svn-base b/lua-5.1.4/src/.svn/text-base/lgc.h.svn-base new file mode 100644 index 0000000..5a8dc60 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lgc.h.svn-base @@ -0,0 +1,110 @@ +/* +** $Id: lgc.h,v 2.15.1.1 2007/12/27 13:02:25 roberto Exp $ +** Garbage Collector +** See Copyright Notice in lua.h +*/ + +#ifndef lgc_h +#define lgc_h + + +#include "lobject.h" + + +/* +** Possible states of the Garbage Collector +*/ +#define GCSpause 0 +#define GCSpropagate 1 +#define GCSsweepstring 2 +#define GCSsweep 3 +#define GCSfinalize 4 + + +/* +** some userful bit tricks +*/ +#define resetbits(x,m) ((x) &= cast(lu_byte, ~(m))) +#define setbits(x,m) ((x) |= (m)) +#define testbits(x,m) ((x) & (m)) +#define bitmask(b) (1<<(b)) +#define bit2mask(b1,b2) (bitmask(b1) | bitmask(b2)) +#define l_setbit(x,b) setbits(x, bitmask(b)) +#define resetbit(x,b) resetbits(x, bitmask(b)) +#define testbit(x,b) testbits(x, bitmask(b)) +#define set2bits(x,b1,b2) setbits(x, (bit2mask(b1, b2))) +#define reset2bits(x,b1,b2) resetbits(x, (bit2mask(b1, b2))) +#define test2bits(x,b1,b2) testbits(x, (bit2mask(b1, b2))) + + + +/* +** Layout for bit use in `marked' field: +** bit 0 - object is white (type 0) +** bit 1 - object is white (type 1) +** bit 2 - object is black +** bit 3 - for userdata: has been finalized +** bit 3 - for tables: has weak keys +** bit 4 - for tables: has weak values +** bit 5 - object is fixed (should not be collected) +** bit 6 - object is "super" fixed (only the main thread) +*/ + + +#define WHITE0BIT 0 +#define WHITE1BIT 1 +#define BLACKBIT 2 +#define FINALIZEDBIT 3 +#define KEYWEAKBIT 3 +#define VALUEWEAKBIT 4 +#define FIXEDBIT 5 +#define SFIXEDBIT 6 +#define WHITEBITS bit2mask(WHITE0BIT, WHITE1BIT) + + +#define iswhite(x) test2bits((x)->gch.marked, WHITE0BIT, WHITE1BIT) +#define isblack(x) testbit((x)->gch.marked, BLACKBIT) +#define isgray(x) (!isblack(x) && !iswhite(x)) + +#define otherwhite(g) (g->currentwhite ^ WHITEBITS) +#define isdead(g,v) ((v)->gch.marked & otherwhite(g) & WHITEBITS) + +#define changewhite(x) ((x)->gch.marked ^= WHITEBITS) +#define gray2black(x) l_setbit((x)->gch.marked, BLACKBIT) + +#define valiswhite(x) (iscollectable(x) && iswhite(gcvalue(x))) + +#define luaC_white(g) cast(lu_byte, (g)->currentwhite & WHITEBITS) + + +#define luaC_checkGC(L) { \ + condhardstacktests(luaD_reallocstack(L, L->stacksize - EXTRA_STACK - 1)); \ + if (G(L)->totalbytes >= G(L)->GCthreshold) \ + luaC_step(L); } + + +#define luaC_barrier(L,p,v) { if (valiswhite(v) && isblack(obj2gco(p))) \ + luaC_barrierf(L,obj2gco(p),gcvalue(v)); } + +#define luaC_barriert(L,t,v) { if (valiswhite(v) && isblack(obj2gco(t))) \ + luaC_barrierback(L,t); } + +#define luaC_objbarrier(L,p,o) \ + { if (iswhite(obj2gco(o)) && isblack(obj2gco(p))) \ + luaC_barrierf(L,obj2gco(p),obj2gco(o)); } + +#define luaC_objbarriert(L,t,o) \ + { if (iswhite(obj2gco(o)) && isblack(obj2gco(t))) luaC_barrierback(L,t); } + +LUAI_FUNC size_t luaC_separateudata (lua_State *L, int all); +LUAI_FUNC void luaC_callGCTM (lua_State *L); +LUAI_FUNC void luaC_freeall (lua_State *L); +LUAI_FUNC void luaC_step (lua_State *L); +LUAI_FUNC void luaC_fullgc (lua_State *L); +LUAI_FUNC void luaC_link (lua_State *L, GCObject *o, lu_byte tt); +LUAI_FUNC void luaC_linkupval (lua_State *L, UpVal *uv); +LUAI_FUNC void luaC_barrierf (lua_State *L, GCObject *o, GCObject *v); +LUAI_FUNC void luaC_barrierback (lua_State *L, Table *t); + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/linit.c.svn-base b/lua-5.1.4/src/.svn/text-base/linit.c.svn-base new file mode 100644 index 0000000..c1f90df --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/linit.c.svn-base @@ -0,0 +1,38 @@ +/* +** $Id: linit.c,v 1.14.1.1 2007/12/27 13:02:25 roberto Exp $ +** Initialization of libraries for lua.c +** See Copyright Notice in lua.h +*/ + + +#define linit_c +#define LUA_LIB + +#include "lua.h" + +#include "lualib.h" +#include "lauxlib.h" + + +static const luaL_Reg lualibs[] = { + {"", luaopen_base}, + {LUA_LOADLIBNAME, luaopen_package}, + {LUA_TABLIBNAME, luaopen_table}, + {LUA_IOLIBNAME, luaopen_io}, + {LUA_OSLIBNAME, luaopen_os}, + {LUA_STRLIBNAME, luaopen_string}, + {LUA_MATHLIBNAME, luaopen_math}, + {LUA_DBLIBNAME, luaopen_debug}, + {NULL, NULL} +}; + + +LUALIB_API void luaL_openlibs (lua_State *L) { + const luaL_Reg *lib = lualibs; + for (; lib->func; lib++) { + lua_pushcfunction(L, lib->func); + lua_pushstring(L, lib->name); + lua_call(L, 1, 0); + } +} + diff --git a/lua-5.1.4/src/.svn/text-base/liolib.c.svn-base b/lua-5.1.4/src/.svn/text-base/liolib.c.svn-base new file mode 100644 index 0000000..e79ed1c --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/liolib.c.svn-base @@ -0,0 +1,553 @@ +/* +** $Id: liolib.c,v 2.73.1.3 2008/01/18 17:47:43 roberto Exp $ +** Standard I/O (and system) library +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include + +#define liolib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + +#define IO_INPUT 1 +#define IO_OUTPUT 2 + + +static const char *const fnames[] = {"input", "output"}; + + +static int pushresult (lua_State *L, int i, const char *filename) { + int en = errno; /* calls to Lua API may change this value */ + if (i) { + lua_pushboolean(L, 1); + return 1; + } + else { + lua_pushnil(L); + if (filename) + lua_pushfstring(L, "%s: %s", filename, strerror(en)); + else + lua_pushfstring(L, "%s", strerror(en)); + lua_pushinteger(L, en); + return 3; + } +} + + +static void fileerror (lua_State *L, int arg, const char *filename) { + lua_pushfstring(L, "%s: %s", filename, strerror(errno)); + luaL_argerror(L, arg, lua_tostring(L, -1)); +} + + +#define tofilep(L) ((FILE **)luaL_checkudata(L, 1, LUA_FILEHANDLE)) + + +static int io_type (lua_State *L) { + void *ud; + luaL_checkany(L, 1); + ud = lua_touserdata(L, 1); + lua_getfield(L, LUA_REGISTRYINDEX, LUA_FILEHANDLE); + if (ud == NULL || !lua_getmetatable(L, 1) || !lua_rawequal(L, -2, -1)) + lua_pushnil(L); /* not a file */ + else if (*((FILE **)ud) == NULL) + lua_pushliteral(L, "closed file"); + else + lua_pushliteral(L, "file"); + return 1; +} + + +static FILE *tofile (lua_State *L) { + FILE **f = tofilep(L); + if (*f == NULL) + luaL_error(L, "attempt to use a closed file"); + return *f; +} + + + +/* +** When creating file handles, always creates a `closed' file handle +** before opening the actual file; so, if there is a memory error, the +** file is not left opened. +*/ +static FILE **newfile (lua_State *L) { + FILE **pf = (FILE **)lua_newuserdata(L, sizeof(FILE *)); + *pf = NULL; /* file handle is currently `closed' */ + luaL_getmetatable(L, LUA_FILEHANDLE); + lua_setmetatable(L, -2); + return pf; +} + + +/* +** function to (not) close the standard files stdin, stdout, and stderr +*/ +static int io_noclose (lua_State *L) { + lua_pushnil(L); + lua_pushliteral(L, "cannot close standard file"); + return 2; +} + + +/* +** function to close 'popen' files +*/ +static int io_pclose (lua_State *L) { + FILE **p = tofilep(L); + int ok = lua_pclose(L, *p); + *p = NULL; + return pushresult(L, ok, NULL); +} + + +/* +** function to close regular files +*/ +static int io_fclose (lua_State *L) { + FILE **p = tofilep(L); + int ok = (fclose(*p) == 0); + *p = NULL; + return pushresult(L, ok, NULL); +} + + +static int aux_close (lua_State *L) { + lua_getfenv(L, 1); + lua_getfield(L, -1, "__close"); + return (lua_tocfunction(L, -1))(L); +} + + +static int io_close (lua_State *L) { + if (lua_isnone(L, 1)) + lua_rawgeti(L, LUA_ENVIRONINDEX, IO_OUTPUT); + tofile(L); /* make sure argument is a file */ + return aux_close(L); +} + + +static int io_gc (lua_State *L) { + FILE *f = *tofilep(L); + /* ignore closed files */ + if (f != NULL) + aux_close(L); + return 0; +} + + +static int io_tostring (lua_State *L) { + FILE *f = *tofilep(L); + if (f == NULL) + lua_pushliteral(L, "file (closed)"); + else + lua_pushfstring(L, "file (%p)", f); + return 1; +} + + +static int io_open (lua_State *L) { + const char *filename = luaL_checkstring(L, 1); + const char *mode = luaL_optstring(L, 2, "r"); + FILE **pf = newfile(L); + *pf = fopen(filename, mode); + return (*pf == NULL) ? pushresult(L, 0, filename) : 1; +} + + +/* +** this function has a separated environment, which defines the +** correct __close for 'popen' files +*/ +static int io_popen (lua_State *L) { + const char *filename = luaL_checkstring(L, 1); + const char *mode = luaL_optstring(L, 2, "r"); + FILE **pf = newfile(L); + *pf = lua_popen(L, filename, mode); + return (*pf == NULL) ? pushresult(L, 0, filename) : 1; +} + + +static int io_tmpfile (lua_State *L) { + FILE **pf = newfile(L); + *pf = tmpfile(); + return (*pf == NULL) ? pushresult(L, 0, NULL) : 1; +} + + +static FILE *getiofile (lua_State *L, int findex) { + FILE *f; + lua_rawgeti(L, LUA_ENVIRONINDEX, findex); + f = *(FILE **)lua_touserdata(L, -1); + if (f == NULL) + luaL_error(L, "standard %s file is closed", fnames[findex - 1]); + return f; +} + + +static int g_iofile (lua_State *L, int f, const char *mode) { + if (!lua_isnoneornil(L, 1)) { + const char *filename = lua_tostring(L, 1); + if (filename) { + FILE **pf = newfile(L); + *pf = fopen(filename, mode); + if (*pf == NULL) + fileerror(L, 1, filename); + } + else { + tofile(L); /* check that it's a valid file handle */ + lua_pushvalue(L, 1); + } + lua_rawseti(L, LUA_ENVIRONINDEX, f); + } + /* return current value */ + lua_rawgeti(L, LUA_ENVIRONINDEX, f); + return 1; +} + + +static int io_input (lua_State *L) { + return g_iofile(L, IO_INPUT, "r"); +} + + +static int io_output (lua_State *L) { + return g_iofile(L, IO_OUTPUT, "w"); +} + + +static int io_readline (lua_State *L); + + +static void aux_lines (lua_State *L, int idx, int toclose) { + lua_pushvalue(L, idx); + lua_pushboolean(L, toclose); /* close/not close file when finished */ + lua_pushcclosure(L, io_readline, 2); +} + + +static int f_lines (lua_State *L) { + tofile(L); /* check that it's a valid file handle */ + aux_lines(L, 1, 0); + return 1; +} + + +static int io_lines (lua_State *L) { + if (lua_isnoneornil(L, 1)) { /* no arguments? */ + /* will iterate over default input */ + lua_rawgeti(L, LUA_ENVIRONINDEX, IO_INPUT); + return f_lines(L); + } + else { + const char *filename = luaL_checkstring(L, 1); + FILE **pf = newfile(L); + *pf = fopen(filename, "r"); + if (*pf == NULL) + fileerror(L, 1, filename); + aux_lines(L, lua_gettop(L), 1); + return 1; + } +} + + +/* +** {====================================================== +** READ +** ======================================================= +*/ + + +static int read_number (lua_State *L, FILE *f) { + lua_Number d; + if (fscanf(f, LUA_NUMBER_SCAN, &d) == 1) { + lua_pushnumber(L, d); + return 1; + } + else return 0; /* read fails */ +} + + +static int test_eof (lua_State *L, FILE *f) { + int c = getc(f); + ungetc(c, f); + lua_pushlstring(L, NULL, 0); + return (c != EOF); +} + + +static int read_line (lua_State *L, FILE *f) { + luaL_Buffer b; + luaL_buffinit(L, &b); + for (;;) { + size_t l; + char *p = luaL_prepbuffer(&b); + if (fgets(p, LUAL_BUFFERSIZE, f) == NULL) { /* eof? */ + luaL_pushresult(&b); /* close buffer */ + return (lua_objlen(L, -1) > 0); /* check whether read something */ + } + l = strlen(p); + if (l == 0 || p[l-1] != '\n') + luaL_addsize(&b, l); + else { + luaL_addsize(&b, l - 1); /* do not include `eol' */ + luaL_pushresult(&b); /* close buffer */ + return 1; /* read at least an `eol' */ + } + } +} + + +static int read_chars (lua_State *L, FILE *f, size_t n) { + size_t rlen; /* how much to read */ + size_t nr; /* number of chars actually read */ + luaL_Buffer b; + luaL_buffinit(L, &b); + rlen = LUAL_BUFFERSIZE; /* try to read that much each time */ + do { + char *p = luaL_prepbuffer(&b); + if (rlen > n) rlen = n; /* cannot read more than asked */ + nr = fread(p, sizeof(char), rlen, f); + luaL_addsize(&b, nr); + n -= nr; /* still have to read `n' chars */ + } while (n > 0 && nr == rlen); /* until end of count or eof */ + luaL_pushresult(&b); /* close buffer */ + return (n == 0 || lua_objlen(L, -1) > 0); +} + + +static int g_read (lua_State *L, FILE *f, int first) { + int nargs = lua_gettop(L) - 1; + int success; + int n; + clearerr(f); + if (nargs == 0) { /* no arguments? */ + success = read_line(L, f); + n = first+1; /* to return 1 result */ + } + else { /* ensure stack space for all results and for auxlib's buffer */ + luaL_checkstack(L, nargs+LUA_MINSTACK, "too many arguments"); + success = 1; + for (n = first; nargs-- && success; n++) { + if (lua_type(L, n) == LUA_TNUMBER) { + size_t l = (size_t)lua_tointeger(L, n); + success = (l == 0) ? test_eof(L, f) : read_chars(L, f, l); + } + else { + const char *p = lua_tostring(L, n); + luaL_argcheck(L, p && p[0] == '*', n, "invalid option"); + switch (p[1]) { + case 'n': /* number */ + success = read_number(L, f); + break; + case 'l': /* line */ + success = read_line(L, f); + break; + case 'a': /* file */ + read_chars(L, f, ~((size_t)0)); /* read MAX_SIZE_T chars */ + success = 1; /* always success */ + break; + default: + return luaL_argerror(L, n, "invalid format"); + } + } + } + } + if (ferror(f)) + return pushresult(L, 0, NULL); + if (!success) { + lua_pop(L, 1); /* remove last result */ + lua_pushnil(L); /* push nil instead */ + } + return n - first; +} + + +static int io_read (lua_State *L) { + return g_read(L, getiofile(L, IO_INPUT), 1); +} + + +static int f_read (lua_State *L) { + return g_read(L, tofile(L), 2); +} + + +static int io_readline (lua_State *L) { + FILE *f = *(FILE **)lua_touserdata(L, lua_upvalueindex(1)); + int sucess; + if (f == NULL) /* file is already closed? */ + luaL_error(L, "file is already closed"); + sucess = read_line(L, f); + if (ferror(f)) + return luaL_error(L, "%s", strerror(errno)); + if (sucess) return 1; + else { /* EOF */ + if (lua_toboolean(L, lua_upvalueindex(2))) { /* generator created file? */ + lua_settop(L, 0); + lua_pushvalue(L, lua_upvalueindex(1)); + aux_close(L); /* close it */ + } + return 0; + } +} + +/* }====================================================== */ + + +static int g_write (lua_State *L, FILE *f, int arg) { + int nargs = lua_gettop(L) - 1; + int status = 1; + for (; nargs--; arg++) { + if (lua_type(L, arg) == LUA_TNUMBER) { + /* optimization: could be done exactly as for strings */ + status = status && + fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg)) > 0; + } + else { + size_t l; + const char *s = luaL_checklstring(L, arg, &l); + status = status && (fwrite(s, sizeof(char), l, f) == l); + } + } + return pushresult(L, status, NULL); +} + + +static int io_write (lua_State *L) { + return g_write(L, getiofile(L, IO_OUTPUT), 1); +} + + +static int f_write (lua_State *L) { + return g_write(L, tofile(L), 2); +} + + +static int f_seek (lua_State *L) { + static const int mode[] = {SEEK_SET, SEEK_CUR, SEEK_END}; + static const char *const modenames[] = {"set", "cur", "end", NULL}; + FILE *f = tofile(L); + int op = luaL_checkoption(L, 2, "cur", modenames); + long offset = luaL_optlong(L, 3, 0); + op = fseek(f, offset, mode[op]); + if (op) + return pushresult(L, 0, NULL); /* error */ + else { + lua_pushinteger(L, ftell(f)); + return 1; + } +} + + +static int f_setvbuf (lua_State *L) { + static const int mode[] = {_IONBF, _IOFBF, _IOLBF}; + static const char *const modenames[] = {"no", "full", "line", NULL}; + FILE *f = tofile(L); + int op = luaL_checkoption(L, 2, NULL, modenames); + lua_Integer sz = luaL_optinteger(L, 3, LUAL_BUFFERSIZE); + int res = setvbuf(f, NULL, mode[op], sz); + return pushresult(L, res == 0, NULL); +} + + + +static int io_flush (lua_State *L) { + return pushresult(L, fflush(getiofile(L, IO_OUTPUT)) == 0, NULL); +} + + +static int f_flush (lua_State *L) { + return pushresult(L, fflush(tofile(L)) == 0, NULL); +} + + +static const luaL_Reg iolib[] = { + {"close", io_close}, + {"flush", io_flush}, + {"input", io_input}, + {"lines", io_lines}, + {"open", io_open}, + {"output", io_output}, + {"popen", io_popen}, + {"read", io_read}, + {"tmpfile", io_tmpfile}, + {"type", io_type}, + {"write", io_write}, + {NULL, NULL} +}; + + +static const luaL_Reg flib[] = { + {"close", io_close}, + {"flush", f_flush}, + {"lines", f_lines}, + {"read", f_read}, + {"seek", f_seek}, + {"setvbuf", f_setvbuf}, + {"write", f_write}, + {"__gc", io_gc}, + {"__tostring", io_tostring}, + {NULL, NULL} +}; + + +static void createmeta (lua_State *L) { + luaL_newmetatable(L, LUA_FILEHANDLE); /* create metatable for file handles */ + lua_pushvalue(L, -1); /* push metatable */ + lua_setfield(L, -2, "__index"); /* metatable.__index = metatable */ + luaL_register(L, NULL, flib); /* file methods */ +} + + +static void createstdfile (lua_State *L, FILE *f, int k, const char *fname) { + *newfile(L) = f; + if (k > 0) { + lua_pushvalue(L, -1); + lua_rawseti(L, LUA_ENVIRONINDEX, k); + } + lua_pushvalue(L, -2); /* copy environment */ + lua_setfenv(L, -2); /* set it */ + lua_setfield(L, -3, fname); +} + + +static void newfenv (lua_State *L, lua_CFunction cls) { + lua_createtable(L, 0, 1); + lua_pushcfunction(L, cls); + lua_setfield(L, -2, "__close"); +} + + +LUALIB_API int luaopen_io (lua_State *L) { + createmeta(L); + /* create (private) environment (with fields IO_INPUT, IO_OUTPUT, __close) */ + newfenv(L, io_fclose); + lua_replace(L, LUA_ENVIRONINDEX); + /* open library */ + luaL_register(L, LUA_IOLIBNAME, iolib); + /* create (and set) default files */ + newfenv(L, io_noclose); /* close function for default files */ + createstdfile(L, stdin, IO_INPUT, "stdin"); + createstdfile(L, stdout, IO_OUTPUT, "stdout"); + createstdfile(L, stderr, 0, "stderr"); + lua_pop(L, 1); /* pop environment for default files */ + lua_getfield(L, -1, "popen"); + newfenv(L, io_pclose); /* create environment for 'popen' */ + lua_setfenv(L, -2); /* set fenv for 'popen' */ + lua_pop(L, 1); /* pop 'popen' */ + return 1; +} + diff --git a/lua-5.1.4/src/.svn/text-base/llex.c.svn-base b/lua-5.1.4/src/.svn/text-base/llex.c.svn-base new file mode 100644 index 0000000..6dc3193 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/llex.c.svn-base @@ -0,0 +1,461 @@ +/* +** $Id: llex.c,v 2.20.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lexical Analyzer +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define llex_c +#define LUA_CORE + +#include "lua.h" + +#include "ldo.h" +#include "llex.h" +#include "lobject.h" +#include "lparser.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "lzio.h" + + + +#define next(ls) (ls->current = zgetc(ls->z)) + + + + +#define currIsNewline(ls) (ls->current == '\n' || ls->current == '\r') + + +/* ORDER RESERVED */ +const char *const luaX_tokens [] = { + "and", "break", "do", "else", "elseif", + "end", "false", "for", "function", "if", + "in", "local", "nil", "not", "or", "repeat", + "return", "then", "true", "until", "while", + "..", "...", "==", ">=", "<=", "~=", + "", "", "", "", + NULL +}; + + +#define save_and_next(ls) (save(ls, ls->current), next(ls)) + + +static void save (LexState *ls, int c) { + Mbuffer *b = ls->buff; + if (b->n + 1 > b->buffsize) { + size_t newsize; + if (b->buffsize >= MAX_SIZET/2) + luaX_lexerror(ls, "lexical element too long", 0); + newsize = b->buffsize * 2; + luaZ_resizebuffer(ls->L, b, newsize); + } + b->buffer[b->n++] = cast(char, c); +} + + +void luaX_init (lua_State *L) { + int i; + for (i=0; itsv.reserved = cast_byte(i+1); /* reserved word */ + } +} + + +#define MAXSRC 80 + + +const char *luaX_token2str (LexState *ls, int token) { + if (token < FIRST_RESERVED) { + lua_assert(token == cast(unsigned char, token)); + return (iscntrl(token)) ? luaO_pushfstring(ls->L, "char(%d)", token) : + luaO_pushfstring(ls->L, "%c", token); + } + else + return luaX_tokens[token-FIRST_RESERVED]; +} + + +static const char *txtToken (LexState *ls, int token) { + switch (token) { + case TK_NAME: + case TK_STRING: + case TK_NUMBER: + save(ls, '\0'); + return luaZ_buffer(ls->buff); + default: + return luaX_token2str(ls, token); + } +} + + +void luaX_lexerror (LexState *ls, const char *msg, int token) { + char buff[MAXSRC]; + luaO_chunkid(buff, getstr(ls->source), MAXSRC); + msg = luaO_pushfstring(ls->L, "%s:%d: %s", buff, ls->linenumber, msg); + if (token) + luaO_pushfstring(ls->L, "%s near " LUA_QS, msg, txtToken(ls, token)); + luaD_throw(ls->L, LUA_ERRSYNTAX); +} + + +void luaX_syntaxerror (LexState *ls, const char *msg) { + luaX_lexerror(ls, msg, ls->t.token); +} + + +TString *luaX_newstring (LexState *ls, const char *str, size_t l) { + lua_State *L = ls->L; + TString *ts = luaS_newlstr(L, str, l); + TValue *o = luaH_setstr(L, ls->fs->h, ts); /* entry for `str' */ + if (ttisnil(o)) + setbvalue(o, 1); /* make sure `str' will not be collected */ + return ts; +} + + +static void inclinenumber (LexState *ls) { + int old = ls->current; + lua_assert(currIsNewline(ls)); + next(ls); /* skip `\n' or `\r' */ + if (currIsNewline(ls) && ls->current != old) + next(ls); /* skip `\n\r' or `\r\n' */ + if (++ls->linenumber >= MAX_INT) + luaX_syntaxerror(ls, "chunk has too many lines"); +} + + +void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, TString *source) { + ls->decpoint = '.'; + ls->L = L; + ls->lookahead.token = TK_EOS; /* no look-ahead token */ + ls->z = z; + ls->fs = NULL; + ls->linenumber = 1; + ls->lastline = 1; + ls->source = source; + luaZ_resizebuffer(ls->L, ls->buff, LUA_MINBUFFER); /* initialize buffer */ + next(ls); /* read first char */ +} + + + +/* +** ======================================================= +** LEXICAL ANALYZER +** ======================================================= +*/ + + + +static int check_next (LexState *ls, const char *set) { + if (!strchr(set, ls->current)) + return 0; + save_and_next(ls); + return 1; +} + + +static void buffreplace (LexState *ls, char from, char to) { + size_t n = luaZ_bufflen(ls->buff); + char *p = luaZ_buffer(ls->buff); + while (n--) + if (p[n] == from) p[n] = to; +} + + +static void trydecpoint (LexState *ls, SemInfo *seminfo) { + /* format error: try to update decimal point separator */ + struct lconv *cv = localeconv(); + char old = ls->decpoint; + ls->decpoint = (cv ? cv->decimal_point[0] : '.'); + buffreplace(ls, old, ls->decpoint); /* try updated decimal separator */ + if (!luaO_str2d(luaZ_buffer(ls->buff), &seminfo->r)) { + /* format error with correct decimal point: no more options */ + buffreplace(ls, ls->decpoint, '.'); /* undo change (for error message) */ + luaX_lexerror(ls, "malformed number", TK_NUMBER); + } +} + + +/* LUA_NUMBER */ +static void read_numeral (LexState *ls, SemInfo *seminfo) { + lua_assert(isdigit(ls->current)); + do { + save_and_next(ls); + } while (isdigit(ls->current) || ls->current == '.'); + if (check_next(ls, "Ee")) /* `E'? */ + check_next(ls, "+-"); /* optional exponent sign */ + while (isalnum(ls->current) || ls->current == '_') + save_and_next(ls); + save(ls, '\0'); + buffreplace(ls, '.', ls->decpoint); /* follow locale for decimal point */ + if (!luaO_str2d(luaZ_buffer(ls->buff), &seminfo->r)) /* format error? */ + trydecpoint(ls, seminfo); /* try to update decimal point separator */ +} + + +static int skip_sep (LexState *ls) { + int count = 0; + int s = ls->current; + lua_assert(s == '[' || s == ']'); + save_and_next(ls); + while (ls->current == '=') { + save_and_next(ls); + count++; + } + return (ls->current == s) ? count : (-count) - 1; +} + + +static void read_long_string (LexState *ls, SemInfo *seminfo, int sep) { + int cont = 0; + (void)(cont); /* avoid warnings when `cont' is not used */ + save_and_next(ls); /* skip 2nd `[' */ + if (currIsNewline(ls)) /* string starts with a newline? */ + inclinenumber(ls); /* skip it */ + for (;;) { + switch (ls->current) { + case EOZ: + luaX_lexerror(ls, (seminfo) ? "unfinished long string" : + "unfinished long comment", TK_EOS); + break; /* to avoid warnings */ +#if defined(LUA_COMPAT_LSTR) + case '[': { + if (skip_sep(ls) == sep) { + save_and_next(ls); /* skip 2nd `[' */ + cont++; +#if LUA_COMPAT_LSTR == 1 + if (sep == 0) + luaX_lexerror(ls, "nesting of [[...]] is deprecated", '['); +#endif + } + break; + } +#endif + case ']': { + if (skip_sep(ls) == sep) { + save_and_next(ls); /* skip 2nd `]' */ +#if defined(LUA_COMPAT_LSTR) && LUA_COMPAT_LSTR == 2 + cont--; + if (sep == 0 && cont >= 0) break; +#endif + goto endloop; + } + break; + } + case '\n': + case '\r': { + save(ls, '\n'); + inclinenumber(ls); + if (!seminfo) luaZ_resetbuffer(ls->buff); /* avoid wasting space */ + break; + } + default: { + if (seminfo) save_and_next(ls); + else next(ls); + } + } + } endloop: + if (seminfo) + seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + (2 + sep), + luaZ_bufflen(ls->buff) - 2*(2 + sep)); +} + + +static void read_string (LexState *ls, int del, SemInfo *seminfo) { + save_and_next(ls); + while (ls->current != del) { + switch (ls->current) { + case EOZ: + luaX_lexerror(ls, "unfinished string", TK_EOS); + continue; /* to avoid warnings */ + case '\n': + case '\r': + luaX_lexerror(ls, "unfinished string", TK_STRING); + continue; /* to avoid warnings */ + case '\\': { + int c; + next(ls); /* do not save the `\' */ + switch (ls->current) { + case 'a': c = '\a'; break; + case 'b': c = '\b'; break; + case 'f': c = '\f'; break; + case 'n': c = '\n'; break; + case 'r': c = '\r'; break; + case 't': c = '\t'; break; + case 'v': c = '\v'; break; + case '\n': /* go through */ + case '\r': save(ls, '\n'); inclinenumber(ls); continue; + case EOZ: continue; /* will raise an error next loop */ + default: { + if (!isdigit(ls->current)) + save_and_next(ls); /* handles \\, \", \', and \? */ + else { /* \xxx */ + int i = 0; + c = 0; + do { + c = 10*c + (ls->current-'0'); + next(ls); + } while (++i<3 && isdigit(ls->current)); + if (c > UCHAR_MAX) + luaX_lexerror(ls, "escape sequence too large", TK_STRING); + save(ls, c); + } + continue; + } + } + save(ls, c); + next(ls); + continue; + } + default: + save_and_next(ls); + } + } + save_and_next(ls); /* skip delimiter */ + seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + 1, + luaZ_bufflen(ls->buff) - 2); +} + + +static int llex (LexState *ls, SemInfo *seminfo) { + luaZ_resetbuffer(ls->buff); + for (;;) { + switch (ls->current) { + case '\n': + case '\r': { + inclinenumber(ls); + continue; + } + case '-': { + next(ls); + if (ls->current != '-') return '-'; + /* else is a comment */ + next(ls); + if (ls->current == '[') { + int sep = skip_sep(ls); + luaZ_resetbuffer(ls->buff); /* `skip_sep' may dirty the buffer */ + if (sep >= 0) { + read_long_string(ls, NULL, sep); /* long comment */ + luaZ_resetbuffer(ls->buff); + continue; + } + } + /* else short comment */ + while (!currIsNewline(ls) && ls->current != EOZ) + next(ls); + continue; + } + case '[': { + int sep = skip_sep(ls); + if (sep >= 0) { + read_long_string(ls, seminfo, sep); + return TK_STRING; + } + else if (sep == -1) return '['; + else luaX_lexerror(ls, "invalid long string delimiter", TK_STRING); + } + case '=': { + next(ls); + if (ls->current != '=') return '='; + else { next(ls); return TK_EQ; } + } + case '<': { + next(ls); + if (ls->current != '=') return '<'; + else { next(ls); return TK_LE; } + } + case '>': { + next(ls); + if (ls->current != '=') return '>'; + else { next(ls); return TK_GE; } + } + case '~': { + next(ls); + if (ls->current != '=') return '~'; + else { next(ls); return TK_NE; } + } + case '"': + case '\'': { + read_string(ls, ls->current, seminfo); + return TK_STRING; + } + case '.': { + save_and_next(ls); + if (check_next(ls, ".")) { + if (check_next(ls, ".")) + return TK_DOTS; /* ... */ + else return TK_CONCAT; /* .. */ + } + else if (!isdigit(ls->current)) return '.'; + else { + read_numeral(ls, seminfo); + return TK_NUMBER; + } + } + case EOZ: { + return TK_EOS; + } + default: { + if (isspace(ls->current)) { + lua_assert(!currIsNewline(ls)); + next(ls); + continue; + } + else if (isdigit(ls->current)) { + read_numeral(ls, seminfo); + return TK_NUMBER; + } + else if (isalpha(ls->current) || ls->current == '_') { + /* identifier or reserved word */ + TString *ts; + do { + save_and_next(ls); + } while (isalnum(ls->current) || ls->current == '_'); + ts = luaX_newstring(ls, luaZ_buffer(ls->buff), + luaZ_bufflen(ls->buff)); + if (ts->tsv.reserved > 0) /* reserved word? */ + return ts->tsv.reserved - 1 + FIRST_RESERVED; + else { + seminfo->ts = ts; + return TK_NAME; + } + } + else { + int c = ls->current; + next(ls); + return c; /* single-char tokens (+ - / ...) */ + } + } + } + } +} + + +void luaX_next (LexState *ls) { + ls->lastline = ls->linenumber; + if (ls->lookahead.token != TK_EOS) { /* is there a look-ahead token? */ + ls->t = ls->lookahead; /* use this one */ + ls->lookahead.token = TK_EOS; /* and discharge it */ + } + else + ls->t.token = llex(ls, &ls->t.seminfo); /* read next token */ +} + + +void luaX_lookahead (LexState *ls) { + lua_assert(ls->lookahead.token == TK_EOS); + ls->lookahead.token = llex(ls, &ls->lookahead.seminfo); +} + diff --git a/lua-5.1.4/src/.svn/text-base/llex.h.svn-base b/lua-5.1.4/src/.svn/text-base/llex.h.svn-base new file mode 100644 index 0000000..a9201ce --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/llex.h.svn-base @@ -0,0 +1,81 @@ +/* +** $Id: llex.h,v 1.58.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lexical Analyzer +** See Copyright Notice in lua.h +*/ + +#ifndef llex_h +#define llex_h + +#include "lobject.h" +#include "lzio.h" + + +#define FIRST_RESERVED 257 + +/* maximum length of a reserved word */ +#define TOKEN_LEN (sizeof("function")/sizeof(char)) + + +/* +* WARNING: if you change the order of this enumeration, +* grep "ORDER RESERVED" +*/ +enum RESERVED { + /* terminal symbols denoted by reserved words */ + TK_AND = FIRST_RESERVED, TK_BREAK, + TK_DO, TK_ELSE, TK_ELSEIF, TK_END, TK_FALSE, TK_FOR, TK_FUNCTION, + TK_IF, TK_IN, TK_LOCAL, TK_NIL, TK_NOT, TK_OR, TK_REPEAT, + TK_RETURN, TK_THEN, TK_TRUE, TK_UNTIL, TK_WHILE, + /* other terminal symbols */ + TK_CONCAT, TK_DOTS, TK_EQ, TK_GE, TK_LE, TK_NE, TK_NUMBER, + TK_NAME, TK_STRING, TK_EOS +}; + +/* number of reserved words */ +#define NUM_RESERVED (cast(int, TK_WHILE-FIRST_RESERVED+1)) + + +/* array with token `names' */ +LUAI_DATA const char *const luaX_tokens []; + + +typedef union { + lua_Number r; + TString *ts; +} SemInfo; /* semantics information */ + + +typedef struct Token { + int token; + SemInfo seminfo; +} Token; + + +typedef struct LexState { + int current; /* current character (charint) */ + int linenumber; /* input line counter */ + int lastline; /* line of last token `consumed' */ + Token t; /* current token */ + Token lookahead; /* look ahead token */ + struct FuncState *fs; /* `FuncState' is private to the parser */ + struct lua_State *L; + ZIO *z; /* input stream */ + Mbuffer *buff; /* buffer for tokens */ + TString *source; /* current source name */ + char decpoint; /* locale decimal point */ +} LexState; + + +LUAI_FUNC void luaX_init (lua_State *L); +LUAI_FUNC void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, + TString *source); +LUAI_FUNC TString *luaX_newstring (LexState *ls, const char *str, size_t l); +LUAI_FUNC void luaX_next (LexState *ls); +LUAI_FUNC void luaX_lookahead (LexState *ls); +LUAI_FUNC void luaX_lexerror (LexState *ls, const char *msg, int token); +LUAI_FUNC void luaX_syntaxerror (LexState *ls, const char *s); +LUAI_FUNC const char *luaX_token2str (LexState *ls, int token); + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/llimits.h.svn-base b/lua-5.1.4/src/.svn/text-base/llimits.h.svn-base new file mode 100644 index 0000000..ca8dcb7 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/llimits.h.svn-base @@ -0,0 +1,128 @@ +/* +** $Id: llimits.h,v 1.69.1.1 2007/12/27 13:02:25 roberto Exp $ +** Limits, basic types, and some other `installation-dependent' definitions +** See Copyright Notice in lua.h +*/ + +#ifndef llimits_h +#define llimits_h + + +#include +#include + + +#include "lua.h" + + +typedef LUAI_UINT32 lu_int32; + +typedef LUAI_UMEM lu_mem; + +typedef LUAI_MEM l_mem; + + + +/* chars used as small naturals (so that `char' is reserved for characters) */ +typedef unsigned char lu_byte; + + +#define MAX_SIZET ((size_t)(~(size_t)0)-2) + +#define MAX_LUMEM ((lu_mem)(~(lu_mem)0)-2) + + +#define MAX_INT (INT_MAX-2) /* maximum value of an int (-2 for safety) */ + +/* +** conversion of pointer to integer +** this is for hashing only; there is no problem if the integer +** cannot hold the whole pointer value +*/ +#define IntPoint(p) ((unsigned int)(lu_mem)(p)) + + + +/* type to ensure maximum alignment */ +typedef LUAI_USER_ALIGNMENT_T L_Umaxalign; + + +/* result of a `usual argument conversion' over lua_Number */ +typedef LUAI_UACNUMBER l_uacNumber; + + +/* internal assertions for in-house debugging */ +#ifdef lua_assert + +#define check_exp(c,e) (lua_assert(c), (e)) +#define api_check(l,e) lua_assert(e) + +#else + +#define lua_assert(c) ((void)0) +#define check_exp(c,e) (e) +#define api_check luai_apicheck + +#endif + + +#ifndef UNUSED +#define UNUSED(x) ((void)(x)) /* to avoid warnings */ +#endif + + +#ifndef cast +#define cast(t, exp) ((t)(exp)) +#endif + +#define cast_byte(i) cast(lu_byte, (i)) +#define cast_num(i) cast(lua_Number, (i)) +#define cast_int(i) cast(int, (i)) + + + +/* +** type for virtual-machine instructions +** must be an unsigned with (at least) 4 bytes (see details in lopcodes.h) +*/ +typedef lu_int32 Instruction; + + + +/* maximum stack for a Lua function */ +#define MAXSTACK 250 + + + +/* minimum size for the string table (must be power of 2) */ +#ifndef MINSTRTABSIZE +#define MINSTRTABSIZE 32 +#endif + + +/* minimum size for string buffer */ +#ifndef LUA_MINBUFFER +#define LUA_MINBUFFER 32 +#endif + + +#ifndef lua_lock +#define lua_lock(L) ((void) 0) +#define lua_unlock(L) ((void) 0) +#endif + +#ifndef luai_threadyield +#define luai_threadyield(L) {lua_unlock(L); lua_lock(L);} +#endif + + +/* +** macro to control inclusion of some hard tests on stack reallocation +*/ +#ifndef HARDSTACKTESTS +#define condhardstacktests(x) ((void)0) +#else +#define condhardstacktests(x) x +#endif + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lmathlib.c.svn-base b/lua-5.1.4/src/.svn/text-base/lmathlib.c.svn-base new file mode 100644 index 0000000..441fbf7 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lmathlib.c.svn-base @@ -0,0 +1,263 @@ +/* +** $Id: lmathlib.c,v 1.67.1.1 2007/12/27 13:02:25 roberto Exp $ +** Standard mathematical library +** See Copyright Notice in lua.h +*/ + + +#include +#include + +#define lmathlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +#undef PI +#define PI (3.14159265358979323846) +#define RADIANS_PER_DEGREE (PI/180.0) + + + +static int math_abs (lua_State *L) { + lua_pushnumber(L, fabs(luaL_checknumber(L, 1))); + return 1; +} + +static int math_sin (lua_State *L) { + lua_pushnumber(L, sin(luaL_checknumber(L, 1))); + return 1; +} + +static int math_sinh (lua_State *L) { + lua_pushnumber(L, sinh(luaL_checknumber(L, 1))); + return 1; +} + +static int math_cos (lua_State *L) { + lua_pushnumber(L, cos(luaL_checknumber(L, 1))); + return 1; +} + +static int math_cosh (lua_State *L) { + lua_pushnumber(L, cosh(luaL_checknumber(L, 1))); + return 1; +} + +static int math_tan (lua_State *L) { + lua_pushnumber(L, tan(luaL_checknumber(L, 1))); + return 1; +} + +static int math_tanh (lua_State *L) { + lua_pushnumber(L, tanh(luaL_checknumber(L, 1))); + return 1; +} + +static int math_asin (lua_State *L) { + lua_pushnumber(L, asin(luaL_checknumber(L, 1))); + return 1; +} + +static int math_acos (lua_State *L) { + lua_pushnumber(L, acos(luaL_checknumber(L, 1))); + return 1; +} + +static int math_atan (lua_State *L) { + lua_pushnumber(L, atan(luaL_checknumber(L, 1))); + return 1; +} + +static int math_atan2 (lua_State *L) { + lua_pushnumber(L, atan2(luaL_checknumber(L, 1), luaL_checknumber(L, 2))); + return 1; +} + +static int math_ceil (lua_State *L) { + lua_pushnumber(L, ceil(luaL_checknumber(L, 1))); + return 1; +} + +static int math_floor (lua_State *L) { + lua_pushnumber(L, floor(luaL_checknumber(L, 1))); + return 1; +} + +static int math_fmod (lua_State *L) { + lua_pushnumber(L, fmod(luaL_checknumber(L, 1), luaL_checknumber(L, 2))); + return 1; +} + +static int math_modf (lua_State *L) { + double ip; + double fp = modf(luaL_checknumber(L, 1), &ip); + lua_pushnumber(L, ip); + lua_pushnumber(L, fp); + return 2; +} + +static int math_sqrt (lua_State *L) { + lua_pushnumber(L, sqrt(luaL_checknumber(L, 1))); + return 1; +} + +static int math_pow (lua_State *L) { + lua_pushnumber(L, pow(luaL_checknumber(L, 1), luaL_checknumber(L, 2))); + return 1; +} + +static int math_log (lua_State *L) { + lua_pushnumber(L, log(luaL_checknumber(L, 1))); + return 1; +} + +static int math_log10 (lua_State *L) { + lua_pushnumber(L, log10(luaL_checknumber(L, 1))); + return 1; +} + +static int math_exp (lua_State *L) { + lua_pushnumber(L, exp(luaL_checknumber(L, 1))); + return 1; +} + +static int math_deg (lua_State *L) { + lua_pushnumber(L, luaL_checknumber(L, 1)/RADIANS_PER_DEGREE); + return 1; +} + +static int math_rad (lua_State *L) { + lua_pushnumber(L, luaL_checknumber(L, 1)*RADIANS_PER_DEGREE); + return 1; +} + +static int math_frexp (lua_State *L) { + int e; + lua_pushnumber(L, frexp(luaL_checknumber(L, 1), &e)); + lua_pushinteger(L, e); + return 2; +} + +static int math_ldexp (lua_State *L) { + lua_pushnumber(L, ldexp(luaL_checknumber(L, 1), luaL_checkint(L, 2))); + return 1; +} + + + +static int math_min (lua_State *L) { + int n = lua_gettop(L); /* number of arguments */ + lua_Number dmin = luaL_checknumber(L, 1); + int i; + for (i=2; i<=n; i++) { + lua_Number d = luaL_checknumber(L, i); + if (d < dmin) + dmin = d; + } + lua_pushnumber(L, dmin); + return 1; +} + + +static int math_max (lua_State *L) { + int n = lua_gettop(L); /* number of arguments */ + lua_Number dmax = luaL_checknumber(L, 1); + int i; + for (i=2; i<=n; i++) { + lua_Number d = luaL_checknumber(L, i); + if (d > dmax) + dmax = d; + } + lua_pushnumber(L, dmax); + return 1; +} + + +static int math_random (lua_State *L) { + /* the `%' avoids the (rare) case of r==1, and is needed also because on + some systems (SunOS!) `rand()' may return a value larger than RAND_MAX */ + lua_Number r = (lua_Number)(rand()%RAND_MAX) / (lua_Number)RAND_MAX; + switch (lua_gettop(L)) { /* check number of arguments */ + case 0: { /* no arguments */ + lua_pushnumber(L, r); /* Number between 0 and 1 */ + break; + } + case 1: { /* only upper limit */ + int u = luaL_checkint(L, 1); + luaL_argcheck(L, 1<=u, 1, "interval is empty"); + lua_pushnumber(L, floor(r*u)+1); /* int between 1 and `u' */ + break; + } + case 2: { /* lower and upper limits */ + int l = luaL_checkint(L, 1); + int u = luaL_checkint(L, 2); + luaL_argcheck(L, l<=u, 2, "interval is empty"); + lua_pushnumber(L, floor(r*(u-l+1))+l); /* int between `l' and `u' */ + break; + } + default: return luaL_error(L, "wrong number of arguments"); + } + return 1; +} + + +static int math_randomseed (lua_State *L) { + srand(luaL_checkint(L, 1)); + return 0; +} + + +static const luaL_Reg mathlib[] = { + {"abs", math_abs}, + {"acos", math_acos}, + {"asin", math_asin}, + {"atan2", math_atan2}, + {"atan", math_atan}, + {"ceil", math_ceil}, + {"cosh", math_cosh}, + {"cos", math_cos}, + {"deg", math_deg}, + {"exp", math_exp}, + {"floor", math_floor}, + {"fmod", math_fmod}, + {"frexp", math_frexp}, + {"ldexp", math_ldexp}, + {"log10", math_log10}, + {"log", math_log}, + {"max", math_max}, + {"min", math_min}, + {"modf", math_modf}, + {"pow", math_pow}, + {"rad", math_rad}, + {"random", math_random}, + {"randomseed", math_randomseed}, + {"sinh", math_sinh}, + {"sin", math_sin}, + {"sqrt", math_sqrt}, + {"tanh", math_tanh}, + {"tan", math_tan}, + {NULL, NULL} +}; + + +/* +** Open math library +*/ +LUALIB_API int luaopen_math (lua_State *L) { + luaL_register(L, LUA_MATHLIBNAME, mathlib); + lua_pushnumber(L, PI); + lua_setfield(L, -2, "pi"); + lua_pushnumber(L, HUGE_VAL); + lua_setfield(L, -2, "huge"); +#if defined(LUA_COMPAT_MOD) + lua_getfield(L, -1, "fmod"); + lua_setfield(L, -2, "mod"); +#endif + return 1; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lmem.c.svn-base b/lua-5.1.4/src/.svn/text-base/lmem.c.svn-base new file mode 100644 index 0000000..ae7d8c9 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lmem.c.svn-base @@ -0,0 +1,86 @@ +/* +** $Id: lmem.c,v 1.70.1.1 2007/12/27 13:02:25 roberto Exp $ +** Interface to Memory Manager +** See Copyright Notice in lua.h +*/ + + +#include + +#define lmem_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" + + + +/* +** About the realloc function: +** void * frealloc (void *ud, void *ptr, size_t osize, size_t nsize); +** (`osize' is the old size, `nsize' is the new size) +** +** Lua ensures that (ptr == NULL) iff (osize == 0). +** +** * frealloc(ud, NULL, 0, x) creates a new block of size `x' +** +** * frealloc(ud, p, x, 0) frees the block `p' +** (in this specific case, frealloc must return NULL). +** particularly, frealloc(ud, NULL, 0, 0) does nothing +** (which is equivalent to free(NULL) in ANSI C) +** +** frealloc returns NULL if it cannot create or reallocate the area +** (any reallocation to an equal or smaller size cannot fail!) +*/ + + + +#define MINSIZEARRAY 4 + + +void *luaM_growaux_ (lua_State *L, void *block, int *size, size_t size_elems, + int limit, const char *errormsg) { + void *newblock; + int newsize; + if (*size >= limit/2) { /* cannot double it? */ + if (*size >= limit) /* cannot grow even a little? */ + luaG_runerror(L, errormsg); + newsize = limit; /* still have at least one free place */ + } + else { + newsize = (*size)*2; + if (newsize < MINSIZEARRAY) + newsize = MINSIZEARRAY; /* minimum size */ + } + newblock = luaM_reallocv(L, block, *size, newsize, size_elems); + *size = newsize; /* update only when everything else is OK */ + return newblock; +} + + +void *luaM_toobig (lua_State *L) { + luaG_runerror(L, "memory allocation error: block too big"); + return NULL; /* to avoid warnings */ +} + + + +/* +** generic allocation routine. +*/ +void *luaM_realloc_ (lua_State *L, void *block, size_t osize, size_t nsize) { + global_State *g = G(L); + lua_assert((osize == 0) == (block == NULL)); + block = (*g->frealloc)(g->ud, block, osize, nsize); + if (block == NULL && nsize > 0) + luaD_throw(L, LUA_ERRMEM); + lua_assert((nsize == 0) == (block == NULL)); + g->totalbytes = (g->totalbytes - osize) + nsize; + return block; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lmem.h.svn-base b/lua-5.1.4/src/.svn/text-base/lmem.h.svn-base new file mode 100644 index 0000000..7c2dcb3 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lmem.h.svn-base @@ -0,0 +1,49 @@ +/* +** $Id: lmem.h,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ +** Interface to Memory Manager +** See Copyright Notice in lua.h +*/ + +#ifndef lmem_h +#define lmem_h + + +#include + +#include "llimits.h" +#include "lua.h" + +#define MEMERRMSG "not enough memory" + + +#define luaM_reallocv(L,b,on,n,e) \ + ((cast(size_t, (n)+1) <= MAX_SIZET/(e)) ? /* +1 to avoid warnings */ \ + luaM_realloc_(L, (b), (on)*(e), (n)*(e)) : \ + luaM_toobig(L)) + +#define luaM_freemem(L, b, s) luaM_realloc_(L, (b), (s), 0) +#define luaM_free(L, b) luaM_realloc_(L, (b), sizeof(*(b)), 0) +#define luaM_freearray(L, b, n, t) luaM_reallocv(L, (b), n, 0, sizeof(t)) + +#define luaM_malloc(L,t) luaM_realloc_(L, NULL, 0, (t)) +#define luaM_new(L,t) cast(t *, luaM_malloc(L, sizeof(t))) +#define luaM_newvector(L,n,t) \ + cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t))) + +#define luaM_growvector(L,v,nelems,size,t,limit,e) \ + if ((nelems)+1 > (size)) \ + ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e))) + +#define luaM_reallocvector(L, v,oldn,n,t) \ + ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t)))) + + +LUAI_FUNC void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize, + size_t size); +LUAI_FUNC void *luaM_toobig (lua_State *L); +LUAI_FUNC void *luaM_growaux_ (lua_State *L, void *block, int *size, + size_t size_elem, int limit, + const char *errormsg); + +#endif + diff --git a/lua-5.1.4/src/.svn/text-base/loadlib.c.svn-base b/lua-5.1.4/src/.svn/text-base/loadlib.c.svn-base new file mode 100644 index 0000000..0d401eb --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/loadlib.c.svn-base @@ -0,0 +1,666 @@ +/* +** $Id: loadlib.c,v 1.52.1.3 2008/08/06 13:29:28 roberto Exp $ +** Dynamic library loader for Lua +** See Copyright Notice in lua.h +** +** This module contains an implementation of loadlib for Unix systems +** that have dlfcn, an implementation for Darwin (Mac OS X), an +** implementation for Windows, and a stub for other systems. +*/ + + +#include +#include + + +#define loadlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +/* prefix for open functions in C libraries */ +#define LUA_POF "luaopen_" + +/* separator for open functions in C libraries */ +#define LUA_OFSEP "_" + + +#define LIBPREFIX "LOADLIB: " + +#define POF LUA_POF +#define LIB_FAIL "open" + + +/* error codes for ll_loadfunc */ +#define ERRLIB 1 +#define ERRFUNC 2 + +#define setprogdir(L) ((void)0) + + +static void ll_unloadlib (void *lib); +static void *ll_load (lua_State *L, const char *path); +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym); + + + +#if defined(LUA_DL_DLOPEN) +/* +** {======================================================================== +** This is an implementation of loadlib based on the dlfcn interface. +** The dlfcn interface is available in Linux, SunOS, Solaris, IRIX, FreeBSD, +** NetBSD, AIX 4.2, HPUX 11, and probably most other Unix flavors, at least +** as an emulation layer on top of native functions. +** ========================================================================= +*/ + +#include + +static void ll_unloadlib (void *lib) { + dlclose(lib); +} + + +static void *ll_load (lua_State *L, const char *path) { + void *lib = dlopen(path, RTLD_NOW); + if (lib == NULL) lua_pushstring(L, dlerror()); + return lib; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + lua_CFunction f = (lua_CFunction)dlsym(lib, sym); + if (f == NULL) lua_pushstring(L, dlerror()); + return f; +} + +/* }====================================================== */ + + + +#elif defined(LUA_DL_DLL) +/* +** {====================================================================== +** This is an implementation of loadlib for Windows using native functions. +** ======================================================================= +*/ + +#include + + +#undef setprogdir + +static void setprogdir (lua_State *L) { + char buff[MAX_PATH + 1]; + char *lb; + DWORD nsize = sizeof(buff)/sizeof(char); + DWORD n = GetModuleFileNameA(NULL, buff, nsize); + if (n == 0 || n == nsize || (lb = strrchr(buff, '\\')) == NULL) + luaL_error(L, "unable to get ModuleFileName"); + else { + *lb = '\0'; + luaL_gsub(L, lua_tostring(L, -1), LUA_EXECDIR, buff); + lua_remove(L, -2); /* remove original string */ + } +} + + +static void pusherror (lua_State *L) { + int error = GetLastError(); + char buffer[128]; + if (FormatMessageA(FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_FROM_SYSTEM, + NULL, error, 0, buffer, sizeof(buffer), NULL)) + lua_pushstring(L, buffer); + else + lua_pushfstring(L, "system error %d\n", error); +} + +static void ll_unloadlib (void *lib) { + FreeLibrary((HINSTANCE)lib); +} + + +static void *ll_load (lua_State *L, const char *path) { + HINSTANCE lib = LoadLibraryA(path); + if (lib == NULL) pusherror(L); + return lib; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + lua_CFunction f = (lua_CFunction)GetProcAddress((HINSTANCE)lib, sym); + if (f == NULL) pusherror(L); + return f; +} + +/* }====================================================== */ + + + +#elif defined(LUA_DL_DYLD) +/* +** {====================================================================== +** Native Mac OS X / Darwin Implementation +** ======================================================================= +*/ + +#include + + +/* Mac appends a `_' before C function names */ +#undef POF +#define POF "_" LUA_POF + + +static void pusherror (lua_State *L) { + const char *err_str; + const char *err_file; + NSLinkEditErrors err; + int err_num; + NSLinkEditError(&err, &err_num, &err_file, &err_str); + lua_pushstring(L, err_str); +} + + +static const char *errorfromcode (NSObjectFileImageReturnCode ret) { + switch (ret) { + case NSObjectFileImageInappropriateFile: + return "file is not a bundle"; + case NSObjectFileImageArch: + return "library is for wrong CPU type"; + case NSObjectFileImageFormat: + return "bad format"; + case NSObjectFileImageAccess: + return "cannot access file"; + case NSObjectFileImageFailure: + default: + return "unable to load library"; + } +} + + +static void ll_unloadlib (void *lib) { + NSUnLinkModule((NSModule)lib, NSUNLINKMODULE_OPTION_RESET_LAZY_REFERENCES); +} + + +static void *ll_load (lua_State *L, const char *path) { + NSObjectFileImage img; + NSObjectFileImageReturnCode ret; + /* this would be a rare case, but prevents crashing if it happens */ + if(!_dyld_present()) { + lua_pushliteral(L, "dyld not present"); + return NULL; + } + ret = NSCreateObjectFileImageFromFile(path, &img); + if (ret == NSObjectFileImageSuccess) { + NSModule mod = NSLinkModule(img, path, NSLINKMODULE_OPTION_PRIVATE | + NSLINKMODULE_OPTION_RETURN_ON_ERROR); + NSDestroyObjectFileImage(img); + if (mod == NULL) pusherror(L); + return mod; + } + lua_pushstring(L, errorfromcode(ret)); + return NULL; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + NSSymbol nss = NSLookupSymbolInModule((NSModule)lib, sym); + if (nss == NULL) { + lua_pushfstring(L, "symbol " LUA_QS " not found", sym); + return NULL; + } + return (lua_CFunction)NSAddressOfSymbol(nss); +} + +/* }====================================================== */ + + + +#else +/* +** {====================================================== +** Fallback for other systems +** ======================================================= +*/ + +#undef LIB_FAIL +#define LIB_FAIL "absent" + + +#define DLMSG "dynamic libraries not enabled; check your Lua installation" + + +static void ll_unloadlib (void *lib) { + (void)lib; /* to avoid warnings */ +} + + +static void *ll_load (lua_State *L, const char *path) { + (void)path; /* to avoid warnings */ + lua_pushliteral(L, DLMSG); + return NULL; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + (void)lib; (void)sym; /* to avoid warnings */ + lua_pushliteral(L, DLMSG); + return NULL; +} + +/* }====================================================== */ +#endif + + + +static void **ll_register (lua_State *L, const char *path) { + void **plib; + lua_pushfstring(L, "%s%s", LIBPREFIX, path); + lua_gettable(L, LUA_REGISTRYINDEX); /* check library in registry? */ + if (!lua_isnil(L, -1)) /* is there an entry? */ + plib = (void **)lua_touserdata(L, -1); + else { /* no entry yet; create one */ + lua_pop(L, 1); + plib = (void **)lua_newuserdata(L, sizeof(const void *)); + *plib = NULL; + luaL_getmetatable(L, "_LOADLIB"); + lua_setmetatable(L, -2); + lua_pushfstring(L, "%s%s", LIBPREFIX, path); + lua_pushvalue(L, -2); + lua_settable(L, LUA_REGISTRYINDEX); + } + return plib; +} + + +/* +** __gc tag method: calls library's `ll_unloadlib' function with the lib +** handle +*/ +static int gctm (lua_State *L) { + void **lib = (void **)luaL_checkudata(L, 1, "_LOADLIB"); + if (*lib) ll_unloadlib(*lib); + *lib = NULL; /* mark library as closed */ + return 0; +} + + +static int ll_loadfunc (lua_State *L, const char *path, const char *sym) { + void **reg = ll_register(L, path); + if (*reg == NULL) *reg = ll_load(L, path); + if (*reg == NULL) + return ERRLIB; /* unable to load library */ + else { + lua_CFunction f = ll_sym(L, *reg, sym); + if (f == NULL) + return ERRFUNC; /* unable to find function */ + lua_pushcfunction(L, f); + return 0; /* return function */ + } +} + + +static int ll_loadlib (lua_State *L) { + const char *path = luaL_checkstring(L, 1); + const char *init = luaL_checkstring(L, 2); + int stat = ll_loadfunc(L, path, init); + if (stat == 0) /* no errors? */ + return 1; /* return the loaded function */ + else { /* error; error message is on stack top */ + lua_pushnil(L); + lua_insert(L, -2); + lua_pushstring(L, (stat == ERRLIB) ? LIB_FAIL : "init"); + return 3; /* return nil, error message, and where */ + } +} + + + +/* +** {====================================================== +** 'require' function +** ======================================================= +*/ + + +static int readable (const char *filename) { + FILE *f = fopen(filename, "r"); /* try to open file */ + if (f == NULL) return 0; /* open failed */ + fclose(f); + return 1; +} + + +static const char *pushnexttemplate (lua_State *L, const char *path) { + const char *l; + while (*path == *LUA_PATHSEP) path++; /* skip separators */ + if (*path == '\0') return NULL; /* no more templates */ + l = strchr(path, *LUA_PATHSEP); /* find next separator */ + if (l == NULL) l = path + strlen(path); + lua_pushlstring(L, path, l - path); /* template */ + return l; +} + + +static const char *findfile (lua_State *L, const char *name, + const char *pname) { + const char *path; + name = luaL_gsub(L, name, ".", LUA_DIRSEP); + lua_getfield(L, LUA_ENVIRONINDEX, pname); + path = lua_tostring(L, -1); + if (path == NULL) + luaL_error(L, LUA_QL("package.%s") " must be a string", pname); + lua_pushliteral(L, ""); /* error accumulator */ + while ((path = pushnexttemplate(L, path)) != NULL) { + const char *filename; + filename = luaL_gsub(L, lua_tostring(L, -1), LUA_PATH_MARK, name); + lua_remove(L, -2); /* remove path template */ + if (readable(filename)) /* does file exist and is readable? */ + return filename; /* return that file name */ + lua_pushfstring(L, "\n\tno file " LUA_QS, filename); + lua_remove(L, -2); /* remove file name */ + lua_concat(L, 2); /* add entry to possible error message */ + } + return NULL; /* not found */ +} + + +static void loaderror (lua_State *L, const char *filename) { + luaL_error(L, "error loading module " LUA_QS " from file " LUA_QS ":\n\t%s", + lua_tostring(L, 1), filename, lua_tostring(L, -1)); +} + + +static int loader_Lua (lua_State *L) { + const char *filename; + const char *name = luaL_checkstring(L, 1); + filename = findfile(L, name, "path"); + if (filename == NULL) return 1; /* library not found in this path */ + if (luaL_loadfile(L, filename) != 0) + loaderror(L, filename); + return 1; /* library loaded successfully */ +} + + +static const char *mkfuncname (lua_State *L, const char *modname) { + const char *funcname; + const char *mark = strchr(modname, *LUA_IGMARK); + if (mark) modname = mark + 1; + funcname = luaL_gsub(L, modname, ".", LUA_OFSEP); + funcname = lua_pushfstring(L, POF"%s", funcname); + lua_remove(L, -2); /* remove 'gsub' result */ + return funcname; +} + + +static int loader_C (lua_State *L) { + const char *funcname; + const char *name = luaL_checkstring(L, 1); + const char *filename = findfile(L, name, "cpath"); + if (filename == NULL) return 1; /* library not found in this path */ + funcname = mkfuncname(L, name); + if (ll_loadfunc(L, filename, funcname) != 0) + loaderror(L, filename); + return 1; /* library loaded successfully */ +} + + +static int loader_Croot (lua_State *L) { + const char *funcname; + const char *filename; + const char *name = luaL_checkstring(L, 1); + const char *p = strchr(name, '.'); + int stat; + if (p == NULL) return 0; /* is root */ + lua_pushlstring(L, name, p - name); + filename = findfile(L, lua_tostring(L, -1), "cpath"); + if (filename == NULL) return 1; /* root not found */ + funcname = mkfuncname(L, name); + if ((stat = ll_loadfunc(L, filename, funcname)) != 0) { + if (stat != ERRFUNC) loaderror(L, filename); /* real error */ + lua_pushfstring(L, "\n\tno module " LUA_QS " in file " LUA_QS, + name, filename); + return 1; /* function not found */ + } + return 1; +} + + +static int loader_preload (lua_State *L) { + const char *name = luaL_checkstring(L, 1); + lua_getfield(L, LUA_ENVIRONINDEX, "preload"); + if (!lua_istable(L, -1)) + luaL_error(L, LUA_QL("package.preload") " must be a table"); + lua_getfield(L, -1, name); + if (lua_isnil(L, -1)) /* not found? */ + lua_pushfstring(L, "\n\tno field package.preload['%s']", name); + return 1; +} + + +static const int sentinel_ = 0; +#define sentinel ((void *)&sentinel_) + + +static int ll_require (lua_State *L) { + const char *name = luaL_checkstring(L, 1); + int i; + lua_settop(L, 1); /* _LOADED table will be at index 2 */ + lua_getfield(L, LUA_REGISTRYINDEX, "_LOADED"); + lua_getfield(L, 2, name); + if (lua_toboolean(L, -1)) { /* is it there? */ + if (lua_touserdata(L, -1) == sentinel) /* check loops */ + luaL_error(L, "loop or previous error loading module " LUA_QS, name); + return 1; /* package is already loaded */ + } + /* else must load it; iterate over available loaders */ + lua_getfield(L, LUA_ENVIRONINDEX, "loaders"); + if (!lua_istable(L, -1)) + luaL_error(L, LUA_QL("package.loaders") " must be a table"); + lua_pushliteral(L, ""); /* error message accumulator */ + for (i=1; ; i++) { + lua_rawgeti(L, -2, i); /* get a loader */ + if (lua_isnil(L, -1)) + luaL_error(L, "module " LUA_QS " not found:%s", + name, lua_tostring(L, -2)); + lua_pushstring(L, name); + lua_call(L, 1, 1); /* call it */ + if (lua_isfunction(L, -1)) /* did it find module? */ + break; /* module loaded successfully */ + else if (lua_isstring(L, -1)) /* loader returned error message? */ + lua_concat(L, 2); /* accumulate it */ + else + lua_pop(L, 1); + } + lua_pushlightuserdata(L, sentinel); + lua_setfield(L, 2, name); /* _LOADED[name] = sentinel */ + lua_pushstring(L, name); /* pass name as argument to module */ + lua_call(L, 1, 1); /* run loaded module */ + if (!lua_isnil(L, -1)) /* non-nil return? */ + lua_setfield(L, 2, name); /* _LOADED[name] = returned value */ + lua_getfield(L, 2, name); + if (lua_touserdata(L, -1) == sentinel) { /* module did not set a value? */ + lua_pushboolean(L, 1); /* use true as result */ + lua_pushvalue(L, -1); /* extra copy to be returned */ + lua_setfield(L, 2, name); /* _LOADED[name] = true */ + } + return 1; +} + +/* }====================================================== */ + + + +/* +** {====================================================== +** 'module' function +** ======================================================= +*/ + + +static void setfenv (lua_State *L) { + lua_Debug ar; + if (lua_getstack(L, 1, &ar) == 0 || + lua_getinfo(L, "f", &ar) == 0 || /* get calling function */ + lua_iscfunction(L, -1)) + luaL_error(L, LUA_QL("module") " not called from a Lua function"); + lua_pushvalue(L, -2); + lua_setfenv(L, -2); + lua_pop(L, 1); +} + + +static void dooptions (lua_State *L, int n) { + int i; + for (i = 2; i <= n; i++) { + lua_pushvalue(L, i); /* get option (a function) */ + lua_pushvalue(L, -2); /* module */ + lua_call(L, 1, 0); + } +} + + +static void modinit (lua_State *L, const char *modname) { + const char *dot; + lua_pushvalue(L, -1); + lua_setfield(L, -2, "_M"); /* module._M = module */ + lua_pushstring(L, modname); + lua_setfield(L, -2, "_NAME"); + dot = strrchr(modname, '.'); /* look for last dot in module name */ + if (dot == NULL) dot = modname; + else dot++; + /* set _PACKAGE as package name (full module name minus last part) */ + lua_pushlstring(L, modname, dot - modname); + lua_setfield(L, -2, "_PACKAGE"); +} + + +static int ll_module (lua_State *L) { + const char *modname = luaL_checkstring(L, 1); + int loaded = lua_gettop(L) + 1; /* index of _LOADED table */ + lua_getfield(L, LUA_REGISTRYINDEX, "_LOADED"); + lua_getfield(L, loaded, modname); /* get _LOADED[modname] */ + if (!lua_istable(L, -1)) { /* not found? */ + lua_pop(L, 1); /* remove previous result */ + /* try global variable (and create one if it does not exist) */ + if (luaL_findtable(L, LUA_GLOBALSINDEX, modname, 1) != NULL) + return luaL_error(L, "name conflict for module " LUA_QS, modname); + lua_pushvalue(L, -1); + lua_setfield(L, loaded, modname); /* _LOADED[modname] = new table */ + } + /* check whether table already has a _NAME field */ + lua_getfield(L, -1, "_NAME"); + if (!lua_isnil(L, -1)) /* is table an initialized module? */ + lua_pop(L, 1); + else { /* no; initialize it */ + lua_pop(L, 1); + modinit(L, modname); + } + lua_pushvalue(L, -1); + setfenv(L); + dooptions(L, loaded - 1); + return 0; +} + + +static int ll_seeall (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + if (!lua_getmetatable(L, 1)) { + lua_createtable(L, 0, 1); /* create new metatable */ + lua_pushvalue(L, -1); + lua_setmetatable(L, 1); + } + lua_pushvalue(L, LUA_GLOBALSINDEX); + lua_setfield(L, -2, "__index"); /* mt.__index = _G */ + return 0; +} + + +/* }====================================================== */ + + + +/* auxiliary mark (for internal use) */ +#define AUXMARK "\1" + +static void setpath (lua_State *L, const char *fieldname, const char *envname, + const char *def) { + const char *path = getenv(envname); + if (path == NULL) /* no environment variable? */ + lua_pushstring(L, def); /* use default */ + else { + /* replace ";;" by ";AUXMARK;" and then AUXMARK by default path */ + path = luaL_gsub(L, path, LUA_PATHSEP LUA_PATHSEP, + LUA_PATHSEP AUXMARK LUA_PATHSEP); + luaL_gsub(L, path, AUXMARK, def); + lua_remove(L, -2); + } + setprogdir(L); + lua_setfield(L, -2, fieldname); +} + + +static const luaL_Reg pk_funcs[] = { + {"loadlib", ll_loadlib}, + {"seeall", ll_seeall}, + {NULL, NULL} +}; + + +static const luaL_Reg ll_funcs[] = { + {"module", ll_module}, + {"require", ll_require}, + {NULL, NULL} +}; + + +static const lua_CFunction loaders[] = + {loader_preload, loader_Lua, loader_C, loader_Croot, NULL}; + + +LUALIB_API int luaopen_package (lua_State *L) { + int i; + /* create new type _LOADLIB */ + luaL_newmetatable(L, "_LOADLIB"); + lua_pushcfunction(L, gctm); + lua_setfield(L, -2, "__gc"); + /* create `package' table */ + luaL_register(L, LUA_LOADLIBNAME, pk_funcs); +#if defined(LUA_COMPAT_LOADLIB) + lua_getfield(L, -1, "loadlib"); + lua_setfield(L, LUA_GLOBALSINDEX, "loadlib"); +#endif + lua_pushvalue(L, -1); + lua_replace(L, LUA_ENVIRONINDEX); + /* create `loaders' table */ + lua_createtable(L, 0, sizeof(loaders)/sizeof(loaders[0]) - 1); + /* fill it with pre-defined loaders */ + for (i=0; loaders[i] != NULL; i++) { + lua_pushcfunction(L, loaders[i]); + lua_rawseti(L, -2, i+1); + } + lua_setfield(L, -2, "loaders"); /* put it in field `loaders' */ + setpath(L, "path", LUA_PATH, LUA_PATH_DEFAULT); /* set field `path' */ + setpath(L, "cpath", LUA_CPATH, LUA_CPATH_DEFAULT); /* set field `cpath' */ + /* store config information */ + lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATHSEP "\n" LUA_PATH_MARK "\n" + LUA_EXECDIR "\n" LUA_IGMARK); + lua_setfield(L, -2, "config"); + /* set field `loaded' */ + luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 2); + lua_setfield(L, -2, "loaded"); + /* set field `preload' */ + lua_newtable(L); + lua_setfield(L, -2, "preload"); + lua_pushvalue(L, LUA_GLOBALSINDEX); + luaL_register(L, NULL, ll_funcs); /* open lib into global table */ + lua_pop(L, 1); + return 1; /* return 'package' table */ +} + diff --git a/lua-5.1.4/src/.svn/text-base/lobject.c.svn-base b/lua-5.1.4/src/.svn/text-base/lobject.c.svn-base new file mode 100644 index 0000000..4ff5073 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lobject.c.svn-base @@ -0,0 +1,214 @@ +/* +** $Id: lobject.c,v 2.22.1.1 2007/12/27 13:02:25 roberto Exp $ +** Some generic functions over Lua objects +** See Copyright Notice in lua.h +*/ + +#include +#include +#include +#include +#include + +#define lobject_c +#define LUA_CORE + +#include "lua.h" + +#include "ldo.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "lvm.h" + + + +const TValue luaO_nilobject_ = {{NULL}, LUA_TNIL}; + + +/* +** converts an integer to a "floating point byte", represented as +** (eeeeexxx), where the real value is (1xxx) * 2^(eeeee - 1) if +** eeeee != 0 and (xxx) otherwise. +*/ +int luaO_int2fb (unsigned int x) { + int e = 0; /* expoent */ + while (x >= 16) { + x = (x+1) >> 1; + e++; + } + if (x < 8) return x; + else return ((e+1) << 3) | (cast_int(x) - 8); +} + + +/* converts back */ +int luaO_fb2int (int x) { + int e = (x >> 3) & 31; + if (e == 0) return x; + else return ((x & 7)+8) << (e - 1); +} + + +int luaO_log2 (unsigned int x) { + static const lu_byte log_2[256] = { + 0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 + }; + int l = -1; + while (x >= 256) { l += 8; x >>= 8; } + return l + log_2[x]; + +} + + +int luaO_rawequalObj (const TValue *t1, const TValue *t2) { + if (ttype(t1) != ttype(t2)) return 0; + else switch (ttype(t1)) { + case LUA_TNIL: + return 1; + case LUA_TNUMBER: + return luai_numeq(nvalue(t1), nvalue(t2)); + case LUA_TBOOLEAN: + return bvalue(t1) == bvalue(t2); /* boolean true must be 1 !! */ + case LUA_TLIGHTUSERDATA: + return pvalue(t1) == pvalue(t2); + default: + lua_assert(iscollectable(t1)); + return gcvalue(t1) == gcvalue(t2); + } +} + + +int luaO_str2d (const char *s, lua_Number *result) { + char *endptr; + *result = lua_str2number(s, &endptr); + if (endptr == s) return 0; /* conversion failed */ + if (*endptr == 'x' || *endptr == 'X') /* maybe an hexadecimal constant? */ + *result = cast_num(strtoul(s, &endptr, 16)); + if (*endptr == '\0') return 1; /* most common case */ + while (isspace(cast(unsigned char, *endptr))) endptr++; + if (*endptr != '\0') return 0; /* invalid trailing characters? */ + return 1; +} + + + +static void pushstr (lua_State *L, const char *str) { + setsvalue2s(L, L->top, luaS_new(L, str)); + incr_top(L); +} + + +/* this function handles only `%d', `%c', %f, %p, and `%s' formats */ +const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) { + int n = 1; + pushstr(L, ""); + for (;;) { + const char *e = strchr(fmt, '%'); + if (e == NULL) break; + setsvalue2s(L, L->top, luaS_newlstr(L, fmt, e-fmt)); + incr_top(L); + switch (*(e+1)) { + case 's': { + const char *s = va_arg(argp, char *); + if (s == NULL) s = "(null)"; + pushstr(L, s); + break; + } + case 'c': { + char buff[2]; + buff[0] = cast(char, va_arg(argp, int)); + buff[1] = '\0'; + pushstr(L, buff); + break; + } + case 'd': { + setnvalue(L->top, cast_num(va_arg(argp, int))); + incr_top(L); + break; + } + case 'f': { + setnvalue(L->top, cast_num(va_arg(argp, l_uacNumber))); + incr_top(L); + break; + } + case 'p': { + char buff[4*sizeof(void *) + 8]; /* should be enough space for a `%p' */ + sprintf(buff, "%p", va_arg(argp, void *)); + pushstr(L, buff); + break; + } + case '%': { + pushstr(L, "%"); + break; + } + default: { + char buff[3]; + buff[0] = '%'; + buff[1] = *(e+1); + buff[2] = '\0'; + pushstr(L, buff); + break; + } + } + n += 2; + fmt = e+2; + } + pushstr(L, fmt); + luaV_concat(L, n+1, cast_int(L->top - L->base) - 1); + L->top -= n; + return svalue(L->top - 1); +} + + +const char *luaO_pushfstring (lua_State *L, const char *fmt, ...) { + const char *msg; + va_list argp; + va_start(argp, fmt); + msg = luaO_pushvfstring(L, fmt, argp); + va_end(argp); + return msg; +} + + +void luaO_chunkid (char *out, const char *source, size_t bufflen) { + if (*source == '=') { + strncpy(out, source+1, bufflen); /* remove first char */ + out[bufflen-1] = '\0'; /* ensures null termination */ + } + else { /* out = "source", or "...source" */ + if (*source == '@') { + size_t l; + source++; /* skip the `@' */ + bufflen -= sizeof(" '...' "); + l = strlen(source); + strcpy(out, ""); + if (l > bufflen) { + source += (l-bufflen); /* get last part of file name */ + strcat(out, "..."); + } + strcat(out, source); + } + else { /* out = [string "string"] */ + size_t len = strcspn(source, "\n\r"); /* stop at first newline */ + bufflen -= sizeof(" [string \"...\"] "); + if (len > bufflen) len = bufflen; + strcpy(out, "[string \""); + if (source[len] != '\0') { /* must truncate? */ + strncat(out, source, len); + strcat(out, "..."); + } + else + strcat(out, source); + strcat(out, "\"]"); + } + } +} diff --git a/lua-5.1.4/src/.svn/text-base/lobject.h.svn-base b/lua-5.1.4/src/.svn/text-base/lobject.h.svn-base new file mode 100644 index 0000000..f1e447e --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lobject.h.svn-base @@ -0,0 +1,381 @@ +/* +** $Id: lobject.h,v 2.20.1.2 2008/08/06 13:29:48 roberto Exp $ +** Type definitions for Lua objects +** See Copyright Notice in lua.h +*/ + + +#ifndef lobject_h +#define lobject_h + + +#include + + +#include "llimits.h" +#include "lua.h" + + +/* tags for values visible from Lua */ +#define LAST_TAG LUA_TTHREAD + +#define NUM_TAGS (LAST_TAG+1) + + +/* +** Extra tags for non-values +*/ +#define LUA_TPROTO (LAST_TAG+1) +#define LUA_TUPVAL (LAST_TAG+2) +#define LUA_TDEADKEY (LAST_TAG+3) + + +/* +** Union of all collectable objects +*/ +typedef union GCObject GCObject; + + +/* +** Common Header for all collectable objects (in macro form, to be +** included in other objects) +*/ +#define CommonHeader GCObject *next; lu_byte tt; lu_byte marked + + +/* +** Common header in struct form +*/ +typedef struct GCheader { + CommonHeader; +} GCheader; + + + + +/* +** Union of all Lua values +*/ +typedef union { + GCObject *gc; + void *p; + lua_Number n; + int b; +} Value; + + +/* +** Tagged Values +*/ + +#define TValuefields Value value; int tt + +typedef struct lua_TValue { + TValuefields; +} TValue; + + +/* Macros to test type */ +#define ttisnil(o) (ttype(o) == LUA_TNIL) +#define ttisnumber(o) (ttype(o) == LUA_TNUMBER) +#define ttisstring(o) (ttype(o) == LUA_TSTRING) +#define ttistable(o) (ttype(o) == LUA_TTABLE) +#define ttisfunction(o) (ttype(o) == LUA_TFUNCTION) +#define ttisboolean(o) (ttype(o) == LUA_TBOOLEAN) +#define ttisuserdata(o) (ttype(o) == LUA_TUSERDATA) +#define ttisthread(o) (ttype(o) == LUA_TTHREAD) +#define ttislightuserdata(o) (ttype(o) == LUA_TLIGHTUSERDATA) + +/* Macros to access values */ +#define ttype(o) ((o)->tt) +#define gcvalue(o) check_exp(iscollectable(o), (o)->value.gc) +#define pvalue(o) check_exp(ttislightuserdata(o), (o)->value.p) +#define nvalue(o) check_exp(ttisnumber(o), (o)->value.n) +#define rawtsvalue(o) check_exp(ttisstring(o), &(o)->value.gc->ts) +#define tsvalue(o) (&rawtsvalue(o)->tsv) +#define rawuvalue(o) check_exp(ttisuserdata(o), &(o)->value.gc->u) +#define uvalue(o) (&rawuvalue(o)->uv) +#define clvalue(o) check_exp(ttisfunction(o), &(o)->value.gc->cl) +#define hvalue(o) check_exp(ttistable(o), &(o)->value.gc->h) +#define bvalue(o) check_exp(ttisboolean(o), (o)->value.b) +#define thvalue(o) check_exp(ttisthread(o), &(o)->value.gc->th) + +#define l_isfalse(o) (ttisnil(o) || (ttisboolean(o) && bvalue(o) == 0)) + +/* +** for internal debug only +*/ +#define checkconsistency(obj) \ + lua_assert(!iscollectable(obj) || (ttype(obj) == (obj)->value.gc->gch.tt)) + +#define checkliveness(g,obj) \ + lua_assert(!iscollectable(obj) || \ + ((ttype(obj) == (obj)->value.gc->gch.tt) && !isdead(g, (obj)->value.gc))) + + +/* Macros to set values */ +#define setnilvalue(obj) ((obj)->tt=LUA_TNIL) + +#define setnvalue(obj,x) \ + { TValue *i_o=(obj); i_o->value.n=(x); i_o->tt=LUA_TNUMBER; } + +#define setpvalue(obj,x) \ + { TValue *i_o=(obj); i_o->value.p=(x); i_o->tt=LUA_TLIGHTUSERDATA; } + +#define setbvalue(obj,x) \ + { TValue *i_o=(obj); i_o->value.b=(x); i_o->tt=LUA_TBOOLEAN; } + +#define setsvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TSTRING; \ + checkliveness(G(L),i_o); } + +#define setuvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TUSERDATA; \ + checkliveness(G(L),i_o); } + +#define setthvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TTHREAD; \ + checkliveness(G(L),i_o); } + +#define setclvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TFUNCTION; \ + checkliveness(G(L),i_o); } + +#define sethvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TTABLE; \ + checkliveness(G(L),i_o); } + +#define setptvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TPROTO; \ + checkliveness(G(L),i_o); } + + + + +#define setobj(L,obj1,obj2) \ + { const TValue *o2=(obj2); TValue *o1=(obj1); \ + o1->value = o2->value; o1->tt=o2->tt; \ + checkliveness(G(L),o1); } + + +/* +** different types of sets, according to destination +*/ + +/* from stack to (same) stack */ +#define setobjs2s setobj +/* to stack (not from same stack) */ +#define setobj2s setobj +#define setsvalue2s setsvalue +#define sethvalue2s sethvalue +#define setptvalue2s setptvalue +/* from table to same table */ +#define setobjt2t setobj +/* to table */ +#define setobj2t setobj +/* to new object */ +#define setobj2n setobj +#define setsvalue2n setsvalue + +#define setttype(obj, tt) (ttype(obj) = (tt)) + + +#define iscollectable(o) (ttype(o) >= LUA_TSTRING) + + + +typedef TValue *StkId; /* index to stack elements */ + + +/* +** String headers for string table +*/ +typedef union TString { + L_Umaxalign dummy; /* ensures maximum alignment for strings */ + struct { + CommonHeader; + lu_byte reserved; + unsigned int hash; + size_t len; + } tsv; +} TString; + + +#define getstr(ts) cast(const char *, (ts) + 1) +#define svalue(o) getstr(rawtsvalue(o)) + + + +typedef union Udata { + L_Umaxalign dummy; /* ensures maximum alignment for `local' udata */ + struct { + CommonHeader; + struct Table *metatable; + struct Table *env; + size_t len; + } uv; +} Udata; + + + + +/* +** Function Prototypes +*/ +typedef struct Proto { + CommonHeader; + TValue *k; /* constants used by the function */ + Instruction *code; + struct Proto **p; /* functions defined inside the function */ + int *lineinfo; /* map from opcodes to source lines */ + struct LocVar *locvars; /* information about local variables */ + TString **upvalues; /* upvalue names */ + TString *source; + int sizeupvalues; + int sizek; /* size of `k' */ + int sizecode; + int sizelineinfo; + int sizep; /* size of `p' */ + int sizelocvars; + int linedefined; + int lastlinedefined; + GCObject *gclist; + lu_byte nups; /* number of upvalues */ + lu_byte numparams; + lu_byte is_vararg; + lu_byte maxstacksize; +} Proto; + + +/* masks for new-style vararg */ +#define VARARG_HASARG 1 +#define VARARG_ISVARARG 2 +#define VARARG_NEEDSARG 4 + + +typedef struct LocVar { + TString *varname; + int startpc; /* first point where variable is active */ + int endpc; /* first point where variable is dead */ +} LocVar; + + + +/* +** Upvalues +*/ + +typedef struct UpVal { + CommonHeader; + TValue *v; /* points to stack or to its own value */ + union { + TValue value; /* the value (when closed) */ + struct { /* double linked list (when open) */ + struct UpVal *prev; + struct UpVal *next; + } l; + } u; +} UpVal; + + +/* +** Closures +*/ + +#define ClosureHeader \ + CommonHeader; lu_byte isC; lu_byte nupvalues; GCObject *gclist; \ + struct Table *env + +typedef struct CClosure { + ClosureHeader; + lua_CFunction f; + TValue upvalue[1]; +} CClosure; + + +typedef struct LClosure { + ClosureHeader; + struct Proto *p; + UpVal *upvals[1]; +} LClosure; + + +typedef union Closure { + CClosure c; + LClosure l; +} Closure; + + +#define iscfunction(o) (ttype(o) == LUA_TFUNCTION && clvalue(o)->c.isC) +#define isLfunction(o) (ttype(o) == LUA_TFUNCTION && !clvalue(o)->c.isC) + + +/* +** Tables +*/ + +typedef union TKey { + struct { + TValuefields; + struct Node *next; /* for chaining */ + } nk; + TValue tvk; +} TKey; + + +typedef struct Node { + TValue i_val; + TKey i_key; +} Node; + + +typedef struct Table { + CommonHeader; + lu_byte flags; /* 1<

lsizenode)) + + +#define luaO_nilobject (&luaO_nilobject_) + +LUAI_DATA const TValue luaO_nilobject_; + +#define ceillog2(x) (luaO_log2((x)-1) + 1) + +LUAI_FUNC int luaO_log2 (unsigned int x); +LUAI_FUNC int luaO_int2fb (unsigned int x); +LUAI_FUNC int luaO_fb2int (int x); +LUAI_FUNC int luaO_rawequalObj (const TValue *t1, const TValue *t2); +LUAI_FUNC int luaO_str2d (const char *s, lua_Number *result); +LUAI_FUNC const char *luaO_pushvfstring (lua_State *L, const char *fmt, + va_list argp); +LUAI_FUNC const char *luaO_pushfstring (lua_State *L, const char *fmt, ...); +LUAI_FUNC void luaO_chunkid (char *out, const char *source, size_t len); + + +#endif + diff --git a/lua-5.1.4/src/.svn/text-base/lopcodes.c.svn-base b/lua-5.1.4/src/.svn/text-base/lopcodes.c.svn-base new file mode 100644 index 0000000..4cc7452 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lopcodes.c.svn-base @@ -0,0 +1,102 @@ +/* +** $Id: lopcodes.c,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ +** See Copyright Notice in lua.h +*/ + + +#define lopcodes_c +#define LUA_CORE + + +#include "lopcodes.h" + + +/* ORDER OP */ + +const char *const luaP_opnames[NUM_OPCODES+1] = { + "MOVE", + "LOADK", + "LOADBOOL", + "LOADNIL", + "GETUPVAL", + "GETGLOBAL", + "GETTABLE", + "SETGLOBAL", + "SETUPVAL", + "SETTABLE", + "NEWTABLE", + "SELF", + "ADD", + "SUB", + "MUL", + "DIV", + "MOD", + "POW", + "UNM", + "NOT", + "LEN", + "CONCAT", + "JMP", + "EQ", + "LT", + "LE", + "TEST", + "TESTSET", + "CALL", + "TAILCALL", + "RETURN", + "FORLOOP", + "FORPREP", + "TFORLOOP", + "SETLIST", + "CLOSE", + "CLOSURE", + "VARARG", + NULL +}; + + +#define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m)) + +const lu_byte luaP_opmodes[NUM_OPCODES] = { +/* T A B C mode opcode */ + opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_MOVE */ + ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_LOADK */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LOADNIL */ + ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */ + ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_GETGLOBAL */ + ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETTABLE */ + ,opmode(0, 0, OpArgK, OpArgN, iABx) /* OP_SETGLOBAL */ + ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */ + ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABLE */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */ + ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_ADD */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SUB */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MUL */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_DIV */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MOD */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_POW */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_UNM */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_NOT */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LEN */ + ,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_CONCAT */ + ,opmode(0, 0, OpArgR, OpArgN, iAsBx) /* OP_JMP */ + ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_EQ */ + ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LT */ + ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LE */ + ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TEST */ + ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TESTSET */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_CALL */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_TAILCALL */ + ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_RETURN */ + ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORLOOP */ + ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORPREP */ + ,opmode(1, 0, OpArgN, OpArgU, iABC) /* OP_TFORLOOP */ + ,opmode(0, 0, OpArgU, OpArgU, iABC) /* OP_SETLIST */ + ,opmode(0, 0, OpArgN, OpArgN, iABC) /* OP_CLOSE */ + ,opmode(0, 1, OpArgU, OpArgN, iABx) /* OP_CLOSURE */ + ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_VARARG */ +}; + diff --git a/lua-5.1.4/src/.svn/text-base/lopcodes.h.svn-base b/lua-5.1.4/src/.svn/text-base/lopcodes.h.svn-base new file mode 100644 index 0000000..41224d6 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lopcodes.h.svn-base @@ -0,0 +1,268 @@ +/* +** $Id: lopcodes.h,v 1.125.1.1 2007/12/27 13:02:25 roberto Exp $ +** Opcodes for Lua virtual machine +** See Copyright Notice in lua.h +*/ + +#ifndef lopcodes_h +#define lopcodes_h + +#include "llimits.h" + + +/*=========================================================================== + We assume that instructions are unsigned numbers. + All instructions have an opcode in the first 6 bits. + Instructions can have the following fields: + `A' : 8 bits + `B' : 9 bits + `C' : 9 bits + `Bx' : 18 bits (`B' and `C' together) + `sBx' : signed Bx + + A signed argument is represented in excess K; that is, the number + value is the unsigned value minus K. K is exactly the maximum value + for that argument (so that -max is represented by 0, and +max is + represented by 2*max), which is half the maximum for the corresponding + unsigned argument. +===========================================================================*/ + + +enum OpMode {iABC, iABx, iAsBx}; /* basic instruction format */ + + +/* +** size and position of opcode arguments. +*/ +#define SIZE_C 9 +#define SIZE_B 9 +#define SIZE_Bx (SIZE_C + SIZE_B) +#define SIZE_A 8 + +#define SIZE_OP 6 + +#define POS_OP 0 +#define POS_A (POS_OP + SIZE_OP) +#define POS_C (POS_A + SIZE_A) +#define POS_B (POS_C + SIZE_C) +#define POS_Bx POS_C + + +/* +** limits for opcode arguments. +** we use (signed) int to manipulate most arguments, +** so they must fit in LUAI_BITSINT-1 bits (-1 for sign) +*/ +#if SIZE_Bx < LUAI_BITSINT-1 +#define MAXARG_Bx ((1<>1) /* `sBx' is signed */ +#else +#define MAXARG_Bx MAX_INT +#define MAXARG_sBx MAX_INT +#endif + + +#define MAXARG_A ((1<>POS_OP) & MASK1(SIZE_OP,0))) +#define SET_OPCODE(i,o) ((i) = (((i)&MASK0(SIZE_OP,POS_OP)) | \ + ((cast(Instruction, o)<>POS_A) & MASK1(SIZE_A,0))) +#define SETARG_A(i,u) ((i) = (((i)&MASK0(SIZE_A,POS_A)) | \ + ((cast(Instruction, u)<>POS_B) & MASK1(SIZE_B,0))) +#define SETARG_B(i,b) ((i) = (((i)&MASK0(SIZE_B,POS_B)) | \ + ((cast(Instruction, b)<>POS_C) & MASK1(SIZE_C,0))) +#define SETARG_C(i,b) ((i) = (((i)&MASK0(SIZE_C,POS_C)) | \ + ((cast(Instruction, b)<>POS_Bx) & MASK1(SIZE_Bx,0))) +#define SETARG_Bx(i,b) ((i) = (((i)&MASK0(SIZE_Bx,POS_Bx)) | \ + ((cast(Instruction, b)< C) then pc++ */ +OP_TESTSET,/* A B C if (R(B) <=> C) then R(A) := R(B) else pc++ */ + +OP_CALL,/* A B C R(A), ... ,R(A+C-2) := R(A)(R(A+1), ... ,R(A+B-1)) */ +OP_TAILCALL,/* A B C return R(A)(R(A+1), ... ,R(A+B-1)) */ +OP_RETURN,/* A B return R(A), ... ,R(A+B-2) (see note) */ + +OP_FORLOOP,/* A sBx R(A)+=R(A+2); + if R(A) =) R(A)*/ +OP_CLOSURE,/* A Bx R(A) := closure(KPROTO[Bx], R(A), ... ,R(A+n)) */ + +OP_VARARG/* A B R(A), R(A+1), ..., R(A+B-1) = vararg */ +} OpCode; + + +#define NUM_OPCODES (cast(int, OP_VARARG) + 1) + + + +/*=========================================================================== + Notes: + (*) In OP_CALL, if (B == 0) then B = top. C is the number of returns - 1, + and can be 0: OP_CALL then sets `top' to last_result+1, so + next open instruction (OP_CALL, OP_RETURN, OP_SETLIST) may use `top'. + + (*) In OP_VARARG, if (B == 0) then use actual number of varargs and + set top (like in OP_CALL with C == 0). + + (*) In OP_RETURN, if (B == 0) then return up to `top' + + (*) In OP_SETLIST, if (B == 0) then B = `top'; + if (C == 0) then next `instruction' is real C + + (*) For comparisons, A specifies what condition the test should accept + (true or false). + + (*) All `skips' (pc++) assume that next instruction is a jump +===========================================================================*/ + + +/* +** masks for instruction properties. The format is: +** bits 0-1: op mode +** bits 2-3: C arg mode +** bits 4-5: B arg mode +** bit 6: instruction set register A +** bit 7: operator is a test +*/ + +enum OpArgMask { + OpArgN, /* argument is not used */ + OpArgU, /* argument is used */ + OpArgR, /* argument is a register or a jump offset */ + OpArgK /* argument is a constant or register/constant */ +}; + +LUAI_DATA const lu_byte luaP_opmodes[NUM_OPCODES]; + +#define getOpMode(m) (cast(enum OpMode, luaP_opmodes[m] & 3)) +#define getBMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 4) & 3)) +#define getCMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 2) & 3)) +#define testAMode(m) (luaP_opmodes[m] & (1 << 6)) +#define testTMode(m) (luaP_opmodes[m] & (1 << 7)) + + +LUAI_DATA const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */ + + +/* number of list items to accumulate before a SETLIST instruction */ +#define LFIELDS_PER_FLUSH 50 + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/loslib.c.svn-base b/lua-5.1.4/src/.svn/text-base/loslib.c.svn-base new file mode 100644 index 0000000..da06a57 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/loslib.c.svn-base @@ -0,0 +1,243 @@ +/* +** $Id: loslib.c,v 1.19.1.3 2008/01/18 16:38:18 roberto Exp $ +** Standard Operating System library +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include +#include + +#define loslib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +static int os_pushresult (lua_State *L, int i, const char *filename) { + int en = errno; /* calls to Lua API may change this value */ + if (i) { + lua_pushboolean(L, 1); + return 1; + } + else { + lua_pushnil(L); + lua_pushfstring(L, "%s: %s", filename, strerror(en)); + lua_pushinteger(L, en); + return 3; + } +} + + +static int os_execute (lua_State *L) { + lua_pushinteger(L, system(luaL_optstring(L, 1, NULL))); + return 1; +} + + +static int os_remove (lua_State *L) { + const char *filename = luaL_checkstring(L, 1); + return os_pushresult(L, remove(filename) == 0, filename); +} + + +static int os_rename (lua_State *L) { + const char *fromname = luaL_checkstring(L, 1); + const char *toname = luaL_checkstring(L, 2); + return os_pushresult(L, rename(fromname, toname) == 0, fromname); +} + + +static int os_tmpname (lua_State *L) { + char buff[LUA_TMPNAMBUFSIZE]; + int err; + lua_tmpnam(buff, err); + if (err) + return luaL_error(L, "unable to generate a unique filename"); + lua_pushstring(L, buff); + return 1; +} + + +static int os_getenv (lua_State *L) { + lua_pushstring(L, getenv(luaL_checkstring(L, 1))); /* if NULL push nil */ + return 1; +} + + +static int os_clock (lua_State *L) { + lua_pushnumber(L, ((lua_Number)clock())/(lua_Number)CLOCKS_PER_SEC); + return 1; +} + + +/* +** {====================================================== +** Time/Date operations +** { year=%Y, month=%m, day=%d, hour=%H, min=%M, sec=%S, +** wday=%w+1, yday=%j, isdst=? } +** ======================================================= +*/ + +static void setfield (lua_State *L, const char *key, int value) { + lua_pushinteger(L, value); + lua_setfield(L, -2, key); +} + +static void setboolfield (lua_State *L, const char *key, int value) { + if (value < 0) /* undefined? */ + return; /* does not set field */ + lua_pushboolean(L, value); + lua_setfield(L, -2, key); +} + +static int getboolfield (lua_State *L, const char *key) { + int res; + lua_getfield(L, -1, key); + res = lua_isnil(L, -1) ? -1 : lua_toboolean(L, -1); + lua_pop(L, 1); + return res; +} + + +static int getfield (lua_State *L, const char *key, int d) { + int res; + lua_getfield(L, -1, key); + if (lua_isnumber(L, -1)) + res = (int)lua_tointeger(L, -1); + else { + if (d < 0) + return luaL_error(L, "field " LUA_QS " missing in date table", key); + res = d; + } + lua_pop(L, 1); + return res; +} + + +static int os_date (lua_State *L) { + const char *s = luaL_optstring(L, 1, "%c"); + time_t t = luaL_opt(L, (time_t)luaL_checknumber, 2, time(NULL)); + struct tm *stm; + if (*s == '!') { /* UTC? */ + stm = gmtime(&t); + s++; /* skip `!' */ + } + else + stm = localtime(&t); + if (stm == NULL) /* invalid date? */ + lua_pushnil(L); + else if (strcmp(s, "*t") == 0) { + lua_createtable(L, 0, 9); /* 9 = number of fields */ + setfield(L, "sec", stm->tm_sec); + setfield(L, "min", stm->tm_min); + setfield(L, "hour", stm->tm_hour); + setfield(L, "day", stm->tm_mday); + setfield(L, "month", stm->tm_mon+1); + setfield(L, "year", stm->tm_year+1900); + setfield(L, "wday", stm->tm_wday+1); + setfield(L, "yday", stm->tm_yday+1); + setboolfield(L, "isdst", stm->tm_isdst); + } + else { + char cc[3]; + luaL_Buffer b; + cc[0] = '%'; cc[2] = '\0'; + luaL_buffinit(L, &b); + for (; *s; s++) { + if (*s != '%' || *(s + 1) == '\0') /* no conversion specifier? */ + luaL_addchar(&b, *s); + else { + size_t reslen; + char buff[200]; /* should be big enough for any conversion result */ + cc[1] = *(++s); + reslen = strftime(buff, sizeof(buff), cc, stm); + luaL_addlstring(&b, buff, reslen); + } + } + luaL_pushresult(&b); + } + return 1; +} + + +static int os_time (lua_State *L) { + time_t t; + if (lua_isnoneornil(L, 1)) /* called without args? */ + t = time(NULL); /* get current time */ + else { + struct tm ts; + luaL_checktype(L, 1, LUA_TTABLE); + lua_settop(L, 1); /* make sure table is at the top */ + ts.tm_sec = getfield(L, "sec", 0); + ts.tm_min = getfield(L, "min", 0); + ts.tm_hour = getfield(L, "hour", 12); + ts.tm_mday = getfield(L, "day", -1); + ts.tm_mon = getfield(L, "month", -1) - 1; + ts.tm_year = getfield(L, "year", -1) - 1900; + ts.tm_isdst = getboolfield(L, "isdst"); + t = mktime(&ts); + } + if (t == (time_t)(-1)) + lua_pushnil(L); + else + lua_pushnumber(L, (lua_Number)t); + return 1; +} + + +static int os_difftime (lua_State *L) { + lua_pushnumber(L, difftime((time_t)(luaL_checknumber(L, 1)), + (time_t)(luaL_optnumber(L, 2, 0)))); + return 1; +} + +/* }====================================================== */ + + +static int os_setlocale (lua_State *L) { + static const int cat[] = {LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, + LC_NUMERIC, LC_TIME}; + static const char *const catnames[] = {"all", "collate", "ctype", "monetary", + "numeric", "time", NULL}; + const char *l = luaL_optstring(L, 1, NULL); + int op = luaL_checkoption(L, 2, "all", catnames); + lua_pushstring(L, setlocale(cat[op], l)); + return 1; +} + + +static int os_exit (lua_State *L) { + exit(luaL_optint(L, 1, EXIT_SUCCESS)); +} + +static const luaL_Reg syslib[] = { + {"clock", os_clock}, + {"date", os_date}, + {"difftime", os_difftime}, + {"execute", os_execute}, + {"exit", os_exit}, + {"getenv", os_getenv}, + {"remove", os_remove}, + {"rename", os_rename}, + {"setlocale", os_setlocale}, + {"time", os_time}, + {"tmpname", os_tmpname}, + {NULL, NULL} +}; + +/* }====================================================== */ + + + +LUALIB_API int luaopen_os (lua_State *L) { + luaL_register(L, LUA_OSLIBNAME, syslib); + return 1; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lparser.c.svn-base b/lua-5.1.4/src/.svn/text-base/lparser.c.svn-base new file mode 100644 index 0000000..1e2a9a8 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lparser.c.svn-base @@ -0,0 +1,1339 @@ +/* +** $Id: lparser.c,v 2.42.1.3 2007/12/28 15:32:23 roberto Exp $ +** Lua Parser +** See Copyright Notice in lua.h +*/ + + +#include + +#define lparser_c +#define LUA_CORE + +#include "lua.h" + +#include "lcode.h" +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "llex.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" + + + +#define hasmultret(k) ((k) == VCALL || (k) == VVARARG) + +#define getlocvar(fs, i) ((fs)->f->locvars[(fs)->actvar[i]]) + +#define luaY_checklimit(fs,v,l,m) if ((v)>(l)) errorlimit(fs,l,m) + + +/* +** nodes for block list (list of active blocks) +*/ +typedef struct BlockCnt { + struct BlockCnt *previous; /* chain */ + int breaklist; /* list of jumps out of this loop */ + lu_byte nactvar; /* # active locals outside the breakable structure */ + lu_byte upval; /* true if some variable in the block is an upvalue */ + lu_byte isbreakable; /* true if `block' is a loop */ +} BlockCnt; + + + +/* +** prototypes for recursive non-terminal functions +*/ +static void chunk (LexState *ls); +static void expr (LexState *ls, expdesc *v); + + +static void anchor_token (LexState *ls) { + if (ls->t.token == TK_NAME || ls->t.token == TK_STRING) { + TString *ts = ls->t.seminfo.ts; + luaX_newstring(ls, getstr(ts), ts->tsv.len); + } +} + + +static void error_expected (LexState *ls, int token) { + luaX_syntaxerror(ls, + luaO_pushfstring(ls->L, LUA_QS " expected", luaX_token2str(ls, token))); +} + + +static void errorlimit (FuncState *fs, int limit, const char *what) { + const char *msg = (fs->f->linedefined == 0) ? + luaO_pushfstring(fs->L, "main function has more than %d %s", limit, what) : + luaO_pushfstring(fs->L, "function at line %d has more than %d %s", + fs->f->linedefined, limit, what); + luaX_lexerror(fs->ls, msg, 0); +} + + +static int testnext (LexState *ls, int c) { + if (ls->t.token == c) { + luaX_next(ls); + return 1; + } + else return 0; +} + + +static void check (LexState *ls, int c) { + if (ls->t.token != c) + error_expected(ls, c); +} + +static void checknext (LexState *ls, int c) { + check(ls, c); + luaX_next(ls); +} + + +#define check_condition(ls,c,msg) { if (!(c)) luaX_syntaxerror(ls, msg); } + + + +static void check_match (LexState *ls, int what, int who, int where) { + if (!testnext(ls, what)) { + if (where == ls->linenumber) + error_expected(ls, what); + else { + luaX_syntaxerror(ls, luaO_pushfstring(ls->L, + LUA_QS " expected (to close " LUA_QS " at line %d)", + luaX_token2str(ls, what), luaX_token2str(ls, who), where)); + } + } +} + + +static TString *str_checkname (LexState *ls) { + TString *ts; + check(ls, TK_NAME); + ts = ls->t.seminfo.ts; + luaX_next(ls); + return ts; +} + + +static void init_exp (expdesc *e, expkind k, int i) { + e->f = e->t = NO_JUMP; + e->k = k; + e->u.s.info = i; +} + + +static void codestring (LexState *ls, expdesc *e, TString *s) { + init_exp(e, VK, luaK_stringK(ls->fs, s)); +} + + +static void checkname(LexState *ls, expdesc *e) { + codestring(ls, e, str_checkname(ls)); +} + + +static int registerlocalvar (LexState *ls, TString *varname) { + FuncState *fs = ls->fs; + Proto *f = fs->f; + int oldsize = f->sizelocvars; + luaM_growvector(ls->L, f->locvars, fs->nlocvars, f->sizelocvars, + LocVar, SHRT_MAX, "too many local variables"); + while (oldsize < f->sizelocvars) f->locvars[oldsize++].varname = NULL; + f->locvars[fs->nlocvars].varname = varname; + luaC_objbarrier(ls->L, f, varname); + return fs->nlocvars++; +} + + +#define new_localvarliteral(ls,v,n) \ + new_localvar(ls, luaX_newstring(ls, "" v, (sizeof(v)/sizeof(char))-1), n) + + +static void new_localvar (LexState *ls, TString *name, int n) { + FuncState *fs = ls->fs; + luaY_checklimit(fs, fs->nactvar+n+1, LUAI_MAXVARS, "local variables"); + fs->actvar[fs->nactvar+n] = cast(unsigned short, registerlocalvar(ls, name)); +} + + +static void adjustlocalvars (LexState *ls, int nvars) { + FuncState *fs = ls->fs; + fs->nactvar = cast_byte(fs->nactvar + nvars); + for (; nvars; nvars--) { + getlocvar(fs, fs->nactvar - nvars).startpc = fs->pc; + } +} + + +static void removevars (LexState *ls, int tolevel) { + FuncState *fs = ls->fs; + while (fs->nactvar > tolevel) + getlocvar(fs, --fs->nactvar).endpc = fs->pc; +} + + +static int indexupvalue (FuncState *fs, TString *name, expdesc *v) { + int i; + Proto *f = fs->f; + int oldsize = f->sizeupvalues; + for (i=0; inups; i++) { + if (fs->upvalues[i].k == v->k && fs->upvalues[i].info == v->u.s.info) { + lua_assert(f->upvalues[i] == name); + return i; + } + } + /* new one */ + luaY_checklimit(fs, f->nups + 1, LUAI_MAXUPVALUES, "upvalues"); + luaM_growvector(fs->L, f->upvalues, f->nups, f->sizeupvalues, + TString *, MAX_INT, ""); + while (oldsize < f->sizeupvalues) f->upvalues[oldsize++] = NULL; + f->upvalues[f->nups] = name; + luaC_objbarrier(fs->L, f, name); + lua_assert(v->k == VLOCAL || v->k == VUPVAL); + fs->upvalues[f->nups].k = cast_byte(v->k); + fs->upvalues[f->nups].info = cast_byte(v->u.s.info); + return f->nups++; +} + + +static int searchvar (FuncState *fs, TString *n) { + int i; + for (i=fs->nactvar-1; i >= 0; i--) { + if (n == getlocvar(fs, i).varname) + return i; + } + return -1; /* not found */ +} + + +static void markupval (FuncState *fs, int level) { + BlockCnt *bl = fs->bl; + while (bl && bl->nactvar > level) bl = bl->previous; + if (bl) bl->upval = 1; +} + + +static int singlevaraux (FuncState *fs, TString *n, expdesc *var, int base) { + if (fs == NULL) { /* no more levels? */ + init_exp(var, VGLOBAL, NO_REG); /* default is global variable */ + return VGLOBAL; + } + else { + int v = searchvar(fs, n); /* look up at current level */ + if (v >= 0) { + init_exp(var, VLOCAL, v); + if (!base) + markupval(fs, v); /* local will be used as an upval */ + return VLOCAL; + } + else { /* not found at current level; try upper one */ + if (singlevaraux(fs->prev, n, var, 0) == VGLOBAL) + return VGLOBAL; + var->u.s.info = indexupvalue(fs, n, var); /* else was LOCAL or UPVAL */ + var->k = VUPVAL; /* upvalue in this level */ + return VUPVAL; + } + } +} + + +static void singlevar (LexState *ls, expdesc *var) { + TString *varname = str_checkname(ls); + FuncState *fs = ls->fs; + if (singlevaraux(fs, varname, var, 1) == VGLOBAL) + var->u.s.info = luaK_stringK(fs, varname); /* info points to global name */ +} + + +static void adjust_assign (LexState *ls, int nvars, int nexps, expdesc *e) { + FuncState *fs = ls->fs; + int extra = nvars - nexps; + if (hasmultret(e->k)) { + extra++; /* includes call itself */ + if (extra < 0) extra = 0; + luaK_setreturns(fs, e, extra); /* last exp. provides the difference */ + if (extra > 1) luaK_reserveregs(fs, extra-1); + } + else { + if (e->k != VVOID) luaK_exp2nextreg(fs, e); /* close last expression */ + if (extra > 0) { + int reg = fs->freereg; + luaK_reserveregs(fs, extra); + luaK_nil(fs, reg, extra); + } + } +} + + +static void enterlevel (LexState *ls) { + if (++ls->L->nCcalls > LUAI_MAXCCALLS) + luaX_lexerror(ls, "chunk has too many syntax levels", 0); +} + + +#define leavelevel(ls) ((ls)->L->nCcalls--) + + +static void enterblock (FuncState *fs, BlockCnt *bl, lu_byte isbreakable) { + bl->breaklist = NO_JUMP; + bl->isbreakable = isbreakable; + bl->nactvar = fs->nactvar; + bl->upval = 0; + bl->previous = fs->bl; + fs->bl = bl; + lua_assert(fs->freereg == fs->nactvar); +} + + +static void leaveblock (FuncState *fs) { + BlockCnt *bl = fs->bl; + fs->bl = bl->previous; + removevars(fs->ls, bl->nactvar); + if (bl->upval) + luaK_codeABC(fs, OP_CLOSE, bl->nactvar, 0, 0); + /* a block either controls scope or breaks (never both) */ + lua_assert(!bl->isbreakable || !bl->upval); + lua_assert(bl->nactvar == fs->nactvar); + fs->freereg = fs->nactvar; /* free registers */ + luaK_patchtohere(fs, bl->breaklist); +} + + +static void pushclosure (LexState *ls, FuncState *func, expdesc *v) { + FuncState *fs = ls->fs; + Proto *f = fs->f; + int oldsize = f->sizep; + int i; + luaM_growvector(ls->L, f->p, fs->np, f->sizep, Proto *, + MAXARG_Bx, "constant table overflow"); + while (oldsize < f->sizep) f->p[oldsize++] = NULL; + f->p[fs->np++] = func->f; + luaC_objbarrier(ls->L, f, func->f); + init_exp(v, VRELOCABLE, luaK_codeABx(fs, OP_CLOSURE, 0, fs->np-1)); + for (i=0; if->nups; i++) { + OpCode o = (func->upvalues[i].k == VLOCAL) ? OP_MOVE : OP_GETUPVAL; + luaK_codeABC(fs, o, 0, func->upvalues[i].info, 0); + } +} + + +static void open_func (LexState *ls, FuncState *fs) { + lua_State *L = ls->L; + Proto *f = luaF_newproto(L); + fs->f = f; + fs->prev = ls->fs; /* linked list of funcstates */ + fs->ls = ls; + fs->L = L; + ls->fs = fs; + fs->pc = 0; + fs->lasttarget = -1; + fs->jpc = NO_JUMP; + fs->freereg = 0; + fs->nk = 0; + fs->np = 0; + fs->nlocvars = 0; + fs->nactvar = 0; + fs->bl = NULL; + f->source = ls->source; + f->maxstacksize = 2; /* registers 0/1 are always valid */ + fs->h = luaH_new(L, 0, 0); + /* anchor table of constants and prototype (to avoid being collected) */ + sethvalue2s(L, L->top, fs->h); + incr_top(L); + setptvalue2s(L, L->top, f); + incr_top(L); +} + + +static void close_func (LexState *ls) { + lua_State *L = ls->L; + FuncState *fs = ls->fs; + Proto *f = fs->f; + removevars(ls, 0); + luaK_ret(fs, 0, 0); /* final return */ + luaM_reallocvector(L, f->code, f->sizecode, fs->pc, Instruction); + f->sizecode = fs->pc; + luaM_reallocvector(L, f->lineinfo, f->sizelineinfo, fs->pc, int); + f->sizelineinfo = fs->pc; + luaM_reallocvector(L, f->k, f->sizek, fs->nk, TValue); + f->sizek = fs->nk; + luaM_reallocvector(L, f->p, f->sizep, fs->np, Proto *); + f->sizep = fs->np; + luaM_reallocvector(L, f->locvars, f->sizelocvars, fs->nlocvars, LocVar); + f->sizelocvars = fs->nlocvars; + luaM_reallocvector(L, f->upvalues, f->sizeupvalues, f->nups, TString *); + f->sizeupvalues = f->nups; + lua_assert(luaG_checkcode(f)); + lua_assert(fs->bl == NULL); + ls->fs = fs->prev; + L->top -= 2; /* remove table and prototype from the stack */ + /* last token read was anchored in defunct function; must reanchor it */ + if (fs) anchor_token(ls); +} + + +Proto *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, const char *name) { + struct LexState lexstate; + struct FuncState funcstate; + lexstate.buff = buff; + luaX_setinput(L, &lexstate, z, luaS_new(L, name)); + open_func(&lexstate, &funcstate); + funcstate.f->is_vararg = VARARG_ISVARARG; /* main func. is always vararg */ + luaX_next(&lexstate); /* read first token */ + chunk(&lexstate); + check(&lexstate, TK_EOS); + close_func(&lexstate); + lua_assert(funcstate.prev == NULL); + lua_assert(funcstate.f->nups == 0); + lua_assert(lexstate.fs == NULL); + return funcstate.f; +} + + + +/*============================================================*/ +/* GRAMMAR RULES */ +/*============================================================*/ + + +static void field (LexState *ls, expdesc *v) { + /* field -> ['.' | ':'] NAME */ + FuncState *fs = ls->fs; + expdesc key; + luaK_exp2anyreg(fs, v); + luaX_next(ls); /* skip the dot or colon */ + checkname(ls, &key); + luaK_indexed(fs, v, &key); +} + + +static void yindex (LexState *ls, expdesc *v) { + /* index -> '[' expr ']' */ + luaX_next(ls); /* skip the '[' */ + expr(ls, v); + luaK_exp2val(ls->fs, v); + checknext(ls, ']'); +} + + +/* +** {====================================================================== +** Rules for Constructors +** ======================================================================= +*/ + + +struct ConsControl { + expdesc v; /* last list item read */ + expdesc *t; /* table descriptor */ + int nh; /* total number of `record' elements */ + int na; /* total number of array elements */ + int tostore; /* number of array elements pending to be stored */ +}; + + +static void recfield (LexState *ls, struct ConsControl *cc) { + /* recfield -> (NAME | `['exp1`]') = exp1 */ + FuncState *fs = ls->fs; + int reg = ls->fs->freereg; + expdesc key, val; + int rkkey; + if (ls->t.token == TK_NAME) { + luaY_checklimit(fs, cc->nh, MAX_INT, "items in a constructor"); + checkname(ls, &key); + } + else /* ls->t.token == '[' */ + yindex(ls, &key); + cc->nh++; + checknext(ls, '='); + rkkey = luaK_exp2RK(fs, &key); + expr(ls, &val); + luaK_codeABC(fs, OP_SETTABLE, cc->t->u.s.info, rkkey, luaK_exp2RK(fs, &val)); + fs->freereg = reg; /* free registers */ +} + + +static void closelistfield (FuncState *fs, struct ConsControl *cc) { + if (cc->v.k == VVOID) return; /* there is no list item */ + luaK_exp2nextreg(fs, &cc->v); + cc->v.k = VVOID; + if (cc->tostore == LFIELDS_PER_FLUSH) { + luaK_setlist(fs, cc->t->u.s.info, cc->na, cc->tostore); /* flush */ + cc->tostore = 0; /* no more items pending */ + } +} + + +static void lastlistfield (FuncState *fs, struct ConsControl *cc) { + if (cc->tostore == 0) return; + if (hasmultret(cc->v.k)) { + luaK_setmultret(fs, &cc->v); + luaK_setlist(fs, cc->t->u.s.info, cc->na, LUA_MULTRET); + cc->na--; /* do not count last expression (unknown number of elements) */ + } + else { + if (cc->v.k != VVOID) + luaK_exp2nextreg(fs, &cc->v); + luaK_setlist(fs, cc->t->u.s.info, cc->na, cc->tostore); + } +} + + +static void listfield (LexState *ls, struct ConsControl *cc) { + expr(ls, &cc->v); + luaY_checklimit(ls->fs, cc->na, MAX_INT, "items in a constructor"); + cc->na++; + cc->tostore++; +} + + +static void constructor (LexState *ls, expdesc *t) { + /* constructor -> ?? */ + FuncState *fs = ls->fs; + int line = ls->linenumber; + int pc = luaK_codeABC(fs, OP_NEWTABLE, 0, 0, 0); + struct ConsControl cc; + cc.na = cc.nh = cc.tostore = 0; + cc.t = t; + init_exp(t, VRELOCABLE, pc); + init_exp(&cc.v, VVOID, 0); /* no value (yet) */ + luaK_exp2nextreg(ls->fs, t); /* fix it at stack top (for gc) */ + checknext(ls, '{'); + do { + lua_assert(cc.v.k == VVOID || cc.tostore > 0); + if (ls->t.token == '}') break; + closelistfield(fs, &cc); + switch(ls->t.token) { + case TK_NAME: { /* may be listfields or recfields */ + luaX_lookahead(ls); + if (ls->lookahead.token != '=') /* expression? */ + listfield(ls, &cc); + else + recfield(ls, &cc); + break; + } + case '[': { /* constructor_item -> recfield */ + recfield(ls, &cc); + break; + } + default: { /* constructor_part -> listfield */ + listfield(ls, &cc); + break; + } + } + } while (testnext(ls, ',') || testnext(ls, ';')); + check_match(ls, '}', '{', line); + lastlistfield(fs, &cc); + SETARG_B(fs->f->code[pc], luaO_int2fb(cc.na)); /* set initial array size */ + SETARG_C(fs->f->code[pc], luaO_int2fb(cc.nh)); /* set initial table size */ +} + +/* }====================================================================== */ + + + +static void parlist (LexState *ls) { + /* parlist -> [ param { `,' param } ] */ + FuncState *fs = ls->fs; + Proto *f = fs->f; + int nparams = 0; + f->is_vararg = 0; + if (ls->t.token != ')') { /* is `parlist' not empty? */ + do { + switch (ls->t.token) { + case TK_NAME: { /* param -> NAME */ + new_localvar(ls, str_checkname(ls), nparams++); + break; + } + case TK_DOTS: { /* param -> `...' */ + luaX_next(ls); +#if defined(LUA_COMPAT_VARARG) + /* use `arg' as default name */ + new_localvarliteral(ls, "arg", nparams++); + f->is_vararg = VARARG_HASARG | VARARG_NEEDSARG; +#endif + f->is_vararg |= VARARG_ISVARARG; + break; + } + default: luaX_syntaxerror(ls, " or " LUA_QL("...") " expected"); + } + } while (!f->is_vararg && testnext(ls, ',')); + } + adjustlocalvars(ls, nparams); + f->numparams = cast_byte(fs->nactvar - (f->is_vararg & VARARG_HASARG)); + luaK_reserveregs(fs, fs->nactvar); /* reserve register for parameters */ +} + + +static void body (LexState *ls, expdesc *e, int needself, int line) { + /* body -> `(' parlist `)' chunk END */ + FuncState new_fs; + open_func(ls, &new_fs); + new_fs.f->linedefined = line; + checknext(ls, '('); + if (needself) { + new_localvarliteral(ls, "self", 0); + adjustlocalvars(ls, 1); + } + parlist(ls); + checknext(ls, ')'); + chunk(ls); + new_fs.f->lastlinedefined = ls->linenumber; + check_match(ls, TK_END, TK_FUNCTION, line); + close_func(ls); + pushclosure(ls, &new_fs, e); +} + + +static int explist1 (LexState *ls, expdesc *v) { + /* explist1 -> expr { `,' expr } */ + int n = 1; /* at least one expression */ + expr(ls, v); + while (testnext(ls, ',')) { + luaK_exp2nextreg(ls->fs, v); + expr(ls, v); + n++; + } + return n; +} + + +static void funcargs (LexState *ls, expdesc *f) { + FuncState *fs = ls->fs; + expdesc args; + int base, nparams; + int line = ls->linenumber; + switch (ls->t.token) { + case '(': { /* funcargs -> `(' [ explist1 ] `)' */ + if (line != ls->lastline) + luaX_syntaxerror(ls,"ambiguous syntax (function call x new statement)"); + luaX_next(ls); + if (ls->t.token == ')') /* arg list is empty? */ + args.k = VVOID; + else { + explist1(ls, &args); + luaK_setmultret(fs, &args); + } + check_match(ls, ')', '(', line); + break; + } + case '{': { /* funcargs -> constructor */ + constructor(ls, &args); + break; + } + case TK_STRING: { /* funcargs -> STRING */ + codestring(ls, &args, ls->t.seminfo.ts); + luaX_next(ls); /* must use `seminfo' before `next' */ + break; + } + default: { + luaX_syntaxerror(ls, "function arguments expected"); + return; + } + } + lua_assert(f->k == VNONRELOC); + base = f->u.s.info; /* base register for call */ + if (hasmultret(args.k)) + nparams = LUA_MULTRET; /* open call */ + else { + if (args.k != VVOID) + luaK_exp2nextreg(fs, &args); /* close last argument */ + nparams = fs->freereg - (base+1); + } + init_exp(f, VCALL, luaK_codeABC(fs, OP_CALL, base, nparams+1, 2)); + luaK_fixline(fs, line); + fs->freereg = base+1; /* call remove function and arguments and leaves + (unless changed) one result */ +} + + + + +/* +** {====================================================================== +** Expression parsing +** ======================================================================= +*/ + + +static void prefixexp (LexState *ls, expdesc *v) { + /* prefixexp -> NAME | '(' expr ')' */ + switch (ls->t.token) { + case '(': { + int line = ls->linenumber; + luaX_next(ls); + expr(ls, v); + check_match(ls, ')', '(', line); + luaK_dischargevars(ls->fs, v); + return; + } + case TK_NAME: { + singlevar(ls, v); + return; + } + default: { + luaX_syntaxerror(ls, "unexpected symbol"); + return; + } + } +} + + +static void primaryexp (LexState *ls, expdesc *v) { + /* primaryexp -> + prefixexp { `.' NAME | `[' exp `]' | `:' NAME funcargs | funcargs } */ + FuncState *fs = ls->fs; + prefixexp(ls, v); + for (;;) { + switch (ls->t.token) { + case '.': { /* field */ + field(ls, v); + break; + } + case '[': { /* `[' exp1 `]' */ + expdesc key; + luaK_exp2anyreg(fs, v); + yindex(ls, &key); + luaK_indexed(fs, v, &key); + break; + } + case ':': { /* `:' NAME funcargs */ + expdesc key; + luaX_next(ls); + checkname(ls, &key); + luaK_self(fs, v, &key); + funcargs(ls, v); + break; + } + case '(': case TK_STRING: case '{': { /* funcargs */ + luaK_exp2nextreg(fs, v); + funcargs(ls, v); + break; + } + default: return; + } + } +} + + +static void simpleexp (LexState *ls, expdesc *v) { + /* simpleexp -> NUMBER | STRING | NIL | true | false | ... | + constructor | FUNCTION body | primaryexp */ + switch (ls->t.token) { + case TK_NUMBER: { + init_exp(v, VKNUM, 0); + v->u.nval = ls->t.seminfo.r; + break; + } + case TK_STRING: { + codestring(ls, v, ls->t.seminfo.ts); + break; + } + case TK_NIL: { + init_exp(v, VNIL, 0); + break; + } + case TK_TRUE: { + init_exp(v, VTRUE, 0); + break; + } + case TK_FALSE: { + init_exp(v, VFALSE, 0); + break; + } + case TK_DOTS: { /* vararg */ + FuncState *fs = ls->fs; + check_condition(ls, fs->f->is_vararg, + "cannot use " LUA_QL("...") " outside a vararg function"); + fs->f->is_vararg &= ~VARARG_NEEDSARG; /* don't need 'arg' */ + init_exp(v, VVARARG, luaK_codeABC(fs, OP_VARARG, 0, 1, 0)); + break; + } + case '{': { /* constructor */ + constructor(ls, v); + return; + } + case TK_FUNCTION: { + luaX_next(ls); + body(ls, v, 0, ls->linenumber); + return; + } + default: { + primaryexp(ls, v); + return; + } + } + luaX_next(ls); +} + + +static UnOpr getunopr (int op) { + switch (op) { + case TK_NOT: return OPR_NOT; + case '-': return OPR_MINUS; + case '#': return OPR_LEN; + default: return OPR_NOUNOPR; + } +} + + +static BinOpr getbinopr (int op) { + switch (op) { + case '+': return OPR_ADD; + case '-': return OPR_SUB; + case '*': return OPR_MUL; + case '/': return OPR_DIV; + case '%': return OPR_MOD; + case '^': return OPR_POW; + case TK_CONCAT: return OPR_CONCAT; + case TK_NE: return OPR_NE; + case TK_EQ: return OPR_EQ; + case '<': return OPR_LT; + case TK_LE: return OPR_LE; + case '>': return OPR_GT; + case TK_GE: return OPR_GE; + case TK_AND: return OPR_AND; + case TK_OR: return OPR_OR; + default: return OPR_NOBINOPR; + } +} + + +static const struct { + lu_byte left; /* left priority for each binary operator */ + lu_byte right; /* right priority */ +} priority[] = { /* ORDER OPR */ + {6, 6}, {6, 6}, {7, 7}, {7, 7}, {7, 7}, /* `+' `-' `/' `%' */ + {10, 9}, {5, 4}, /* power and concat (right associative) */ + {3, 3}, {3, 3}, /* equality and inequality */ + {3, 3}, {3, 3}, {3, 3}, {3, 3}, /* order */ + {2, 2}, {1, 1} /* logical (and/or) */ +}; + +#define UNARY_PRIORITY 8 /* priority for unary operators */ + + +/* +** subexpr -> (simpleexp | unop subexpr) { binop subexpr } +** where `binop' is any binary operator with a priority higher than `limit' +*/ +static BinOpr subexpr (LexState *ls, expdesc *v, unsigned int limit) { + BinOpr op; + UnOpr uop; + enterlevel(ls); + uop = getunopr(ls->t.token); + if (uop != OPR_NOUNOPR) { + luaX_next(ls); + subexpr(ls, v, UNARY_PRIORITY); + luaK_prefix(ls->fs, uop, v); + } + else simpleexp(ls, v); + /* expand while operators have priorities higher than `limit' */ + op = getbinopr(ls->t.token); + while (op != OPR_NOBINOPR && priority[op].left > limit) { + expdesc v2; + BinOpr nextop; + luaX_next(ls); + luaK_infix(ls->fs, op, v); + /* read sub-expression with higher priority */ + nextop = subexpr(ls, &v2, priority[op].right); + luaK_posfix(ls->fs, op, v, &v2); + op = nextop; + } + leavelevel(ls); + return op; /* return first untreated operator */ +} + + +static void expr (LexState *ls, expdesc *v) { + subexpr(ls, v, 0); +} + +/* }==================================================================== */ + + + +/* +** {====================================================================== +** Rules for Statements +** ======================================================================= +*/ + + +static int block_follow (int token) { + switch (token) { + case TK_ELSE: case TK_ELSEIF: case TK_END: + case TK_UNTIL: case TK_EOS: + return 1; + default: return 0; + } +} + + +static void block (LexState *ls) { + /* block -> chunk */ + FuncState *fs = ls->fs; + BlockCnt bl; + enterblock(fs, &bl, 0); + chunk(ls); + lua_assert(bl.breaklist == NO_JUMP); + leaveblock(fs); +} + + +/* +** structure to chain all variables in the left-hand side of an +** assignment +*/ +struct LHS_assign { + struct LHS_assign *prev; + expdesc v; /* variable (global, local, upvalue, or indexed) */ +}; + + +/* +** check whether, in an assignment to a local variable, the local variable +** is needed in a previous assignment (to a table). If so, save original +** local value in a safe place and use this safe copy in the previous +** assignment. +*/ +static void check_conflict (LexState *ls, struct LHS_assign *lh, expdesc *v) { + FuncState *fs = ls->fs; + int extra = fs->freereg; /* eventual position to save local variable */ + int conflict = 0; + for (; lh; lh = lh->prev) { + if (lh->v.k == VINDEXED) { + if (lh->v.u.s.info == v->u.s.info) { /* conflict? */ + conflict = 1; + lh->v.u.s.info = extra; /* previous assignment will use safe copy */ + } + if (lh->v.u.s.aux == v->u.s.info) { /* conflict? */ + conflict = 1; + lh->v.u.s.aux = extra; /* previous assignment will use safe copy */ + } + } + } + if (conflict) { + luaK_codeABC(fs, OP_MOVE, fs->freereg, v->u.s.info, 0); /* make copy */ + luaK_reserveregs(fs, 1); + } +} + + +static void assignment (LexState *ls, struct LHS_assign *lh, int nvars) { + expdesc e; + check_condition(ls, VLOCAL <= lh->v.k && lh->v.k <= VINDEXED, + "syntax error"); + if (testnext(ls, ',')) { /* assignment -> `,' primaryexp assignment */ + struct LHS_assign nv; + nv.prev = lh; + primaryexp(ls, &nv.v); + if (nv.v.k == VLOCAL) + check_conflict(ls, lh, &nv.v); + luaY_checklimit(ls->fs, nvars, LUAI_MAXCCALLS - ls->L->nCcalls, + "variables in assignment"); + assignment(ls, &nv, nvars+1); + } + else { /* assignment -> `=' explist1 */ + int nexps; + checknext(ls, '='); + nexps = explist1(ls, &e); + if (nexps != nvars) { + adjust_assign(ls, nvars, nexps, &e); + if (nexps > nvars) + ls->fs->freereg -= nexps - nvars; /* remove extra values */ + } + else { + luaK_setoneret(ls->fs, &e); /* close last expression */ + luaK_storevar(ls->fs, &lh->v, &e); + return; /* avoid default */ + } + } + init_exp(&e, VNONRELOC, ls->fs->freereg-1); /* default assignment */ + luaK_storevar(ls->fs, &lh->v, &e); +} + + +static int cond (LexState *ls) { + /* cond -> exp */ + expdesc v; + expr(ls, &v); /* read condition */ + if (v.k == VNIL) v.k = VFALSE; /* `falses' are all equal here */ + luaK_goiftrue(ls->fs, &v); + return v.f; +} + + +static void breakstat (LexState *ls) { + FuncState *fs = ls->fs; + BlockCnt *bl = fs->bl; + int upval = 0; + while (bl && !bl->isbreakable) { + upval |= bl->upval; + bl = bl->previous; + } + if (!bl) + luaX_syntaxerror(ls, "no loop to break"); + if (upval) + luaK_codeABC(fs, OP_CLOSE, bl->nactvar, 0, 0); + luaK_concat(fs, &bl->breaklist, luaK_jump(fs)); +} + + +static void whilestat (LexState *ls, int line) { + /* whilestat -> WHILE cond DO block END */ + FuncState *fs = ls->fs; + int whileinit; + int condexit; + BlockCnt bl; + luaX_next(ls); /* skip WHILE */ + whileinit = luaK_getlabel(fs); + condexit = cond(ls); + enterblock(fs, &bl, 1); + checknext(ls, TK_DO); + block(ls); + luaK_patchlist(fs, luaK_jump(fs), whileinit); + check_match(ls, TK_END, TK_WHILE, line); + leaveblock(fs); + luaK_patchtohere(fs, condexit); /* false conditions finish the loop */ +} + + +static void repeatstat (LexState *ls, int line) { + /* repeatstat -> REPEAT block UNTIL cond */ + int condexit; + FuncState *fs = ls->fs; + int repeat_init = luaK_getlabel(fs); + BlockCnt bl1, bl2; + enterblock(fs, &bl1, 1); /* loop block */ + enterblock(fs, &bl2, 0); /* scope block */ + luaX_next(ls); /* skip REPEAT */ + chunk(ls); + check_match(ls, TK_UNTIL, TK_REPEAT, line); + condexit = cond(ls); /* read condition (inside scope block) */ + if (!bl2.upval) { /* no upvalues? */ + leaveblock(fs); /* finish scope */ + luaK_patchlist(ls->fs, condexit, repeat_init); /* close the loop */ + } + else { /* complete semantics when there are upvalues */ + breakstat(ls); /* if condition then break */ + luaK_patchtohere(ls->fs, condexit); /* else... */ + leaveblock(fs); /* finish scope... */ + luaK_patchlist(ls->fs, luaK_jump(fs), repeat_init); /* and repeat */ + } + leaveblock(fs); /* finish loop */ +} + + +static int exp1 (LexState *ls) { + expdesc e; + int k; + expr(ls, &e); + k = e.k; + luaK_exp2nextreg(ls->fs, &e); + return k; +} + + +static void forbody (LexState *ls, int base, int line, int nvars, int isnum) { + /* forbody -> DO block */ + BlockCnt bl; + FuncState *fs = ls->fs; + int prep, endfor; + adjustlocalvars(ls, 3); /* control variables */ + checknext(ls, TK_DO); + prep = isnum ? luaK_codeAsBx(fs, OP_FORPREP, base, NO_JUMP) : luaK_jump(fs); + enterblock(fs, &bl, 0); /* scope for declared variables */ + adjustlocalvars(ls, nvars); + luaK_reserveregs(fs, nvars); + block(ls); + leaveblock(fs); /* end of scope for declared variables */ + luaK_patchtohere(fs, prep); + endfor = (isnum) ? luaK_codeAsBx(fs, OP_FORLOOP, base, NO_JUMP) : + luaK_codeABC(fs, OP_TFORLOOP, base, 0, nvars); + luaK_fixline(fs, line); /* pretend that `OP_FOR' starts the loop */ + luaK_patchlist(fs, (isnum ? endfor : luaK_jump(fs)), prep + 1); +} + + +static void fornum (LexState *ls, TString *varname, int line) { + /* fornum -> NAME = exp1,exp1[,exp1] forbody */ + FuncState *fs = ls->fs; + int base = fs->freereg; + new_localvarliteral(ls, "(for index)", 0); + new_localvarliteral(ls, "(for limit)", 1); + new_localvarliteral(ls, "(for step)", 2); + new_localvar(ls, varname, 3); + checknext(ls, '='); + exp1(ls); /* initial value */ + checknext(ls, ','); + exp1(ls); /* limit */ + if (testnext(ls, ',')) + exp1(ls); /* optional step */ + else { /* default step = 1 */ + luaK_codeABx(fs, OP_LOADK, fs->freereg, luaK_numberK(fs, 1)); + luaK_reserveregs(fs, 1); + } + forbody(ls, base, line, 1, 1); +} + + +static void forlist (LexState *ls, TString *indexname) { + /* forlist -> NAME {,NAME} IN explist1 forbody */ + FuncState *fs = ls->fs; + expdesc e; + int nvars = 0; + int line; + int base = fs->freereg; + /* create control variables */ + new_localvarliteral(ls, "(for generator)", nvars++); + new_localvarliteral(ls, "(for state)", nvars++); + new_localvarliteral(ls, "(for control)", nvars++); + /* create declared variables */ + new_localvar(ls, indexname, nvars++); + while (testnext(ls, ',')) + new_localvar(ls, str_checkname(ls), nvars++); + checknext(ls, TK_IN); + line = ls->linenumber; + adjust_assign(ls, 3, explist1(ls, &e), &e); + luaK_checkstack(fs, 3); /* extra space to call generator */ + forbody(ls, base, line, nvars - 3, 0); +} + + +static void forstat (LexState *ls, int line) { + /* forstat -> FOR (fornum | forlist) END */ + FuncState *fs = ls->fs; + TString *varname; + BlockCnt bl; + enterblock(fs, &bl, 1); /* scope for loop and control variables */ + luaX_next(ls); /* skip `for' */ + varname = str_checkname(ls); /* first variable name */ + switch (ls->t.token) { + case '=': fornum(ls, varname, line); break; + case ',': case TK_IN: forlist(ls, varname); break; + default: luaX_syntaxerror(ls, LUA_QL("=") " or " LUA_QL("in") " expected"); + } + check_match(ls, TK_END, TK_FOR, line); + leaveblock(fs); /* loop scope (`break' jumps to this point) */ +} + + +static int test_then_block (LexState *ls) { + /* test_then_block -> [IF | ELSEIF] cond THEN block */ + int condexit; + luaX_next(ls); /* skip IF or ELSEIF */ + condexit = cond(ls); + checknext(ls, TK_THEN); + block(ls); /* `then' part */ + return condexit; +} + + +static void ifstat (LexState *ls, int line) { + /* ifstat -> IF cond THEN block {ELSEIF cond THEN block} [ELSE block] END */ + FuncState *fs = ls->fs; + int flist; + int escapelist = NO_JUMP; + flist = test_then_block(ls); /* IF cond THEN block */ + while (ls->t.token == TK_ELSEIF) { + luaK_concat(fs, &escapelist, luaK_jump(fs)); + luaK_patchtohere(fs, flist); + flist = test_then_block(ls); /* ELSEIF cond THEN block */ + } + if (ls->t.token == TK_ELSE) { + luaK_concat(fs, &escapelist, luaK_jump(fs)); + luaK_patchtohere(fs, flist); + luaX_next(ls); /* skip ELSE (after patch, for correct line info) */ + block(ls); /* `else' part */ + } + else + luaK_concat(fs, &escapelist, flist); + luaK_patchtohere(fs, escapelist); + check_match(ls, TK_END, TK_IF, line); +} + + +static void localfunc (LexState *ls) { + expdesc v, b; + FuncState *fs = ls->fs; + new_localvar(ls, str_checkname(ls), 0); + init_exp(&v, VLOCAL, fs->freereg); + luaK_reserveregs(fs, 1); + adjustlocalvars(ls, 1); + body(ls, &b, 0, ls->linenumber); + luaK_storevar(fs, &v, &b); + /* debug information will only see the variable after this point! */ + getlocvar(fs, fs->nactvar - 1).startpc = fs->pc; +} + + +static void localstat (LexState *ls) { + /* stat -> LOCAL NAME {`,' NAME} [`=' explist1] */ + int nvars = 0; + int nexps; + expdesc e; + do { + new_localvar(ls, str_checkname(ls), nvars++); + } while (testnext(ls, ',')); + if (testnext(ls, '=')) + nexps = explist1(ls, &e); + else { + e.k = VVOID; + nexps = 0; + } + adjust_assign(ls, nvars, nexps, &e); + adjustlocalvars(ls, nvars); +} + + +static int funcname (LexState *ls, expdesc *v) { + /* funcname -> NAME {field} [`:' NAME] */ + int needself = 0; + singlevar(ls, v); + while (ls->t.token == '.') + field(ls, v); + if (ls->t.token == ':') { + needself = 1; + field(ls, v); + } + return needself; +} + + +static void funcstat (LexState *ls, int line) { + /* funcstat -> FUNCTION funcname body */ + int needself; + expdesc v, b; + luaX_next(ls); /* skip FUNCTION */ + needself = funcname(ls, &v); + body(ls, &b, needself, line); + luaK_storevar(ls->fs, &v, &b); + luaK_fixline(ls->fs, line); /* definition `happens' in the first line */ +} + + +static void exprstat (LexState *ls) { + /* stat -> func | assignment */ + FuncState *fs = ls->fs; + struct LHS_assign v; + primaryexp(ls, &v.v); + if (v.v.k == VCALL) /* stat -> func */ + SETARG_C(getcode(fs, &v.v), 1); /* call statement uses no results */ + else { /* stat -> assignment */ + v.prev = NULL; + assignment(ls, &v, 1); + } +} + + +static void retstat (LexState *ls) { + /* stat -> RETURN explist */ + FuncState *fs = ls->fs; + expdesc e; + int first, nret; /* registers with returned values */ + luaX_next(ls); /* skip RETURN */ + if (block_follow(ls->t.token) || ls->t.token == ';') + first = nret = 0; /* return no values */ + else { + nret = explist1(ls, &e); /* optional return values */ + if (hasmultret(e.k)) { + luaK_setmultret(fs, &e); + if (e.k == VCALL && nret == 1) { /* tail call? */ + SET_OPCODE(getcode(fs,&e), OP_TAILCALL); + lua_assert(GETARG_A(getcode(fs,&e)) == fs->nactvar); + } + first = fs->nactvar; + nret = LUA_MULTRET; /* return all values */ + } + else { + if (nret == 1) /* only one single value? */ + first = luaK_exp2anyreg(fs, &e); + else { + luaK_exp2nextreg(fs, &e); /* values must go to the `stack' */ + first = fs->nactvar; /* return all `active' values */ + lua_assert(nret == fs->freereg - first); + } + } + } + luaK_ret(fs, first, nret); +} + + +static int statement (LexState *ls) { + int line = ls->linenumber; /* may be needed for error messages */ + switch (ls->t.token) { + case TK_IF: { /* stat -> ifstat */ + ifstat(ls, line); + return 0; + } + case TK_WHILE: { /* stat -> whilestat */ + whilestat(ls, line); + return 0; + } + case TK_DO: { /* stat -> DO block END */ + luaX_next(ls); /* skip DO */ + block(ls); + check_match(ls, TK_END, TK_DO, line); + return 0; + } + case TK_FOR: { /* stat -> forstat */ + forstat(ls, line); + return 0; + } + case TK_REPEAT: { /* stat -> repeatstat */ + repeatstat(ls, line); + return 0; + } + case TK_FUNCTION: { + funcstat(ls, line); /* stat -> funcstat */ + return 0; + } + case TK_LOCAL: { /* stat -> localstat */ + luaX_next(ls); /* skip LOCAL */ + if (testnext(ls, TK_FUNCTION)) /* local function? */ + localfunc(ls); + else + localstat(ls); + return 0; + } + case TK_RETURN: { /* stat -> retstat */ + retstat(ls); + return 1; /* must be last statement */ + } + case TK_BREAK: { /* stat -> breakstat */ + luaX_next(ls); /* skip BREAK */ + breakstat(ls); + return 1; /* must be last statement */ + } + default: { + exprstat(ls); + return 0; /* to avoid warnings */ + } + } +} + + +static void chunk (LexState *ls) { + /* chunk -> { stat [`;'] } */ + int islast = 0; + enterlevel(ls); + while (!islast && !block_follow(ls->t.token)) { + islast = statement(ls); + testnext(ls, ';'); + lua_assert(ls->fs->f->maxstacksize >= ls->fs->freereg && + ls->fs->freereg >= ls->fs->nactvar); + ls->fs->freereg = ls->fs->nactvar; /* free registers */ + } + leavelevel(ls); +} + +/* }====================================================================== */ diff --git a/lua-5.1.4/src/.svn/text-base/lparser.h.svn-base b/lua-5.1.4/src/.svn/text-base/lparser.h.svn-base new file mode 100644 index 0000000..18836af --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lparser.h.svn-base @@ -0,0 +1,82 @@ +/* +** $Id: lparser.h,v 1.57.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua Parser +** See Copyright Notice in lua.h +*/ + +#ifndef lparser_h +#define lparser_h + +#include "llimits.h" +#include "lobject.h" +#include "lzio.h" + + +/* +** Expression descriptor +*/ + +typedef enum { + VVOID, /* no value */ + VNIL, + VTRUE, + VFALSE, + VK, /* info = index of constant in `k' */ + VKNUM, /* nval = numerical value */ + VLOCAL, /* info = local register */ + VUPVAL, /* info = index of upvalue in `upvalues' */ + VGLOBAL, /* info = index of table; aux = index of global name in `k' */ + VINDEXED, /* info = table register; aux = index register (or `k') */ + VJMP, /* info = instruction pc */ + VRELOCABLE, /* info = instruction pc */ + VNONRELOC, /* info = result register */ + VCALL, /* info = instruction pc */ + VVARARG /* info = instruction pc */ +} expkind; + +typedef struct expdesc { + expkind k; + union { + struct { int info, aux; } s; + lua_Number nval; + } u; + int t; /* patch list of `exit when true' */ + int f; /* patch list of `exit when false' */ +} expdesc; + + +typedef struct upvaldesc { + lu_byte k; + lu_byte info; +} upvaldesc; + + +struct BlockCnt; /* defined in lparser.c */ + + +/* state needed to generate code for a given function */ +typedef struct FuncState { + Proto *f; /* current function header */ + Table *h; /* table to find (and reuse) elements in `k' */ + struct FuncState *prev; /* enclosing function */ + struct LexState *ls; /* lexical state */ + struct lua_State *L; /* copy of the Lua state */ + struct BlockCnt *bl; /* chain of current blocks */ + int pc; /* next position to code (equivalent to `ncode') */ + int lasttarget; /* `pc' of last `jump target' */ + int jpc; /* list of pending jumps to `pc' */ + int freereg; /* first free register */ + int nk; /* number of elements in `k' */ + int np; /* number of elements in `p' */ + short nlocvars; /* number of elements in `locvars' */ + lu_byte nactvar; /* number of active local variables */ + upvaldesc upvalues[LUAI_MAXUPVALUES]; /* upvalues */ + unsigned short actvar[LUAI_MAXVARS]; /* declared-variable stack */ +} FuncState; + + +LUAI_FUNC Proto *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, + const char *name); + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lstate.c.svn-base b/lua-5.1.4/src/.svn/text-base/lstate.c.svn-base new file mode 100644 index 0000000..4313b83 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lstate.c.svn-base @@ -0,0 +1,214 @@ +/* +** $Id: lstate.c,v 2.36.1.2 2008/01/03 15:20:39 roberto Exp $ +** Global State +** See Copyright Notice in lua.h +*/ + + +#include + +#define lstate_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "llex.h" +#include "lmem.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" + + +#define state_size(x) (sizeof(x) + LUAI_EXTRASPACE) +#define fromstate(l) (cast(lu_byte *, (l)) - LUAI_EXTRASPACE) +#define tostate(l) (cast(lua_State *, cast(lu_byte *, l) + LUAI_EXTRASPACE)) + + +/* +** Main thread combines a thread state and the global state +*/ +typedef struct LG { + lua_State l; + global_State g; +} LG; + + + +static void stack_init (lua_State *L1, lua_State *L) { + /* initialize CallInfo array */ + L1->base_ci = luaM_newvector(L, BASIC_CI_SIZE, CallInfo); + L1->ci = L1->base_ci; + L1->size_ci = BASIC_CI_SIZE; + L1->end_ci = L1->base_ci + L1->size_ci - 1; + /* initialize stack array */ + L1->stack = luaM_newvector(L, BASIC_STACK_SIZE + EXTRA_STACK, TValue); + L1->stacksize = BASIC_STACK_SIZE + EXTRA_STACK; + L1->top = L1->stack; + L1->stack_last = L1->stack+(L1->stacksize - EXTRA_STACK)-1; + /* initialize first ci */ + L1->ci->func = L1->top; + setnilvalue(L1->top++); /* `function' entry for this `ci' */ + L1->base = L1->ci->base = L1->top; + L1->ci->top = L1->top + LUA_MINSTACK; +} + + +static void freestack (lua_State *L, lua_State *L1) { + luaM_freearray(L, L1->base_ci, L1->size_ci, CallInfo); + luaM_freearray(L, L1->stack, L1->stacksize, TValue); +} + + +/* +** open parts that may cause memory-allocation errors +*/ +static void f_luaopen (lua_State *L, void *ud) { + global_State *g = G(L); + UNUSED(ud); + stack_init(L, L); /* init stack */ + sethvalue(L, gt(L), luaH_new(L, 0, 2)); /* table of globals */ + sethvalue(L, registry(L), luaH_new(L, 0, 2)); /* registry */ + luaS_resize(L, MINSTRTABSIZE); /* initial size of string table */ + luaT_init(L); + luaX_init(L); + luaS_fix(luaS_newliteral(L, MEMERRMSG)); + g->GCthreshold = 4*g->totalbytes; +} + + +static void preinit_state (lua_State *L, global_State *g) { + G(L) = g; + L->stack = NULL; + L->stacksize = 0; + L->errorJmp = NULL; + L->hook = NULL; + L->hookmask = 0; + L->basehookcount = 0; + L->allowhook = 1; + resethookcount(L); + L->openupval = NULL; + L->size_ci = 0; + L->nCcalls = L->baseCcalls = 0; + L->status = 0; + L->base_ci = L->ci = NULL; + L->savedpc = NULL; + L->errfunc = 0; + setnilvalue(gt(L)); +} + + +static void close_state (lua_State *L) { + global_State *g = G(L); + luaF_close(L, L->stack); /* close all upvalues for this thread */ + luaC_freeall(L); /* collect all objects */ + lua_assert(g->rootgc == obj2gco(L)); + lua_assert(g->strt.nuse == 0); + luaM_freearray(L, G(L)->strt.hash, G(L)->strt.size, TString *); + luaZ_freebuffer(L, &g->buff); + freestack(L, L); + lua_assert(g->totalbytes == sizeof(LG)); + (*g->frealloc)(g->ud, fromstate(L), state_size(LG), 0); +} + + +lua_State *luaE_newthread (lua_State *L) { + lua_State *L1 = tostate(luaM_malloc(L, state_size(lua_State))); + luaC_link(L, obj2gco(L1), LUA_TTHREAD); + preinit_state(L1, G(L)); + stack_init(L1, L); /* init stack */ + setobj2n(L, gt(L1), gt(L)); /* share table of globals */ + L1->hookmask = L->hookmask; + L1->basehookcount = L->basehookcount; + L1->hook = L->hook; + resethookcount(L1); + lua_assert(iswhite(obj2gco(L1))); + return L1; +} + + +void luaE_freethread (lua_State *L, lua_State *L1) { + luaF_close(L1, L1->stack); /* close all upvalues for this thread */ + lua_assert(L1->openupval == NULL); + luai_userstatefree(L1); + freestack(L, L1); + luaM_freemem(L, fromstate(L1), state_size(lua_State)); +} + + +LUA_API lua_State *lua_newstate (lua_Alloc f, void *ud) { + int i; + lua_State *L; + global_State *g; + void *l = (*f)(ud, NULL, 0, state_size(LG)); + if (l == NULL) return NULL; + L = tostate(l); + g = &((LG *)L)->g; + L->next = NULL; + L->tt = LUA_TTHREAD; + g->currentwhite = bit2mask(WHITE0BIT, FIXEDBIT); + L->marked = luaC_white(g); + set2bits(L->marked, FIXEDBIT, SFIXEDBIT); + preinit_state(L, g); + g->frealloc = f; + g->ud = ud; + g->mainthread = L; + g->uvhead.u.l.prev = &g->uvhead; + g->uvhead.u.l.next = &g->uvhead; + g->GCthreshold = 0; /* mark it as unfinished state */ + g->strt.size = 0; + g->strt.nuse = 0; + g->strt.hash = NULL; + setnilvalue(registry(L)); + luaZ_initbuffer(L, &g->buff); + g->panic = NULL; + g->gcstate = GCSpause; + g->rootgc = obj2gco(L); + g->sweepstrgc = 0; + g->sweepgc = &g->rootgc; + g->gray = NULL; + g->grayagain = NULL; + g->weak = NULL; + g->tmudata = NULL; + g->totalbytes = sizeof(LG); + g->gcpause = LUAI_GCPAUSE; + g->gcstepmul = LUAI_GCMUL; + g->gcdept = 0; + for (i=0; imt[i] = NULL; + if (luaD_rawrunprotected(L, f_luaopen, NULL) != 0) { + /* memory allocation error: free partial state */ + close_state(L); + L = NULL; + } + else + luai_userstateopen(L); + return L; +} + + +static void callallgcTM (lua_State *L, void *ud) { + UNUSED(ud); + luaC_callGCTM(L); /* call GC metamethods for all udata */ +} + + +LUA_API void lua_close (lua_State *L) { + L = G(L)->mainthread; /* only the main thread can be closed */ + lua_lock(L); + luaF_close(L, L->stack); /* close all upvalues for this thread */ + luaC_separateudata(L, 1); /* separate udata that have GC metamethods */ + L->errfunc = 0; /* no error function during GC metamethods */ + do { /* repeat until no more errors */ + L->ci = L->base_ci; + L->base = L->top = L->ci->base; + L->nCcalls = L->baseCcalls = 0; + } while (luaD_rawrunprotected(L, callallgcTM, NULL) != 0); + lua_assert(G(L)->tmudata == NULL); + luai_userstateclose(L); + close_state(L); +} + diff --git a/lua-5.1.4/src/.svn/text-base/lstate.h.svn-base b/lua-5.1.4/src/.svn/text-base/lstate.h.svn-base new file mode 100644 index 0000000..3bc575b --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lstate.h.svn-base @@ -0,0 +1,169 @@ +/* +** $Id: lstate.h,v 2.24.1.2 2008/01/03 15:20:39 roberto Exp $ +** Global State +** See Copyright Notice in lua.h +*/ + +#ifndef lstate_h +#define lstate_h + +#include "lua.h" + +#include "lobject.h" +#include "ltm.h" +#include "lzio.h" + + + +struct lua_longjmp; /* defined in ldo.c */ + + +/* table of globals */ +#define gt(L) (&L->l_gt) + +/* registry */ +#define registry(L) (&G(L)->l_registry) + + +/* extra stack space to handle TM calls and some other extras */ +#define EXTRA_STACK 5 + + +#define BASIC_CI_SIZE 8 + +#define BASIC_STACK_SIZE (2*LUA_MINSTACK) + + + +typedef struct stringtable { + GCObject **hash; + lu_int32 nuse; /* number of elements */ + int size; +} stringtable; + + +/* +** informations about a call +*/ +typedef struct CallInfo { + StkId base; /* base for this function */ + StkId func; /* function index in the stack */ + StkId top; /* top for this function */ + const Instruction *savedpc; + int nresults; /* expected number of results from this function */ + int tailcalls; /* number of tail calls lost under this entry */ +} CallInfo; + + + +#define curr_func(L) (clvalue(L->ci->func)) +#define ci_func(ci) (clvalue((ci)->func)) +#define f_isLua(ci) (!ci_func(ci)->c.isC) +#define isLua(ci) (ttisfunction((ci)->func) && f_isLua(ci)) + + +/* +** `global state', shared by all threads of this state +*/ +typedef struct global_State { + stringtable strt; /* hash table for strings */ + lua_Alloc frealloc; /* function to reallocate memory */ + void *ud; /* auxiliary data to `frealloc' */ + lu_byte currentwhite; + lu_byte gcstate; /* state of garbage collector */ + int sweepstrgc; /* position of sweep in `strt' */ + GCObject *rootgc; /* list of all collectable objects */ + GCObject **sweepgc; /* position of sweep in `rootgc' */ + GCObject *gray; /* list of gray objects */ + GCObject *grayagain; /* list of objects to be traversed atomically */ + GCObject *weak; /* list of weak tables (to be cleared) */ + GCObject *tmudata; /* last element of list of userdata to be GC */ + Mbuffer buff; /* temporary buffer for string concatentation */ + lu_mem GCthreshold; + lu_mem totalbytes; /* number of bytes currently allocated */ + lu_mem estimate; /* an estimate of number of bytes actually in use */ + lu_mem gcdept; /* how much GC is `behind schedule' */ + int gcpause; /* size of pause between successive GCs */ + int gcstepmul; /* GC `granularity' */ + lua_CFunction panic; /* to be called in unprotected errors */ + TValue l_registry; + struct lua_State *mainthread; + UpVal uvhead; /* head of double-linked list of all open upvalues */ + struct Table *mt[NUM_TAGS]; /* metatables for basic types */ + TString *tmname[TM_N]; /* array with tag-method names */ +} global_State; + + +/* +** `per thread' state +*/ +struct lua_State { + CommonHeader; + lu_byte status; + StkId top; /* first free slot in the stack */ + StkId base; /* base of current function */ + global_State *l_G; + CallInfo *ci; /* call info for current function */ + const Instruction *savedpc; /* `savedpc' of current function */ + StkId stack_last; /* last free slot in the stack */ + StkId stack; /* stack base */ + CallInfo *end_ci; /* points after end of ci array*/ + CallInfo *base_ci; /* array of CallInfo's */ + int stacksize; + int size_ci; /* size of array `base_ci' */ + unsigned short nCcalls; /* number of nested C calls */ + unsigned short baseCcalls; /* nested C calls when resuming coroutine */ + lu_byte hookmask; + lu_byte allowhook; + int basehookcount; + int hookcount; + lua_Hook hook; + TValue l_gt; /* table of globals */ + TValue env; /* temporary place for environments */ + GCObject *openupval; /* list of open upvalues in this stack */ + GCObject *gclist; + struct lua_longjmp *errorJmp; /* current error recover point */ + ptrdiff_t errfunc; /* current error handling function (stack index) */ +}; + + +#define G(L) (L->l_G) + + +/* +** Union of all collectable objects +*/ +union GCObject { + GCheader gch; + union TString ts; + union Udata u; + union Closure cl; + struct Table h; + struct Proto p; + struct UpVal uv; + struct lua_State th; /* thread */ +}; + + +/* macros to convert a GCObject into a specific value */ +#define rawgco2ts(o) check_exp((o)->gch.tt == LUA_TSTRING, &((o)->ts)) +#define gco2ts(o) (&rawgco2ts(o)->tsv) +#define rawgco2u(o) check_exp((o)->gch.tt == LUA_TUSERDATA, &((o)->u)) +#define gco2u(o) (&rawgco2u(o)->uv) +#define gco2cl(o) check_exp((o)->gch.tt == LUA_TFUNCTION, &((o)->cl)) +#define gco2h(o) check_exp((o)->gch.tt == LUA_TTABLE, &((o)->h)) +#define gco2p(o) check_exp((o)->gch.tt == LUA_TPROTO, &((o)->p)) +#define gco2uv(o) check_exp((o)->gch.tt == LUA_TUPVAL, &((o)->uv)) +#define ngcotouv(o) \ + check_exp((o) == NULL || (o)->gch.tt == LUA_TUPVAL, &((o)->uv)) +#define gco2th(o) check_exp((o)->gch.tt == LUA_TTHREAD, &((o)->th)) + +/* macro to convert any Lua object into a GCObject */ +#define obj2gco(v) (cast(GCObject *, (v))) + + +LUAI_FUNC lua_State *luaE_newthread (lua_State *L); +LUAI_FUNC void luaE_freethread (lua_State *L, lua_State *L1); + +#endif + diff --git a/lua-5.1.4/src/.svn/text-base/lstring.c.svn-base b/lua-5.1.4/src/.svn/text-base/lstring.c.svn-base new file mode 100644 index 0000000..4911315 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lstring.c.svn-base @@ -0,0 +1,111 @@ +/* +** $Id: lstring.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ +** String table (keeps all strings handled by Lua) +** See Copyright Notice in lua.h +*/ + + +#include + +#define lstring_c +#define LUA_CORE + +#include "lua.h" + +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" + + + +void luaS_resize (lua_State *L, int newsize) { + GCObject **newhash; + stringtable *tb; + int i; + if (G(L)->gcstate == GCSsweepstring) + return; /* cannot resize during GC traverse */ + newhash = luaM_newvector(L, newsize, GCObject *); + tb = &G(L)->strt; + for (i=0; isize; i++) { + GCObject *p = tb->hash[i]; + while (p) { /* for each node in the list */ + GCObject *next = p->gch.next; /* save next */ + unsigned int h = gco2ts(p)->hash; + int h1 = lmod(h, newsize); /* new position */ + lua_assert(cast_int(h%newsize) == lmod(h, newsize)); + p->gch.next = newhash[h1]; /* chain it */ + newhash[h1] = p; + p = next; + } + } + luaM_freearray(L, tb->hash, tb->size, TString *); + tb->size = newsize; + tb->hash = newhash; +} + + +static TString *newlstr (lua_State *L, const char *str, size_t l, + unsigned int h) { + TString *ts; + stringtable *tb; + if (l+1 > (MAX_SIZET - sizeof(TString))/sizeof(char)) + luaM_toobig(L); + ts = cast(TString *, luaM_malloc(L, (l+1)*sizeof(char)+sizeof(TString))); + ts->tsv.len = l; + ts->tsv.hash = h; + ts->tsv.marked = luaC_white(G(L)); + ts->tsv.tt = LUA_TSTRING; + ts->tsv.reserved = 0; + memcpy(ts+1, str, l*sizeof(char)); + ((char *)(ts+1))[l] = '\0'; /* ending 0 */ + tb = &G(L)->strt; + h = lmod(h, tb->size); + ts->tsv.next = tb->hash[h]; /* chain new entry */ + tb->hash[h] = obj2gco(ts); + tb->nuse++; + if (tb->nuse > cast(lu_int32, tb->size) && tb->size <= MAX_INT/2) + luaS_resize(L, tb->size*2); /* too crowded */ + return ts; +} + + +TString *luaS_newlstr (lua_State *L, const char *str, size_t l) { + GCObject *o; + unsigned int h = cast(unsigned int, l); /* seed */ + size_t step = (l>>5)+1; /* if string is too long, don't hash all its chars */ + size_t l1; + for (l1=l; l1>=step; l1-=step) /* compute hash */ + h = h ^ ((h<<5)+(h>>2)+cast(unsigned char, str[l1-1])); + for (o = G(L)->strt.hash[lmod(h, G(L)->strt.size)]; + o != NULL; + o = o->gch.next) { + TString *ts = rawgco2ts(o); + if (ts->tsv.len == l && (memcmp(str, getstr(ts), l) == 0)) { + /* string may be dead */ + if (isdead(G(L), o)) changewhite(o); + return ts; + } + } + return newlstr(L, str, l, h); /* not found */ +} + + +Udata *luaS_newudata (lua_State *L, size_t s, Table *e) { + Udata *u; + if (s > MAX_SIZET - sizeof(Udata)) + luaM_toobig(L); + u = cast(Udata *, luaM_malloc(L, s + sizeof(Udata))); + u->uv.marked = luaC_white(G(L)); /* is not finalized */ + u->uv.tt = LUA_TUSERDATA; + u->uv.len = s; + u->uv.metatable = NULL; + u->uv.env = e; + /* chain it on udata list (after main thread) */ + u->uv.next = G(L)->mainthread->next; + G(L)->mainthread->next = obj2gco(u); + return u; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lstring.h.svn-base b/lua-5.1.4/src/.svn/text-base/lstring.h.svn-base new file mode 100644 index 0000000..73a2ff8 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lstring.h.svn-base @@ -0,0 +1,31 @@ +/* +** $Id: lstring.h,v 1.43.1.1 2007/12/27 13:02:25 roberto Exp $ +** String table (keep all strings handled by Lua) +** See Copyright Notice in lua.h +*/ + +#ifndef lstring_h +#define lstring_h + + +#include "lgc.h" +#include "lobject.h" +#include "lstate.h" + + +#define sizestring(s) (sizeof(union TString)+((s)->len+1)*sizeof(char)) + +#define sizeudata(u) (sizeof(union Udata)+(u)->len) + +#define luaS_new(L, s) (luaS_newlstr(L, s, strlen(s))) +#define luaS_newliteral(L, s) (luaS_newlstr(L, "" s, \ + (sizeof(s)/sizeof(char))-1)) + +#define luaS_fix(s) l_setbit((s)->tsv.marked, FIXEDBIT) + +LUAI_FUNC void luaS_resize (lua_State *L, int newsize); +LUAI_FUNC Udata *luaS_newudata (lua_State *L, size_t s, Table *e); +LUAI_FUNC TString *luaS_newlstr (lua_State *L, const char *str, size_t l); + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lstrlib.c.svn-base b/lua-5.1.4/src/.svn/text-base/lstrlib.c.svn-base new file mode 100644 index 0000000..1b4763d --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lstrlib.c.svn-base @@ -0,0 +1,869 @@ +/* +** $Id: lstrlib.c,v 1.132.1.4 2008/07/11 17:27:21 roberto Exp $ +** Standard library for string operations and pattern-matching +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include +#include + +#define lstrlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +/* macro to `unsign' a character */ +#define uchar(c) ((unsigned char)(c)) + + + +static int str_len (lua_State *L) { + size_t l; + luaL_checklstring(L, 1, &l); + lua_pushinteger(L, l); + return 1; +} + + +static ptrdiff_t posrelat (ptrdiff_t pos, size_t len) { + /* relative string position: negative means back from end */ + if (pos < 0) pos += (ptrdiff_t)len + 1; + return (pos >= 0) ? pos : 0; +} + + +static int str_sub (lua_State *L) { + size_t l; + const char *s = luaL_checklstring(L, 1, &l); + ptrdiff_t start = posrelat(luaL_checkinteger(L, 2), l); + ptrdiff_t end = posrelat(luaL_optinteger(L, 3, -1), l); + if (start < 1) start = 1; + if (end > (ptrdiff_t)l) end = (ptrdiff_t)l; + if (start <= end) + lua_pushlstring(L, s+start-1, end-start+1); + else lua_pushliteral(L, ""); + return 1; +} + + +static int str_reverse (lua_State *L) { + size_t l; + luaL_Buffer b; + const char *s = luaL_checklstring(L, 1, &l); + luaL_buffinit(L, &b); + while (l--) luaL_addchar(&b, s[l]); + luaL_pushresult(&b); + return 1; +} + + +static int str_lower (lua_State *L) { + size_t l; + size_t i; + luaL_Buffer b; + const char *s = luaL_checklstring(L, 1, &l); + luaL_buffinit(L, &b); + for (i=0; i 0) + luaL_addlstring(&b, s, l); + luaL_pushresult(&b); + return 1; +} + + +static int str_byte (lua_State *L) { + size_t l; + const char *s = luaL_checklstring(L, 1, &l); + ptrdiff_t posi = posrelat(luaL_optinteger(L, 2, 1), l); + ptrdiff_t pose = posrelat(luaL_optinteger(L, 3, posi), l); + int n, i; + if (posi <= 0) posi = 1; + if ((size_t)pose > l) pose = l; + if (posi > pose) return 0; /* empty interval; return no values */ + n = (int)(pose - posi + 1); + if (posi + n <= pose) /* overflow? */ + luaL_error(L, "string slice too long"); + luaL_checkstack(L, n, "string slice too long"); + for (i=0; i= ms->level || ms->capture[l].len == CAP_UNFINISHED) + return luaL_error(ms->L, "invalid capture index"); + return l; +} + + +static int capture_to_close (MatchState *ms) { + int level = ms->level; + for (level--; level>=0; level--) + if (ms->capture[level].len == CAP_UNFINISHED) return level; + return luaL_error(ms->L, "invalid pattern capture"); +} + + +static const char *classend (MatchState *ms, const char *p) { + switch (*p++) { + case L_ESC: { + if (*p == '\0') + luaL_error(ms->L, "malformed pattern (ends with " LUA_QL("%%") ")"); + return p+1; + } + case '[': { + if (*p == '^') p++; + do { /* look for a `]' */ + if (*p == '\0') + luaL_error(ms->L, "malformed pattern (missing " LUA_QL("]") ")"); + if (*(p++) == L_ESC && *p != '\0') + p++; /* skip escapes (e.g. `%]') */ + } while (*p != ']'); + return p+1; + } + default: { + return p; + } + } +} + + +static int match_class (int c, int cl) { + int res; + switch (tolower(cl)) { + case 'a' : res = isalpha(c); break; + case 'c' : res = iscntrl(c); break; + case 'd' : res = isdigit(c); break; + case 'l' : res = islower(c); break; + case 'p' : res = ispunct(c); break; + case 's' : res = isspace(c); break; + case 'u' : res = isupper(c); break; + case 'w' : res = isalnum(c); break; + case 'x' : res = isxdigit(c); break; + case 'z' : res = (c == 0); break; + default: return (cl == c); + } + return (islower(cl) ? res : !res); +} + + +static int matchbracketclass (int c, const char *p, const char *ec) { + int sig = 1; + if (*(p+1) == '^') { + sig = 0; + p++; /* skip the `^' */ + } + while (++p < ec) { + if (*p == L_ESC) { + p++; + if (match_class(c, uchar(*p))) + return sig; + } + else if ((*(p+1) == '-') && (p+2 < ec)) { + p+=2; + if (uchar(*(p-2)) <= c && c <= uchar(*p)) + return sig; + } + else if (uchar(*p) == c) return sig; + } + return !sig; +} + + +static int singlematch (int c, const char *p, const char *ep) { + switch (*p) { + case '.': return 1; /* matches any char */ + case L_ESC: return match_class(c, uchar(*(p+1))); + case '[': return matchbracketclass(c, p, ep-1); + default: return (uchar(*p) == c); + } +} + + +static const char *match (MatchState *ms, const char *s, const char *p); + + +static const char *matchbalance (MatchState *ms, const char *s, + const char *p) { + if (*p == 0 || *(p+1) == 0) + luaL_error(ms->L, "unbalanced pattern"); + if (*s != *p) return NULL; + else { + int b = *p; + int e = *(p+1); + int cont = 1; + while (++s < ms->src_end) { + if (*s == e) { + if (--cont == 0) return s+1; + } + else if (*s == b) cont++; + } + } + return NULL; /* string ends out of balance */ +} + + +static const char *max_expand (MatchState *ms, const char *s, + const char *p, const char *ep) { + ptrdiff_t i = 0; /* counts maximum expand for item */ + while ((s+i)src_end && singlematch(uchar(*(s+i)), p, ep)) + i++; + /* keeps trying to match with the maximum repetitions */ + while (i>=0) { + const char *res = match(ms, (s+i), ep+1); + if (res) return res; + i--; /* else didn't match; reduce 1 repetition to try again */ + } + return NULL; +} + + +static const char *min_expand (MatchState *ms, const char *s, + const char *p, const char *ep) { + for (;;) { + const char *res = match(ms, s, ep+1); + if (res != NULL) + return res; + else if (ssrc_end && singlematch(uchar(*s), p, ep)) + s++; /* try with one more repetition */ + else return NULL; + } +} + + +static const char *start_capture (MatchState *ms, const char *s, + const char *p, int what) { + const char *res; + int level = ms->level; + if (level >= LUA_MAXCAPTURES) luaL_error(ms->L, "too many captures"); + ms->capture[level].init = s; + ms->capture[level].len = what; + ms->level = level+1; + if ((res=match(ms, s, p)) == NULL) /* match failed? */ + ms->level--; /* undo capture */ + return res; +} + + +static const char *end_capture (MatchState *ms, const char *s, + const char *p) { + int l = capture_to_close(ms); + const char *res; + ms->capture[l].len = s - ms->capture[l].init; /* close capture */ + if ((res = match(ms, s, p)) == NULL) /* match failed? */ + ms->capture[l].len = CAP_UNFINISHED; /* undo capture */ + return res; +} + + +static const char *match_capture (MatchState *ms, const char *s, int l) { + size_t len; + l = check_capture(ms, l); + len = ms->capture[l].len; + if ((size_t)(ms->src_end-s) >= len && + memcmp(ms->capture[l].init, s, len) == 0) + return s+len; + else return NULL; +} + + +static const char *match (MatchState *ms, const char *s, const char *p) { + init: /* using goto's to optimize tail recursion */ + switch (*p) { + case '(': { /* start capture */ + if (*(p+1) == ')') /* position capture? */ + return start_capture(ms, s, p+2, CAP_POSITION); + else + return start_capture(ms, s, p+1, CAP_UNFINISHED); + } + case ')': { /* end capture */ + return end_capture(ms, s, p+1); + } + case L_ESC: { + switch (*(p+1)) { + case 'b': { /* balanced string? */ + s = matchbalance(ms, s, p+2); + if (s == NULL) return NULL; + p+=4; goto init; /* else return match(ms, s, p+4); */ + } + case 'f': { /* frontier? */ + const char *ep; char previous; + p += 2; + if (*p != '[') + luaL_error(ms->L, "missing " LUA_QL("[") " after " + LUA_QL("%%f") " in pattern"); + ep = classend(ms, p); /* points to what is next */ + previous = (s == ms->src_init) ? '\0' : *(s-1); + if (matchbracketclass(uchar(previous), p, ep-1) || + !matchbracketclass(uchar(*s), p, ep-1)) return NULL; + p=ep; goto init; /* else return match(ms, s, ep); */ + } + default: { + if (isdigit(uchar(*(p+1)))) { /* capture results (%0-%9)? */ + s = match_capture(ms, s, uchar(*(p+1))); + if (s == NULL) return NULL; + p+=2; goto init; /* else return match(ms, s, p+2) */ + } + goto dflt; /* case default */ + } + } + } + case '\0': { /* end of pattern */ + return s; /* match succeeded */ + } + case '$': { + if (*(p+1) == '\0') /* is the `$' the last char in pattern? */ + return (s == ms->src_end) ? s : NULL; /* check end of string */ + else goto dflt; + } + default: dflt: { /* it is a pattern item */ + const char *ep = classend(ms, p); /* points to what is next */ + int m = ssrc_end && singlematch(uchar(*s), p, ep); + switch (*ep) { + case '?': { /* optional */ + const char *res; + if (m && ((res=match(ms, s+1, ep+1)) != NULL)) + return res; + p=ep+1; goto init; /* else return match(ms, s, ep+1); */ + } + case '*': { /* 0 or more repetitions */ + return max_expand(ms, s, p, ep); + } + case '+': { /* 1 or more repetitions */ + return (m ? max_expand(ms, s+1, p, ep) : NULL); + } + case '-': { /* 0 or more repetitions (minimum) */ + return min_expand(ms, s, p, ep); + } + default: { + if (!m) return NULL; + s++; p=ep; goto init; /* else return match(ms, s+1, ep); */ + } + } + } + } +} + + + +static const char *lmemfind (const char *s1, size_t l1, + const char *s2, size_t l2) { + if (l2 == 0) return s1; /* empty strings are everywhere */ + else if (l2 > l1) return NULL; /* avoids a negative `l1' */ + else { + const char *init; /* to search for a `*s2' inside `s1' */ + l2--; /* 1st char will be checked by `memchr' */ + l1 = l1-l2; /* `s2' cannot be found after that */ + while (l1 > 0 && (init = (const char *)memchr(s1, *s2, l1)) != NULL) { + init++; /* 1st char is already checked */ + if (memcmp(init, s2+1, l2) == 0) + return init-1; + else { /* correct `l1' and `s1' to try again */ + l1 -= init-s1; + s1 = init; + } + } + return NULL; /* not found */ + } +} + + +static void push_onecapture (MatchState *ms, int i, const char *s, + const char *e) { + if (i >= ms->level) { + if (i == 0) /* ms->level == 0, too */ + lua_pushlstring(ms->L, s, e - s); /* add whole match */ + else + luaL_error(ms->L, "invalid capture index"); + } + else { + ptrdiff_t l = ms->capture[i].len; + if (l == CAP_UNFINISHED) luaL_error(ms->L, "unfinished capture"); + if (l == CAP_POSITION) + lua_pushinteger(ms->L, ms->capture[i].init - ms->src_init + 1); + else + lua_pushlstring(ms->L, ms->capture[i].init, l); + } +} + + +static int push_captures (MatchState *ms, const char *s, const char *e) { + int i; + int nlevels = (ms->level == 0 && s) ? 1 : ms->level; + luaL_checkstack(ms->L, nlevels, "too many captures"); + for (i = 0; i < nlevels; i++) + push_onecapture(ms, i, s, e); + return nlevels; /* number of strings pushed */ +} + + +static int str_find_aux (lua_State *L, int find) { + size_t l1, l2; + const char *s = luaL_checklstring(L, 1, &l1); + const char *p = luaL_checklstring(L, 2, &l2); + ptrdiff_t init = posrelat(luaL_optinteger(L, 3, 1), l1) - 1; + if (init < 0) init = 0; + else if ((size_t)(init) > l1) init = (ptrdiff_t)l1; + if (find && (lua_toboolean(L, 4) || /* explicit request? */ + strpbrk(p, SPECIALS) == NULL)) { /* or no special characters? */ + /* do a plain search */ + const char *s2 = lmemfind(s+init, l1-init, p, l2); + if (s2) { + lua_pushinteger(L, s2-s+1); + lua_pushinteger(L, s2-s+l2); + return 2; + } + } + else { + MatchState ms; + int anchor = (*p == '^') ? (p++, 1) : 0; + const char *s1=s+init; + ms.L = L; + ms.src_init = s; + ms.src_end = s+l1; + do { + const char *res; + ms.level = 0; + if ((res=match(&ms, s1, p)) != NULL) { + if (find) { + lua_pushinteger(L, s1-s+1); /* start */ + lua_pushinteger(L, res-s); /* end */ + return push_captures(&ms, NULL, 0) + 2; + } + else + return push_captures(&ms, s1, res); + } + } while (s1++ < ms.src_end && !anchor); + } + lua_pushnil(L); /* not found */ + return 1; +} + + +static int str_find (lua_State *L) { + return str_find_aux(L, 1); +} + + +static int str_match (lua_State *L) { + return str_find_aux(L, 0); +} + + +static int gmatch_aux (lua_State *L) { + MatchState ms; + size_t ls; + const char *s = lua_tolstring(L, lua_upvalueindex(1), &ls); + const char *p = lua_tostring(L, lua_upvalueindex(2)); + const char *src; + ms.L = L; + ms.src_init = s; + ms.src_end = s+ls; + for (src = s + (size_t)lua_tointeger(L, lua_upvalueindex(3)); + src <= ms.src_end; + src++) { + const char *e; + ms.level = 0; + if ((e = match(&ms, src, p)) != NULL) { + lua_Integer newstart = e-s; + if (e == src) newstart++; /* empty match? go at least one position */ + lua_pushinteger(L, newstart); + lua_replace(L, lua_upvalueindex(3)); + return push_captures(&ms, src, e); + } + } + return 0; /* not found */ +} + + +static int gmatch (lua_State *L) { + luaL_checkstring(L, 1); + luaL_checkstring(L, 2); + lua_settop(L, 2); + lua_pushinteger(L, 0); + lua_pushcclosure(L, gmatch_aux, 3); + return 1; +} + + +static int gfind_nodef (lua_State *L) { + return luaL_error(L, LUA_QL("string.gfind") " was renamed to " + LUA_QL("string.gmatch")); +} + + +static void add_s (MatchState *ms, luaL_Buffer *b, const char *s, + const char *e) { + size_t l, i; + const char *news = lua_tolstring(ms->L, 3, &l); + for (i = 0; i < l; i++) { + if (news[i] != L_ESC) + luaL_addchar(b, news[i]); + else { + i++; /* skip ESC */ + if (!isdigit(uchar(news[i]))) + luaL_addchar(b, news[i]); + else if (news[i] == '0') + luaL_addlstring(b, s, e - s); + else { + push_onecapture(ms, news[i] - '1', s, e); + luaL_addvalue(b); /* add capture to accumulated result */ + } + } + } +} + + +static void add_value (MatchState *ms, luaL_Buffer *b, const char *s, + const char *e) { + lua_State *L = ms->L; + switch (lua_type(L, 3)) { + case LUA_TNUMBER: + case LUA_TSTRING: { + add_s(ms, b, s, e); + return; + } + case LUA_TFUNCTION: { + int n; + lua_pushvalue(L, 3); + n = push_captures(ms, s, e); + lua_call(L, n, 1); + break; + } + case LUA_TTABLE: { + push_onecapture(ms, 0, s, e); + lua_gettable(L, 3); + break; + } + } + if (!lua_toboolean(L, -1)) { /* nil or false? */ + lua_pop(L, 1); + lua_pushlstring(L, s, e - s); /* keep original text */ + } + else if (!lua_isstring(L, -1)) + luaL_error(L, "invalid replacement value (a %s)", luaL_typename(L, -1)); + luaL_addvalue(b); /* add result to accumulator */ +} + + +static int str_gsub (lua_State *L) { + size_t srcl; + const char *src = luaL_checklstring(L, 1, &srcl); + const char *p = luaL_checkstring(L, 2); + int tr = lua_type(L, 3); + int max_s = luaL_optint(L, 4, srcl+1); + int anchor = (*p == '^') ? (p++, 1) : 0; + int n = 0; + MatchState ms; + luaL_Buffer b; + luaL_argcheck(L, tr == LUA_TNUMBER || tr == LUA_TSTRING || + tr == LUA_TFUNCTION || tr == LUA_TTABLE, 3, + "string/function/table expected"); + luaL_buffinit(L, &b); + ms.L = L; + ms.src_init = src; + ms.src_end = src+srcl; + while (n < max_s) { + const char *e; + ms.level = 0; + e = match(&ms, src, p); + if (e) { + n++; + add_value(&ms, &b, src, e); + } + if (e && e>src) /* non empty match? */ + src = e; /* skip it */ + else if (src < ms.src_end) + luaL_addchar(&b, *src++); + else break; + if (anchor) break; + } + luaL_addlstring(&b, src, ms.src_end-src); + luaL_pushresult(&b); + lua_pushinteger(L, n); /* number of substitutions */ + return 2; +} + +/* }====================================================== */ + + +/* maximum size of each formatted item (> len(format('%99.99f', -1e308))) */ +#define MAX_ITEM 512 +/* valid flags in a format specification */ +#define FLAGS "-+ #0" +/* +** maximum size of each format specification (such as '%-099.99d') +** (+10 accounts for %99.99x plus margin of error) +*/ +#define MAX_FORMAT (sizeof(FLAGS) + sizeof(LUA_INTFRMLEN) + 10) + + +static void addquoted (lua_State *L, luaL_Buffer *b, int arg) { + size_t l; + const char *s = luaL_checklstring(L, arg, &l); + luaL_addchar(b, '"'); + while (l--) { + switch (*s) { + case '"': case '\\': case '\n': { + luaL_addchar(b, '\\'); + luaL_addchar(b, *s); + break; + } + case '\r': { + luaL_addlstring(b, "\\r", 2); + break; + } + case '\0': { + luaL_addlstring(b, "\\000", 4); + break; + } + default: { + luaL_addchar(b, *s); + break; + } + } + s++; + } + luaL_addchar(b, '"'); +} + +static const char *scanformat (lua_State *L, const char *strfrmt, char *form) { + const char *p = strfrmt; + while (*p != '\0' && strchr(FLAGS, *p) != NULL) p++; /* skip flags */ + if ((size_t)(p - strfrmt) >= sizeof(FLAGS)) + luaL_error(L, "invalid format (repeated flags)"); + if (isdigit(uchar(*p))) p++; /* skip width */ + if (isdigit(uchar(*p))) p++; /* (2 digits at most) */ + if (*p == '.') { + p++; + if (isdigit(uchar(*p))) p++; /* skip precision */ + if (isdigit(uchar(*p))) p++; /* (2 digits at most) */ + } + if (isdigit(uchar(*p))) + luaL_error(L, "invalid format (width or precision too long)"); + *(form++) = '%'; + strncpy(form, strfrmt, p - strfrmt + 1); + form += p - strfrmt + 1; + *form = '\0'; + return p; +} + + +static void addintlen (char *form) { + size_t l = strlen(form); + char spec = form[l - 1]; + strcpy(form + l - 1, LUA_INTFRMLEN); + form[l + sizeof(LUA_INTFRMLEN) - 2] = spec; + form[l + sizeof(LUA_INTFRMLEN) - 1] = '\0'; +} + + +static int str_format (lua_State *L) { + int arg = 1; + size_t sfl; + const char *strfrmt = luaL_checklstring(L, arg, &sfl); + const char *strfrmt_end = strfrmt+sfl; + luaL_Buffer b; + luaL_buffinit(L, &b); + while (strfrmt < strfrmt_end) { + if (*strfrmt != L_ESC) + luaL_addchar(&b, *strfrmt++); + else if (*++strfrmt == L_ESC) + luaL_addchar(&b, *strfrmt++); /* %% */ + else { /* format item */ + char form[MAX_FORMAT]; /* to store the format (`%...') */ + char buff[MAX_ITEM]; /* to store the formatted item */ + arg++; + strfrmt = scanformat(L, strfrmt, form); + switch (*strfrmt++) { + case 'c': { + sprintf(buff, form, (int)luaL_checknumber(L, arg)); + break; + } + case 'd': case 'i': { + addintlen(form); + sprintf(buff, form, (LUA_INTFRM_T)luaL_checknumber(L, arg)); + break; + } + case 'o': case 'u': case 'x': case 'X': { + addintlen(form); + sprintf(buff, form, (unsigned LUA_INTFRM_T)luaL_checknumber(L, arg)); + break; + } + case 'e': case 'E': case 'f': + case 'g': case 'G': { + sprintf(buff, form, (double)luaL_checknumber(L, arg)); + break; + } + case 'q': { + addquoted(L, &b, arg); + continue; /* skip the 'addsize' at the end */ + } + case 's': { + size_t l; + const char *s = luaL_checklstring(L, arg, &l); + if (!strchr(form, '.') && l >= 100) { + /* no precision and string is too long to be formatted; + keep original string */ + lua_pushvalue(L, arg); + luaL_addvalue(&b); + continue; /* skip the `addsize' at the end */ + } + else { + sprintf(buff, form, s); + break; + } + } + default: { /* also treat cases `pnLlh' */ + return luaL_error(L, "invalid option " LUA_QL("%%%c") " to " + LUA_QL("format"), *(strfrmt - 1)); + } + } + luaL_addlstring(&b, buff, strlen(buff)); + } + } + luaL_pushresult(&b); + return 1; +} + + +static const luaL_Reg strlib[] = { + {"byte", str_byte}, + {"char", str_char}, + {"dump", str_dump}, + {"find", str_find}, + {"format", str_format}, + {"gfind", gfind_nodef}, + {"gmatch", gmatch}, + {"gsub", str_gsub}, + {"len", str_len}, + {"lower", str_lower}, + {"match", str_match}, + {"rep", str_rep}, + {"reverse", str_reverse}, + {"sub", str_sub}, + {"upper", str_upper}, + {NULL, NULL} +}; + + +static void createmetatable (lua_State *L) { + lua_createtable(L, 0, 1); /* create metatable for strings */ + lua_pushliteral(L, ""); /* dummy string */ + lua_pushvalue(L, -2); + lua_setmetatable(L, -2); /* set string metatable */ + lua_pop(L, 1); /* pop dummy string */ + lua_pushvalue(L, -2); /* string library... */ + lua_setfield(L, -2, "__index"); /* ...is the __index metamethod */ + lua_pop(L, 1); /* pop metatable */ +} + + +/* +** Open string library +*/ +LUALIB_API int luaopen_string (lua_State *L) { + luaL_register(L, LUA_STRLIBNAME, strlib); +#if defined(LUA_COMPAT_GFIND) + lua_getfield(L, -1, "gmatch"); + lua_setfield(L, -2, "gfind"); +#endif + createmetatable(L); + return 1; +} + diff --git a/lua-5.1.4/src/.svn/text-base/ltable.c.svn-base b/lua-5.1.4/src/.svn/text-base/ltable.c.svn-base new file mode 100644 index 0000000..ec84f4f --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ltable.c.svn-base @@ -0,0 +1,588 @@ +/* +** $Id: ltable.c,v 2.32.1.2 2007/12/28 15:32:23 roberto Exp $ +** Lua tables (hash) +** See Copyright Notice in lua.h +*/ + + +/* +** Implementation of tables (aka arrays, objects, or hash tables). +** Tables keep its elements in two parts: an array part and a hash part. +** Non-negative integer keys are all candidates to be kept in the array +** part. The actual size of the array is the largest `n' such that at +** least half the slots between 0 and n are in use. +** Hash uses a mix of chained scatter table with Brent's variation. +** A main invariant of these tables is that, if an element is not +** in its main position (i.e. the `original' position that its hash gives +** to it), then the colliding element is in its own main position. +** Hence even when the load factor reaches 100%, performance remains good. +*/ + +#include +#include + +#define ltable_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "ltable.h" + + +/* +** max size of array part is 2^MAXBITS +*/ +#if LUAI_BITSINT > 26 +#define MAXBITS 26 +#else +#define MAXBITS (LUAI_BITSINT-2) +#endif + +#define MAXASIZE (1 << MAXBITS) + + +#define hashpow2(t,n) (gnode(t, lmod((n), sizenode(t)))) + +#define hashstr(t,str) hashpow2(t, (str)->tsv.hash) +#define hashboolean(t,p) hashpow2(t, p) + + +/* +** for some types, it is better to avoid modulus by power of 2, as +** they tend to have many 2 factors. +*/ +#define hashmod(t,n) (gnode(t, ((n) % ((sizenode(t)-1)|1)))) + + +#define hashpointer(t,p) hashmod(t, IntPoint(p)) + + +/* +** number of ints inside a lua_Number +*/ +#define numints cast_int(sizeof(lua_Number)/sizeof(int)) + + + +#define dummynode (&dummynode_) + +static const Node dummynode_ = { + {{NULL}, LUA_TNIL}, /* value */ + {{{NULL}, LUA_TNIL, NULL}} /* key */ +}; + + +/* +** hash for lua_Numbers +*/ +static Node *hashnum (const Table *t, lua_Number n) { + unsigned int a[numints]; + int i; + if (luai_numeq(n, 0)) /* avoid problems with -0 */ + return gnode(t, 0); + memcpy(a, &n, sizeof(a)); + for (i = 1; i < numints; i++) a[0] += a[i]; + return hashmod(t, a[0]); +} + + + +/* +** returns the `main' position of an element in a table (that is, the index +** of its hash value) +*/ +static Node *mainposition (const Table *t, const TValue *key) { + switch (ttype(key)) { + case LUA_TNUMBER: + return hashnum(t, nvalue(key)); + case LUA_TSTRING: + return hashstr(t, rawtsvalue(key)); + case LUA_TBOOLEAN: + return hashboolean(t, bvalue(key)); + case LUA_TLIGHTUSERDATA: + return hashpointer(t, pvalue(key)); + default: + return hashpointer(t, gcvalue(key)); + } +} + + +/* +** returns the index for `key' if `key' is an appropriate key to live in +** the array part of the table, -1 otherwise. +*/ +static int arrayindex (const TValue *key) { + if (ttisnumber(key)) { + lua_Number n = nvalue(key); + int k; + lua_number2int(k, n); + if (luai_numeq(cast_num(k), n)) + return k; + } + return -1; /* `key' did not match some condition */ +} + + +/* +** returns the index of a `key' for table traversals. First goes all +** elements in the array part, then elements in the hash part. The +** beginning of a traversal is signalled by -1. +*/ +static int findindex (lua_State *L, Table *t, StkId key) { + int i; + if (ttisnil(key)) return -1; /* first iteration */ + i = arrayindex(key); + if (0 < i && i <= t->sizearray) /* is `key' inside array part? */ + return i-1; /* yes; that's the index (corrected to C) */ + else { + Node *n = mainposition(t, key); + do { /* check whether `key' is somewhere in the chain */ + /* key may be dead already, but it is ok to use it in `next' */ + if (luaO_rawequalObj(key2tval(n), key) || + (ttype(gkey(n)) == LUA_TDEADKEY && iscollectable(key) && + gcvalue(gkey(n)) == gcvalue(key))) { + i = cast_int(n - gnode(t, 0)); /* key index in hash table */ + /* hash elements are numbered after array ones */ + return i + t->sizearray; + } + else n = gnext(n); + } while (n); + luaG_runerror(L, "invalid key to " LUA_QL("next")); /* key not found */ + return 0; /* to avoid warnings */ + } +} + + +int luaH_next (lua_State *L, Table *t, StkId key) { + int i = findindex(L, t, key); /* find original element */ + for (i++; i < t->sizearray; i++) { /* try first array part */ + if (!ttisnil(&t->array[i])) { /* a non-nil value? */ + setnvalue(key, cast_num(i+1)); + setobj2s(L, key+1, &t->array[i]); + return 1; + } + } + for (i -= t->sizearray; i < sizenode(t); i++) { /* then hash part */ + if (!ttisnil(gval(gnode(t, i)))) { /* a non-nil value? */ + setobj2s(L, key, key2tval(gnode(t, i))); + setobj2s(L, key+1, gval(gnode(t, i))); + return 1; + } + } + return 0; /* no more elements */ +} + + +/* +** {============================================================= +** Rehash +** ============================================================== +*/ + + +static int computesizes (int nums[], int *narray) { + int i; + int twotoi; /* 2^i */ + int a = 0; /* number of elements smaller than 2^i */ + int na = 0; /* number of elements to go to array part */ + int n = 0; /* optimal size for array part */ + for (i = 0, twotoi = 1; twotoi/2 < *narray; i++, twotoi *= 2) { + if (nums[i] > 0) { + a += nums[i]; + if (a > twotoi/2) { /* more than half elements present? */ + n = twotoi; /* optimal size (till now) */ + na = a; /* all elements smaller than n will go to array part */ + } + } + if (a == *narray) break; /* all elements already counted */ + } + *narray = n; + lua_assert(*narray/2 <= na && na <= *narray); + return na; +} + + +static int countint (const TValue *key, int *nums) { + int k = arrayindex(key); + if (0 < k && k <= MAXASIZE) { /* is `key' an appropriate array index? */ + nums[ceillog2(k)]++; /* count as such */ + return 1; + } + else + return 0; +} + + +static int numusearray (const Table *t, int *nums) { + int lg; + int ttlg; /* 2^lg */ + int ause = 0; /* summation of `nums' */ + int i = 1; /* count to traverse all array keys */ + for (lg=0, ttlg=1; lg<=MAXBITS; lg++, ttlg*=2) { /* for each slice */ + int lc = 0; /* counter */ + int lim = ttlg; + if (lim > t->sizearray) { + lim = t->sizearray; /* adjust upper limit */ + if (i > lim) + break; /* no more elements to count */ + } + /* count elements in range (2^(lg-1), 2^lg] */ + for (; i <= lim; i++) { + if (!ttisnil(&t->array[i-1])) + lc++; + } + nums[lg] += lc; + ause += lc; + } + return ause; +} + + +static int numusehash (const Table *t, int *nums, int *pnasize) { + int totaluse = 0; /* total number of elements */ + int ause = 0; /* summation of `nums' */ + int i = sizenode(t); + while (i--) { + Node *n = &t->node[i]; + if (!ttisnil(gval(n))) { + ause += countint(key2tval(n), nums); + totaluse++; + } + } + *pnasize += ause; + return totaluse; +} + + +static void setarrayvector (lua_State *L, Table *t, int size) { + int i; + luaM_reallocvector(L, t->array, t->sizearray, size, TValue); + for (i=t->sizearray; iarray[i]); + t->sizearray = size; +} + + +static void setnodevector (lua_State *L, Table *t, int size) { + int lsize; + if (size == 0) { /* no elements to hash part? */ + t->node = cast(Node *, dummynode); /* use common `dummynode' */ + lsize = 0; + } + else { + int i; + lsize = ceillog2(size); + if (lsize > MAXBITS) + luaG_runerror(L, "table overflow"); + size = twoto(lsize); + t->node = luaM_newvector(L, size, Node); + for (i=0; ilsizenode = cast_byte(lsize); + t->lastfree = gnode(t, size); /* all positions are free */ +} + + +static void resize (lua_State *L, Table *t, int nasize, int nhsize) { + int i; + int oldasize = t->sizearray; + int oldhsize = t->lsizenode; + Node *nold = t->node; /* save old hash ... */ + if (nasize > oldasize) /* array part must grow? */ + setarrayvector(L, t, nasize); + /* create new hash part with appropriate size */ + setnodevector(L, t, nhsize); + if (nasize < oldasize) { /* array part must shrink? */ + t->sizearray = nasize; + /* re-insert elements from vanishing slice */ + for (i=nasize; iarray[i])) + setobjt2t(L, luaH_setnum(L, t, i+1), &t->array[i]); + } + /* shrink array */ + luaM_reallocvector(L, t->array, oldasize, nasize, TValue); + } + /* re-insert elements from hash part */ + for (i = twoto(oldhsize) - 1; i >= 0; i--) { + Node *old = nold+i; + if (!ttisnil(gval(old))) + setobjt2t(L, luaH_set(L, t, key2tval(old)), gval(old)); + } + if (nold != dummynode) + luaM_freearray(L, nold, twoto(oldhsize), Node); /* free old array */ +} + + +void luaH_resizearray (lua_State *L, Table *t, int nasize) { + int nsize = (t->node == dummynode) ? 0 : sizenode(t); + resize(L, t, nasize, nsize); +} + + +static void rehash (lua_State *L, Table *t, const TValue *ek) { + int nasize, na; + int nums[MAXBITS+1]; /* nums[i] = number of keys between 2^(i-1) and 2^i */ + int i; + int totaluse; + for (i=0; i<=MAXBITS; i++) nums[i] = 0; /* reset counts */ + nasize = numusearray(t, nums); /* count keys in array part */ + totaluse = nasize; /* all those keys are integer keys */ + totaluse += numusehash(t, nums, &nasize); /* count keys in hash part */ + /* count extra key */ + nasize += countint(ek, nums); + totaluse++; + /* compute new size for array part */ + na = computesizes(nums, &nasize); + /* resize the table to new computed sizes */ + resize(L, t, nasize, totaluse - na); +} + + + +/* +** }============================================================= +*/ + + +Table *luaH_new (lua_State *L, int narray, int nhash) { + Table *t = luaM_new(L, Table); + luaC_link(L, obj2gco(t), LUA_TTABLE); + t->metatable = NULL; + t->flags = cast_byte(~0); + /* temporary values (kept only if some malloc fails) */ + t->array = NULL; + t->sizearray = 0; + t->lsizenode = 0; + t->node = cast(Node *, dummynode); + setarrayvector(L, t, narray); + setnodevector(L, t, nhash); + return t; +} + + +void luaH_free (lua_State *L, Table *t) { + if (t->node != dummynode) + luaM_freearray(L, t->node, sizenode(t), Node); + luaM_freearray(L, t->array, t->sizearray, TValue); + luaM_free(L, t); +} + + +static Node *getfreepos (Table *t) { + while (t->lastfree-- > t->node) { + if (ttisnil(gkey(t->lastfree))) + return t->lastfree; + } + return NULL; /* could not find a free place */ +} + + + +/* +** inserts a new key into a hash table; first, check whether key's main +** position is free. If not, check whether colliding node is in its main +** position or not: if it is not, move colliding node to an empty place and +** put new key in its main position; otherwise (colliding node is in its main +** position), new key goes to an empty position. +*/ +static TValue *newkey (lua_State *L, Table *t, const TValue *key) { + Node *mp = mainposition(t, key); + if (!ttisnil(gval(mp)) || mp == dummynode) { + Node *othern; + Node *n = getfreepos(t); /* get a free place */ + if (n == NULL) { /* cannot find a free place? */ + rehash(L, t, key); /* grow table */ + return luaH_set(L, t, key); /* re-insert key into grown table */ + } + lua_assert(n != dummynode); + othern = mainposition(t, key2tval(mp)); + if (othern != mp) { /* is colliding node out of its main position? */ + /* yes; move colliding node into free position */ + while (gnext(othern) != mp) othern = gnext(othern); /* find previous */ + gnext(othern) = n; /* redo the chain with `n' in place of `mp' */ + *n = *mp; /* copy colliding node into free pos. (mp->next also goes) */ + gnext(mp) = NULL; /* now `mp' is free */ + setnilvalue(gval(mp)); + } + else { /* colliding node is in its own main position */ + /* new node will go into free position */ + gnext(n) = gnext(mp); /* chain new position */ + gnext(mp) = n; + mp = n; + } + } + gkey(mp)->value = key->value; gkey(mp)->tt = key->tt; + luaC_barriert(L, t, key); + lua_assert(ttisnil(gval(mp))); + return gval(mp); +} + + +/* +** search function for integers +*/ +const TValue *luaH_getnum (Table *t, int key) { + /* (1 <= key && key <= t->sizearray) */ + if (cast(unsigned int, key-1) < cast(unsigned int, t->sizearray)) + return &t->array[key-1]; + else { + lua_Number nk = cast_num(key); + Node *n = hashnum(t, nk); + do { /* check whether `key' is somewhere in the chain */ + if (ttisnumber(gkey(n)) && luai_numeq(nvalue(gkey(n)), nk)) + return gval(n); /* that's it */ + else n = gnext(n); + } while (n); + return luaO_nilobject; + } +} + + +/* +** search function for strings +*/ +const TValue *luaH_getstr (Table *t, TString *key) { + Node *n = hashstr(t, key); + do { /* check whether `key' is somewhere in the chain */ + if (ttisstring(gkey(n)) && rawtsvalue(gkey(n)) == key) + return gval(n); /* that's it */ + else n = gnext(n); + } while (n); + return luaO_nilobject; +} + + +/* +** main search function +*/ +const TValue *luaH_get (Table *t, const TValue *key) { + switch (ttype(key)) { + case LUA_TNIL: return luaO_nilobject; + case LUA_TSTRING: return luaH_getstr(t, rawtsvalue(key)); + case LUA_TNUMBER: { + int k; + lua_Number n = nvalue(key); + lua_number2int(k, n); + if (luai_numeq(cast_num(k), nvalue(key))) /* index is int? */ + return luaH_getnum(t, k); /* use specialized version */ + /* else go through */ + } + default: { + Node *n = mainposition(t, key); + do { /* check whether `key' is somewhere in the chain */ + if (luaO_rawequalObj(key2tval(n), key)) + return gval(n); /* that's it */ + else n = gnext(n); + } while (n); + return luaO_nilobject; + } + } +} + + +TValue *luaH_set (lua_State *L, Table *t, const TValue *key) { + const TValue *p = luaH_get(t, key); + t->flags = 0; + if (p != luaO_nilobject) + return cast(TValue *, p); + else { + if (ttisnil(key)) luaG_runerror(L, "table index is nil"); + else if (ttisnumber(key) && luai_numisnan(nvalue(key))) + luaG_runerror(L, "table index is NaN"); + return newkey(L, t, key); + } +} + + +TValue *luaH_setnum (lua_State *L, Table *t, int key) { + const TValue *p = luaH_getnum(t, key); + if (p != luaO_nilobject) + return cast(TValue *, p); + else { + TValue k; + setnvalue(&k, cast_num(key)); + return newkey(L, t, &k); + } +} + + +TValue *luaH_setstr (lua_State *L, Table *t, TString *key) { + const TValue *p = luaH_getstr(t, key); + if (p != luaO_nilobject) + return cast(TValue *, p); + else { + TValue k; + setsvalue(L, &k, key); + return newkey(L, t, &k); + } +} + + +static int unbound_search (Table *t, unsigned int j) { + unsigned int i = j; /* i is zero or a present index */ + j++; + /* find `i' and `j' such that i is present and j is not */ + while (!ttisnil(luaH_getnum(t, j))) { + i = j; + j *= 2; + if (j > cast(unsigned int, MAX_INT)) { /* overflow? */ + /* table was built with bad purposes: resort to linear search */ + i = 1; + while (!ttisnil(luaH_getnum(t, i))) i++; + return i - 1; + } + } + /* now do a binary search between them */ + while (j - i > 1) { + unsigned int m = (i+j)/2; + if (ttisnil(luaH_getnum(t, m))) j = m; + else i = m; + } + return i; +} + + +/* +** Try to find a boundary in table `t'. A `boundary' is an integer index +** such that t[i] is non-nil and t[i+1] is nil (and 0 if t[1] is nil). +*/ +int luaH_getn (Table *t) { + unsigned int j = t->sizearray; + if (j > 0 && ttisnil(&t->array[j - 1])) { + /* there is a boundary in the array part: (binary) search for it */ + unsigned int i = 0; + while (j - i > 1) { + unsigned int m = (i+j)/2; + if (ttisnil(&t->array[m - 1])) j = m; + else i = m; + } + return i; + } + /* else must find a boundary in hash part */ + else if (t->node == dummynode) /* hash part is empty? */ + return j; /* that is easy... */ + else return unbound_search(t, j); +} + + + +#if defined(LUA_DEBUG) + +Node *luaH_mainposition (const Table *t, const TValue *key) { + return mainposition(t, key); +} + +int luaH_isdummy (Node *n) { return n == dummynode; } + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/ltable.h.svn-base b/lua-5.1.4/src/.svn/text-base/ltable.h.svn-base new file mode 100644 index 0000000..f5b9d5e --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ltable.h.svn-base @@ -0,0 +1,40 @@ +/* +** $Id: ltable.h,v 2.10.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua tables (hash) +** See Copyright Notice in lua.h +*/ + +#ifndef ltable_h +#define ltable_h + +#include "lobject.h" + + +#define gnode(t,i) (&(t)->node[i]) +#define gkey(n) (&(n)->i_key.nk) +#define gval(n) (&(n)->i_val) +#define gnext(n) ((n)->i_key.nk.next) + +#define key2tval(n) (&(n)->i_key.tvk) + + +LUAI_FUNC const TValue *luaH_getnum (Table *t, int key); +LUAI_FUNC TValue *luaH_setnum (lua_State *L, Table *t, int key); +LUAI_FUNC const TValue *luaH_getstr (Table *t, TString *key); +LUAI_FUNC TValue *luaH_setstr (lua_State *L, Table *t, TString *key); +LUAI_FUNC const TValue *luaH_get (Table *t, const TValue *key); +LUAI_FUNC TValue *luaH_set (lua_State *L, Table *t, const TValue *key); +LUAI_FUNC Table *luaH_new (lua_State *L, int narray, int lnhash); +LUAI_FUNC void luaH_resizearray (lua_State *L, Table *t, int nasize); +LUAI_FUNC void luaH_free (lua_State *L, Table *t); +LUAI_FUNC int luaH_next (lua_State *L, Table *t, StkId key); +LUAI_FUNC int luaH_getn (Table *t); + + +#if defined(LUA_DEBUG) +LUAI_FUNC Node *luaH_mainposition (const Table *t, const TValue *key); +LUAI_FUNC int luaH_isdummy (Node *n); +#endif + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/ltablib.c.svn-base b/lua-5.1.4/src/.svn/text-base/ltablib.c.svn-base new file mode 100644 index 0000000..b6d9cb4 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ltablib.c.svn-base @@ -0,0 +1,287 @@ +/* +** $Id: ltablib.c,v 1.38.1.3 2008/02/14 16:46:58 roberto Exp $ +** Library for Table Manipulation +** See Copyright Notice in lua.h +*/ + + +#include + +#define ltablib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +#define aux_getn(L,n) (luaL_checktype(L, n, LUA_TTABLE), luaL_getn(L, n)) + + +static int foreachi (lua_State *L) { + int i; + int n = aux_getn(L, 1); + luaL_checktype(L, 2, LUA_TFUNCTION); + for (i=1; i <= n; i++) { + lua_pushvalue(L, 2); /* function */ + lua_pushinteger(L, i); /* 1st argument */ + lua_rawgeti(L, 1, i); /* 2nd argument */ + lua_call(L, 2, 1); + if (!lua_isnil(L, -1)) + return 1; + lua_pop(L, 1); /* remove nil result */ + } + return 0; +} + + +static int foreach (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + luaL_checktype(L, 2, LUA_TFUNCTION); + lua_pushnil(L); /* first key */ + while (lua_next(L, 1)) { + lua_pushvalue(L, 2); /* function */ + lua_pushvalue(L, -3); /* key */ + lua_pushvalue(L, -3); /* value */ + lua_call(L, 2, 1); + if (!lua_isnil(L, -1)) + return 1; + lua_pop(L, 2); /* remove value and result */ + } + return 0; +} + + +static int maxn (lua_State *L) { + lua_Number max = 0; + luaL_checktype(L, 1, LUA_TTABLE); + lua_pushnil(L); /* first key */ + while (lua_next(L, 1)) { + lua_pop(L, 1); /* remove value */ + if (lua_type(L, -1) == LUA_TNUMBER) { + lua_Number v = lua_tonumber(L, -1); + if (v > max) max = v; + } + } + lua_pushnumber(L, max); + return 1; +} + + +static int getn (lua_State *L) { + lua_pushinteger(L, aux_getn(L, 1)); + return 1; +} + + +static int setn (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); +#ifndef luaL_setn + luaL_setn(L, 1, luaL_checkint(L, 2)); +#else + luaL_error(L, LUA_QL("setn") " is obsolete"); +#endif + lua_pushvalue(L, 1); + return 1; +} + + +static int tinsert (lua_State *L) { + int e = aux_getn(L, 1) + 1; /* first empty element */ + int pos; /* where to insert new element */ + switch (lua_gettop(L)) { + case 2: { /* called with only 2 arguments */ + pos = e; /* insert new element at the end */ + break; + } + case 3: { + int i; + pos = luaL_checkint(L, 2); /* 2nd argument is the position */ + if (pos > e) e = pos; /* `grow' array if necessary */ + for (i = e; i > pos; i--) { /* move up elements */ + lua_rawgeti(L, 1, i-1); + lua_rawseti(L, 1, i); /* t[i] = t[i-1] */ + } + break; + } + default: { + return luaL_error(L, "wrong number of arguments to " LUA_QL("insert")); + } + } + luaL_setn(L, 1, e); /* new size */ + lua_rawseti(L, 1, pos); /* t[pos] = v */ + return 0; +} + + +static int tremove (lua_State *L) { + int e = aux_getn(L, 1); + int pos = luaL_optint(L, 2, e); + if (!(1 <= pos && pos <= e)) /* position is outside bounds? */ + return 0; /* nothing to remove */ + luaL_setn(L, 1, e - 1); /* t.n = n-1 */ + lua_rawgeti(L, 1, pos); /* result = t[pos] */ + for ( ;pos= P */ + while (lua_rawgeti(L, 1, ++i), sort_comp(L, -1, -2)) { + if (i>u) luaL_error(L, "invalid order function for sorting"); + lua_pop(L, 1); /* remove a[i] */ + } + /* repeat --j until a[j] <= P */ + while (lua_rawgeti(L, 1, --j), sort_comp(L, -3, -1)) { + if (j + +#define ltm_c +#define LUA_CORE + +#include "lua.h" + +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" + + + +const char *const luaT_typenames[] = { + "nil", "boolean", "userdata", "number", + "string", "table", "function", "userdata", "thread", + "proto", "upval" +}; + + +void luaT_init (lua_State *L) { + static const char *const luaT_eventname[] = { /* ORDER TM */ + "__index", "__newindex", + "__gc", "__mode", "__eq", + "__add", "__sub", "__mul", "__div", "__mod", + "__pow", "__unm", "__len", "__lt", "__le", + "__concat", "__call" + }; + int i; + for (i=0; itmname[i] = luaS_new(L, luaT_eventname[i]); + luaS_fix(G(L)->tmname[i]); /* never collect these names */ + } +} + + +/* +** function to be used with macro "fasttm": optimized for absence of +** tag methods +*/ +const TValue *luaT_gettm (Table *events, TMS event, TString *ename) { + const TValue *tm = luaH_getstr(events, ename); + lua_assert(event <= TM_EQ); + if (ttisnil(tm)) { /* no tag method? */ + events->flags |= cast_byte(1u<metatable; + break; + case LUA_TUSERDATA: + mt = uvalue(o)->metatable; + break; + default: + mt = G(L)->mt[ttype(o)]; + } + return (mt ? luaH_getstr(mt, G(L)->tmname[event]) : luaO_nilobject); +} + diff --git a/lua-5.1.4/src/.svn/text-base/ltm.h.svn-base b/lua-5.1.4/src/.svn/text-base/ltm.h.svn-base new file mode 100644 index 0000000..64343b7 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/ltm.h.svn-base @@ -0,0 +1,54 @@ +/* +** $Id: ltm.h,v 2.6.1.1 2007/12/27 13:02:25 roberto Exp $ +** Tag methods +** See Copyright Notice in lua.h +*/ + +#ifndef ltm_h +#define ltm_h + + +#include "lobject.h" + + +/* +* WARNING: if you change the order of this enumeration, +* grep "ORDER TM" +*/ +typedef enum { + TM_INDEX, + TM_NEWINDEX, + TM_GC, + TM_MODE, + TM_EQ, /* last tag method with `fast' access */ + TM_ADD, + TM_SUB, + TM_MUL, + TM_DIV, + TM_MOD, + TM_POW, + TM_UNM, + TM_LEN, + TM_LT, + TM_LE, + TM_CONCAT, + TM_CALL, + TM_N /* number of elements in the enum */ +} TMS; + + + +#define gfasttm(g,et,e) ((et) == NULL ? NULL : \ + ((et)->flags & (1u<<(e))) ? NULL : luaT_gettm(et, e, (g)->tmname[e])) + +#define fasttm(l,et,e) gfasttm(G(l), et, e) + +LUAI_DATA const char *const luaT_typenames[]; + + +LUAI_FUNC const TValue *luaT_gettm (Table *events, TMS event, TString *ename); +LUAI_FUNC const TValue *luaT_gettmbyobj (lua_State *L, const TValue *o, + TMS event); +LUAI_FUNC void luaT_init (lua_State *L); + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lua.c.svn-base b/lua-5.1.4/src/.svn/text-base/lua.c.svn-base new file mode 100644 index 0000000..3a46609 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lua.c.svn-base @@ -0,0 +1,392 @@ +/* +** $Id: lua.c,v 1.160.1.2 2007/12/28 15:32:23 roberto Exp $ +** Lua stand-alone interpreter +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include + +#define lua_c + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + +static lua_State *globalL = NULL; + +static const char *progname = LUA_PROGNAME; + + + +static void lstop (lua_State *L, lua_Debug *ar) { + (void)ar; /* unused arg. */ + lua_sethook(L, NULL, 0, 0); + luaL_error(L, "interrupted!"); +} + + +static void laction (int i) { + signal(i, SIG_DFL); /* if another SIGINT happens before lstop, + terminate process (default action) */ + lua_sethook(globalL, lstop, LUA_MASKCALL | LUA_MASKRET | LUA_MASKCOUNT, 1); +} + + +static void print_usage (void) { + fprintf(stderr, + "usage: %s [options] [script [args]].\n" + "Available options are:\n" + " -e stat execute string " LUA_QL("stat") "\n" + " -l name require library " LUA_QL("name") "\n" + " -i enter interactive mode after executing " LUA_QL("script") "\n" + " -v show version information\n" + " -- stop handling options\n" + " - execute stdin and stop handling options\n" + , + progname); + fflush(stderr); +} + + +static void l_message (const char *pname, const char *msg) { + if (pname) fprintf(stderr, "%s: ", pname); + fprintf(stderr, "%s\n", msg); + fflush(stderr); +} + + +static int report (lua_State *L, int status) { + if (status && !lua_isnil(L, -1)) { + const char *msg = lua_tostring(L, -1); + if (msg == NULL) msg = "(error object is not a string)"; + l_message(progname, msg); + lua_pop(L, 1); + } + return status; +} + + +static int traceback (lua_State *L) { + if (!lua_isstring(L, 1)) /* 'message' not a string? */ + return 1; /* keep it intact */ + lua_getfield(L, LUA_GLOBALSINDEX, "debug"); + if (!lua_istable(L, -1)) { + lua_pop(L, 1); + return 1; + } + lua_getfield(L, -1, "traceback"); + if (!lua_isfunction(L, -1)) { + lua_pop(L, 2); + return 1; + } + lua_pushvalue(L, 1); /* pass error message */ + lua_pushinteger(L, 2); /* skip this function and traceback */ + lua_call(L, 2, 1); /* call debug.traceback */ + return 1; +} + + +static int docall (lua_State *L, int narg, int clear) { + int status; + int base = lua_gettop(L) - narg; /* function index */ + lua_pushcfunction(L, traceback); /* push traceback function */ + lua_insert(L, base); /* put it under chunk and args */ + signal(SIGINT, laction); + status = lua_pcall(L, narg, (clear ? 0 : LUA_MULTRET), base); + signal(SIGINT, SIG_DFL); + lua_remove(L, base); /* remove traceback function */ + /* force a complete garbage collection in case of errors */ + if (status != 0) lua_gc(L, LUA_GCCOLLECT, 0); + return status; +} + + +static void print_version (void) { + l_message(NULL, LUA_RELEASE " " LUA_COPYRIGHT); +} + + +static int getargs (lua_State *L, char **argv, int n) { + int narg; + int i; + int argc = 0; + while (argv[argc]) argc++; /* count total number of arguments */ + narg = argc - (n + 1); /* number of arguments to the script */ + luaL_checkstack(L, narg + 3, "too many arguments to script"); + for (i=n+1; i < argc; i++) + lua_pushstring(L, argv[i]); + lua_createtable(L, narg, n + 1); + for (i=0; i < argc; i++) { + lua_pushstring(L, argv[i]); + lua_rawseti(L, -2, i - n); + } + return narg; +} + + +static int dofile (lua_State *L, const char *name) { + int status = luaL_loadfile(L, name) || docall(L, 0, 1); + return report(L, status); +} + + +static int dostring (lua_State *L, const char *s, const char *name) { + int status = luaL_loadbuffer(L, s, strlen(s), name) || docall(L, 0, 1); + return report(L, status); +} + + +static int dolibrary (lua_State *L, const char *name) { + lua_getglobal(L, "require"); + lua_pushstring(L, name); + return report(L, docall(L, 1, 1)); +} + + +static const char *get_prompt (lua_State *L, int firstline) { + const char *p; + lua_getfield(L, LUA_GLOBALSINDEX, firstline ? "_PROMPT" : "_PROMPT2"); + p = lua_tostring(L, -1); + if (p == NULL) p = (firstline ? LUA_PROMPT : LUA_PROMPT2); + lua_pop(L, 1); /* remove global */ + return p; +} + + +static int incomplete (lua_State *L, int status) { + if (status == LUA_ERRSYNTAX) { + size_t lmsg; + const char *msg = lua_tolstring(L, -1, &lmsg); + const char *tp = msg + lmsg - (sizeof(LUA_QL("")) - 1); + if (strstr(msg, LUA_QL("")) == tp) { + lua_pop(L, 1); + return 1; + } + } + return 0; /* else... */ +} + + +static int pushline (lua_State *L, int firstline) { + char buffer[LUA_MAXINPUT]; + char *b = buffer; + size_t l; + const char *prmt = get_prompt(L, firstline); + if (lua_readline(L, b, prmt) == 0) + return 0; /* no input */ + l = strlen(b); + if (l > 0 && b[l-1] == '\n') /* line ends with newline? */ + b[l-1] = '\0'; /* remove it */ + if (firstline && b[0] == '=') /* first line starts with `=' ? */ + lua_pushfstring(L, "return %s", b+1); /* change it to `return' */ + else + lua_pushstring(L, b); + lua_freeline(L, b); + return 1; +} + + +static int loadline (lua_State *L) { + int status; + lua_settop(L, 0); + if (!pushline(L, 1)) + return -1; /* no input */ + for (;;) { /* repeat until gets a complete line */ + status = luaL_loadbuffer(L, lua_tostring(L, 1), lua_strlen(L, 1), "=stdin"); + if (!incomplete(L, status)) break; /* cannot try to add lines? */ + if (!pushline(L, 0)) /* no more input? */ + return -1; + lua_pushliteral(L, "\n"); /* add a new line... */ + lua_insert(L, -2); /* ...between the two lines */ + lua_concat(L, 3); /* join them */ + } + lua_saveline(L, 1); + lua_remove(L, 1); /* remove line */ + return status; +} + + +static void dotty (lua_State *L) { + int status; + const char *oldprogname = progname; + progname = NULL; + while ((status = loadline(L)) != -1) { + if (status == 0) status = docall(L, 0, 0); + report(L, status); + if (status == 0 && lua_gettop(L) > 0) { /* any result to print? */ + lua_getglobal(L, "print"); + lua_insert(L, 1); + if (lua_pcall(L, lua_gettop(L)-1, 0, 0) != 0) + l_message(progname, lua_pushfstring(L, + "error calling " LUA_QL("print") " (%s)", + lua_tostring(L, -1))); + } + } + lua_settop(L, 0); /* clear stack */ + fputs("\n", stdout); + fflush(stdout); + progname = oldprogname; +} + + +static int handle_script (lua_State *L, char **argv, int n) { + int status; + const char *fname; + int narg = getargs(L, argv, n); /* collect arguments */ + lua_setglobal(L, "arg"); + fname = argv[n]; + if (strcmp(fname, "-") == 0 && strcmp(argv[n-1], "--") != 0) + fname = NULL; /* stdin */ + status = luaL_loadfile(L, fname); + lua_insert(L, -(narg+1)); + if (status == 0) + status = docall(L, narg, 0); + else + lua_pop(L, narg); + return report(L, status); +} + + +/* check that argument has no extra characters at the end */ +#define notail(x) {if ((x)[2] != '\0') return -1;} + + +static int collectargs (char **argv, int *pi, int *pv, int *pe) { + int i; + for (i = 1; argv[i] != NULL; i++) { + if (argv[i][0] != '-') /* not an option? */ + return i; + switch (argv[i][1]) { /* option */ + case '-': + notail(argv[i]); + return (argv[i+1] != NULL ? i+1 : 0); + case '\0': + return i; + case 'i': + notail(argv[i]); + *pi = 1; /* go through */ + case 'v': + notail(argv[i]); + *pv = 1; + break; + case 'e': + *pe = 1; /* go through */ + case 'l': + if (argv[i][2] == '\0') { + i++; + if (argv[i] == NULL) return -1; + } + break; + default: return -1; /* invalid option */ + } + } + return 0; +} + + +static int runargs (lua_State *L, char **argv, int n) { + int i; + for (i = 1; i < n; i++) { + if (argv[i] == NULL) continue; + lua_assert(argv[i][0] == '-'); + switch (argv[i][1]) { /* option */ + case 'e': { + const char *chunk = argv[i] + 2; + if (*chunk == '\0') chunk = argv[++i]; + lua_assert(chunk != NULL); + if (dostring(L, chunk, "=(command line)") != 0) + return 1; + break; + } + case 'l': { + const char *filename = argv[i] + 2; + if (*filename == '\0') filename = argv[++i]; + lua_assert(filename != NULL); + if (dolibrary(L, filename)) + return 1; /* stop if file fails */ + break; + } + default: break; + } + } + return 0; +} + + +static int handle_luainit (lua_State *L) { + const char *init = getenv(LUA_INIT); + if (init == NULL) return 0; /* status OK */ + else if (init[0] == '@') + return dofile(L, init+1); + else + return dostring(L, init, "=" LUA_INIT); +} + + +struct Smain { + int argc; + char **argv; + int status; +}; + + +static int pmain (lua_State *L) { + struct Smain *s = (struct Smain *)lua_touserdata(L, 1); + char **argv = s->argv; + int script; + int has_i = 0, has_v = 0, has_e = 0; + globalL = L; + if (argv[0] && argv[0][0]) progname = argv[0]; + lua_gc(L, LUA_GCSTOP, 0); /* stop collector during initialization */ + luaL_openlibs(L); /* open libraries */ + lua_gc(L, LUA_GCRESTART, 0); + s->status = handle_luainit(L); + if (s->status != 0) return 0; + script = collectargs(argv, &has_i, &has_v, &has_e); + if (script < 0) { /* invalid args? */ + print_usage(); + s->status = 1; + return 0; + } + if (has_v) print_version(); + s->status = runargs(L, argv, (script > 0) ? script : s->argc); + if (s->status != 0) return 0; + if (script) + s->status = handle_script(L, argv, script); + if (s->status != 0) return 0; + if (has_i) + dotty(L); + else if (script == 0 && !has_e && !has_v) { + if (lua_stdin_is_tty()) { + print_version(); + dotty(L); + } + else dofile(L, NULL); /* executes stdin as a file */ + } + return 0; +} + + +int main (int argc, char **argv) { + int status; + struct Smain s; + lua_State *L = lua_open(); /* create state */ + if (L == NULL) { + l_message(argv[0], "cannot create state: not enough memory"); + return EXIT_FAILURE; + } + s.argc = argc; + s.argv = argv; + status = lua_cpcall(L, &pmain, &s); + report(L, status); + lua_close(L); + return (status || s.status) ? EXIT_FAILURE : EXIT_SUCCESS; +} + diff --git a/lua-5.1.4/src/.svn/text-base/lua.h.svn-base b/lua-5.1.4/src/.svn/text-base/lua.h.svn-base new file mode 100644 index 0000000..e4bdfd3 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lua.h.svn-base @@ -0,0 +1,388 @@ +/* +** $Id: lua.h,v 1.218.1.5 2008/08/06 13:30:12 roberto Exp $ +** Lua - An Extensible Extension Language +** Lua.org, PUC-Rio, Brazil (http://www.lua.org) +** See Copyright Notice at the end of this file +*/ + + +#ifndef lua_h +#define lua_h + +#include +#include + + +#include "luaconf.h" + + +#define LUA_VERSION "Lua 5.1" +#define LUA_RELEASE "Lua 5.1.4" +#define LUA_VERSION_NUM 501 +#define LUA_COPYRIGHT "Copyright (C) 1994-2008 Lua.org, PUC-Rio" +#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo & W. Celes" + + +/* mark for precompiled code (`Lua') */ +#define LUA_SIGNATURE "\033Lua" + +/* option for multiple returns in `lua_pcall' and `lua_call' */ +#define LUA_MULTRET (-1) + + +/* +** pseudo-indices +*/ +#define LUA_REGISTRYINDEX (-10000) +#define LUA_ENVIRONINDEX (-10001) +#define LUA_GLOBALSINDEX (-10002) +#define lua_upvalueindex(i) (LUA_GLOBALSINDEX-(i)) + + +/* thread status; 0 is OK */ +#define LUA_YIELD 1 +#define LUA_ERRRUN 2 +#define LUA_ERRSYNTAX 3 +#define LUA_ERRMEM 4 +#define LUA_ERRERR 5 + + +typedef struct lua_State lua_State; + +typedef int (*lua_CFunction) (lua_State *L); + + +/* +** functions that read/write blocks when loading/dumping Lua chunks +*/ +typedef const char * (*lua_Reader) (lua_State *L, void *ud, size_t *sz); + +typedef int (*lua_Writer) (lua_State *L, const void* p, size_t sz, void* ud); + + +/* +** prototype for memory-allocation functions +*/ +typedef void * (*lua_Alloc) (void *ud, void *ptr, size_t osize, size_t nsize); + + +/* +** basic types +*/ +#define LUA_TNONE (-1) + +#define LUA_TNIL 0 +#define LUA_TBOOLEAN 1 +#define LUA_TLIGHTUSERDATA 2 +#define LUA_TNUMBER 3 +#define LUA_TSTRING 4 +#define LUA_TTABLE 5 +#define LUA_TFUNCTION 6 +#define LUA_TUSERDATA 7 +#define LUA_TTHREAD 8 + + + +/* minimum Lua stack available to a C function */ +#define LUA_MINSTACK 20 + + +/* +** generic extra include file +*/ +#if defined(LUA_USER_H) +#include LUA_USER_H +#endif + + +/* type of numbers in Lua */ +typedef LUA_NUMBER lua_Number; + + +/* type for integer functions */ +typedef LUA_INTEGER lua_Integer; + + + +/* +** state manipulation +*/ +LUA_API lua_State *(lua_newstate) (lua_Alloc f, void *ud); +LUA_API void (lua_close) (lua_State *L); +LUA_API lua_State *(lua_newthread) (lua_State *L); + +LUA_API lua_CFunction (lua_atpanic) (lua_State *L, lua_CFunction panicf); + + +/* +** basic stack manipulation +*/ +LUA_API int (lua_gettop) (lua_State *L); +LUA_API void (lua_settop) (lua_State *L, int idx); +LUA_API void (lua_pushvalue) (lua_State *L, int idx); +LUA_API void (lua_remove) (lua_State *L, int idx); +LUA_API void (lua_insert) (lua_State *L, int idx); +LUA_API void (lua_replace) (lua_State *L, int idx); +LUA_API int (lua_checkstack) (lua_State *L, int sz); + +LUA_API void (lua_xmove) (lua_State *from, lua_State *to, int n); + + +/* +** access functions (stack -> C) +*/ + +LUA_API int (lua_isnumber) (lua_State *L, int idx); +LUA_API int (lua_isstring) (lua_State *L, int idx); +LUA_API int (lua_iscfunction) (lua_State *L, int idx); +LUA_API int (lua_isuserdata) (lua_State *L, int idx); +LUA_API int (lua_type) (lua_State *L, int idx); +LUA_API const char *(lua_typename) (lua_State *L, int tp); + +LUA_API int (lua_equal) (lua_State *L, int idx1, int idx2); +LUA_API int (lua_rawequal) (lua_State *L, int idx1, int idx2); +LUA_API int (lua_lessthan) (lua_State *L, int idx1, int idx2); + +LUA_API lua_Number (lua_tonumber) (lua_State *L, int idx); +LUA_API lua_Integer (lua_tointeger) (lua_State *L, int idx); +LUA_API int (lua_toboolean) (lua_State *L, int idx); +LUA_API const char *(lua_tolstring) (lua_State *L, int idx, size_t *len); +LUA_API size_t (lua_objlen) (lua_State *L, int idx); +LUA_API lua_CFunction (lua_tocfunction) (lua_State *L, int idx); +LUA_API void *(lua_touserdata) (lua_State *L, int idx); +LUA_API lua_State *(lua_tothread) (lua_State *L, int idx); +LUA_API const void *(lua_topointer) (lua_State *L, int idx); + + +/* +** push functions (C -> stack) +*/ +LUA_API void (lua_pushnil) (lua_State *L); +LUA_API void (lua_pushnumber) (lua_State *L, lua_Number n); +LUA_API void (lua_pushinteger) (lua_State *L, lua_Integer n); +LUA_API void (lua_pushlstring) (lua_State *L, const char *s, size_t l); +LUA_API void (lua_pushstring) (lua_State *L, const char *s); +LUA_API const char *(lua_pushvfstring) (lua_State *L, const char *fmt, + va_list argp); +LUA_API const char *(lua_pushfstring) (lua_State *L, const char *fmt, ...); +LUA_API void (lua_pushcclosure) (lua_State *L, lua_CFunction fn, int n); +LUA_API void (lua_pushboolean) (lua_State *L, int b); +LUA_API void (lua_pushlightuserdata) (lua_State *L, void *p); +LUA_API int (lua_pushthread) (lua_State *L); + + +/* +** get functions (Lua -> stack) +*/ +LUA_API void (lua_gettable) (lua_State *L, int idx); +LUA_API void (lua_getfield) (lua_State *L, int idx, const char *k); +LUA_API void (lua_rawget) (lua_State *L, int idx); +LUA_API void (lua_rawgeti) (lua_State *L, int idx, int n); +LUA_API void (lua_createtable) (lua_State *L, int narr, int nrec); +LUA_API void *(lua_newuserdata) (lua_State *L, size_t sz); +LUA_API int (lua_getmetatable) (lua_State *L, int objindex); +LUA_API void (lua_getfenv) (lua_State *L, int idx); + + +/* +** set functions (stack -> Lua) +*/ +LUA_API void (lua_settable) (lua_State *L, int idx); +LUA_API void (lua_setfield) (lua_State *L, int idx, const char *k); +LUA_API void (lua_rawset) (lua_State *L, int idx); +LUA_API void (lua_rawseti) (lua_State *L, int idx, int n); +LUA_API int (lua_setmetatable) (lua_State *L, int objindex); +LUA_API int (lua_setfenv) (lua_State *L, int idx); + + +/* +** `load' and `call' functions (load and run Lua code) +*/ +LUA_API void (lua_call) (lua_State *L, int nargs, int nresults); +LUA_API int (lua_pcall) (lua_State *L, int nargs, int nresults, int errfunc); +LUA_API int (lua_cpcall) (lua_State *L, lua_CFunction func, void *ud); +LUA_API int (lua_load) (lua_State *L, lua_Reader reader, void *dt, + const char *chunkname); + +LUA_API int (lua_dump) (lua_State *L, lua_Writer writer, void *data); + + +/* +** coroutine functions +*/ +LUA_API int (lua_yield) (lua_State *L, int nresults); +LUA_API int (lua_resume) (lua_State *L, int narg); +LUA_API int (lua_status) (lua_State *L); + +/* +** garbage-collection function and options +*/ + +#define LUA_GCSTOP 0 +#define LUA_GCRESTART 1 +#define LUA_GCCOLLECT 2 +#define LUA_GCCOUNT 3 +#define LUA_GCCOUNTB 4 +#define LUA_GCSTEP 5 +#define LUA_GCSETPAUSE 6 +#define LUA_GCSETSTEPMUL 7 + +LUA_API int (lua_gc) (lua_State *L, int what, int data); + + +/* +** miscellaneous functions +*/ + +LUA_API int (lua_error) (lua_State *L); + +LUA_API int (lua_next) (lua_State *L, int idx); + +LUA_API void (lua_concat) (lua_State *L, int n); + +LUA_API lua_Alloc (lua_getallocf) (lua_State *L, void **ud); +LUA_API void lua_setallocf (lua_State *L, lua_Alloc f, void *ud); + + + +/* +** =============================================================== +** some useful macros +** =============================================================== +*/ + +#define lua_pop(L,n) lua_settop(L, -(n)-1) + +#define lua_newtable(L) lua_createtable(L, 0, 0) + +#define lua_register(L,n,f) (lua_pushcfunction(L, (f)), lua_setglobal(L, (n))) + +#define lua_pushcfunction(L,f) lua_pushcclosure(L, (f), 0) + +#define lua_strlen(L,i) lua_objlen(L, (i)) + +#define lua_isfunction(L,n) (lua_type(L, (n)) == LUA_TFUNCTION) +#define lua_istable(L,n) (lua_type(L, (n)) == LUA_TTABLE) +#define lua_islightuserdata(L,n) (lua_type(L, (n)) == LUA_TLIGHTUSERDATA) +#define lua_isnil(L,n) (lua_type(L, (n)) == LUA_TNIL) +#define lua_isboolean(L,n) (lua_type(L, (n)) == LUA_TBOOLEAN) +#define lua_isthread(L,n) (lua_type(L, (n)) == LUA_TTHREAD) +#define lua_isnone(L,n) (lua_type(L, (n)) == LUA_TNONE) +#define lua_isnoneornil(L, n) (lua_type(L, (n)) <= 0) + +#define lua_pushliteral(L, s) \ + lua_pushlstring(L, "" s, (sizeof(s)/sizeof(char))-1) + +#define lua_setglobal(L,s) lua_setfield(L, LUA_GLOBALSINDEX, (s)) +#define lua_getglobal(L,s) lua_getfield(L, LUA_GLOBALSINDEX, (s)) + +#define lua_tostring(L,i) lua_tolstring(L, (i), NULL) + + + +/* +** compatibility macros and functions +*/ + +#define lua_open() luaL_newstate() + +#define lua_getregistry(L) lua_pushvalue(L, LUA_REGISTRYINDEX) + +#define lua_getgccount(L) lua_gc(L, LUA_GCCOUNT, 0) + +#define lua_Chunkreader lua_Reader +#define lua_Chunkwriter lua_Writer + + +/* hack */ +LUA_API void lua_setlevel (lua_State *from, lua_State *to); + + +/* +** {====================================================================== +** Debug API +** ======================================================================= +*/ + + +/* +** Event codes +*/ +#define LUA_HOOKCALL 0 +#define LUA_HOOKRET 1 +#define LUA_HOOKLINE 2 +#define LUA_HOOKCOUNT 3 +#define LUA_HOOKTAILRET 4 + + +/* +** Event masks +*/ +#define LUA_MASKCALL (1 << LUA_HOOKCALL) +#define LUA_MASKRET (1 << LUA_HOOKRET) +#define LUA_MASKLINE (1 << LUA_HOOKLINE) +#define LUA_MASKCOUNT (1 << LUA_HOOKCOUNT) + +typedef struct lua_Debug lua_Debug; /* activation record */ + + +/* Functions to be called by the debuger in specific events */ +typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar); + + +LUA_API int lua_getstack (lua_State *L, int level, lua_Debug *ar); +LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar); +LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n); +LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n); +LUA_API const char *lua_getupvalue (lua_State *L, int funcindex, int n); +LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n); + +LUA_API int lua_sethook (lua_State *L, lua_Hook func, int mask, int count); +LUA_API lua_Hook lua_gethook (lua_State *L); +LUA_API int lua_gethookmask (lua_State *L); +LUA_API int lua_gethookcount (lua_State *L); + + +struct lua_Debug { + int event; + const char *name; /* (n) */ + const char *namewhat; /* (n) `global', `local', `field', `method' */ + const char *what; /* (S) `Lua', `C', `main', `tail' */ + const char *source; /* (S) */ + int currentline; /* (l) */ + int nups; /* (u) number of upvalues */ + int linedefined; /* (S) */ + int lastlinedefined; /* (S) */ + char short_src[LUA_IDSIZE]; /* (S) */ + /* private part */ + int i_ci; /* active function */ +}; + +/* }====================================================================== */ + + +/****************************************************************************** +* Copyright (C) 1994-2008 Lua.org, PUC-Rio. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining +* a copy of this software and associated documentation files (the +* "Software"), to deal in the Software without restriction, including +* without limitation the rights to use, copy, modify, merge, publish, +* distribute, sublicense, and/or sell copies of the Software, and to +* permit persons to whom the Software is furnished to do so, subject to +* the following conditions: +* +* The above copyright notice and this permission notice shall be +* included in all copies or substantial portions of the Software. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +******************************************************************************/ + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/luac.c.svn-base b/lua-5.1.4/src/.svn/text-base/luac.c.svn-base new file mode 100644 index 0000000..d070173 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/luac.c.svn-base @@ -0,0 +1,200 @@ +/* +** $Id: luac.c,v 1.54 2006/06/02 17:37:11 lhf Exp $ +** Lua compiler (saves bytecodes to files; also list bytecodes) +** See Copyright Notice in lua.h +*/ + +#include +#include +#include +#include + +#define luac_c +#define LUA_CORE + +#include "lua.h" +#include "lauxlib.h" + +#include "ldo.h" +#include "lfunc.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lstring.h" +#include "lundump.h" + +#define PROGNAME "luac" /* default program name */ +#define OUTPUT PROGNAME ".out" /* default output file */ + +static int listing=0; /* list bytecodes? */ +static int dumping=1; /* dump bytecodes? */ +static int stripping=0; /* strip debug information? */ +static char Output[]={ OUTPUT }; /* default output file name */ +static const char* output=Output; /* actual output file name */ +static const char* progname=PROGNAME; /* actual program name */ + +static void fatal(const char* message) +{ + fprintf(stderr,"%s: %s\n",progname,message); + exit(EXIT_FAILURE); +} + +static void cannot(const char* what) +{ + fprintf(stderr,"%s: cannot %s %s: %s\n",progname,what,output,strerror(errno)); + exit(EXIT_FAILURE); +} + +static void usage(const char* message) +{ + if (*message=='-') + fprintf(stderr,"%s: unrecognized option " LUA_QS "\n",progname,message); + else + fprintf(stderr,"%s: %s\n",progname,message); + fprintf(stderr, + "usage: %s [options] [filenames].\n" + "Available options are:\n" + " - process stdin\n" + " -l list\n" + " -o name output to file " LUA_QL("name") " (default is \"%s\")\n" + " -p parse only\n" + " -s strip debug information\n" + " -v show version information\n" + " -- stop handling options\n", + progname,Output); + exit(EXIT_FAILURE); +} + +#define IS(s) (strcmp(argv[i],s)==0) + +static int doargs(int argc, char* argv[]) +{ + int i; + int version=0; + if (argv[0]!=NULL && *argv[0]!=0) progname=argv[0]; + for (i=1; itop+(i))->l.p) + +static const Proto* combine(lua_State* L, int n) +{ + if (n==1) + return toproto(L,-1); + else + { + int i,pc; + Proto* f=luaF_newproto(L); + setptvalue2s(L,L->top,f); incr_top(L); + f->source=luaS_newliteral(L,"=(" PROGNAME ")"); + f->maxstacksize=1; + pc=2*n+1; + f->code=luaM_newvector(L,pc,Instruction); + f->sizecode=pc; + f->p=luaM_newvector(L,n,Proto*); + f->sizep=n; + pc=0; + for (i=0; ip[i]=toproto(L,i-n-1); + f->code[pc++]=CREATE_ABx(OP_CLOSURE,0,i); + f->code[pc++]=CREATE_ABC(OP_CALL,0,1,1); + } + f->code[pc++]=CREATE_ABC(OP_RETURN,0,1,0); + return f; + } +} + +static int writer(lua_State* L, const void* p, size_t size, void* u) +{ + UNUSED(L); + return (fwrite(p,size,1,(FILE*)u)!=1) && (size!=0); +} + +struct Smain { + int argc; + char** argv; +}; + +static int pmain(lua_State* L) +{ + struct Smain* s = (struct Smain*)lua_touserdata(L, 1); + int argc=s->argc; + char** argv=s->argv; + const Proto* f; + int i; + if (!lua_checkstack(L,argc)) fatal("too many input files"); + for (i=0; i1); + if (dumping) + { + FILE* D= (output==NULL) ? stdout : fopen(output,"wb"); + if (D==NULL) cannot("open"); + lua_lock(L); + luaU_dump(L,f,writer,D,stripping); + lua_unlock(L); + if (ferror(D)) cannot("write"); + if (fclose(D)) cannot("close"); + } + return 0; +} + +int main(int argc, char* argv[]) +{ + lua_State* L; + struct Smain s; + int i=doargs(argc,argv); + argc-=i; argv+=i; + if (argc<=0) usage("no input files given"); + L=lua_open(); + if (L==NULL) fatal("not enough memory for state"); + s.argc=argc; + s.argv=argv; + if (lua_cpcall(L,pmain,&s)!=0) fatal(lua_tostring(L,-1)); + lua_close(L); + return EXIT_SUCCESS; +} diff --git a/lua-5.1.4/src/.svn/text-base/luaconf.h.svn-base b/lua-5.1.4/src/.svn/text-base/luaconf.h.svn-base new file mode 100644 index 0000000..e2cb261 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/luaconf.h.svn-base @@ -0,0 +1,763 @@ +/* +** $Id: luaconf.h,v 1.82.1.7 2008/02/11 16:25:08 roberto Exp $ +** Configuration file for Lua +** See Copyright Notice in lua.h +*/ + + +#ifndef lconfig_h +#define lconfig_h + +#include +#include + + +/* +** ================================================================== +** Search for "@@" to find all configurable definitions. +** =================================================================== +*/ + + +/* +@@ LUA_ANSI controls the use of non-ansi features. +** CHANGE it (define it) if you want Lua to avoid the use of any +** non-ansi feature or library. +*/ +#if defined(__STRICT_ANSI__) +#define LUA_ANSI +#endif + + +#if !defined(LUA_ANSI) && defined(_WIN32) +#define LUA_WIN +#endif + +#if defined(LUA_USE_LINUX) +#define LUA_USE_POSIX +#define LUA_USE_DLOPEN /* needs an extra library: -ldl */ +#define LUA_USE_READLINE /* needs some extra libraries */ +#endif + +#if defined(LUA_USE_MACOSX) +#define LUA_USE_POSIX +#define LUA_DL_DYLD /* does not need extra library */ +#endif + + + +/* +@@ LUA_USE_POSIX includes all functionallity listed as X/Open System +@* Interfaces Extension (XSI). +** CHANGE it (define it) if your system is XSI compatible. +*/ +#if defined(LUA_USE_POSIX) +#define LUA_USE_MKSTEMP +#define LUA_USE_ISATTY +#define LUA_USE_POPEN +#define LUA_USE_ULONGJMP +#endif + + +/* +@@ LUA_PATH and LUA_CPATH are the names of the environment variables that +@* Lua check to set its paths. +@@ LUA_INIT is the name of the environment variable that Lua +@* checks for initialization code. +** CHANGE them if you want different names. +*/ +#define LUA_PATH "LUA_PATH" +#define LUA_CPATH "LUA_CPATH" +#define LUA_INIT "LUA_INIT" + + +/* +@@ LUA_PATH_DEFAULT is the default path that Lua uses to look for +@* Lua libraries. +@@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for +@* C libraries. +** CHANGE them if your machine has a non-conventional directory +** hierarchy or if you want to install your libraries in +** non-conventional directories. +*/ +#if defined(_WIN32) +/* +** In Windows, any exclamation mark ('!') in the path is replaced by the +** path of the directory of the executable file of the current process. +*/ +#define LUA_LDIR "!\\lua\\" +#define LUA_CDIR "!\\" +#define LUA_PATH_DEFAULT \ + ".\\?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ + LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua" +#define LUA_CPATH_DEFAULT \ + ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" + +#else +#define LUA_ROOT "/usr/local/" +#define LUA_LDIR LUA_ROOT "share/lua/5.1/" +#define LUA_CDIR LUA_ROOT "lib/lua/5.1/" +#define LUA_PATH_DEFAULT \ + "./?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ + LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua" +#define LUA_CPATH_DEFAULT \ + "./?.so;" LUA_CDIR"?.so;" LUA_CDIR"loadall.so" +#endif + + +/* +@@ LUA_DIRSEP is the directory separator (for submodules). +** CHANGE it if your machine does not use "/" as the directory separator +** and is not Windows. (On Windows Lua automatically uses "\".) +*/ +#if defined(_WIN32) +#define LUA_DIRSEP "\\" +#else +#define LUA_DIRSEP "/" +#endif + + +/* +@@ LUA_PATHSEP is the character that separates templates in a path. +@@ LUA_PATH_MARK is the string that marks the substitution points in a +@* template. +@@ LUA_EXECDIR in a Windows path is replaced by the executable's +@* directory. +@@ LUA_IGMARK is a mark to ignore all before it when bulding the +@* luaopen_ function name. +** CHANGE them if for some reason your system cannot use those +** characters. (E.g., if one of those characters is a common character +** in file/directory names.) Probably you do not need to change them. +*/ +#define LUA_PATHSEP ";" +#define LUA_PATH_MARK "?" +#define LUA_EXECDIR "!" +#define LUA_IGMARK "-" + + +/* +@@ LUA_INTEGER is the integral type used by lua_pushinteger/lua_tointeger. +** CHANGE that if ptrdiff_t is not adequate on your machine. (On most +** machines, ptrdiff_t gives a good choice between int or long.) +*/ +#define LUA_INTEGER ptrdiff_t + + +/* +@@ LUA_API is a mark for all core API functions. +@@ LUALIB_API is a mark for all standard library functions. +** CHANGE them if you need to define those functions in some special way. +** For instance, if you want to create one Windows DLL with the core and +** the libraries, you may want to use the following definition (define +** LUA_BUILD_AS_DLL to get it). +*/ +#if defined(LUA_BUILD_AS_DLL) + +#if defined(LUA_CORE) || defined(LUA_LIB) +#define LUA_API __declspec(dllexport) +#else +#define LUA_API __declspec(dllimport) +#endif + +#else + +#define LUA_API extern + +#endif + +/* more often than not the libs go together with the core */ +#define LUALIB_API LUA_API + + +/* +@@ LUAI_FUNC is a mark for all extern functions that are not to be +@* exported to outside modules. +@@ LUAI_DATA is a mark for all extern (const) variables that are not to +@* be exported to outside modules. +** CHANGE them if you need to mark them in some special way. Elf/gcc +** (versions 3.2 and later) mark them as "hidden" to optimize access +** when Lua is compiled as a shared library. +*/ +#if defined(luaall_c) +#define LUAI_FUNC static +#define LUAI_DATA /* empty */ + +#elif defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ + defined(__ELF__) +#define LUAI_FUNC __attribute__((visibility("hidden"))) extern +#define LUAI_DATA LUAI_FUNC + +#else +#define LUAI_FUNC extern +#define LUAI_DATA extern +#endif + + + +/* +@@ LUA_QL describes how error messages quote program elements. +** CHANGE it if you want a different appearance. +*/ +#define LUA_QL(x) "'" x "'" +#define LUA_QS LUA_QL("%s") + + +/* +@@ LUA_IDSIZE gives the maximum size for the description of the source +@* of a function in debug information. +** CHANGE it if you want a different size. +*/ +#define LUA_IDSIZE 60 + + +/* +** {================================================================== +** Stand-alone configuration +** =================================================================== +*/ + +#if defined(lua_c) || defined(luaall_c) + +/* +@@ lua_stdin_is_tty detects whether the standard input is a 'tty' (that +@* is, whether we're running lua interactively). +** CHANGE it if you have a better definition for non-POSIX/non-Windows +** systems. +*/ +#if defined(LUA_USE_ISATTY) +#include +#define lua_stdin_is_tty() isatty(0) +#elif defined(LUA_WIN) +#include +#include +#define lua_stdin_is_tty() _isatty(_fileno(stdin)) +#else +#define lua_stdin_is_tty() 1 /* assume stdin is a tty */ +#endif + + +/* +@@ LUA_PROMPT is the default prompt used by stand-alone Lua. +@@ LUA_PROMPT2 is the default continuation prompt used by stand-alone Lua. +** CHANGE them if you want different prompts. (You can also change the +** prompts dynamically, assigning to globals _PROMPT/_PROMPT2.) +*/ +#define LUA_PROMPT "> " +#define LUA_PROMPT2 ">> " + + +/* +@@ LUA_PROGNAME is the default name for the stand-alone Lua program. +** CHANGE it if your stand-alone interpreter has a different name and +** your system is not able to detect that name automatically. +*/ +#define LUA_PROGNAME "lua" + + +/* +@@ LUA_MAXINPUT is the maximum length for an input line in the +@* stand-alone interpreter. +** CHANGE it if you need longer lines. +*/ +#define LUA_MAXINPUT 512 + + +/* +@@ lua_readline defines how to show a prompt and then read a line from +@* the standard input. +@@ lua_saveline defines how to "save" a read line in a "history". +@@ lua_freeline defines how to free a line read by lua_readline. +** CHANGE them if you want to improve this functionality (e.g., by using +** GNU readline and history facilities). +*/ +#if defined(LUA_USE_READLINE) +#include +#include +#include +#define lua_readline(L,b,p) ((void)L, ((b)=readline(p)) != NULL) +#define lua_saveline(L,idx) \ + if (lua_strlen(L,idx) > 0) /* non-empty line? */ \ + add_history(lua_tostring(L, idx)); /* add it to history */ +#define lua_freeline(L,b) ((void)L, free(b)) +#else +#define lua_readline(L,b,p) \ + ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ + fgets(b, LUA_MAXINPUT, stdin) != NULL) /* get line */ +#define lua_saveline(L,idx) { (void)L; (void)idx; } +#define lua_freeline(L,b) { (void)L; (void)b; } +#endif + +#endif + +/* }================================================================== */ + + +/* +@@ LUAI_GCPAUSE defines the default pause between garbage-collector cycles +@* as a percentage. +** CHANGE it if you want the GC to run faster or slower (higher values +** mean larger pauses which mean slower collection.) You can also change +** this value dynamically. +*/ +#define LUAI_GCPAUSE 200 /* 200% (wait memory to double before next GC) */ + + +/* +@@ LUAI_GCMUL defines the default speed of garbage collection relative to +@* memory allocation as a percentage. +** CHANGE it if you want to change the granularity of the garbage +** collection. (Higher values mean coarser collections. 0 represents +** infinity, where each step performs a full collection.) You can also +** change this value dynamically. +*/ +#define LUAI_GCMUL 200 /* GC runs 'twice the speed' of memory allocation */ + + + +/* +@@ LUA_COMPAT_GETN controls compatibility with old getn behavior. +** CHANGE it (define it) if you want exact compatibility with the +** behavior of setn/getn in Lua 5.0. +*/ +#undef LUA_COMPAT_GETN + +/* +@@ LUA_COMPAT_LOADLIB controls compatibility about global loadlib. +** CHANGE it to undefined as soon as you do not need a global 'loadlib' +** function (the function is still available as 'package.loadlib'). +*/ +#undef LUA_COMPAT_LOADLIB + +/* +@@ LUA_COMPAT_VARARG controls compatibility with old vararg feature. +** CHANGE it to undefined as soon as your programs use only '...' to +** access vararg parameters (instead of the old 'arg' table). +*/ +#define LUA_COMPAT_VARARG + +/* +@@ LUA_COMPAT_MOD controls compatibility with old math.mod function. +** CHANGE it to undefined as soon as your programs use 'math.fmod' or +** the new '%' operator instead of 'math.mod'. +*/ +#define LUA_COMPAT_MOD + +/* +@@ LUA_COMPAT_LSTR controls compatibility with old long string nesting +@* facility. +** CHANGE it to 2 if you want the old behaviour, or undefine it to turn +** off the advisory error when nesting [[...]]. +*/ +#define LUA_COMPAT_LSTR 1 + +/* +@@ LUA_COMPAT_GFIND controls compatibility with old 'string.gfind' name. +** CHANGE it to undefined as soon as you rename 'string.gfind' to +** 'string.gmatch'. +*/ +#define LUA_COMPAT_GFIND + +/* +@@ LUA_COMPAT_OPENLIB controls compatibility with old 'luaL_openlib' +@* behavior. +** CHANGE it to undefined as soon as you replace to 'luaL_register' +** your uses of 'luaL_openlib' +*/ +#define LUA_COMPAT_OPENLIB + + + +/* +@@ luai_apicheck is the assert macro used by the Lua-C API. +** CHANGE luai_apicheck if you want Lua to perform some checks in the +** parameters it gets from API calls. This may slow down the interpreter +** a bit, but may be quite useful when debugging C code that interfaces +** with Lua. A useful redefinition is to use assert.h. +*/ +#if defined(LUA_USE_APICHECK) +#include +#define luai_apicheck(L,o) { (void)L; assert(o); } +#else +#define luai_apicheck(L,o) { (void)L; } +#endif + + +/* +@@ LUAI_BITSINT defines the number of bits in an int. +** CHANGE here if Lua cannot automatically detect the number of bits of +** your machine. Probably you do not need to change this. +*/ +/* avoid overflows in comparison */ +#if INT_MAX-20 < 32760 +#define LUAI_BITSINT 16 +#elif INT_MAX > 2147483640L +/* int has at least 32 bits */ +#define LUAI_BITSINT 32 +#else +#error "you must define LUA_BITSINT with number of bits in an integer" +#endif + + +/* +@@ LUAI_UINT32 is an unsigned integer with at least 32 bits. +@@ LUAI_INT32 is an signed integer with at least 32 bits. +@@ LUAI_UMEM is an unsigned integer big enough to count the total +@* memory used by Lua. +@@ LUAI_MEM is a signed integer big enough to count the total memory +@* used by Lua. +** CHANGE here if for some weird reason the default definitions are not +** good enough for your machine. (The definitions in the 'else' +** part always works, but may waste space on machines with 64-bit +** longs.) Probably you do not need to change this. +*/ +#if LUAI_BITSINT >= 32 +#define LUAI_UINT32 unsigned int +#define LUAI_INT32 int +#define LUAI_MAXINT32 INT_MAX +#define LUAI_UMEM size_t +#define LUAI_MEM ptrdiff_t +#else +/* 16-bit ints */ +#define LUAI_UINT32 unsigned long +#define LUAI_INT32 long +#define LUAI_MAXINT32 LONG_MAX +#define LUAI_UMEM unsigned long +#define LUAI_MEM long +#endif + + +/* +@@ LUAI_MAXCALLS limits the number of nested calls. +** CHANGE it if you need really deep recursive calls. This limit is +** arbitrary; its only purpose is to stop infinite recursion before +** exhausting memory. +*/ +#define LUAI_MAXCALLS 20000 + + +/* +@@ LUAI_MAXCSTACK limits the number of Lua stack slots that a C function +@* can use. +** CHANGE it if you need lots of (Lua) stack space for your C +** functions. This limit is arbitrary; its only purpose is to stop C +** functions to consume unlimited stack space. (must be smaller than +** -LUA_REGISTRYINDEX) +*/ +#define LUAI_MAXCSTACK 8000 + + + +/* +** {================================================================== +** CHANGE (to smaller values) the following definitions if your system +** has a small C stack. (Or you may want to change them to larger +** values if your system has a large C stack and these limits are +** too rigid for you.) Some of these constants control the size of +** stack-allocated arrays used by the compiler or the interpreter, while +** others limit the maximum number of recursive calls that the compiler +** or the interpreter can perform. Values too large may cause a C stack +** overflow for some forms of deep constructs. +** =================================================================== +*/ + + +/* +@@ LUAI_MAXCCALLS is the maximum depth for nested C calls (short) and +@* syntactical nested non-terminals in a program. +*/ +#define LUAI_MAXCCALLS 200 + + +/* +@@ LUAI_MAXVARS is the maximum number of local variables per function +@* (must be smaller than 250). +*/ +#define LUAI_MAXVARS 200 + + +/* +@@ LUAI_MAXUPVALUES is the maximum number of upvalues per function +@* (must be smaller than 250). +*/ +#define LUAI_MAXUPVALUES 60 + + +/* +@@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. +*/ +#define LUAL_BUFFERSIZE BUFSIZ + +/* }================================================================== */ + + + + +/* +** {================================================================== +@@ LUA_NUMBER is the type of numbers in Lua. +** CHANGE the following definitions only if you want to build Lua +** with a number type different from double. You may also need to +** change lua_number2int & lua_number2integer. +** =================================================================== +*/ + +#define LUA_NUMBER_DOUBLE +#define LUA_NUMBER double + +/* +@@ LUAI_UACNUMBER is the result of an 'usual argument conversion' +@* over a number. +*/ +#define LUAI_UACNUMBER double + + +/* +@@ LUA_NUMBER_SCAN is the format for reading numbers. +@@ LUA_NUMBER_FMT is the format for writing numbers. +@@ lua_number2str converts a number to a string. +@@ LUAI_MAXNUMBER2STR is maximum size of previous conversion. +@@ lua_str2number converts a string to a number. +*/ +#define LUA_NUMBER_SCAN "%lf" +#define LUA_NUMBER_FMT "%.14g" +#define lua_number2str(s,n) sprintf((s), LUA_NUMBER_FMT, (n)) +#define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */ +#define lua_str2number(s,p) strtod((s), (p)) + + +/* +@@ The luai_num* macros define the primitive operations over numbers. +*/ +#if defined(LUA_CORE) +#include +#define luai_numadd(a,b) ((a)+(b)) +#define luai_numsub(a,b) ((a)-(b)) +#define luai_nummul(a,b) ((a)*(b)) +#define luai_numdiv(a,b) ((a)/(b)) +#define luai_nummod(a,b) ((a) - floor((a)/(b))*(b)) +#define luai_numpow(a,b) (pow(a,b)) +#define luai_numunm(a) (-(a)) +#define luai_numeq(a,b) ((a)==(b)) +#define luai_numlt(a,b) ((a)<(b)) +#define luai_numle(a,b) ((a)<=(b)) +#define luai_numisnan(a) (!luai_numeq((a), (a))) +#endif + + +/* +@@ lua_number2int is a macro to convert lua_Number to int. +@@ lua_number2integer is a macro to convert lua_Number to lua_Integer. +** CHANGE them if you know a faster way to convert a lua_Number to +** int (with any rounding method and without throwing errors) in your +** system. In Pentium machines, a naive typecast from double to int +** in C is extremely slow, so any alternative is worth trying. +*/ + +/* On a Pentium, resort to a trick */ +#if defined(LUA_NUMBER_DOUBLE) && !defined(LUA_ANSI) && !defined(__SSE2__) && \ + (defined(__i386) || defined (_M_IX86) || defined(__i386__)) + +/* On a Microsoft compiler, use assembler */ +#if defined(_MSC_VER) + +#define lua_number2int(i,d) __asm fld d __asm fistp i +#define lua_number2integer(i,n) lua_number2int(i, n) + +/* the next trick should work on any Pentium, but sometimes clashes + with a DirectX idiosyncrasy */ +#else + +union luai_Cast { double l_d; long l_l; }; +#define lua_number2int(i,d) \ + { volatile union luai_Cast u; u.l_d = (d) + 6755399441055744.0; (i) = u.l_l; } +#define lua_number2integer(i,n) lua_number2int(i, n) + +#endif + + +/* this option always works, but may be slow */ +#else +#define lua_number2int(i,d) ((i)=(int)(d)) +#define lua_number2integer(i,d) ((i)=(lua_Integer)(d)) + +#endif + +/* }================================================================== */ + + +/* +@@ LUAI_USER_ALIGNMENT_T is a type that requires maximum alignment. +** CHANGE it if your system requires alignments larger than double. (For +** instance, if your system supports long doubles and they must be +** aligned in 16-byte boundaries, then you should add long double in the +** union.) Probably you do not need to change this. +*/ +#define LUAI_USER_ALIGNMENT_T union { double u; void *s; long l; } + + +/* +@@ LUAI_THROW/LUAI_TRY define how Lua does exception handling. +** CHANGE them if you prefer to use longjmp/setjmp even with C++ +** or if want/don't to use _longjmp/_setjmp instead of regular +** longjmp/setjmp. By default, Lua handles errors with exceptions when +** compiling as C++ code, with _longjmp/_setjmp when asked to use them, +** and with longjmp/setjmp otherwise. +*/ +#if defined(__cplusplus) +/* C++ exceptions */ +#define LUAI_THROW(L,c) throw(c) +#define LUAI_TRY(L,c,a) try { a } catch(...) \ + { if ((c)->status == 0) (c)->status = -1; } +#define luai_jmpbuf int /* dummy variable */ + +#elif defined(LUA_USE_ULONGJMP) +/* in Unix, try _longjmp/_setjmp (more efficient) */ +#define LUAI_THROW(L,c) _longjmp((c)->b, 1) +#define LUAI_TRY(L,c,a) if (_setjmp((c)->b) == 0) { a } +#define luai_jmpbuf jmp_buf + +#else +/* default handling with long jumps */ +#define LUAI_THROW(L,c) longjmp((c)->b, 1) +#define LUAI_TRY(L,c,a) if (setjmp((c)->b) == 0) { a } +#define luai_jmpbuf jmp_buf + +#endif + + +/* +@@ LUA_MAXCAPTURES is the maximum number of captures that a pattern +@* can do during pattern-matching. +** CHANGE it if you need more captures. This limit is arbitrary. +*/ +#define LUA_MAXCAPTURES 32 + + +/* +@@ lua_tmpnam is the function that the OS library uses to create a +@* temporary name. +@@ LUA_TMPNAMBUFSIZE is the maximum size of a name created by lua_tmpnam. +** CHANGE them if you have an alternative to tmpnam (which is considered +** insecure) or if you want the original tmpnam anyway. By default, Lua +** uses tmpnam except when POSIX is available, where it uses mkstemp. +*/ +#if defined(loslib_c) || defined(luaall_c) + +#if defined(LUA_USE_MKSTEMP) +#include +#define LUA_TMPNAMBUFSIZE 32 +#define lua_tmpnam(b,e) { \ + strcpy(b, "/tmp/lua_XXXXXX"); \ + e = mkstemp(b); \ + if (e != -1) close(e); \ + e = (e == -1); } + +#else +#define LUA_TMPNAMBUFSIZE L_tmpnam +#define lua_tmpnam(b,e) { e = (tmpnam(b) == NULL); } +#endif + +#endif + + +/* +@@ lua_popen spawns a new process connected to the current one through +@* the file streams. +** CHANGE it if you have a way to implement it in your system. +*/ +#if defined(LUA_USE_POPEN) + +#define lua_popen(L,c,m) ((void)L, fflush(NULL), popen(c,m)) +#define lua_pclose(L,file) ((void)L, (pclose(file) != -1)) + +#elif defined(LUA_WIN) + +#define lua_popen(L,c,m) ((void)L, _popen(c,m)) +#define lua_pclose(L,file) ((void)L, (_pclose(file) != -1)) + +#else + +#define lua_popen(L,c,m) ((void)((void)c, m), \ + luaL_error(L, LUA_QL("popen") " not supported"), (FILE*)0) +#define lua_pclose(L,file) ((void)((void)L, file), 0) + +#endif + +/* +@@ LUA_DL_* define which dynamic-library system Lua should use. +** CHANGE here if Lua has problems choosing the appropriate +** dynamic-library system for your platform (either Windows' DLL, Mac's +** dyld, or Unix's dlopen). If your system is some kind of Unix, there +** is a good chance that it has dlopen, so LUA_DL_DLOPEN will work for +** it. To use dlopen you also need to adapt the src/Makefile (probably +** adding -ldl to the linker options), so Lua does not select it +** automatically. (When you change the makefile to add -ldl, you must +** also add -DLUA_USE_DLOPEN.) +** If you do not want any kind of dynamic library, undefine all these +** options. +** By default, _WIN32 gets LUA_DL_DLL and MAC OS X gets LUA_DL_DYLD. +*/ +#if defined(LUA_USE_DLOPEN) +#define LUA_DL_DLOPEN +#endif + +#if defined(LUA_WIN) +#define LUA_DL_DLL +#endif + + +/* +@@ LUAI_EXTRASPACE allows you to add user-specific data in a lua_State +@* (the data goes just *before* the lua_State pointer). +** CHANGE (define) this if you really need that. This value must be +** a multiple of the maximum alignment required for your machine. +*/ +#define LUAI_EXTRASPACE 0 + + +/* +@@ luai_userstate* allow user-specific actions on threads. +** CHANGE them if you defined LUAI_EXTRASPACE and need to do something +** extra when a thread is created/deleted/resumed/yielded. +*/ +#define luai_userstateopen(L) ((void)L) +#define luai_userstateclose(L) ((void)L) +#define luai_userstatethread(L,L1) ((void)L) +#define luai_userstatefree(L) ((void)L) +#define luai_userstateresume(L,n) ((void)L) +#define luai_userstateyield(L,n) ((void)L) + + +/* +@@ LUA_INTFRMLEN is the length modifier for integer conversions +@* in 'string.format'. +@@ LUA_INTFRM_T is the integer type correspoding to the previous length +@* modifier. +** CHANGE them if your system supports long long or does not support long. +*/ + +#if defined(LUA_USELONGLONG) + +#define LUA_INTFRMLEN "ll" +#define LUA_INTFRM_T long long + +#else + +#define LUA_INTFRMLEN "l" +#define LUA_INTFRM_T long + +#endif + + + +/* =================================================================== */ + +/* +** Local configuration. You can use this space to add your redefinitions +** without modifying the main part of the file. +*/ + + + +#endif + diff --git a/lua-5.1.4/src/.svn/text-base/lualib.h.svn-base b/lua-5.1.4/src/.svn/text-base/lualib.h.svn-base new file mode 100644 index 0000000..469417f --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lualib.h.svn-base @@ -0,0 +1,53 @@ +/* +** $Id: lualib.h,v 1.36.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua standard libraries +** See Copyright Notice in lua.h +*/ + + +#ifndef lualib_h +#define lualib_h + +#include "lua.h" + + +/* Key to file-handle type */ +#define LUA_FILEHANDLE "FILE*" + + +#define LUA_COLIBNAME "coroutine" +LUALIB_API int (luaopen_base) (lua_State *L); + +#define LUA_TABLIBNAME "table" +LUALIB_API int (luaopen_table) (lua_State *L); + +#define LUA_IOLIBNAME "io" +LUALIB_API int (luaopen_io) (lua_State *L); + +#define LUA_OSLIBNAME "os" +LUALIB_API int (luaopen_os) (lua_State *L); + +#define LUA_STRLIBNAME "string" +LUALIB_API int (luaopen_string) (lua_State *L); + +#define LUA_MATHLIBNAME "math" +LUALIB_API int (luaopen_math) (lua_State *L); + +#define LUA_DBLIBNAME "debug" +LUALIB_API int (luaopen_debug) (lua_State *L); + +#define LUA_LOADLIBNAME "package" +LUALIB_API int (luaopen_package) (lua_State *L); + + +/* open all previous libraries */ +LUALIB_API void (luaL_openlibs) (lua_State *L); + + + +#ifndef lua_assert +#define lua_assert(x) ((void)0) +#endif + + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lundump.c.svn-base b/lua-5.1.4/src/.svn/text-base/lundump.c.svn-base new file mode 100644 index 0000000..8010a45 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lundump.c.svn-base @@ -0,0 +1,227 @@ +/* +** $Id: lundump.c,v 2.7.1.4 2008/04/04 19:51:41 roberto Exp $ +** load precompiled Lua chunks +** See Copyright Notice in lua.h +*/ + +#include + +#define lundump_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstring.h" +#include "lundump.h" +#include "lzio.h" + +typedef struct { + lua_State* L; + ZIO* Z; + Mbuffer* b; + const char* name; +} LoadState; + +#ifdef LUAC_TRUST_BINARIES +#define IF(c,s) +#define error(S,s) +#else +#define IF(c,s) if (c) error(S,s) + +static void error(LoadState* S, const char* why) +{ + luaO_pushfstring(S->L,"%s: %s in precompiled chunk",S->name,why); + luaD_throw(S->L,LUA_ERRSYNTAX); +} +#endif + +#define LoadMem(S,b,n,size) LoadBlock(S,b,(n)*(size)) +#define LoadByte(S) (lu_byte)LoadChar(S) +#define LoadVar(S,x) LoadMem(S,&x,1,sizeof(x)) +#define LoadVector(S,b,n,size) LoadMem(S,b,n,size) + +static void LoadBlock(LoadState* S, void* b, size_t size) +{ + size_t r=luaZ_read(S->Z,b,size); + IF (r!=0, "unexpected end"); +} + +static int LoadChar(LoadState* S) +{ + char x; + LoadVar(S,x); + return x; +} + +static int LoadInt(LoadState* S) +{ + int x; + LoadVar(S,x); + IF (x<0, "bad integer"); + return x; +} + +static lua_Number LoadNumber(LoadState* S) +{ + lua_Number x; + LoadVar(S,x); + return x; +} + +static TString* LoadString(LoadState* S) +{ + size_t size; + LoadVar(S,size); + if (size==0) + return NULL; + else + { + char* s=luaZ_openspace(S->L,S->b,size); + LoadBlock(S,s,size); + return luaS_newlstr(S->L,s,size-1); /* remove trailing '\0' */ + } +} + +static void LoadCode(LoadState* S, Proto* f) +{ + int n=LoadInt(S); + f->code=luaM_newvector(S->L,n,Instruction); + f->sizecode=n; + LoadVector(S,f->code,n,sizeof(Instruction)); +} + +static Proto* LoadFunction(LoadState* S, TString* p); + +static void LoadConstants(LoadState* S, Proto* f) +{ + int i,n; + n=LoadInt(S); + f->k=luaM_newvector(S->L,n,TValue); + f->sizek=n; + for (i=0; ik[i]); + for (i=0; ik[i]; + int t=LoadChar(S); + switch (t) + { + case LUA_TNIL: + setnilvalue(o); + break; + case LUA_TBOOLEAN: + setbvalue(o,LoadChar(S)!=0); + break; + case LUA_TNUMBER: + setnvalue(o,LoadNumber(S)); + break; + case LUA_TSTRING: + setsvalue2n(S->L,o,LoadString(S)); + break; + default: + error(S,"bad constant"); + break; + } + } + n=LoadInt(S); + f->p=luaM_newvector(S->L,n,Proto*); + f->sizep=n; + for (i=0; ip[i]=NULL; + for (i=0; ip[i]=LoadFunction(S,f->source); +} + +static void LoadDebug(LoadState* S, Proto* f) +{ + int i,n; + n=LoadInt(S); + f->lineinfo=luaM_newvector(S->L,n,int); + f->sizelineinfo=n; + LoadVector(S,f->lineinfo,n,sizeof(int)); + n=LoadInt(S); + f->locvars=luaM_newvector(S->L,n,LocVar); + f->sizelocvars=n; + for (i=0; ilocvars[i].varname=NULL; + for (i=0; ilocvars[i].varname=LoadString(S); + f->locvars[i].startpc=LoadInt(S); + f->locvars[i].endpc=LoadInt(S); + } + n=LoadInt(S); + f->upvalues=luaM_newvector(S->L,n,TString*); + f->sizeupvalues=n; + for (i=0; iupvalues[i]=NULL; + for (i=0; iupvalues[i]=LoadString(S); +} + +static Proto* LoadFunction(LoadState* S, TString* p) +{ + Proto* f; + if (++S->L->nCcalls > LUAI_MAXCCALLS) error(S,"code too deep"); + f=luaF_newproto(S->L); + setptvalue2s(S->L,S->L->top,f); incr_top(S->L); + f->source=LoadString(S); if (f->source==NULL) f->source=p; + f->linedefined=LoadInt(S); + f->lastlinedefined=LoadInt(S); + f->nups=LoadByte(S); + f->numparams=LoadByte(S); + f->is_vararg=LoadByte(S); + f->maxstacksize=LoadByte(S); + LoadCode(S,f); + LoadConstants(S,f); + LoadDebug(S,f); + IF (!luaG_checkcode(f), "bad code"); + S->L->top--; + S->L->nCcalls--; + return f; +} + +static void LoadHeader(LoadState* S) +{ + char h[LUAC_HEADERSIZE]; + char s[LUAC_HEADERSIZE]; + luaU_header(h); + LoadBlock(S,s,LUAC_HEADERSIZE); + IF (memcmp(h,s,LUAC_HEADERSIZE)!=0, "bad header"); +} + +/* +** load precompiled chunk +*/ +Proto* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name) +{ + LoadState S; + if (*name=='@' || *name=='=') + S.name=name+1; + else if (*name==LUA_SIGNATURE[0]) + S.name="binary string"; + else + S.name=name; + S.L=L; + S.Z=Z; + S.b=buff; + LoadHeader(&S); + return LoadFunction(&S,luaS_newliteral(L,"=?")); +} + +/* +* make header +*/ +void luaU_header (char* h) +{ + int x=1; + memcpy(h,LUA_SIGNATURE,sizeof(LUA_SIGNATURE)-1); + h+=sizeof(LUA_SIGNATURE)-1; + *h++=(char)LUAC_VERSION; + *h++=(char)LUAC_FORMAT; + *h++=(char)*(char*)&x; /* endianness */ + *h++=(char)sizeof(int); + *h++=(char)sizeof(size_t); + *h++=(char)sizeof(Instruction); + *h++=(char)sizeof(lua_Number); + *h++=(char)(((lua_Number)0.5)==0); /* is lua_Number integral? */ +} diff --git a/lua-5.1.4/src/.svn/text-base/lundump.h.svn-base b/lua-5.1.4/src/.svn/text-base/lundump.h.svn-base new file mode 100644 index 0000000..c80189d --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lundump.h.svn-base @@ -0,0 +1,36 @@ +/* +** $Id: lundump.h,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ +** load precompiled Lua chunks +** See Copyright Notice in lua.h +*/ + +#ifndef lundump_h +#define lundump_h + +#include "lobject.h" +#include "lzio.h" + +/* load one chunk; from lundump.c */ +LUAI_FUNC Proto* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name); + +/* make header; from lundump.c */ +LUAI_FUNC void luaU_header (char* h); + +/* dump one chunk; from ldump.c */ +LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip); + +#ifdef luac_c +/* print one chunk; from print.c */ +LUAI_FUNC void luaU_print (const Proto* f, int full); +#endif + +/* for header of binary files -- this is Lua 5.1 */ +#define LUAC_VERSION 0x51 + +/* for header of binary files -- this is the official format */ +#define LUAC_FORMAT 0 + +/* size of header of binary files */ +#define LUAC_HEADERSIZE 12 + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lvm.c.svn-base b/lua-5.1.4/src/.svn/text-base/lvm.c.svn-base new file mode 100644 index 0000000..ee3256a --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lvm.c.svn-base @@ -0,0 +1,763 @@ +/* +** $Id: lvm.c,v 2.63.1.3 2007/12/28 15:32:23 roberto Exp $ +** Lua virtual machine +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define lvm_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lvm.h" + + + +/* limit for table tag-method chains (to avoid loops) */ +#define MAXTAGLOOP 100 + + +const TValue *luaV_tonumber (const TValue *obj, TValue *n) { + lua_Number num; + if (ttisnumber(obj)) return obj; + if (ttisstring(obj) && luaO_str2d(svalue(obj), &num)) { + setnvalue(n, num); + return n; + } + else + return NULL; +} + + +int luaV_tostring (lua_State *L, StkId obj) { + if (!ttisnumber(obj)) + return 0; + else { + char s[LUAI_MAXNUMBER2STR]; + lua_Number n = nvalue(obj); + lua_number2str(s, n); + setsvalue2s(L, obj, luaS_new(L, s)); + return 1; + } +} + + +static void traceexec (lua_State *L, const Instruction *pc) { + lu_byte mask = L->hookmask; + const Instruction *oldpc = L->savedpc; + L->savedpc = pc; + if ((mask & LUA_MASKCOUNT) && L->hookcount == 0) { + resethookcount(L); + luaD_callhook(L, LUA_HOOKCOUNT, -1); + } + if (mask & LUA_MASKLINE) { + Proto *p = ci_func(L->ci)->l.p; + int npc = pcRel(pc, p); + int newline = getline(p, npc); + /* call linehook when enter a new function, when jump back (loop), + or when enter a new line */ + if (npc == 0 || pc <= oldpc || newline != getline(p, pcRel(oldpc, p))) + luaD_callhook(L, LUA_HOOKLINE, newline); + } +} + + +static void callTMres (lua_State *L, StkId res, const TValue *f, + const TValue *p1, const TValue *p2) { + ptrdiff_t result = savestack(L, res); + setobj2s(L, L->top, f); /* push function */ + setobj2s(L, L->top+1, p1); /* 1st argument */ + setobj2s(L, L->top+2, p2); /* 2nd argument */ + luaD_checkstack(L, 3); + L->top += 3; + luaD_call(L, L->top - 3, 1); + res = restorestack(L, result); + L->top--; + setobjs2s(L, res, L->top); +} + + + +static void callTM (lua_State *L, const TValue *f, const TValue *p1, + const TValue *p2, const TValue *p3) { + setobj2s(L, L->top, f); /* push function */ + setobj2s(L, L->top+1, p1); /* 1st argument */ + setobj2s(L, L->top+2, p2); /* 2nd argument */ + setobj2s(L, L->top+3, p3); /* 3th argument */ + luaD_checkstack(L, 4); + L->top += 4; + luaD_call(L, L->top - 4, 0); +} + + +void luaV_gettable (lua_State *L, const TValue *t, TValue *key, StkId val) { + int loop; + for (loop = 0; loop < MAXTAGLOOP; loop++) { + const TValue *tm; + if (ttistable(t)) { /* `t' is a table? */ + Table *h = hvalue(t); + const TValue *res = luaH_get(h, key); /* do a primitive get */ + if (!ttisnil(res) || /* result is no nil? */ + (tm = fasttm(L, h->metatable, TM_INDEX)) == NULL) { /* or no TM? */ + setobj2s(L, val, res); + return; + } + /* else will try the tag method */ + } + else if (ttisnil(tm = luaT_gettmbyobj(L, t, TM_INDEX))) + luaG_typeerror(L, t, "index"); + if (ttisfunction(tm)) { + callTMres(L, val, tm, t, key); + return; + } + t = tm; /* else repeat with `tm' */ + } + luaG_runerror(L, "loop in gettable"); +} + + +void luaV_settable (lua_State *L, const TValue *t, TValue *key, StkId val) { + int loop; + for (loop = 0; loop < MAXTAGLOOP; loop++) { + const TValue *tm; + if (ttistable(t)) { /* `t' is a table? */ + Table *h = hvalue(t); + TValue *oldval = luaH_set(L, h, key); /* do a primitive set */ + if (!ttisnil(oldval) || /* result is no nil? */ + (tm = fasttm(L, h->metatable, TM_NEWINDEX)) == NULL) { /* or no TM? */ + setobj2t(L, oldval, val); + luaC_barriert(L, h, val); + return; + } + /* else will try the tag method */ + } + else if (ttisnil(tm = luaT_gettmbyobj(L, t, TM_NEWINDEX))) + luaG_typeerror(L, t, "index"); + if (ttisfunction(tm)) { + callTM(L, tm, t, key, val); + return; + } + t = tm; /* else repeat with `tm' */ + } + luaG_runerror(L, "loop in settable"); +} + + +static int call_binTM (lua_State *L, const TValue *p1, const TValue *p2, + StkId res, TMS event) { + const TValue *tm = luaT_gettmbyobj(L, p1, event); /* try first operand */ + if (ttisnil(tm)) + tm = luaT_gettmbyobj(L, p2, event); /* try second operand */ + if (ttisnil(tm)) return 0; + callTMres(L, res, tm, p1, p2); + return 1; +} + + +static const TValue *get_compTM (lua_State *L, Table *mt1, Table *mt2, + TMS event) { + const TValue *tm1 = fasttm(L, mt1, event); + const TValue *tm2; + if (tm1 == NULL) return NULL; /* no metamethod */ + if (mt1 == mt2) return tm1; /* same metatables => same metamethods */ + tm2 = fasttm(L, mt2, event); + if (tm2 == NULL) return NULL; /* no metamethod */ + if (luaO_rawequalObj(tm1, tm2)) /* same metamethods? */ + return tm1; + return NULL; +} + + +static int call_orderTM (lua_State *L, const TValue *p1, const TValue *p2, + TMS event) { + const TValue *tm1 = luaT_gettmbyobj(L, p1, event); + const TValue *tm2; + if (ttisnil(tm1)) return -1; /* no metamethod? */ + tm2 = luaT_gettmbyobj(L, p2, event); + if (!luaO_rawequalObj(tm1, tm2)) /* different metamethods? */ + return -1; + callTMres(L, L->top, tm1, p1, p2); + return !l_isfalse(L->top); +} + + +static int l_strcmp (const TString *ls, const TString *rs) { + const char *l = getstr(ls); + size_t ll = ls->tsv.len; + const char *r = getstr(rs); + size_t lr = rs->tsv.len; + for (;;) { + int temp = strcoll(l, r); + if (temp != 0) return temp; + else { /* strings are equal up to a `\0' */ + size_t len = strlen(l); /* index of first `\0' in both strings */ + if (len == lr) /* r is finished? */ + return (len == ll) ? 0 : 1; + else if (len == ll) /* l is finished? */ + return -1; /* l is smaller than r (because r is not finished) */ + /* both strings longer than `len'; go on comparing (after the `\0') */ + len++; + l += len; ll -= len; r += len; lr -= len; + } + } +} + + +int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r) { + int res; + if (ttype(l) != ttype(r)) + return luaG_ordererror(L, l, r); + else if (ttisnumber(l)) + return luai_numlt(nvalue(l), nvalue(r)); + else if (ttisstring(l)) + return l_strcmp(rawtsvalue(l), rawtsvalue(r)) < 0; + else if ((res = call_orderTM(L, l, r, TM_LT)) != -1) + return res; + return luaG_ordererror(L, l, r); +} + + +static int lessequal (lua_State *L, const TValue *l, const TValue *r) { + int res; + if (ttype(l) != ttype(r)) + return luaG_ordererror(L, l, r); + else if (ttisnumber(l)) + return luai_numle(nvalue(l), nvalue(r)); + else if (ttisstring(l)) + return l_strcmp(rawtsvalue(l), rawtsvalue(r)) <= 0; + else if ((res = call_orderTM(L, l, r, TM_LE)) != -1) /* first try `le' */ + return res; + else if ((res = call_orderTM(L, r, l, TM_LT)) != -1) /* else try `lt' */ + return !res; + return luaG_ordererror(L, l, r); +} + + +int luaV_equalval (lua_State *L, const TValue *t1, const TValue *t2) { + const TValue *tm; + lua_assert(ttype(t1) == ttype(t2)); + switch (ttype(t1)) { + case LUA_TNIL: return 1; + case LUA_TNUMBER: return luai_numeq(nvalue(t1), nvalue(t2)); + case LUA_TBOOLEAN: return bvalue(t1) == bvalue(t2); /* true must be 1 !! */ + case LUA_TLIGHTUSERDATA: return pvalue(t1) == pvalue(t2); + case LUA_TUSERDATA: { + if (uvalue(t1) == uvalue(t2)) return 1; + tm = get_compTM(L, uvalue(t1)->metatable, uvalue(t2)->metatable, + TM_EQ); + break; /* will try TM */ + } + case LUA_TTABLE: { + if (hvalue(t1) == hvalue(t2)) return 1; + tm = get_compTM(L, hvalue(t1)->metatable, hvalue(t2)->metatable, TM_EQ); + break; /* will try TM */ + } + default: return gcvalue(t1) == gcvalue(t2); + } + if (tm == NULL) return 0; /* no TM? */ + callTMres(L, L->top, tm, t1, t2); /* call TM */ + return !l_isfalse(L->top); +} + + +void luaV_concat (lua_State *L, int total, int last) { + do { + StkId top = L->base + last + 1; + int n = 2; /* number of elements handled in this pass (at least 2) */ + if (!(ttisstring(top-2) || ttisnumber(top-2)) || !tostring(L, top-1)) { + if (!call_binTM(L, top-2, top-1, top-2, TM_CONCAT)) + luaG_concaterror(L, top-2, top-1); + } else if (tsvalue(top-1)->len == 0) /* second op is empty? */ + (void)tostring(L, top - 2); /* result is first op (as string) */ + else { + /* at least two string values; get as many as possible */ + size_t tl = tsvalue(top-1)->len; + char *buffer; + int i; + /* collect total length */ + for (n = 1; n < total && tostring(L, top-n-1); n++) { + size_t l = tsvalue(top-n-1)->len; + if (l >= MAX_SIZET - tl) luaG_runerror(L, "string length overflow"); + tl += l; + } + buffer = luaZ_openspace(L, &G(L)->buff, tl); + tl = 0; + for (i=n; i>0; i--) { /* concat all strings */ + size_t l = tsvalue(top-i)->len; + memcpy(buffer+tl, svalue(top-i), l); + tl += l; + } + setsvalue2s(L, top-n, luaS_newlstr(L, buffer, tl)); + } + total -= n-1; /* got `n' strings to create 1 new */ + last -= n-1; + } while (total > 1); /* repeat until only 1 result left */ +} + + +static void Arith (lua_State *L, StkId ra, const TValue *rb, + const TValue *rc, TMS op) { + TValue tempb, tempc; + const TValue *b, *c; + if ((b = luaV_tonumber(rb, &tempb)) != NULL && + (c = luaV_tonumber(rc, &tempc)) != NULL) { + lua_Number nb = nvalue(b), nc = nvalue(c); + switch (op) { + case TM_ADD: setnvalue(ra, luai_numadd(nb, nc)); break; + case TM_SUB: setnvalue(ra, luai_numsub(nb, nc)); break; + case TM_MUL: setnvalue(ra, luai_nummul(nb, nc)); break; + case TM_DIV: setnvalue(ra, luai_numdiv(nb, nc)); break; + case TM_MOD: setnvalue(ra, luai_nummod(nb, nc)); break; + case TM_POW: setnvalue(ra, luai_numpow(nb, nc)); break; + case TM_UNM: setnvalue(ra, luai_numunm(nb)); break; + default: lua_assert(0); break; + } + } + else if (!call_binTM(L, rb, rc, ra, op)) + luaG_aritherror(L, rb, rc); +} + + + +/* +** some macros for common tasks in `luaV_execute' +*/ + +#define runtime_check(L, c) { if (!(c)) break; } + +#define RA(i) (base+GETARG_A(i)) +/* to be used after possible stack reallocation */ +#define RB(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgR, base+GETARG_B(i)) +#define RC(i) check_exp(getCMode(GET_OPCODE(i)) == OpArgR, base+GETARG_C(i)) +#define RKB(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgK, \ + ISK(GETARG_B(i)) ? k+INDEXK(GETARG_B(i)) : base+GETARG_B(i)) +#define RKC(i) check_exp(getCMode(GET_OPCODE(i)) == OpArgK, \ + ISK(GETARG_C(i)) ? k+INDEXK(GETARG_C(i)) : base+GETARG_C(i)) +#define KBx(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgK, k+GETARG_Bx(i)) + + +#define dojump(L,pc,i) {(pc) += (i); luai_threadyield(L);} + + +#define Protect(x) { L->savedpc = pc; {x;}; base = L->base; } + + +#define arith_op(op,tm) { \ + TValue *rb = RKB(i); \ + TValue *rc = RKC(i); \ + if (ttisnumber(rb) && ttisnumber(rc)) { \ + lua_Number nb = nvalue(rb), nc = nvalue(rc); \ + setnvalue(ra, op(nb, nc)); \ + } \ + else \ + Protect(Arith(L, ra, rb, rc, tm)); \ + } + + + +void luaV_execute (lua_State *L, int nexeccalls) { + LClosure *cl; + StkId base; + TValue *k; + const Instruction *pc; + reentry: /* entry point */ + lua_assert(isLua(L->ci)); + pc = L->savedpc; + cl = &clvalue(L->ci->func)->l; + base = L->base; + k = cl->p->k; + /* main loop of interpreter */ + for (;;) { + const Instruction i = *pc++; + StkId ra; + if ((L->hookmask & (LUA_MASKLINE | LUA_MASKCOUNT)) && + (--L->hookcount == 0 || L->hookmask & LUA_MASKLINE)) { + traceexec(L, pc); + if (L->status == LUA_YIELD) { /* did hook yield? */ + L->savedpc = pc - 1; + return; + } + base = L->base; + } + /* warning!! several calls may realloc the stack and invalidate `ra' */ + ra = RA(i); + lua_assert(base == L->base && L->base == L->ci->base); + lua_assert(base <= L->top && L->top <= L->stack + L->stacksize); + lua_assert(L->top == L->ci->top || luaG_checkopenop(i)); + switch (GET_OPCODE(i)) { + case OP_MOVE: { + setobjs2s(L, ra, RB(i)); + continue; + } + case OP_LOADK: { + setobj2s(L, ra, KBx(i)); + continue; + } + case OP_LOADBOOL: { + setbvalue(ra, GETARG_B(i)); + if (GETARG_C(i)) pc++; /* skip next instruction (if C) */ + continue; + } + case OP_LOADNIL: { + TValue *rb = RB(i); + do { + setnilvalue(rb--); + } while (rb >= ra); + continue; + } + case OP_GETUPVAL: { + int b = GETARG_B(i); + setobj2s(L, ra, cl->upvals[b]->v); + continue; + } + case OP_GETGLOBAL: { + TValue g; + TValue *rb = KBx(i); + sethvalue(L, &g, cl->env); + lua_assert(ttisstring(rb)); + Protect(luaV_gettable(L, &g, rb, ra)); + continue; + } + case OP_GETTABLE: { + Protect(luaV_gettable(L, RB(i), RKC(i), ra)); + continue; + } + case OP_SETGLOBAL: { + TValue g; + sethvalue(L, &g, cl->env); + lua_assert(ttisstring(KBx(i))); + Protect(luaV_settable(L, &g, KBx(i), ra)); + continue; + } + case OP_SETUPVAL: { + UpVal *uv = cl->upvals[GETARG_B(i)]; + setobj(L, uv->v, ra); + luaC_barrier(L, uv, ra); + continue; + } + case OP_SETTABLE: { + Protect(luaV_settable(L, ra, RKB(i), RKC(i))); + continue; + } + case OP_NEWTABLE: { + int b = GETARG_B(i); + int c = GETARG_C(i); + sethvalue(L, ra, luaH_new(L, luaO_fb2int(b), luaO_fb2int(c))); + Protect(luaC_checkGC(L)); + continue; + } + case OP_SELF: { + StkId rb = RB(i); + setobjs2s(L, ra+1, rb); + Protect(luaV_gettable(L, rb, RKC(i), ra)); + continue; + } + case OP_ADD: { + arith_op(luai_numadd, TM_ADD); + continue; + } + case OP_SUB: { + arith_op(luai_numsub, TM_SUB); + continue; + } + case OP_MUL: { + arith_op(luai_nummul, TM_MUL); + continue; + } + case OP_DIV: { + arith_op(luai_numdiv, TM_DIV); + continue; + } + case OP_MOD: { + arith_op(luai_nummod, TM_MOD); + continue; + } + case OP_POW: { + arith_op(luai_numpow, TM_POW); + continue; + } + case OP_UNM: { + TValue *rb = RB(i); + if (ttisnumber(rb)) { + lua_Number nb = nvalue(rb); + setnvalue(ra, luai_numunm(nb)); + } + else { + Protect(Arith(L, ra, rb, rb, TM_UNM)); + } + continue; + } + case OP_NOT: { + int res = l_isfalse(RB(i)); /* next assignment may change this value */ + setbvalue(ra, res); + continue; + } + case OP_LEN: { + const TValue *rb = RB(i); + switch (ttype(rb)) { + case LUA_TTABLE: { + setnvalue(ra, cast_num(luaH_getn(hvalue(rb)))); + break; + } + case LUA_TSTRING: { + setnvalue(ra, cast_num(tsvalue(rb)->len)); + break; + } + default: { /* try metamethod */ + Protect( + if (!call_binTM(L, rb, luaO_nilobject, ra, TM_LEN)) + luaG_typeerror(L, rb, "get length of"); + ) + } + } + continue; + } + case OP_CONCAT: { + int b = GETARG_B(i); + int c = GETARG_C(i); + Protect(luaV_concat(L, c-b+1, c); luaC_checkGC(L)); + setobjs2s(L, RA(i), base+b); + continue; + } + case OP_JMP: { + dojump(L, pc, GETARG_sBx(i)); + continue; + } + case OP_EQ: { + TValue *rb = RKB(i); + TValue *rc = RKC(i); + Protect( + if (equalobj(L, rb, rc) == GETARG_A(i)) + dojump(L, pc, GETARG_sBx(*pc)); + ) + pc++; + continue; + } + case OP_LT: { + Protect( + if (luaV_lessthan(L, RKB(i), RKC(i)) == GETARG_A(i)) + dojump(L, pc, GETARG_sBx(*pc)); + ) + pc++; + continue; + } + case OP_LE: { + Protect( + if (lessequal(L, RKB(i), RKC(i)) == GETARG_A(i)) + dojump(L, pc, GETARG_sBx(*pc)); + ) + pc++; + continue; + } + case OP_TEST: { + if (l_isfalse(ra) != GETARG_C(i)) + dojump(L, pc, GETARG_sBx(*pc)); + pc++; + continue; + } + case OP_TESTSET: { + TValue *rb = RB(i); + if (l_isfalse(rb) != GETARG_C(i)) { + setobjs2s(L, ra, rb); + dojump(L, pc, GETARG_sBx(*pc)); + } + pc++; + continue; + } + case OP_CALL: { + int b = GETARG_B(i); + int nresults = GETARG_C(i) - 1; + if (b != 0) L->top = ra+b; /* else previous instruction set top */ + L->savedpc = pc; + switch (luaD_precall(L, ra, nresults)) { + case PCRLUA: { + nexeccalls++; + goto reentry; /* restart luaV_execute over new Lua function */ + } + case PCRC: { + /* it was a C function (`precall' called it); adjust results */ + if (nresults >= 0) L->top = L->ci->top; + base = L->base; + continue; + } + default: { + return; /* yield */ + } + } + } + case OP_TAILCALL: { + int b = GETARG_B(i); + if (b != 0) L->top = ra+b; /* else previous instruction set top */ + L->savedpc = pc; + lua_assert(GETARG_C(i) - 1 == LUA_MULTRET); + switch (luaD_precall(L, ra, LUA_MULTRET)) { + case PCRLUA: { + /* tail call: put new frame in place of previous one */ + CallInfo *ci = L->ci - 1; /* previous frame */ + int aux; + StkId func = ci->func; + StkId pfunc = (ci+1)->func; /* previous function index */ + if (L->openupval) luaF_close(L, ci->base); + L->base = ci->base = ci->func + ((ci+1)->base - pfunc); + for (aux = 0; pfunc+aux < L->top; aux++) /* move frame down */ + setobjs2s(L, func+aux, pfunc+aux); + ci->top = L->top = func+aux; /* correct top */ + lua_assert(L->top == L->base + clvalue(func)->l.p->maxstacksize); + ci->savedpc = L->savedpc; + ci->tailcalls++; /* one more call lost */ + L->ci--; /* remove new frame */ + goto reentry; + } + case PCRC: { /* it was a C function (`precall' called it) */ + base = L->base; + continue; + } + default: { + return; /* yield */ + } + } + } + case OP_RETURN: { + int b = GETARG_B(i); + if (b != 0) L->top = ra+b-1; + if (L->openupval) luaF_close(L, base); + L->savedpc = pc; + b = luaD_poscall(L, ra); + if (--nexeccalls == 0) /* was previous function running `here'? */ + return; /* no: return */ + else { /* yes: continue its execution */ + if (b) L->top = L->ci->top; + lua_assert(isLua(L->ci)); + lua_assert(GET_OPCODE(*((L->ci)->savedpc - 1)) == OP_CALL); + goto reentry; + } + } + case OP_FORLOOP: { + lua_Number step = nvalue(ra+2); + lua_Number idx = luai_numadd(nvalue(ra), step); /* increment index */ + lua_Number limit = nvalue(ra+1); + if (luai_numlt(0, step) ? luai_numle(idx, limit) + : luai_numle(limit, idx)) { + dojump(L, pc, GETARG_sBx(i)); /* jump back */ + setnvalue(ra, idx); /* update internal index... */ + setnvalue(ra+3, idx); /* ...and external index */ + } + continue; + } + case OP_FORPREP: { + const TValue *init = ra; + const TValue *plimit = ra+1; + const TValue *pstep = ra+2; + L->savedpc = pc; /* next steps may throw errors */ + if (!tonumber(init, ra)) + luaG_runerror(L, LUA_QL("for") " initial value must be a number"); + else if (!tonumber(plimit, ra+1)) + luaG_runerror(L, LUA_QL("for") " limit must be a number"); + else if (!tonumber(pstep, ra+2)) + luaG_runerror(L, LUA_QL("for") " step must be a number"); + setnvalue(ra, luai_numsub(nvalue(ra), nvalue(pstep))); + dojump(L, pc, GETARG_sBx(i)); + continue; + } + case OP_TFORLOOP: { + StkId cb = ra + 3; /* call base */ + setobjs2s(L, cb+2, ra+2); + setobjs2s(L, cb+1, ra+1); + setobjs2s(L, cb, ra); + L->top = cb+3; /* func. + 2 args (state and index) */ + Protect(luaD_call(L, cb, GETARG_C(i))); + L->top = L->ci->top; + cb = RA(i) + 3; /* previous call may change the stack */ + if (!ttisnil(cb)) { /* continue loop? */ + setobjs2s(L, cb-1, cb); /* save control variable */ + dojump(L, pc, GETARG_sBx(*pc)); /* jump back */ + } + pc++; + continue; + } + case OP_SETLIST: { + int n = GETARG_B(i); + int c = GETARG_C(i); + int last; + Table *h; + if (n == 0) { + n = cast_int(L->top - ra) - 1; + L->top = L->ci->top; + } + if (c == 0) c = cast_int(*pc++); + runtime_check(L, ttistable(ra)); + h = hvalue(ra); + last = ((c-1)*LFIELDS_PER_FLUSH) + n; + if (last > h->sizearray) /* needs more space? */ + luaH_resizearray(L, h, last); /* pre-alloc it at once */ + for (; n > 0; n--) { + TValue *val = ra+n; + setobj2t(L, luaH_setnum(L, h, last--), val); + luaC_barriert(L, h, val); + } + continue; + } + case OP_CLOSE: { + luaF_close(L, ra); + continue; + } + case OP_CLOSURE: { + Proto *p; + Closure *ncl; + int nup, j; + p = cl->p->p[GETARG_Bx(i)]; + nup = p->nups; + ncl = luaF_newLclosure(L, nup, cl->env); + ncl->l.p = p; + for (j=0; jl.upvals[j] = cl->upvals[GETARG_B(*pc)]; + else { + lua_assert(GET_OPCODE(*pc) == OP_MOVE); + ncl->l.upvals[j] = luaF_findupval(L, base + GETARG_B(*pc)); + } + } + setclvalue(L, ra, ncl); + Protect(luaC_checkGC(L)); + continue; + } + case OP_VARARG: { + int b = GETARG_B(i) - 1; + int j; + CallInfo *ci = L->ci; + int n = cast_int(ci->base - ci->func) - cl->p->numparams - 1; + if (b == LUA_MULTRET) { + Protect(luaD_checkstack(L, n)); + ra = RA(i); /* previous call may change the stack */ + b = n; + L->top = ra + n; + } + for (j = 0; j < b; j++) { + if (j < n) { + setobjs2s(L, ra + j, ci->base - n + j); + } + else { + setnilvalue(ra + j); + } + } + continue; + } + } + } +} + diff --git a/lua-5.1.4/src/.svn/text-base/lvm.h.svn-base b/lua-5.1.4/src/.svn/text-base/lvm.h.svn-base new file mode 100644 index 0000000..bfe4f56 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lvm.h.svn-base @@ -0,0 +1,36 @@ +/* +** $Id: lvm.h,v 2.5.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua virtual machine +** See Copyright Notice in lua.h +*/ + +#ifndef lvm_h +#define lvm_h + + +#include "ldo.h" +#include "lobject.h" +#include "ltm.h" + + +#define tostring(L,o) ((ttype(o) == LUA_TSTRING) || (luaV_tostring(L, o))) + +#define tonumber(o,n) (ttype(o) == LUA_TNUMBER || \ + (((o) = luaV_tonumber(o,n)) != NULL)) + +#define equalobj(L,o1,o2) \ + (ttype(o1) == ttype(o2) && luaV_equalval(L, o1, o2)) + + +LUAI_FUNC int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r); +LUAI_FUNC int luaV_equalval (lua_State *L, const TValue *t1, const TValue *t2); +LUAI_FUNC const TValue *luaV_tonumber (const TValue *obj, TValue *n); +LUAI_FUNC int luaV_tostring (lua_State *L, StkId obj); +LUAI_FUNC void luaV_gettable (lua_State *L, const TValue *t, TValue *key, + StkId val); +LUAI_FUNC void luaV_settable (lua_State *L, const TValue *t, TValue *key, + StkId val); +LUAI_FUNC void luaV_execute (lua_State *L, int nexeccalls); +LUAI_FUNC void luaV_concat (lua_State *L, int total, int last); + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/lzio.c.svn-base b/lua-5.1.4/src/.svn/text-base/lzio.c.svn-base new file mode 100644 index 0000000..293edd5 --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lzio.c.svn-base @@ -0,0 +1,82 @@ +/* +** $Id: lzio.c,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ +** a generic input stream interface +** See Copyright Notice in lua.h +*/ + + +#include + +#define lzio_c +#define LUA_CORE + +#include "lua.h" + +#include "llimits.h" +#include "lmem.h" +#include "lstate.h" +#include "lzio.h" + + +int luaZ_fill (ZIO *z) { + size_t size; + lua_State *L = z->L; + const char *buff; + lua_unlock(L); + buff = z->reader(L, z->data, &size); + lua_lock(L); + if (buff == NULL || size == 0) return EOZ; + z->n = size - 1; + z->p = buff; + return char2int(*(z->p++)); +} + + +int luaZ_lookahead (ZIO *z) { + if (z->n == 0) { + if (luaZ_fill(z) == EOZ) + return EOZ; + else { + z->n++; /* luaZ_fill removed first byte; put back it */ + z->p--; + } + } + return char2int(*z->p); +} + + +void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, void *data) { + z->L = L; + z->reader = reader; + z->data = data; + z->n = 0; + z->p = NULL; +} + + +/* --------------------------------------------------------------- read --- */ +size_t luaZ_read (ZIO *z, void *b, size_t n) { + while (n) { + size_t m; + if (luaZ_lookahead(z) == EOZ) + return n; /* return number of missing bytes */ + m = (n <= z->n) ? n : z->n; /* min. between n and z->n */ + memcpy(b, z->p, m); + z->n -= m; + z->p += m; + b = (char *)b + m; + n -= m; + } + return 0; +} + +/* ------------------------------------------------------------------------ */ +char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n) { + if (n > buff->buffsize) { + if (n < LUA_MINBUFFER) n = LUA_MINBUFFER; + luaZ_resizebuffer(L, buff, n); + } + return buff->buffer; +} + + diff --git a/lua-5.1.4/src/.svn/text-base/lzio.h.svn-base b/lua-5.1.4/src/.svn/text-base/lzio.h.svn-base new file mode 100644 index 0000000..51d695d --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/lzio.h.svn-base @@ -0,0 +1,67 @@ +/* +** $Id: lzio.h,v 1.21.1.1 2007/12/27 13:02:25 roberto Exp $ +** Buffered streams +** See Copyright Notice in lua.h +*/ + + +#ifndef lzio_h +#define lzio_h + +#include "lua.h" + +#include "lmem.h" + + +#define EOZ (-1) /* end of stream */ + +typedef struct Zio ZIO; + +#define char2int(c) cast(int, cast(unsigned char, (c))) + +#define zgetc(z) (((z)->n--)>0 ? char2int(*(z)->p++) : luaZ_fill(z)) + +typedef struct Mbuffer { + char *buffer; + size_t n; + size_t buffsize; +} Mbuffer; + +#define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0) + +#define luaZ_buffer(buff) ((buff)->buffer) +#define luaZ_sizebuffer(buff) ((buff)->buffsize) +#define luaZ_bufflen(buff) ((buff)->n) + +#define luaZ_resetbuffer(buff) ((buff)->n = 0) + + +#define luaZ_resizebuffer(L, buff, size) \ + (luaM_reallocvector(L, (buff)->buffer, (buff)->buffsize, size, char), \ + (buff)->buffsize = size) + +#define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0) + + +LUAI_FUNC char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); +LUAI_FUNC void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, + void *data); +LUAI_FUNC size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */ +LUAI_FUNC int luaZ_lookahead (ZIO *z); + + + +/* --------- Private Part ------------------ */ + +struct Zio { + size_t n; /* bytes still unread */ + const char *p; /* current position in buffer */ + lua_Reader reader; + void* data; /* additional data */ + lua_State *L; /* Lua state (for reader) */ +}; + + +LUAI_FUNC int luaZ_fill (ZIO *z); + +#endif diff --git a/lua-5.1.4/src/.svn/text-base/print.c.svn-base b/lua-5.1.4/src/.svn/text-base/print.c.svn-base new file mode 100644 index 0000000..e240cfc --- /dev/null +++ b/lua-5.1.4/src/.svn/text-base/print.c.svn-base @@ -0,0 +1,227 @@ +/* +** $Id: print.c,v 1.55a 2006/05/31 13:30:05 lhf Exp $ +** print bytecodes +** See Copyright Notice in lua.h +*/ + +#include +#include + +#define luac_c +#define LUA_CORE + +#include "ldebug.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lundump.h" + +#define PrintFunction luaU_print + +#define Sizeof(x) ((int)sizeof(x)) +#define VOID(p) ((const void*)(p)) + +static void PrintString(const TString* ts) +{ + const char* s=getstr(ts); + size_t i,n=ts->tsv.len; + putchar('"'); + for (i=0; ik[i]; + switch (ttype(o)) + { + case LUA_TNIL: + printf("nil"); + break; + case LUA_TBOOLEAN: + printf(bvalue(o) ? "true" : "false"); + break; + case LUA_TNUMBER: + printf(LUA_NUMBER_FMT,nvalue(o)); + break; + case LUA_TSTRING: + PrintString(rawtsvalue(o)); + break; + default: /* cannot happen */ + printf("? type=%d",ttype(o)); + break; + } +} + +static void PrintCode(const Proto* f) +{ + const Instruction* code=f->code; + int pc,n=f->sizecode; + for (pc=0; pc0) printf("[%d]\t",line); else printf("[-]\t"); + printf("%-9s\t",luaP_opnames[o]); + switch (getOpMode(o)) + { + case iABC: + printf("%d",a); + if (getBMode(o)!=OpArgN) printf(" %d",ISK(b) ? (-1-INDEXK(b)) : b); + if (getCMode(o)!=OpArgN) printf(" %d",ISK(c) ? (-1-INDEXK(c)) : c); + break; + case iABx: + if (getBMode(o)==OpArgK) printf("%d %d",a,-1-bx); else printf("%d %d",a,bx); + break; + case iAsBx: + if (o==OP_JMP) printf("%d",sbx); else printf("%d %d",a,sbx); + break; + } + switch (o) + { + case OP_LOADK: + printf("\t; "); PrintConstant(f,bx); + break; + case OP_GETUPVAL: + case OP_SETUPVAL: + printf("\t; %s", (f->sizeupvalues>0) ? getstr(f->upvalues[b]) : "-"); + break; + case OP_GETGLOBAL: + case OP_SETGLOBAL: + printf("\t; %s",svalue(&f->k[bx])); + break; + case OP_GETTABLE: + case OP_SELF: + if (ISK(c)) { printf("\t; "); PrintConstant(f,INDEXK(c)); } + break; + case OP_SETTABLE: + case OP_ADD: + case OP_SUB: + case OP_MUL: + case OP_DIV: + case OP_POW: + case OP_EQ: + case OP_LT: + case OP_LE: + if (ISK(b) || ISK(c)) + { + printf("\t; "); + if (ISK(b)) PrintConstant(f,INDEXK(b)); else printf("-"); + printf(" "); + if (ISK(c)) PrintConstant(f,INDEXK(c)); else printf("-"); + } + break; + case OP_JMP: + case OP_FORLOOP: + case OP_FORPREP: + printf("\t; to %d",sbx+pc+2); + break; + case OP_CLOSURE: + printf("\t; %p",VOID(f->p[bx])); + break; + case OP_SETLIST: + if (c==0) printf("\t; %d",(int)code[++pc]); + else printf("\t; %d",c); + break; + default: + break; + } + printf("\n"); + } +} + +#define SS(x) (x==1)?"":"s" +#define S(x) x,SS(x) + +static void PrintHeader(const Proto* f) +{ + const char* s=getstr(f->source); + if (*s=='@' || *s=='=') + s++; + else if (*s==LUA_SIGNATURE[0]) + s="(bstring)"; + else + s="(string)"; + printf("\n%s <%s:%d,%d> (%d instruction%s, %d bytes at %p)\n", + (f->linedefined==0)?"main":"function",s, + f->linedefined,f->lastlinedefined, + S(f->sizecode),f->sizecode*Sizeof(Instruction),VOID(f)); + printf("%d%s param%s, %d slot%s, %d upvalue%s, ", + f->numparams,f->is_vararg?"+":"",SS(f->numparams), + S(f->maxstacksize),S(f->nups)); + printf("%d local%s, %d constant%s, %d function%s\n", + S(f->sizelocvars),S(f->sizek),S(f->sizep)); +} + +static void PrintConstants(const Proto* f) +{ + int i,n=f->sizek; + printf("constants (%d) for %p:\n",n,VOID(f)); + for (i=0; isizelocvars; + printf("locals (%d) for %p:\n",n,VOID(f)); + for (i=0; ilocvars[i].varname),f->locvars[i].startpc+1,f->locvars[i].endpc+1); + } +} + +static void PrintUpvalues(const Proto* f) +{ + int i,n=f->sizeupvalues; + printf("upvalues (%d) for %p:\n",n,VOID(f)); + if (f->upvalues==NULL) return; + for (i=0; iupvalues[i])); + } +} + +void PrintFunction(const Proto* f, int full) +{ + int i,n=f->sizep; + PrintHeader(f); + PrintCode(f); + if (full) + { + PrintConstants(f); + PrintLocals(f); + PrintUpvalues(f); + } + for (i=0; ip[i],full); +} diff --git a/lua-5.1.4/src/Makefile b/lua-5.1.4/src/Makefile new file mode 100644 index 0000000..e4a3cd6 --- /dev/null +++ b/lua-5.1.4/src/Makefile @@ -0,0 +1,182 @@ +# makefile for building Lua +# see ../INSTALL for installation instructions +# see ../Makefile and luaconf.h for further customization + +# == CHANGE THE SETTINGS BELOW TO SUIT YOUR ENVIRONMENT ======================= + +# Your platform. See PLATS for possible values. +PLAT= none + +CC= gcc +CFLAGS= -O2 -Wall $(MYCFLAGS) +AR= ar rcu +RANLIB= ranlib +RM= rm -f +LIBS= -lm $(MYLIBS) + +MYCFLAGS= +MYLDFLAGS= +MYLIBS= + +# == END OF USER SETTINGS. NO NEED TO CHANGE ANYTHING BELOW THIS LINE ========= + +PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris + +LUA_A= liblua.a +CORE_O= lapi.o lcode.o ldebug.o ldo.o ldump.o lfunc.o lgc.o llex.o lmem.o \ + lobject.o lopcodes.o lparser.o lstate.o lstring.o ltable.o ltm.o \ + lundump.o lvm.o lzio.o +LIB_O= lauxlib.o lbaselib.o ldblib.o liolib.o lmathlib.o loslib.o ltablib.o \ + lstrlib.o loadlib.o linit.o + +LUA_T= lua +LUA_O= lua.o + +LUAC_T= luac +LUAC_O= luac.o print.o + +ALL_O= $(CORE_O) $(LIB_O) $(LUA_O) $(LUAC_O) +ALL_T= $(LUA_A) $(LUA_T) $(LUAC_T) +ALL_A= $(LUA_A) + +default: $(PLAT) + +all: $(ALL_T) + +o: $(ALL_O) + +a: $(ALL_A) + +$(LUA_A): $(CORE_O) $(LIB_O) + $(AR) $@ $? + $(RANLIB) $@ + +$(LUA_T): $(LUA_O) $(LUA_A) + $(CC) -o $@ $(MYLDFLAGS) $(LUA_O) $(LUA_A) $(LIBS) + +$(LUAC_T): $(LUAC_O) $(LUA_A) + $(CC) -o $@ $(MYLDFLAGS) $(LUAC_O) $(LUA_A) $(LIBS) + +clean: + $(RM) $(ALL_T) $(ALL_O) + +depend: + @$(CC) $(CFLAGS) -MM l*.c print.c + +echo: + @echo "PLAT = $(PLAT)" + @echo "CC = $(CC)" + @echo "CFLAGS = $(CFLAGS)" + @echo "AR = $(AR)" + @echo "RANLIB = $(RANLIB)" + @echo "RM = $(RM)" + @echo "MYCFLAGS = $(MYCFLAGS)" + @echo "MYLDFLAGS = $(MYLDFLAGS)" + @echo "MYLIBS = $(MYLIBS)" + +# convenience targets for popular platforms + +none: + @echo "Please choose a platform:" + @echo " $(PLATS)" + +aix: + $(MAKE) all CC="xlc" CFLAGS="-O2 -DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" MYLDFLAGS="-brtl -bexpall" + +ansi: + $(MAKE) all MYCFLAGS=-DLUA_ANSI + +bsd: + $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-Wl,-E" + +freebsd: + $(MAKE) all MYCFLAGS="-DLUA_USE_LINUX" MYLIBS="-Wl,-E -lreadline" + +generic: + $(MAKE) all MYCFLAGS= + +linux: + $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-Wl,-E -ldl -lreadline -lhistory -lncurses" + +macosx: + $(MAKE) all MYCFLAGS=-DLUA_USE_LINUX MYLIBS="-lreadline" +# use this on Mac OS X 10.3- +# $(MAKE) all MYCFLAGS=-DLUA_USE_MACOSX + +mingw: + $(MAKE) "LUA_A=lua51.dll" "LUA_T=lua.exe" \ + "AR=$(CC) -shared -o" "RANLIB=strip --strip-unneeded" \ + "MYCFLAGS=-DLUA_BUILD_AS_DLL" "MYLIBS=" "MYLDFLAGS=-s" lua.exe + $(MAKE) "LUAC_T=luac.exe" luac.exe + +posix: + $(MAKE) all MYCFLAGS=-DLUA_USE_POSIX + +solaris: + $(MAKE) all MYCFLAGS="-DLUA_USE_POSIX -DLUA_USE_DLOPEN" MYLIBS="-ldl" + +# list targets that do not create files (but not all makes understand .PHONY) +.PHONY: all $(PLATS) default o a clean depend echo none + +# DO NOT DELETE + +lapi.o: lapi.c lua.h luaconf.h lapi.h lobject.h llimits.h ldebug.h \ + lstate.h ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h \ + lundump.h lvm.h +lauxlib.o: lauxlib.c lua.h luaconf.h lauxlib.h +lbaselib.o: lbaselib.c lua.h luaconf.h lauxlib.h lualib.h +lcode.o: lcode.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ + lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h lgc.h \ + ltable.h +ldblib.o: ldblib.c lua.h luaconf.h lauxlib.h lualib.h +ldebug.o: ldebug.c lua.h luaconf.h lapi.h lobject.h llimits.h lcode.h \ + llex.h lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ + lfunc.h lstring.h lgc.h ltable.h lvm.h +ldo.o: ldo.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ + lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lparser.h lstring.h \ + ltable.h lundump.h lvm.h +ldump.o: ldump.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h \ + lzio.h lmem.h lundump.h +lfunc.o: lfunc.c lua.h luaconf.h lfunc.h lobject.h llimits.h lgc.h lmem.h \ + lstate.h ltm.h lzio.h +lgc.o: lgc.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ + lzio.h lmem.h ldo.h lfunc.h lgc.h lstring.h ltable.h +linit.o: linit.c lua.h luaconf.h lualib.h lauxlib.h +liolib.o: liolib.c lua.h luaconf.h lauxlib.h lualib.h +llex.o: llex.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h ltm.h \ + lzio.h lmem.h llex.h lparser.h lstring.h lgc.h ltable.h +lmathlib.o: lmathlib.c lua.h luaconf.h lauxlib.h lualib.h +lmem.o: lmem.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h ldo.h +loadlib.o: loadlib.c lua.h luaconf.h lauxlib.h lualib.h +lobject.o: lobject.c lua.h luaconf.h ldo.h lobject.h llimits.h lstate.h \ + ltm.h lzio.h lmem.h lstring.h lgc.h lvm.h +lopcodes.o: lopcodes.c lopcodes.h llimits.h lua.h luaconf.h +loslib.o: loslib.c lua.h luaconf.h lauxlib.h lualib.h +lparser.o: lparser.c lua.h luaconf.h lcode.h llex.h lobject.h llimits.h \ + lzio.h lmem.h lopcodes.h lparser.h ldebug.h lstate.h ltm.h ldo.h \ + lfunc.h lstring.h lgc.h ltable.h +lstate.o: lstate.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h ldo.h lfunc.h lgc.h llex.h lstring.h ltable.h +lstring.o: lstring.c lua.h luaconf.h lmem.h llimits.h lobject.h lstate.h \ + ltm.h lzio.h lstring.h lgc.h +lstrlib.o: lstrlib.c lua.h luaconf.h lauxlib.h lualib.h +ltable.o: ltable.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h ldo.h lgc.h ltable.h +ltablib.o: ltablib.c lua.h luaconf.h lauxlib.h lualib.h +ltm.o: ltm.c lua.h luaconf.h lobject.h llimits.h lstate.h ltm.h lzio.h \ + lmem.h lstring.h lgc.h ltable.h +lua.o: lua.c lua.h luaconf.h lauxlib.h lualib.h +luac.o: luac.c lua.h luaconf.h lauxlib.h ldo.h lobject.h llimits.h \ + lstate.h ltm.h lzio.h lmem.h lfunc.h lopcodes.h lstring.h lgc.h \ + lundump.h +lundump.o: lundump.c lua.h luaconf.h ldebug.h lstate.h lobject.h \ + llimits.h ltm.h lzio.h lmem.h ldo.h lfunc.h lstring.h lgc.h lundump.h +lvm.o: lvm.c lua.h luaconf.h ldebug.h lstate.h lobject.h llimits.h ltm.h \ + lzio.h lmem.h ldo.h lfunc.h lgc.h lopcodes.h lstring.h ltable.h lvm.h +lzio.o: lzio.c lua.h luaconf.h llimits.h lmem.h lstate.h lobject.h ltm.h \ + lzio.h +print.o: print.c ldebug.h lstate.h lua.h luaconf.h lobject.h llimits.h \ + ltm.h lzio.h lmem.h lopcodes.h lundump.h + +# (end of Makefile) diff --git a/lua-5.1.4/src/floo b/lua-5.1.4/src/floo new file mode 100644 index 0000000..26ab2c7 --- /dev/null +++ b/lua-5.1.4/src/floo @@ -0,0 +1,32 @@ +lapi.c +lauxlib.c +lbaselib.c +lcode.c +ldblib.c +ldebug.c +ldo.c +ldump.c +lfunc.c +lgc.c +linit.c +liolib.c +llex.c +lmathlib.c +lmem.c +loadlib.c +lobject.c +lopcodes.c +loslib.c +lparser.c +lstate.c +lstring.c +lstrlib.c +ltable.c +ltablib.c +ltm.c +lua.c +luac.c +lundump.c +lvm.c +lzio.c +print.c diff --git a/lua-5.1.4/src/lapi.c b/lua-5.1.4/src/lapi.c new file mode 100644 index 0000000..5d5145d --- /dev/null +++ b/lua-5.1.4/src/lapi.c @@ -0,0 +1,1087 @@ +/* +** $Id: lapi.c,v 2.55.1.5 2008/07/04 18:41:18 roberto Exp $ +** Lua API +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include + +#define lapi_c +#define LUA_CORE + +#include "lua.h" + +#include "lapi.h" +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lundump.h" +#include "lvm.h" + + + +const char lua_ident[] = + "$Lua: " LUA_RELEASE " " LUA_COPYRIGHT " $\n" + "$Authors: " LUA_AUTHORS " $\n" + "$URL: www.lua.org $\n"; + + + +#define api_checknelems(L, n) api_check(L, (n) <= (L->top - L->base)) + +#define api_checkvalidindex(L, i) api_check(L, (i) != luaO_nilobject) + +#define api_incr_top(L) {api_check(L, L->top < L->ci->top); L->top++;} + + + +static TValue *index2adr (lua_State *L, int idx) { + if (idx > 0) { + TValue *o = L->base + (idx - 1); + api_check(L, idx <= L->ci->top - L->base); + if (o >= L->top) return cast(TValue *, luaO_nilobject); + else return o; + } + else if (idx > LUA_REGISTRYINDEX) { + api_check(L, idx != 0 && -idx <= L->top - L->base); + return L->top + idx; + } + else switch (idx) { /* pseudo-indices */ + case LUA_REGISTRYINDEX: return registry(L); + case LUA_ENVIRONINDEX: { + Closure *func = curr_func(L); + sethvalue(L, &L->env, func->c.env); + return &L->env; + } + case LUA_GLOBALSINDEX: return gt(L); + default: { + Closure *func = curr_func(L); + idx = LUA_GLOBALSINDEX - idx; + return (idx <= func->c.nupvalues) + ? &func->c.upvalue[idx-1] + : cast(TValue *, luaO_nilobject); + } + } +} + + +static Table *getcurrenv (lua_State *L) { + if (L->ci == L->base_ci) /* no enclosing function? */ + return hvalue(gt(L)); /* use global table as environment */ + else { + Closure *func = curr_func(L); + return func->c.env; + } +} + + +void luaA_pushobject (lua_State *L, const TValue *o) { + setobj2s(L, L->top, o); + api_incr_top(L); +} + + +LUA_API int lua_checkstack (lua_State *L, int size) { + int res = 1; + lua_lock(L); + if (size > LUAI_MAXCSTACK || (L->top - L->base + size) > LUAI_MAXCSTACK) + res = 0; /* stack overflow */ + else if (size > 0) { + luaD_checkstack(L, size); + if (L->ci->top < L->top + size) + L->ci->top = L->top + size; + } + lua_unlock(L); + return res; +} + + +LUA_API void lua_xmove (lua_State *from, lua_State *to, int n) { + int i; + if (from == to) return; + lua_lock(to); + api_checknelems(from, n); + api_check(from, G(from) == G(to)); + api_check(from, to->ci->top - to->top >= n); + from->top -= n; + for (i = 0; i < n; i++) { + setobj2s(to, to->top++, from->top + i); + } + lua_unlock(to); +} + + +LUA_API void lua_setlevel (lua_State *from, lua_State *to) { + to->nCcalls = from->nCcalls; +} + + +LUA_API lua_CFunction lua_atpanic (lua_State *L, lua_CFunction panicf) { + lua_CFunction old; + lua_lock(L); + old = G(L)->panic; + G(L)->panic = panicf; + lua_unlock(L); + return old; +} + + +LUA_API lua_State *lua_newthread (lua_State *L) { + lua_State *L1; + lua_lock(L); + luaC_checkGC(L); + L1 = luaE_newthread(L); + setthvalue(L, L->top, L1); + api_incr_top(L); + lua_unlock(L); + luai_userstatethread(L, L1); + return L1; +} + + + +/* +** basic stack manipulation +*/ + + +LUA_API int lua_gettop (lua_State *L) { + return cast_int(L->top - L->base); +} + + +LUA_API void lua_settop (lua_State *L, int idx) { + lua_lock(L); + if (idx >= 0) { + api_check(L, idx <= L->stack_last - L->base); + while (L->top < L->base + idx) + setnilvalue(L->top++); + L->top = L->base + idx; + } + else { + api_check(L, -(idx+1) <= (L->top - L->base)); + L->top += idx+1; /* `subtract' index (index is negative) */ + } + lua_unlock(L); +} + + +LUA_API void lua_remove (lua_State *L, int idx) { + StkId p; + lua_lock(L); + p = index2adr(L, idx); + api_checkvalidindex(L, p); + while (++p < L->top) setobjs2s(L, p-1, p); + L->top--; + lua_unlock(L); +} + + +LUA_API void lua_insert (lua_State *L, int idx) { + StkId p; + StkId q; + lua_lock(L); + p = index2adr(L, idx); + api_checkvalidindex(L, p); + for (q = L->top; q>p; q--) setobjs2s(L, q, q-1); + setobjs2s(L, p, L->top); + lua_unlock(L); +} + + +LUA_API void lua_replace (lua_State *L, int idx) { + StkId o; + lua_lock(L); + /* explicit test for incompatible code */ + if (idx == LUA_ENVIRONINDEX && L->ci == L->base_ci) + luaG_runerror(L, "no calling environment"); + api_checknelems(L, 1); + o = index2adr(L, idx); + api_checkvalidindex(L, o); + if (idx == LUA_ENVIRONINDEX) { + Closure *func = curr_func(L); + api_check(L, ttistable(L->top - 1)); + func->c.env = hvalue(L->top - 1); + luaC_barrier(L, func, L->top - 1); + } + else { + setobj(L, o, L->top - 1); + if (idx < LUA_GLOBALSINDEX) /* function upvalue? */ + luaC_barrier(L, curr_func(L), L->top - 1); + } + L->top--; + lua_unlock(L); +} + + +LUA_API void lua_pushvalue (lua_State *L, int idx) { + lua_lock(L); + setobj2s(L, L->top, index2adr(L, idx)); + api_incr_top(L); + lua_unlock(L); +} + + + +/* +** access functions (stack -> C) +*/ + + +LUA_API int lua_type (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return (o == luaO_nilobject) ? LUA_TNONE : ttype(o); +} + + +LUA_API const char *lua_typename (lua_State *L, int t) { + UNUSED(L); + return (t == LUA_TNONE) ? "no value" : luaT_typenames[t]; +} + + +LUA_API int lua_iscfunction (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return iscfunction(o); +} + + +LUA_API int lua_isnumber (lua_State *L, int idx) { + TValue n; + const TValue *o = index2adr(L, idx); + return tonumber(o, &n); +} + + +LUA_API int lua_isstring (lua_State *L, int idx) { + int t = lua_type(L, idx); + return (t == LUA_TSTRING || t == LUA_TNUMBER); +} + + +LUA_API int lua_isuserdata (lua_State *L, int idx) { + const TValue *o = index2adr(L, idx); + return (ttisuserdata(o) || ttislightuserdata(o)); +} + + +LUA_API int lua_rawequal (lua_State *L, int index1, int index2) { + StkId o1 = index2adr(L, index1); + StkId o2 = index2adr(L, index2); + return (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 + : luaO_rawequalObj(o1, o2); +} + + +LUA_API int lua_equal (lua_State *L, int index1, int index2) { + StkId o1, o2; + int i; + lua_lock(L); /* may call tag method */ + o1 = index2adr(L, index1); + o2 = index2adr(L, index2); + i = (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 : equalobj(L, o1, o2); + lua_unlock(L); + return i; +} + + +LUA_API int lua_lessthan (lua_State *L, int index1, int index2) { + StkId o1, o2; + int i; + lua_lock(L); /* may call tag method */ + o1 = index2adr(L, index1); + o2 = index2adr(L, index2); + i = (o1 == luaO_nilobject || o2 == luaO_nilobject) ? 0 + : luaV_lessthan(L, o1, o2); + lua_unlock(L); + return i; +} + + + +LUA_API lua_Number lua_tonumber (lua_State *L, int idx) { + TValue n; + const TValue *o = index2adr(L, idx); + if (tonumber(o, &n)) + return nvalue(o); + else + return 0; +} + + +LUA_API lua_Integer lua_tointeger (lua_State *L, int idx) { + TValue n; + const TValue *o = index2adr(L, idx); + if (tonumber(o, &n)) { + lua_Integer res; + lua_Number num = nvalue(o); + lua_number2integer(res, num); + return res; + } + else + return 0; +} + + +LUA_API int lua_toboolean (lua_State *L, int idx) { + const TValue *o = index2adr(L, idx); + return !l_isfalse(o); +} + + +LUA_API const char *lua_tolstring (lua_State *L, int idx, size_t *len) { + StkId o = index2adr(L, idx); + if (!ttisstring(o)) { + lua_lock(L); /* `luaV_tostring' may create a new string */ + if (!luaV_tostring(L, o)) { /* conversion failed? */ + if (len != NULL) *len = 0; + lua_unlock(L); + return NULL; + } + luaC_checkGC(L); + o = index2adr(L, idx); /* previous call may reallocate the stack */ + lua_unlock(L); + } + if (len != NULL) *len = tsvalue(o)->len; + return svalue(o); +} + + +LUA_API size_t lua_objlen (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + switch (ttype(o)) { + case LUA_TSTRING: return tsvalue(o)->len; + case LUA_TUSERDATA: return uvalue(o)->len; + case LUA_TTABLE: return luaH_getn(hvalue(o)); + case LUA_TNUMBER: { + size_t l; + lua_lock(L); /* `luaV_tostring' may create a new string */ + l = (luaV_tostring(L, o) ? tsvalue(o)->len : 0); + lua_unlock(L); + return l; + } + default: return 0; + } +} + + +LUA_API lua_CFunction lua_tocfunction (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return (!iscfunction(o)) ? NULL : clvalue(o)->c.f; +} + + +LUA_API void *lua_touserdata (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + switch (ttype(o)) { + case LUA_TUSERDATA: return (rawuvalue(o) + 1); + case LUA_TLIGHTUSERDATA: return pvalue(o); + default: return NULL; + } +} + + +LUA_API lua_State *lua_tothread (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + return (!ttisthread(o)) ? NULL : thvalue(o); +} + + +LUA_API const void *lua_topointer (lua_State *L, int idx) { + StkId o = index2adr(L, idx); + switch (ttype(o)) { + case LUA_TTABLE: return hvalue(o); + case LUA_TFUNCTION: return clvalue(o); + case LUA_TTHREAD: return thvalue(o); + case LUA_TUSERDATA: + case LUA_TLIGHTUSERDATA: + return lua_touserdata(L, idx); + default: return NULL; + } +} + + + +/* +** push functions (C -> stack) +*/ + + +LUA_API void lua_pushnil (lua_State *L) { + lua_lock(L); + setnilvalue(L->top); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushnumber (lua_State *L, lua_Number n) { + lua_lock(L); + setnvalue(L->top, n); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushinteger (lua_State *L, lua_Integer n) { + lua_lock(L); + setnvalue(L->top, cast_num(n)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushlstring (lua_State *L, const char *s, size_t len) { + lua_lock(L); + luaC_checkGC(L); + setsvalue2s(L, L->top, luaS_newlstr(L, s, len)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushstring (lua_State *L, const char *s) { + if (s == NULL) + lua_pushnil(L); + else + lua_pushlstring(L, s, strlen(s)); +} + + +LUA_API const char *lua_pushvfstring (lua_State *L, const char *fmt, + va_list argp) { + const char *ret; + lua_lock(L); + luaC_checkGC(L); + ret = luaO_pushvfstring(L, fmt, argp); + lua_unlock(L); + return ret; +} + + +LUA_API const char *lua_pushfstring (lua_State *L, const char *fmt, ...) { + const char *ret; + va_list argp; + lua_lock(L); + luaC_checkGC(L); + va_start(argp, fmt); + ret = luaO_pushvfstring(L, fmt, argp); + va_end(argp); + lua_unlock(L); + return ret; +} + + +LUA_API void lua_pushcclosure (lua_State *L, lua_CFunction fn, int n) { + Closure *cl; + lua_lock(L); + luaC_checkGC(L); + api_checknelems(L, n); + cl = luaF_newCclosure(L, n, getcurrenv(L)); + cl->c.f = fn; + L->top -= n; + while (n--) + setobj2n(L, &cl->c.upvalue[n], L->top+n); + setclvalue(L, L->top, cl); + lua_assert(iswhite(obj2gco(cl))); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushboolean (lua_State *L, int b) { + lua_lock(L); + setbvalue(L->top, (b != 0)); /* ensure that true is 1 */ + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_pushlightuserdata (lua_State *L, void *p) { + lua_lock(L); + setpvalue(L->top, p); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API int lua_pushthread (lua_State *L) { + lua_lock(L); + setthvalue(L, L->top, L); + api_incr_top(L); + lua_unlock(L); + return (G(L)->mainthread == L); +} + + + +/* +** get functions (Lua -> stack) +*/ + + +LUA_API void lua_gettable (lua_State *L, int idx) { + StkId t; + lua_lock(L); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + luaV_gettable(L, t, L->top - 1, L->top - 1); + lua_unlock(L); +} + + +LUA_API void lua_getfield (lua_State *L, int idx, const char *k) { + StkId t; + TValue key; + lua_lock(L); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + setsvalue(L, &key, luaS_new(L, k)); + luaV_gettable(L, t, &key, L->top); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_rawget (lua_State *L, int idx) { + StkId t; + lua_lock(L); + t = index2adr(L, idx); + api_check(L, ttistable(t)); + setobj2s(L, L->top - 1, luaH_get(hvalue(t), L->top - 1)); + lua_unlock(L); +} + + +LUA_API void lua_rawgeti (lua_State *L, int idx, int n) { + StkId o; + lua_lock(L); + o = index2adr(L, idx); + api_check(L, ttistable(o)); + setobj2s(L, L->top, luaH_getnum(hvalue(o), n)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API void lua_createtable (lua_State *L, int narray, int nrec) { + lua_lock(L); + luaC_checkGC(L); + sethvalue(L, L->top, luaH_new(L, narray, nrec)); + api_incr_top(L); + lua_unlock(L); +} + + +LUA_API int lua_getmetatable (lua_State *L, int objindex) { + const TValue *obj; + Table *mt = NULL; + int res; + lua_lock(L); + obj = index2adr(L, objindex); + switch (ttype(obj)) { + case LUA_TTABLE: + mt = hvalue(obj)->metatable; + break; + case LUA_TUSERDATA: + mt = uvalue(obj)->metatable; + break; + default: + mt = G(L)->mt[ttype(obj)]; + break; + } + if (mt == NULL) + res = 0; + else { + sethvalue(L, L->top, mt); + api_incr_top(L); + res = 1; + } + lua_unlock(L); + return res; +} + + +LUA_API void lua_getfenv (lua_State *L, int idx) { + StkId o; + lua_lock(L); + o = index2adr(L, idx); + api_checkvalidindex(L, o); + switch (ttype(o)) { + case LUA_TFUNCTION: + sethvalue(L, L->top, clvalue(o)->c.env); + break; + case LUA_TUSERDATA: + sethvalue(L, L->top, uvalue(o)->env); + break; + case LUA_TTHREAD: + setobj2s(L, L->top, gt(thvalue(o))); + break; + default: + setnilvalue(L->top); + break; + } + api_incr_top(L); + lua_unlock(L); +} + + +/* +** set functions (stack -> Lua) +*/ + + +LUA_API void lua_settable (lua_State *L, int idx) { + StkId t; + lua_lock(L); + api_checknelems(L, 2); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + luaV_settable(L, t, L->top - 2, L->top - 1); + L->top -= 2; /* pop index and value */ + lua_unlock(L); +} + + +LUA_API void lua_setfield (lua_State *L, int idx, const char *k) { + StkId t; + TValue key; + lua_lock(L); + api_checknelems(L, 1); + t = index2adr(L, idx); + api_checkvalidindex(L, t); + setsvalue(L, &key, luaS_new(L, k)); + luaV_settable(L, t, &key, L->top - 1); + L->top--; /* pop value */ + lua_unlock(L); +} + + +LUA_API void lua_rawset (lua_State *L, int idx) { + StkId t; + lua_lock(L); + api_checknelems(L, 2); + t = index2adr(L, idx); + api_check(L, ttistable(t)); + setobj2t(L, luaH_set(L, hvalue(t), L->top-2), L->top-1); + luaC_barriert(L, hvalue(t), L->top-1); + L->top -= 2; + lua_unlock(L); +} + + +LUA_API void lua_rawseti (lua_State *L, int idx, int n) { + StkId o; + lua_lock(L); + api_checknelems(L, 1); + o = index2adr(L, idx); + api_check(L, ttistable(o)); + setobj2t(L, luaH_setnum(L, hvalue(o), n), L->top-1); + luaC_barriert(L, hvalue(o), L->top-1); + L->top--; + lua_unlock(L); +} + + +LUA_API int lua_setmetatable (lua_State *L, int objindex) { + TValue *obj; + Table *mt; + lua_lock(L); + api_checknelems(L, 1); + obj = index2adr(L, objindex); + api_checkvalidindex(L, obj); + if (ttisnil(L->top - 1)) + mt = NULL; + else { + api_check(L, ttistable(L->top - 1)); + mt = hvalue(L->top - 1); + } + switch (ttype(obj)) { + case LUA_TTABLE: { + hvalue(obj)->metatable = mt; + if (mt) + luaC_objbarriert(L, hvalue(obj), mt); + break; + } + case LUA_TUSERDATA: { + uvalue(obj)->metatable = mt; + if (mt) + luaC_objbarrier(L, rawuvalue(obj), mt); + break; + } + default: { + G(L)->mt[ttype(obj)] = mt; + break; + } + } + L->top--; + lua_unlock(L); + return 1; +} + + +LUA_API int lua_setfenv (lua_State *L, int idx) { + StkId o; + int res = 1; + lua_lock(L); + api_checknelems(L, 1); + o = index2adr(L, idx); + api_checkvalidindex(L, o); + api_check(L, ttistable(L->top - 1)); + switch (ttype(o)) { + case LUA_TFUNCTION: + clvalue(o)->c.env = hvalue(L->top - 1); + break; + case LUA_TUSERDATA: + uvalue(o)->env = hvalue(L->top - 1); + break; + case LUA_TTHREAD: + sethvalue(L, gt(thvalue(o)), hvalue(L->top - 1)); + break; + default: + res = 0; + break; + } + if (res) luaC_objbarrier(L, gcvalue(o), hvalue(L->top - 1)); + L->top--; + lua_unlock(L); + return res; +} + + +/* +** `load' and `call' functions (run Lua code) +*/ + + +#define adjustresults(L,nres) \ + { if (nres == LUA_MULTRET && L->top >= L->ci->top) L->ci->top = L->top; } + + +#define checkresults(L,na,nr) \ + api_check(L, (nr) == LUA_MULTRET || (L->ci->top - L->top >= (nr) - (na))) + + +LUA_API void lua_call (lua_State *L, int nargs, int nresults) { + StkId func; + lua_lock(L); + api_checknelems(L, nargs+1); + checkresults(L, nargs, nresults); + func = L->top - (nargs+1); + luaD_call(L, func, nresults); + adjustresults(L, nresults); + lua_unlock(L); +} + + + +/* +** Execute a protected call. +*/ +struct CallS { /* data to `f_call' */ + StkId func; + int nresults; +}; + + +static void f_call (lua_State *L, void *ud) { + struct CallS *c = cast(struct CallS *, ud); + luaD_call(L, c->func, c->nresults); +} + + + +LUA_API int lua_pcall (lua_State *L, int nargs, int nresults, int errfunc) { + struct CallS c; + int status; + ptrdiff_t func; + lua_lock(L); + api_checknelems(L, nargs+1); + checkresults(L, nargs, nresults); + if (errfunc == 0) + func = 0; + else { + StkId o = index2adr(L, errfunc); + api_checkvalidindex(L, o); + func = savestack(L, o); + } + c.func = L->top - (nargs+1); /* function to be called */ + c.nresults = nresults; + status = luaD_pcall(L, f_call, &c, savestack(L, c.func), func); + adjustresults(L, nresults); + lua_unlock(L); + return status; +} + + +/* +** Execute a protected C call. +*/ +struct CCallS { /* data to `f_Ccall' */ + lua_CFunction func; + void *ud; +}; + + +static void f_Ccall (lua_State *L, void *ud) { + struct CCallS *c = cast(struct CCallS *, ud); + Closure *cl; + cl = luaF_newCclosure(L, 0, getcurrenv(L)); + cl->c.f = c->func; + setclvalue(L, L->top, cl); /* push function */ + api_incr_top(L); + setpvalue(L->top, c->ud); /* push only argument */ + api_incr_top(L); + luaD_call(L, L->top - 2, 0); +} + + +LUA_API int lua_cpcall (lua_State *L, lua_CFunction func, void *ud) { + struct CCallS c; + int status; + lua_lock(L); + c.func = func; + c.ud = ud; + status = luaD_pcall(L, f_Ccall, &c, savestack(L, L->top), 0); + lua_unlock(L); + return status; +} + + +LUA_API int lua_load (lua_State *L, lua_Reader reader, void *data, + const char *chunkname) { + ZIO z; + int status; + lua_lock(L); + if (!chunkname) chunkname = "?"; + luaZ_init(L, &z, reader, data); + status = luaD_protectedparser(L, &z, chunkname); + lua_unlock(L); + return status; +} + + +LUA_API int lua_dump (lua_State *L, lua_Writer writer, void *data) { + int status; + TValue *o; + lua_lock(L); + api_checknelems(L, 1); + o = L->top - 1; + if (isLfunction(o)) + status = luaU_dump(L, clvalue(o)->l.p, writer, data, 0); + else + status = 1; + lua_unlock(L); + return status; +} + + +LUA_API int lua_status (lua_State *L) { + return L->status; +} + + +/* +** Garbage-collection function +*/ + +LUA_API int lua_gc (lua_State *L, int what, int data) { + int res = 0; + global_State *g; + lua_lock(L); + g = G(L); + switch (what) { + case LUA_GCSTOP: { + g->GCthreshold = MAX_LUMEM; + break; + } + case LUA_GCRESTART: { + g->GCthreshold = g->totalbytes; + break; + } + case LUA_GCCOLLECT: { + luaC_fullgc(L); + break; + } + case LUA_GCCOUNT: { + /* GC values are expressed in Kbytes: #bytes/2^10 */ + res = cast_int(g->totalbytes >> 10); + break; + } + case LUA_GCCOUNTB: { + res = cast_int(g->totalbytes & 0x3ff); + break; + } + case LUA_GCSTEP: { + lu_mem a = (cast(lu_mem, data) << 10); + if (a <= g->totalbytes) + g->GCthreshold = g->totalbytes - a; + else + g->GCthreshold = 0; + while (g->GCthreshold <= g->totalbytes) { + luaC_step(L); + if (g->gcstate == GCSpause) { /* end of cycle? */ + res = 1; /* signal it */ + break; + } + } + break; + } + case LUA_GCSETPAUSE: { + res = g->gcpause; + g->gcpause = data; + break; + } + case LUA_GCSETSTEPMUL: { + res = g->gcstepmul; + g->gcstepmul = data; + break; + } + default: res = -1; /* invalid option */ + } + lua_unlock(L); + return res; +} + + + +/* +** miscellaneous functions +*/ + + +LUA_API int lua_error (lua_State *L) { + lua_lock(L); + api_checknelems(L, 1); + luaG_errormsg(L); + lua_unlock(L); + return 0; /* to avoid warnings */ +} + + +LUA_API int lua_next (lua_State *L, int idx) { + StkId t; + int more; + lua_lock(L); + t = index2adr(L, idx); + api_check(L, ttistable(t)); + more = luaH_next(L, hvalue(t), L->top - 1); + if (more) { + api_incr_top(L); + } + else /* no more elements */ + L->top -= 1; /* remove key */ + lua_unlock(L); + return more; +} + + +LUA_API void lua_concat (lua_State *L, int n) { + lua_lock(L); + api_checknelems(L, n); + if (n >= 2) { + luaC_checkGC(L); + luaV_concat(L, n, cast_int(L->top - L->base) - 1); + L->top -= (n-1); + } + else if (n == 0) { /* push empty string */ + setsvalue2s(L, L->top, luaS_newlstr(L, "", 0)); + api_incr_top(L); + } + /* else n == 1; nothing to do */ + lua_unlock(L); +} + + +LUA_API lua_Alloc lua_getallocf (lua_State *L, void **ud) { + lua_Alloc f; + lua_lock(L); + if (ud) *ud = G(L)->ud; + f = G(L)->frealloc; + lua_unlock(L); + return f; +} + + +LUA_API void lua_setallocf (lua_State *L, lua_Alloc f, void *ud) { + lua_lock(L); + G(L)->ud = ud; + G(L)->frealloc = f; + lua_unlock(L); +} + + +LUA_API void *lua_newuserdata (lua_State *L, size_t size) { + Udata *u; + lua_lock(L); + luaC_checkGC(L); + u = luaS_newudata(L, size, getcurrenv(L)); + setuvalue(L, L->top, u); + api_incr_top(L); + lua_unlock(L); + return u + 1; +} + + + + +static const char *aux_upvalue (StkId fi, int n, TValue **val) { + Closure *f; + if (!ttisfunction(fi)) return NULL; + f = clvalue(fi); + if (f->c.isC) { + if (!(1 <= n && n <= f->c.nupvalues)) return NULL; + *val = &f->c.upvalue[n-1]; + return ""; + } + else { + Proto *p = f->l.p; + if (!(1 <= n && n <= p->sizeupvalues)) return NULL; + *val = f->l.upvals[n-1]->v; + return getstr(p->upvalues[n-1]); + } +} + + +LUA_API const char *lua_getupvalue (lua_State *L, int funcindex, int n) { + const char *name; + TValue *val; + lua_lock(L); + name = aux_upvalue(index2adr(L, funcindex), n, &val); + if (name) { + setobj2s(L, L->top, val); + api_incr_top(L); + } + lua_unlock(L); + return name; +} + + +LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n) { + const char *name; + TValue *val; + StkId fi; + lua_lock(L); + fi = index2adr(L, funcindex); + api_checknelems(L, 1); + name = aux_upvalue(fi, n, &val); + if (name) { + L->top--; + setobj(L, val, L->top); + luaC_barrier(L, clvalue(fi), L->top); + } + lua_unlock(L); + return name; +} + diff --git a/lua-5.1.4/src/lapi.h b/lua-5.1.4/src/lapi.h new file mode 100644 index 0000000..2c3fab2 --- /dev/null +++ b/lua-5.1.4/src/lapi.h @@ -0,0 +1,16 @@ +/* +** $Id: lapi.h,v 2.2.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions from Lua API +** See Copyright Notice in lua.h +*/ + +#ifndef lapi_h +#define lapi_h + + +#include "lobject.h" + + +LUAI_FUNC void luaA_pushobject (lua_State *L, const TValue *o); + +#endif diff --git a/lua-5.1.4/src/lauxlib.c b/lua-5.1.4/src/lauxlib.c new file mode 100644 index 0000000..10f14e2 --- /dev/null +++ b/lua-5.1.4/src/lauxlib.c @@ -0,0 +1,652 @@ +/* +** $Id: lauxlib.c,v 1.159.1.3 2008/01/21 13:20:51 roberto Exp $ +** Auxiliary functions for building Lua libraries +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include +#include +#include + + +/* This file uses only the official API of Lua. +** Any function declared here could be written as an application function. +*/ + +#define lauxlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" + + +#define FREELIST_REF 0 /* free list of references */ + + +/* convert a stack index to positive */ +#define abs_index(L, i) ((i) > 0 || (i) <= LUA_REGISTRYINDEX ? (i) : \ + lua_gettop(L) + (i) + 1) + + +/* +** {====================================================== +** Error-report functions +** ======================================================= +*/ + + +LUALIB_API int luaL_argerror (lua_State *L, int narg, const char *extramsg) { + lua_Debug ar; + if (!lua_getstack(L, 0, &ar)) /* no stack frame? */ + return luaL_error(L, "bad argument #%d (%s)", narg, extramsg); + lua_getinfo(L, "n", &ar); + if (strcmp(ar.namewhat, "method") == 0) { + narg--; /* do not count `self' */ + if (narg == 0) /* error is in the self argument itself? */ + return luaL_error(L, "calling " LUA_QS " on bad self (%s)", + ar.name, extramsg); + } + if (ar.name == NULL) + ar.name = "?"; + return luaL_error(L, "bad argument #%d to " LUA_QS " (%s)", + narg, ar.name, extramsg); +} + + +LUALIB_API int luaL_typerror (lua_State *L, int narg, const char *tname) { + const char *msg = lua_pushfstring(L, "%s expected, got %s", + tname, luaL_typename(L, narg)); + return luaL_argerror(L, narg, msg); +} + + +static void tag_error (lua_State *L, int narg, int tag) { + luaL_typerror(L, narg, lua_typename(L, tag)); +} + + +LUALIB_API void luaL_where (lua_State *L, int level) { + lua_Debug ar; + if (lua_getstack(L, level, &ar)) { /* check function at level */ + lua_getinfo(L, "Sl", &ar); /* get info about it */ + if (ar.currentline > 0) { /* is there info? */ + lua_pushfstring(L, "%s:%d: ", ar.short_src, ar.currentline); + return; + } + } + lua_pushliteral(L, ""); /* else, no information available... */ +} + + +LUALIB_API int luaL_error (lua_State *L, const char *fmt, ...) { + va_list argp; + va_start(argp, fmt); + luaL_where(L, 1); + lua_pushvfstring(L, fmt, argp); + va_end(argp); + lua_concat(L, 2); + return lua_error(L); +} + +/* }====================================================== */ + + +LUALIB_API int luaL_checkoption (lua_State *L, int narg, const char *def, + const char *const lst[]) { + const char *name = (def) ? luaL_optstring(L, narg, def) : + luaL_checkstring(L, narg); + int i; + for (i=0; lst[i]; i++) + if (strcmp(lst[i], name) == 0) + return i; + return luaL_argerror(L, narg, + lua_pushfstring(L, "invalid option " LUA_QS, name)); +} + + +LUALIB_API int luaL_newmetatable (lua_State *L, const char *tname) { + lua_getfield(L, LUA_REGISTRYINDEX, tname); /* get registry.name */ + if (!lua_isnil(L, -1)) /* name already in use? */ + return 0; /* leave previous value on top, but return 0 */ + lua_pop(L, 1); + lua_newtable(L); /* create metatable */ + lua_pushvalue(L, -1); + lua_setfield(L, LUA_REGISTRYINDEX, tname); /* registry.name = metatable */ + return 1; +} + + +LUALIB_API void *luaL_checkudata (lua_State *L, int ud, const char *tname) { + void *p = lua_touserdata(L, ud); + if (p != NULL) { /* value is a userdata? */ + if (lua_getmetatable(L, ud)) { /* does it have a metatable? */ + lua_getfield(L, LUA_REGISTRYINDEX, tname); /* get correct metatable */ + if (lua_rawequal(L, -1, -2)) { /* does it have the correct mt? */ + lua_pop(L, 2); /* remove both metatables */ + return p; + } + } + } + luaL_typerror(L, ud, tname); /* else error */ + return NULL; /* to avoid warnings */ +} + + +LUALIB_API void luaL_checkstack (lua_State *L, int space, const char *mes) { + if (!lua_checkstack(L, space)) + luaL_error(L, "stack overflow (%s)", mes); +} + + +LUALIB_API void luaL_checktype (lua_State *L, int narg, int t) { + if (lua_type(L, narg) != t) + tag_error(L, narg, t); +} + + +LUALIB_API void luaL_checkany (lua_State *L, int narg) { + if (lua_type(L, narg) == LUA_TNONE) + luaL_argerror(L, narg, "value expected"); +} + + +LUALIB_API const char *luaL_checklstring (lua_State *L, int narg, size_t *len) { + const char *s = lua_tolstring(L, narg, len); + if (!s) tag_error(L, narg, LUA_TSTRING); + return s; +} + + +LUALIB_API const char *luaL_optlstring (lua_State *L, int narg, + const char *def, size_t *len) { + if (lua_isnoneornil(L, narg)) { + if (len) + *len = (def ? strlen(def) : 0); + return def; + } + else return luaL_checklstring(L, narg, len); +} + + +LUALIB_API lua_Number luaL_checknumber (lua_State *L, int narg) { + lua_Number d = lua_tonumber(L, narg); + if (d == 0 && !lua_isnumber(L, narg)) /* avoid extra test when d is not 0 */ + tag_error(L, narg, LUA_TNUMBER); + return d; +} + + +LUALIB_API lua_Number luaL_optnumber (lua_State *L, int narg, lua_Number def) { + return luaL_opt(L, luaL_checknumber, narg, def); +} + + +LUALIB_API lua_Integer luaL_checkinteger (lua_State *L, int narg) { + lua_Integer d = lua_tointeger(L, narg); + if (d == 0 && !lua_isnumber(L, narg)) /* avoid extra test when d is not 0 */ + tag_error(L, narg, LUA_TNUMBER); + return d; +} + + +LUALIB_API lua_Integer luaL_optinteger (lua_State *L, int narg, + lua_Integer def) { + return luaL_opt(L, luaL_checkinteger, narg, def); +} + + +LUALIB_API int luaL_getmetafield (lua_State *L, int obj, const char *event) { + if (!lua_getmetatable(L, obj)) /* no metatable? */ + return 0; + lua_pushstring(L, event); + lua_rawget(L, -2); + if (lua_isnil(L, -1)) { + lua_pop(L, 2); /* remove metatable and metafield */ + return 0; + } + else { + lua_remove(L, -2); /* remove only metatable */ + return 1; + } +} + + +LUALIB_API int luaL_callmeta (lua_State *L, int obj, const char *event) { + obj = abs_index(L, obj); + if (!luaL_getmetafield(L, obj, event)) /* no metafield? */ + return 0; + lua_pushvalue(L, obj); + lua_call(L, 1, 1); + return 1; +} + + +LUALIB_API void (luaL_register) (lua_State *L, const char *libname, + const luaL_Reg *l) { + luaI_openlib(L, libname, l, 0); +} + + +static int libsize (const luaL_Reg *l) { + int size = 0; + for (; l->name; l++) size++; + return size; +} + + +LUALIB_API void luaI_openlib (lua_State *L, const char *libname, + const luaL_Reg *l, int nup) { + if (libname) { + int size = libsize(l); + /* check whether lib already exists */ + luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 1); + lua_getfield(L, -1, libname); /* get _LOADED[libname] */ + if (!lua_istable(L, -1)) { /* not found? */ + lua_pop(L, 1); /* remove previous result */ + /* try global variable (and create one if it does not exist) */ + if (luaL_findtable(L, LUA_GLOBALSINDEX, libname, size) != NULL) + luaL_error(L, "name conflict for module " LUA_QS, libname); + lua_pushvalue(L, -1); + lua_setfield(L, -3, libname); /* _LOADED[libname] = new table */ + } + lua_remove(L, -2); /* remove _LOADED table */ + lua_insert(L, -(nup+1)); /* move library table to below upvalues */ + } + for (; l->name; l++) { + int i; + for (i=0; ifunc, nup); + lua_setfield(L, -(nup+2), l->name); + } + lua_pop(L, nup); /* remove upvalues */ +} + + + +/* +** {====================================================== +** getn-setn: size for arrays +** ======================================================= +*/ + +#if defined(LUA_COMPAT_GETN) + +static int checkint (lua_State *L, int topop) { + int n = (lua_type(L, -1) == LUA_TNUMBER) ? lua_tointeger(L, -1) : -1; + lua_pop(L, topop); + return n; +} + + +static void getsizes (lua_State *L) { + lua_getfield(L, LUA_REGISTRYINDEX, "LUA_SIZES"); + if (lua_isnil(L, -1)) { /* no `size' table? */ + lua_pop(L, 1); /* remove nil */ + lua_newtable(L); /* create it */ + lua_pushvalue(L, -1); /* `size' will be its own metatable */ + lua_setmetatable(L, -2); + lua_pushliteral(L, "kv"); + lua_setfield(L, -2, "__mode"); /* metatable(N).__mode = "kv" */ + lua_pushvalue(L, -1); + lua_setfield(L, LUA_REGISTRYINDEX, "LUA_SIZES"); /* store in register */ + } +} + + +LUALIB_API void luaL_setn (lua_State *L, int t, int n) { + t = abs_index(L, t); + lua_pushliteral(L, "n"); + lua_rawget(L, t); + if (checkint(L, 1) >= 0) { /* is there a numeric field `n'? */ + lua_pushliteral(L, "n"); /* use it */ + lua_pushinteger(L, n); + lua_rawset(L, t); + } + else { /* use `sizes' */ + getsizes(L); + lua_pushvalue(L, t); + lua_pushinteger(L, n); + lua_rawset(L, -3); /* sizes[t] = n */ + lua_pop(L, 1); /* remove `sizes' */ + } +} + + +LUALIB_API int luaL_getn (lua_State *L, int t) { + int n; + t = abs_index(L, t); + lua_pushliteral(L, "n"); /* try t.n */ + lua_rawget(L, t); + if ((n = checkint(L, 1)) >= 0) return n; + getsizes(L); /* else try sizes[t] */ + lua_pushvalue(L, t); + lua_rawget(L, -2); + if ((n = checkint(L, 2)) >= 0) return n; + return (int)lua_objlen(L, t); +} + +#endif + +/* }====================================================== */ + + + +LUALIB_API const char *luaL_gsub (lua_State *L, const char *s, const char *p, + const char *r) { + const char *wild; + size_t l = strlen(p); + luaL_Buffer b; + luaL_buffinit(L, &b); + while ((wild = strstr(s, p)) != NULL) { + luaL_addlstring(&b, s, wild - s); /* push prefix */ + luaL_addstring(&b, r); /* push replacement in place of pattern */ + s = wild + l; /* continue after `p' */ + } + luaL_addstring(&b, s); /* push last suffix */ + luaL_pushresult(&b); + return lua_tostring(L, -1); +} + + +LUALIB_API const char *luaL_findtable (lua_State *L, int idx, + const char *fname, int szhint) { + const char *e; + lua_pushvalue(L, idx); + do { + e = strchr(fname, '.'); + if (e == NULL) e = fname + strlen(fname); + lua_pushlstring(L, fname, e - fname); + lua_rawget(L, -2); + if (lua_isnil(L, -1)) { /* no such field? */ + lua_pop(L, 1); /* remove this nil */ + lua_createtable(L, 0, (*e == '.' ? 1 : szhint)); /* new table for field */ + lua_pushlstring(L, fname, e - fname); + lua_pushvalue(L, -2); + lua_settable(L, -4); /* set new table into field */ + } + else if (!lua_istable(L, -1)) { /* field has a non-table value? */ + lua_pop(L, 2); /* remove table and value */ + return fname; /* return problematic part of the name */ + } + lua_remove(L, -2); /* remove previous table */ + fname = e + 1; + } while (*e == '.'); + return NULL; +} + + + +/* +** {====================================================== +** Generic Buffer manipulation +** ======================================================= +*/ + + +#define bufflen(B) ((B)->p - (B)->buffer) +#define bufffree(B) ((size_t)(LUAL_BUFFERSIZE - bufflen(B))) + +#define LIMIT (LUA_MINSTACK/2) + + +static int emptybuffer (luaL_Buffer *B) { + size_t l = bufflen(B); + if (l == 0) return 0; /* put nothing on stack */ + else { + lua_pushlstring(B->L, B->buffer, l); + B->p = B->buffer; + B->lvl++; + return 1; + } +} + + +static void adjuststack (luaL_Buffer *B) { + if (B->lvl > 1) { + lua_State *L = B->L; + int toget = 1; /* number of levels to concat */ + size_t toplen = lua_strlen(L, -1); + do { + size_t l = lua_strlen(L, -(toget+1)); + if (B->lvl - toget + 1 >= LIMIT || toplen > l) { + toplen += l; + toget++; + } + else break; + } while (toget < B->lvl); + lua_concat(L, toget); + B->lvl = B->lvl - toget + 1; + } +} + + +LUALIB_API char *luaL_prepbuffer (luaL_Buffer *B) { + if (emptybuffer(B)) + adjuststack(B); + return B->buffer; +} + + +LUALIB_API void luaL_addlstring (luaL_Buffer *B, const char *s, size_t l) { + while (l--) + luaL_addchar(B, *s++); +} + + +LUALIB_API void luaL_addstring (luaL_Buffer *B, const char *s) { + luaL_addlstring(B, s, strlen(s)); +} + + +LUALIB_API void luaL_pushresult (luaL_Buffer *B) { + emptybuffer(B); + lua_concat(B->L, B->lvl); + B->lvl = 1; +} + + +LUALIB_API void luaL_addvalue (luaL_Buffer *B) { + lua_State *L = B->L; + size_t vl; + const char *s = lua_tolstring(L, -1, &vl); + if (vl <= bufffree(B)) { /* fit into buffer? */ + memcpy(B->p, s, vl); /* put it there */ + B->p += vl; + lua_pop(L, 1); /* remove from stack */ + } + else { + if (emptybuffer(B)) + lua_insert(L, -2); /* put buffer before new value */ + B->lvl++; /* add new value into B stack */ + adjuststack(B); + } +} + + +LUALIB_API void luaL_buffinit (lua_State *L, luaL_Buffer *B) { + B->L = L; + B->p = B->buffer; + B->lvl = 0; +} + +/* }====================================================== */ + + +LUALIB_API int luaL_ref (lua_State *L, int t) { + int ref; + t = abs_index(L, t); + if (lua_isnil(L, -1)) { + lua_pop(L, 1); /* remove from stack */ + return LUA_REFNIL; /* `nil' has a unique fixed reference */ + } + lua_rawgeti(L, t, FREELIST_REF); /* get first free element */ + ref = (int)lua_tointeger(L, -1); /* ref = t[FREELIST_REF] */ + lua_pop(L, 1); /* remove it from stack */ + if (ref != 0) { /* any free element? */ + lua_rawgeti(L, t, ref); /* remove it from list */ + lua_rawseti(L, t, FREELIST_REF); /* (t[FREELIST_REF] = t[ref]) */ + } + else { /* no free elements */ + ref = (int)lua_objlen(L, t); + ref++; /* create new reference */ + } + lua_rawseti(L, t, ref); + return ref; +} + + +LUALIB_API void luaL_unref (lua_State *L, int t, int ref) { + if (ref >= 0) { + t = abs_index(L, t); + lua_rawgeti(L, t, FREELIST_REF); + lua_rawseti(L, t, ref); /* t[ref] = t[FREELIST_REF] */ + lua_pushinteger(L, ref); + lua_rawseti(L, t, FREELIST_REF); /* t[FREELIST_REF] = ref */ + } +} + + + +/* +** {====================================================== +** Load functions +** ======================================================= +*/ + +typedef struct LoadF { + int extraline; + FILE *f; + char buff[LUAL_BUFFERSIZE]; +} LoadF; + + +static const char *getF (lua_State *L, void *ud, size_t *size) { + LoadF *lf = (LoadF *)ud; + (void)L; + if (lf->extraline) { + lf->extraline = 0; + *size = 1; + return "\n"; + } + if (feof(lf->f)) return NULL; + *size = fread(lf->buff, 1, sizeof(lf->buff), lf->f); + return (*size > 0) ? lf->buff : NULL; +} + + +static int errfile (lua_State *L, const char *what, int fnameindex) { + const char *serr = strerror(errno); + const char *filename = lua_tostring(L, fnameindex) + 1; + lua_pushfstring(L, "cannot %s %s: %s", what, filename, serr); + lua_remove(L, fnameindex); + return LUA_ERRFILE; +} + + +LUALIB_API int luaL_loadfile (lua_State *L, const char *filename) { + LoadF lf; + int status, readstatus; + int c; + int fnameindex = lua_gettop(L) + 1; /* index of filename on the stack */ + lf.extraline = 0; + if (filename == NULL) { + lua_pushliteral(L, "=stdin"); + lf.f = stdin; + } + else { + lua_pushfstring(L, "@%s", filename); + lf.f = fopen(filename, "r"); + if (lf.f == NULL) return errfile(L, "open", fnameindex); + } + c = getc(lf.f); + if (c == '#') { /* Unix exec. file? */ + lf.extraline = 1; + while ((c = getc(lf.f)) != EOF && c != '\n') ; /* skip first line */ + if (c == '\n') c = getc(lf.f); + } + if (c == LUA_SIGNATURE[0] && filename) { /* binary file? */ + lf.f = freopen(filename, "rb", lf.f); /* reopen in binary mode */ + if (lf.f == NULL) return errfile(L, "reopen", fnameindex); + /* skip eventual `#!...' */ + while ((c = getc(lf.f)) != EOF && c != LUA_SIGNATURE[0]) ; + lf.extraline = 0; + } + ungetc(c, lf.f); + status = lua_load(L, getF, &lf, lua_tostring(L, -1)); + readstatus = ferror(lf.f); + if (filename) fclose(lf.f); /* close file (even in case of errors) */ + if (readstatus) { + lua_settop(L, fnameindex); /* ignore results from `lua_load' */ + return errfile(L, "read", fnameindex); + } + lua_remove(L, fnameindex); + return status; +} + + +typedef struct LoadS { + const char *s; + size_t size; +} LoadS; + + +static const char *getS (lua_State *L, void *ud, size_t *size) { + LoadS *ls = (LoadS *)ud; + (void)L; + if (ls->size == 0) return NULL; + *size = ls->size; + ls->size = 0; + return ls->s; +} + + +LUALIB_API int luaL_loadbuffer (lua_State *L, const char *buff, size_t size, + const char *name) { + LoadS ls; + ls.s = buff; + ls.size = size; + return lua_load(L, getS, &ls, name); +} + + +LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s) { + return luaL_loadbuffer(L, s, strlen(s), s); +} + + + +/* }====================================================== */ + + +static void *l_alloc (void *ud, void *ptr, size_t osize, size_t nsize) { + (void)ud; + (void)osize; + if (nsize == 0) { + free(ptr); + return NULL; + } + else + return realloc(ptr, nsize); +} + + +static int panic (lua_State *L) { + (void)L; /* to avoid warnings */ + fprintf(stderr, "PANIC: unprotected error in call to Lua API (%s)\n", + lua_tostring(L, -1)); + return 0; +} + + +LUALIB_API lua_State *luaL_newstate (void) { + lua_State *L = lua_newstate(l_alloc, NULL); + if (L) lua_atpanic(L, &panic); + return L; +} + diff --git a/lua-5.1.4/src/lauxlib.h b/lua-5.1.4/src/lauxlib.h new file mode 100644 index 0000000..3425823 --- /dev/null +++ b/lua-5.1.4/src/lauxlib.h @@ -0,0 +1,174 @@ +/* +** $Id: lauxlib.h,v 1.88.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions for building Lua libraries +** See Copyright Notice in lua.h +*/ + + +#ifndef lauxlib_h +#define lauxlib_h + + +#include +#include + +#include "lua.h" + + +#if defined(LUA_COMPAT_GETN) +LUALIB_API int (luaL_getn) (lua_State *L, int t); +LUALIB_API void (luaL_setn) (lua_State *L, int t, int n); +#else +#define luaL_getn(L,i) ((int)lua_objlen(L, i)) +#define luaL_setn(L,i,j) ((void)0) /* no op! */ +#endif + +#if defined(LUA_COMPAT_OPENLIB) +#define luaI_openlib luaL_openlib +#endif + + +/* extra error code for `luaL_load' */ +#define LUA_ERRFILE (LUA_ERRERR+1) + + +typedef struct luaL_Reg { + const char *name; + lua_CFunction func; +} luaL_Reg; + + + +LUALIB_API void (luaI_openlib) (lua_State *L, const char *libname, + const luaL_Reg *l, int nup); +LUALIB_API void (luaL_register) (lua_State *L, const char *libname, + const luaL_Reg *l); +LUALIB_API int (luaL_getmetafield) (lua_State *L, int obj, const char *e); +LUALIB_API int (luaL_callmeta) (lua_State *L, int obj, const char *e); +LUALIB_API int (luaL_typerror) (lua_State *L, int narg, const char *tname); +LUALIB_API int (luaL_argerror) (lua_State *L, int numarg, const char *extramsg); +LUALIB_API const char *(luaL_checklstring) (lua_State *L, int numArg, + size_t *l); +LUALIB_API const char *(luaL_optlstring) (lua_State *L, int numArg, + const char *def, size_t *l); +LUALIB_API lua_Number (luaL_checknumber) (lua_State *L, int numArg); +LUALIB_API lua_Number (luaL_optnumber) (lua_State *L, int nArg, lua_Number def); + +LUALIB_API lua_Integer (luaL_checkinteger) (lua_State *L, int numArg); +LUALIB_API lua_Integer (luaL_optinteger) (lua_State *L, int nArg, + lua_Integer def); + +LUALIB_API void (luaL_checkstack) (lua_State *L, int sz, const char *msg); +LUALIB_API void (luaL_checktype) (lua_State *L, int narg, int t); +LUALIB_API void (luaL_checkany) (lua_State *L, int narg); + +LUALIB_API int (luaL_newmetatable) (lua_State *L, const char *tname); +LUALIB_API void *(luaL_checkudata) (lua_State *L, int ud, const char *tname); + +LUALIB_API void (luaL_where) (lua_State *L, int lvl); +LUALIB_API int (luaL_error) (lua_State *L, const char *fmt, ...); + +LUALIB_API int (luaL_checkoption) (lua_State *L, int narg, const char *def, + const char *const lst[]); + +LUALIB_API int (luaL_ref) (lua_State *L, int t); +LUALIB_API void (luaL_unref) (lua_State *L, int t, int ref); + +LUALIB_API int (luaL_loadfile) (lua_State *L, const char *filename); +LUALIB_API int (luaL_loadbuffer) (lua_State *L, const char *buff, size_t sz, + const char *name); +LUALIB_API int (luaL_loadstring) (lua_State *L, const char *s); + +LUALIB_API lua_State *(luaL_newstate) (void); + + +LUALIB_API const char *(luaL_gsub) (lua_State *L, const char *s, const char *p, + const char *r); + +LUALIB_API const char *(luaL_findtable) (lua_State *L, int idx, + const char *fname, int szhint); + + + + +/* +** =============================================================== +** some useful macros +** =============================================================== +*/ + +#define luaL_argcheck(L, cond,numarg,extramsg) \ + ((void)((cond) || luaL_argerror(L, (numarg), (extramsg)))) +#define luaL_checkstring(L,n) (luaL_checklstring(L, (n), NULL)) +#define luaL_optstring(L,n,d) (luaL_optlstring(L, (n), (d), NULL)) +#define luaL_checkint(L,n) ((int)luaL_checkinteger(L, (n))) +#define luaL_optint(L,n,d) ((int)luaL_optinteger(L, (n), (d))) +#define luaL_checklong(L,n) ((long)luaL_checkinteger(L, (n))) +#define luaL_optlong(L,n,d) ((long)luaL_optinteger(L, (n), (d))) + +#define luaL_typename(L,i) lua_typename(L, lua_type(L,(i))) + +#define luaL_dofile(L, fn) \ + (luaL_loadfile(L, fn) || lua_pcall(L, 0, LUA_MULTRET, 0)) + +#define luaL_dostring(L, s) \ + (luaL_loadstring(L, s) || lua_pcall(L, 0, LUA_MULTRET, 0)) + +#define luaL_getmetatable(L,n) (lua_getfield(L, LUA_REGISTRYINDEX, (n))) + +#define luaL_opt(L,f,n,d) (lua_isnoneornil(L,(n)) ? (d) : f(L,(n))) + +/* +** {====================================================== +** Generic Buffer manipulation +** ======================================================= +*/ + + + +typedef struct luaL_Buffer { + char *p; /* current position in buffer */ + int lvl; /* number of strings in the stack (level) */ + lua_State *L; + char buffer[LUAL_BUFFERSIZE]; +} luaL_Buffer; + +#define luaL_addchar(B,c) \ + ((void)((B)->p < ((B)->buffer+LUAL_BUFFERSIZE) || luaL_prepbuffer(B)), \ + (*(B)->p++ = (char)(c))) + +/* compatibility only */ +#define luaL_putchar(B,c) luaL_addchar(B,c) + +#define luaL_addsize(B,n) ((B)->p += (n)) + +LUALIB_API void (luaL_buffinit) (lua_State *L, luaL_Buffer *B); +LUALIB_API char *(luaL_prepbuffer) (luaL_Buffer *B); +LUALIB_API void (luaL_addlstring) (luaL_Buffer *B, const char *s, size_t l); +LUALIB_API void (luaL_addstring) (luaL_Buffer *B, const char *s); +LUALIB_API void (luaL_addvalue) (luaL_Buffer *B); +LUALIB_API void (luaL_pushresult) (luaL_Buffer *B); + + +/* }====================================================== */ + + +/* compatibility with ref system */ + +/* pre-defined references */ +#define LUA_NOREF (-2) +#define LUA_REFNIL (-1) + +#define lua_ref(L,lock) ((lock) ? luaL_ref(L, LUA_REGISTRYINDEX) : \ + (lua_pushstring(L, "unlocked references are obsolete"), lua_error(L), 0)) + +#define lua_unref(L,ref) luaL_unref(L, LUA_REGISTRYINDEX, (ref)) + +#define lua_getref(L,ref) lua_rawgeti(L, LUA_REGISTRYINDEX, (ref)) + + +#define luaL_reg luaL_Reg + +#endif + + diff --git a/lua-5.1.4/src/lbaselib.c b/lua-5.1.4/src/lbaselib.c new file mode 100644 index 0000000..2a4c079 --- /dev/null +++ b/lua-5.1.4/src/lbaselib.c @@ -0,0 +1,653 @@ +/* +** $Id: lbaselib.c,v 1.191.1.6 2008/02/14 16:46:22 roberto Exp $ +** Basic library +** See Copyright Notice in lua.h +*/ + + + +#include +#include +#include +#include + +#define lbaselib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + + +/* +** If your system does not support `stdout', you can just remove this function. +** If you need, you can define your own `print' function, following this +** model but changing `fputs' to put the strings at a proper place +** (a console window or a log file, for instance). +*/ +static int luaB_print (lua_State *L) { + int n = lua_gettop(L); /* number of arguments */ + int i; + lua_getglobal(L, "tostring"); + for (i=1; i<=n; i++) { + const char *s; + lua_pushvalue(L, -1); /* function to be called */ + lua_pushvalue(L, i); /* value to print */ + lua_call(L, 1, 1); + s = lua_tostring(L, -1); /* get result */ + if (s == NULL) + return luaL_error(L, LUA_QL("tostring") " must return a string to " + LUA_QL("print")); + if (i>1) fputs("\t", stdout); + fputs(s, stdout); + lua_pop(L, 1); /* pop result */ + } + fputs("\n", stdout); + return 0; +} + + +static int luaB_tonumber (lua_State *L) { + int base = luaL_optint(L, 2, 10); + if (base == 10) { /* standard conversion */ + luaL_checkany(L, 1); + if (lua_isnumber(L, 1)) { + lua_pushnumber(L, lua_tonumber(L, 1)); + return 1; + } + } + else { + const char *s1 = luaL_checkstring(L, 1); + char *s2; + unsigned long n; + luaL_argcheck(L, 2 <= base && base <= 36, 2, "base out of range"); + n = strtoul(s1, &s2, base); + if (s1 != s2) { /* at least one valid digit? */ + while (isspace((unsigned char)(*s2))) s2++; /* skip trailing spaces */ + if (*s2 == '\0') { /* no invalid trailing characters? */ + lua_pushnumber(L, (lua_Number)n); + return 1; + } + } + } + lua_pushnil(L); /* else not a number */ + return 1; +} + + +static int luaB_error (lua_State *L) { + int level = luaL_optint(L, 2, 1); + lua_settop(L, 1); + if (lua_isstring(L, 1) && level > 0) { /* add extra information? */ + luaL_where(L, level); + lua_pushvalue(L, 1); + lua_concat(L, 2); + } + return lua_error(L); +} + + +static int luaB_getmetatable (lua_State *L) { + luaL_checkany(L, 1); + if (!lua_getmetatable(L, 1)) { + lua_pushnil(L); + return 1; /* no metatable */ + } + luaL_getmetafield(L, 1, "__metatable"); + return 1; /* returns either __metatable field (if present) or metatable */ +} + + +static int luaB_setmetatable (lua_State *L) { + int t = lua_type(L, 2); + luaL_checktype(L, 1, LUA_TTABLE); + luaL_argcheck(L, t == LUA_TNIL || t == LUA_TTABLE, 2, + "nil or table expected"); + if (luaL_getmetafield(L, 1, "__metatable")) + luaL_error(L, "cannot change a protected metatable"); + lua_settop(L, 2); + lua_setmetatable(L, 1); + return 1; +} + + +static void getfunc (lua_State *L, int opt) { + if (lua_isfunction(L, 1)) lua_pushvalue(L, 1); + else { + lua_Debug ar; + int level = opt ? luaL_optint(L, 1, 1) : luaL_checkint(L, 1); + luaL_argcheck(L, level >= 0, 1, "level must be non-negative"); + if (lua_getstack(L, level, &ar) == 0) + luaL_argerror(L, 1, "invalid level"); + lua_getinfo(L, "f", &ar); + if (lua_isnil(L, -1)) + luaL_error(L, "no function environment for tail call at level %d", + level); + } +} + + +static int luaB_getfenv (lua_State *L) { + getfunc(L, 1); + if (lua_iscfunction(L, -1)) /* is a C function? */ + lua_pushvalue(L, LUA_GLOBALSINDEX); /* return the thread's global env. */ + else + lua_getfenv(L, -1); + return 1; +} + + +static int luaB_setfenv (lua_State *L) { + luaL_checktype(L, 2, LUA_TTABLE); + getfunc(L, 0); + lua_pushvalue(L, 2); + if (lua_isnumber(L, 1) && lua_tonumber(L, 1) == 0) { + /* change environment of current thread */ + lua_pushthread(L); + lua_insert(L, -2); + lua_setfenv(L, -2); + return 0; + } + else if (lua_iscfunction(L, -2) || lua_setfenv(L, -2) == 0) + luaL_error(L, + LUA_QL("setfenv") " cannot change environment of given object"); + return 1; +} + + +static int luaB_rawequal (lua_State *L) { + luaL_checkany(L, 1); + luaL_checkany(L, 2); + lua_pushboolean(L, lua_rawequal(L, 1, 2)); + return 1; +} + + +static int luaB_rawget (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + luaL_checkany(L, 2); + lua_settop(L, 2); + lua_rawget(L, 1); + return 1; +} + +static int luaB_rawset (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + luaL_checkany(L, 2); + luaL_checkany(L, 3); + lua_settop(L, 3); + lua_rawset(L, 1); + return 1; +} + + +static int luaB_gcinfo (lua_State *L) { + lua_pushinteger(L, lua_getgccount(L)); + return 1; +} + + +static int luaB_collectgarbage (lua_State *L) { + static const char *const opts[] = {"stop", "restart", "collect", + "count", "step", "setpause", "setstepmul", NULL}; + static const int optsnum[] = {LUA_GCSTOP, LUA_GCRESTART, LUA_GCCOLLECT, + LUA_GCCOUNT, LUA_GCSTEP, LUA_GCSETPAUSE, LUA_GCSETSTEPMUL}; + int o = luaL_checkoption(L, 1, "collect", opts); + int ex = luaL_optint(L, 2, 0); + int res = lua_gc(L, optsnum[o], ex); + switch (optsnum[o]) { + case LUA_GCCOUNT: { + int b = lua_gc(L, LUA_GCCOUNTB, 0); + lua_pushnumber(L, res + ((lua_Number)b/1024)); + return 1; + } + case LUA_GCSTEP: { + lua_pushboolean(L, res); + return 1; + } + default: { + lua_pushnumber(L, res); + return 1; + } + } +} + + +static int luaB_type (lua_State *L) { + luaL_checkany(L, 1); + lua_pushstring(L, luaL_typename(L, 1)); + return 1; +} + + +static int luaB_next (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + lua_settop(L, 2); /* create a 2nd argument if there isn't one */ + if (lua_next(L, 1)) + return 2; + else { + lua_pushnil(L); + return 1; + } +} + + +static int luaB_pairs (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + lua_pushvalue(L, lua_upvalueindex(1)); /* return generator, */ + lua_pushvalue(L, 1); /* state, */ + lua_pushnil(L); /* and initial value */ + return 3; +} + + +static int ipairsaux (lua_State *L) { + int i = luaL_checkint(L, 2); + luaL_checktype(L, 1, LUA_TTABLE); + i++; /* next value */ + lua_pushinteger(L, i); + lua_rawgeti(L, 1, i); + return (lua_isnil(L, -1)) ? 0 : 2; +} + + +static int luaB_ipairs (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + lua_pushvalue(L, lua_upvalueindex(1)); /* return generator, */ + lua_pushvalue(L, 1); /* state, */ + lua_pushinteger(L, 0); /* and initial value */ + return 3; +} + + +static int load_aux (lua_State *L, int status) { + if (status == 0) /* OK? */ + return 1; + else { + lua_pushnil(L); + lua_insert(L, -2); /* put before error message */ + return 2; /* return nil plus error message */ + } +} + + +static int luaB_loadstring (lua_State *L) { + size_t l; + const char *s = luaL_checklstring(L, 1, &l); + const char *chunkname = luaL_optstring(L, 2, s); + return load_aux(L, luaL_loadbuffer(L, s, l, chunkname)); +} + + +static int luaB_loadfile (lua_State *L) { + const char *fname = luaL_optstring(L, 1, NULL); + return load_aux(L, luaL_loadfile(L, fname)); +} + + +/* +** Reader for generic `load' function: `lua_load' uses the +** stack for internal stuff, so the reader cannot change the +** stack top. Instead, it keeps its resulting string in a +** reserved slot inside the stack. +*/ +static const char *generic_reader (lua_State *L, void *ud, size_t *size) { + (void)ud; /* to avoid warnings */ + luaL_checkstack(L, 2, "too many nested functions"); + lua_pushvalue(L, 1); /* get function */ + lua_call(L, 0, 1); /* call it */ + if (lua_isnil(L, -1)) { + *size = 0; + return NULL; + } + else if (lua_isstring(L, -1)) { + lua_replace(L, 3); /* save string in a reserved stack slot */ + return lua_tolstring(L, 3, size); + } + else luaL_error(L, "reader function must return a string"); + return NULL; /* to avoid warnings */ +} + + +static int luaB_load (lua_State *L) { + int status; + const char *cname = luaL_optstring(L, 2, "=(load)"); + luaL_checktype(L, 1, LUA_TFUNCTION); + lua_settop(L, 3); /* function, eventual name, plus one reserved slot */ + status = lua_load(L, generic_reader, NULL, cname); + return load_aux(L, status); +} + + +static int luaB_dofile (lua_State *L) { + const char *fname = luaL_optstring(L, 1, NULL); + int n = lua_gettop(L); + if (luaL_loadfile(L, fname) != 0) lua_error(L); + lua_call(L, 0, LUA_MULTRET); + return lua_gettop(L) - n; +} + + +static int luaB_assert (lua_State *L) { + luaL_checkany(L, 1); + if (!lua_toboolean(L, 1)) + return luaL_error(L, "%s", luaL_optstring(L, 2, "assertion failed!")); + return lua_gettop(L); +} + + +static int luaB_unpack (lua_State *L) { + int i, e, n; + luaL_checktype(L, 1, LUA_TTABLE); + i = luaL_optint(L, 2, 1); + e = luaL_opt(L, luaL_checkint, 3, luaL_getn(L, 1)); + if (i > e) return 0; /* empty range */ + n = e - i + 1; /* number of elements */ + if (n <= 0 || !lua_checkstack(L, n)) /* n <= 0 means arith. overflow */ + return luaL_error(L, "too many results to unpack"); + lua_rawgeti(L, 1, i); /* push arg[i] (avoiding overflow problems) */ + while (i++ < e) /* push arg[i + 1...e] */ + lua_rawgeti(L, 1, i); + return n; +} + + +static int luaB_select (lua_State *L) { + int n = lua_gettop(L); + if (lua_type(L, 1) == LUA_TSTRING && *lua_tostring(L, 1) == '#') { + lua_pushinteger(L, n-1); + return 1; + } + else { + int i = luaL_checkint(L, 1); + if (i < 0) i = n + i; + else if (i > n) i = n; + luaL_argcheck(L, 1 <= i, 1, "index out of range"); + return n - i; + } +} + + +static int luaB_pcall (lua_State *L) { + int status; + luaL_checkany(L, 1); + status = lua_pcall(L, lua_gettop(L) - 1, LUA_MULTRET, 0); + lua_pushboolean(L, (status == 0)); + lua_insert(L, 1); + return lua_gettop(L); /* return status + all results */ +} + + +static int luaB_xpcall (lua_State *L) { + int status; + luaL_checkany(L, 2); + lua_settop(L, 2); + lua_insert(L, 1); /* put error function under function to be called */ + status = lua_pcall(L, 0, LUA_MULTRET, 1); + lua_pushboolean(L, (status == 0)); + lua_replace(L, 1); + return lua_gettop(L); /* return status + all results */ +} + + +static int luaB_tostring (lua_State *L) { + luaL_checkany(L, 1); + if (luaL_callmeta(L, 1, "__tostring")) /* is there a metafield? */ + return 1; /* use its value */ + switch (lua_type(L, 1)) { + case LUA_TNUMBER: + lua_pushstring(L, lua_tostring(L, 1)); + break; + case LUA_TSTRING: + lua_pushvalue(L, 1); + break; + case LUA_TBOOLEAN: + lua_pushstring(L, (lua_toboolean(L, 1) ? "true" : "false")); + break; + case LUA_TNIL: + lua_pushliteral(L, "nil"); + break; + default: + lua_pushfstring(L, "%s: %p", luaL_typename(L, 1), lua_topointer(L, 1)); + break; + } + return 1; +} + + +static int luaB_newproxy (lua_State *L) { + lua_settop(L, 1); + lua_newuserdata(L, 0); /* create proxy */ + if (lua_toboolean(L, 1) == 0) + return 1; /* no metatable */ + else if (lua_isboolean(L, 1)) { + lua_newtable(L); /* create a new metatable `m' ... */ + lua_pushvalue(L, -1); /* ... and mark `m' as a valid metatable */ + lua_pushboolean(L, 1); + lua_rawset(L, lua_upvalueindex(1)); /* weaktable[m] = true */ + } + else { + int validproxy = 0; /* to check if weaktable[metatable(u)] == true */ + if (lua_getmetatable(L, 1)) { + lua_rawget(L, lua_upvalueindex(1)); + validproxy = lua_toboolean(L, -1); + lua_pop(L, 1); /* remove value */ + } + luaL_argcheck(L, validproxy, 1, "boolean or proxy expected"); + lua_getmetatable(L, 1); /* metatable is valid; get it */ + } + lua_setmetatable(L, 2); + return 1; +} + + +static const luaL_Reg base_funcs[] = { + {"assert", luaB_assert}, + {"collectgarbage", luaB_collectgarbage}, + {"dofile", luaB_dofile}, + {"error", luaB_error}, + {"gcinfo", luaB_gcinfo}, + {"getfenv", luaB_getfenv}, + {"getmetatable", luaB_getmetatable}, + {"loadfile", luaB_loadfile}, + {"load", luaB_load}, + {"loadstring", luaB_loadstring}, + {"next", luaB_next}, + {"pcall", luaB_pcall}, + {"print", luaB_print}, + {"rawequal", luaB_rawequal}, + {"rawget", luaB_rawget}, + {"rawset", luaB_rawset}, + {"select", luaB_select}, + {"setfenv", luaB_setfenv}, + {"setmetatable", luaB_setmetatable}, + {"tonumber", luaB_tonumber}, + {"tostring", luaB_tostring}, + {"type", luaB_type}, + {"unpack", luaB_unpack}, + {"xpcall", luaB_xpcall}, + {NULL, NULL} +}; + + +/* +** {====================================================== +** Coroutine library +** ======================================================= +*/ + +#define CO_RUN 0 /* running */ +#define CO_SUS 1 /* suspended */ +#define CO_NOR 2 /* 'normal' (it resumed another coroutine) */ +#define CO_DEAD 3 + +static const char *const statnames[] = + {"running", "suspended", "normal", "dead"}; + +static int costatus (lua_State *L, lua_State *co) { + if (L == co) return CO_RUN; + switch (lua_status(co)) { + case LUA_YIELD: + return CO_SUS; + case 0: { + lua_Debug ar; + if (lua_getstack(co, 0, &ar) > 0) /* does it have frames? */ + return CO_NOR; /* it is running */ + else if (lua_gettop(co) == 0) + return CO_DEAD; + else + return CO_SUS; /* initial state */ + } + default: /* some error occured */ + return CO_DEAD; + } +} + + +static int luaB_costatus (lua_State *L) { + lua_State *co = lua_tothread(L, 1); + luaL_argcheck(L, co, 1, "coroutine expected"); + lua_pushstring(L, statnames[costatus(L, co)]); + return 1; +} + + +static int auxresume (lua_State *L, lua_State *co, int narg) { + int status = costatus(L, co); + if (!lua_checkstack(co, narg)) + luaL_error(L, "too many arguments to resume"); + if (status != CO_SUS) { + lua_pushfstring(L, "cannot resume %s coroutine", statnames[status]); + return -1; /* error flag */ + } + lua_xmove(L, co, narg); + lua_setlevel(L, co); + status = lua_resume(co, narg); + if (status == 0 || status == LUA_YIELD) { + int nres = lua_gettop(co); + if (!lua_checkstack(L, nres + 1)) + luaL_error(L, "too many results to resume"); + lua_xmove(co, L, nres); /* move yielded values */ + return nres; + } + else { + lua_xmove(co, L, 1); /* move error message */ + return -1; /* error flag */ + } +} + + +static int luaB_coresume (lua_State *L) { + lua_State *co = lua_tothread(L, 1); + int r; + luaL_argcheck(L, co, 1, "coroutine expected"); + r = auxresume(L, co, lua_gettop(L) - 1); + if (r < 0) { + lua_pushboolean(L, 0); + lua_insert(L, -2); + return 2; /* return false + error message */ + } + else { + lua_pushboolean(L, 1); + lua_insert(L, -(r + 1)); + return r + 1; /* return true + `resume' returns */ + } +} + + +static int luaB_auxwrap (lua_State *L) { + lua_State *co = lua_tothread(L, lua_upvalueindex(1)); + int r = auxresume(L, co, lua_gettop(L)); + if (r < 0) { + if (lua_isstring(L, -1)) { /* error object is a string? */ + luaL_where(L, 1); /* add extra info */ + lua_insert(L, -2); + lua_concat(L, 2); + } + lua_error(L); /* propagate error */ + } + return r; +} + + +static int luaB_cocreate (lua_State *L) { + lua_State *NL = lua_newthread(L); + luaL_argcheck(L, lua_isfunction(L, 1) && !lua_iscfunction(L, 1), 1, + "Lua function expected"); + lua_pushvalue(L, 1); /* move function to top */ + lua_xmove(L, NL, 1); /* move function from L to NL */ + return 1; +} + + +static int luaB_cowrap (lua_State *L) { + luaB_cocreate(L); + lua_pushcclosure(L, luaB_auxwrap, 1); + return 1; +} + + +static int luaB_yield (lua_State *L) { + return lua_yield(L, lua_gettop(L)); +} + + +static int luaB_corunning (lua_State *L) { + if (lua_pushthread(L)) + lua_pushnil(L); /* main thread is not a coroutine */ + return 1; +} + + +static const luaL_Reg co_funcs[] = { + {"create", luaB_cocreate}, + {"resume", luaB_coresume}, + {"running", luaB_corunning}, + {"status", luaB_costatus}, + {"wrap", luaB_cowrap}, + {"yield", luaB_yield}, + {NULL, NULL} +}; + +/* }====================================================== */ + + +static void auxopen (lua_State *L, const char *name, + lua_CFunction f, lua_CFunction u) { + lua_pushcfunction(L, u); + lua_pushcclosure(L, f, 1); + lua_setfield(L, -2, name); +} + + +static void base_open (lua_State *L) { + /* set global _G */ + lua_pushvalue(L, LUA_GLOBALSINDEX); + lua_setglobal(L, "_G"); + /* open lib into global table */ + luaL_register(L, "_G", base_funcs); + lua_pushliteral(L, LUA_VERSION); + lua_setglobal(L, "_VERSION"); /* set global _VERSION */ + /* `ipairs' and `pairs' need auxliliary functions as upvalues */ + auxopen(L, "ipairs", luaB_ipairs, ipairsaux); + auxopen(L, "pairs", luaB_pairs, luaB_next); + /* `newproxy' needs a weaktable as upvalue */ + lua_createtable(L, 0, 1); /* new table `w' */ + lua_pushvalue(L, -1); /* `w' will be its own metatable */ + lua_setmetatable(L, -2); + lua_pushliteral(L, "kv"); + lua_setfield(L, -2, "__mode"); /* metatable(w).__mode = "kv" */ + lua_pushcclosure(L, luaB_newproxy, 1); + lua_setglobal(L, "newproxy"); /* set global `newproxy' */ +} + + +LUALIB_API int luaopen_base (lua_State *L) { + base_open(L); + luaL_register(L, LUA_COLIBNAME, co_funcs); + return 2; +} + diff --git a/lua-5.1.4/src/lcode.c b/lua-5.1.4/src/lcode.c new file mode 100644 index 0000000..cff626b --- /dev/null +++ b/lua-5.1.4/src/lcode.c @@ -0,0 +1,839 @@ +/* +** $Id: lcode.c,v 2.25.1.3 2007/12/28 15:32:23 roberto Exp $ +** Code generator for Lua +** See Copyright Notice in lua.h +*/ + + +#include + +#define lcode_c +#define LUA_CORE + +#include "lua.h" + +#include "lcode.h" +#include "ldebug.h" +#include "ldo.h" +#include "lgc.h" +#include "llex.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" +#include "ltable.h" + + +#define hasjumps(e) ((e)->t != (e)->f) + + +static int isnumeral(expdesc *e) { + return (e->k == VKNUM && e->t == NO_JUMP && e->f == NO_JUMP); +} + + +void luaK_nil (FuncState *fs, int from, int n) { + Instruction *previous; + if (fs->pc > fs->lasttarget) { /* no jumps to current position? */ + if (fs->pc == 0) { /* function start? */ + if (from >= fs->nactvar) + return; /* positions are already clean */ + } + else { + previous = &fs->f->code[fs->pc-1]; + if (GET_OPCODE(*previous) == OP_LOADNIL) { + int pfrom = GETARG_A(*previous); + int pto = GETARG_B(*previous); + if (pfrom <= from && from <= pto+1) { /* can connect both? */ + if (from+n-1 > pto) + SETARG_B(*previous, from+n-1); + return; + } + } + } + } + luaK_codeABC(fs, OP_LOADNIL, from, from+n-1, 0); /* else no optimization */ +} + + +int luaK_jump (FuncState *fs) { + int jpc = fs->jpc; /* save list of jumps to here */ + int j; + fs->jpc = NO_JUMP; + j = luaK_codeAsBx(fs, OP_JMP, 0, NO_JUMP); + luaK_concat(fs, &j, jpc); /* keep them on hold */ + return j; +} + + +void luaK_ret (FuncState *fs, int first, int nret) { + luaK_codeABC(fs, OP_RETURN, first, nret+1, 0); +} + + +static int condjump (FuncState *fs, OpCode op, int A, int B, int C) { + luaK_codeABC(fs, op, A, B, C); + return luaK_jump(fs); +} + + +static void fixjump (FuncState *fs, int pc, int dest) { + Instruction *jmp = &fs->f->code[pc]; + int offset = dest-(pc+1); + lua_assert(dest != NO_JUMP); + if (abs(offset) > MAXARG_sBx) + luaX_syntaxerror(fs->ls, "control structure too long"); + SETARG_sBx(*jmp, offset); +} + + +/* +** returns current `pc' and marks it as a jump target (to avoid wrong +** optimizations with consecutive instructions not in the same basic block). +*/ +int luaK_getlabel (FuncState *fs) { + fs->lasttarget = fs->pc; + return fs->pc; +} + + +static int getjump (FuncState *fs, int pc) { + int offset = GETARG_sBx(fs->f->code[pc]); + if (offset == NO_JUMP) /* point to itself represents end of list */ + return NO_JUMP; /* end of list */ + else + return (pc+1)+offset; /* turn offset into absolute position */ +} + + +static Instruction *getjumpcontrol (FuncState *fs, int pc) { + Instruction *pi = &fs->f->code[pc]; + if (pc >= 1 && testTMode(GET_OPCODE(*(pi-1)))) + return pi-1; + else + return pi; +} + + +/* +** check whether list has any jump that do not produce a value +** (or produce an inverted value) +*/ +static int need_value (FuncState *fs, int list) { + for (; list != NO_JUMP; list = getjump(fs, list)) { + Instruction i = *getjumpcontrol(fs, list); + if (GET_OPCODE(i) != OP_TESTSET) return 1; + } + return 0; /* not found */ +} + + +static int patchtestreg (FuncState *fs, int node, int reg) { + Instruction *i = getjumpcontrol(fs, node); + if (GET_OPCODE(*i) != OP_TESTSET) + return 0; /* cannot patch other instructions */ + if (reg != NO_REG && reg != GETARG_B(*i)) + SETARG_A(*i, reg); + else /* no register to put value or register already has the value */ + *i = CREATE_ABC(OP_TEST, GETARG_B(*i), 0, GETARG_C(*i)); + + return 1; +} + + +static void removevalues (FuncState *fs, int list) { + for (; list != NO_JUMP; list = getjump(fs, list)) + patchtestreg(fs, list, NO_REG); +} + + +static void patchlistaux (FuncState *fs, int list, int vtarget, int reg, + int dtarget) { + while (list != NO_JUMP) { + int next = getjump(fs, list); + if (patchtestreg(fs, list, reg)) + fixjump(fs, list, vtarget); + else + fixjump(fs, list, dtarget); /* jump to default target */ + list = next; + } +} + + +static void dischargejpc (FuncState *fs) { + patchlistaux(fs, fs->jpc, fs->pc, NO_REG, fs->pc); + fs->jpc = NO_JUMP; +} + + +void luaK_patchlist (FuncState *fs, int list, int target) { + if (target == fs->pc) + luaK_patchtohere(fs, list); + else { + lua_assert(target < fs->pc); + patchlistaux(fs, list, target, NO_REG, target); + } +} + + +void luaK_patchtohere (FuncState *fs, int list) { + luaK_getlabel(fs); + luaK_concat(fs, &fs->jpc, list); +} + + +void luaK_concat (FuncState *fs, int *l1, int l2) { + if (l2 == NO_JUMP) return; + else if (*l1 == NO_JUMP) + *l1 = l2; + else { + int list = *l1; + int next; + while ((next = getjump(fs, list)) != NO_JUMP) /* find last element */ + list = next; + fixjump(fs, list, l2); + } +} + + +void luaK_checkstack (FuncState *fs, int n) { + int newstack = fs->freereg + n; + if (newstack > fs->f->maxstacksize) { + if (newstack >= MAXSTACK) + luaX_syntaxerror(fs->ls, "function or expression too complex"); + fs->f->maxstacksize = cast_byte(newstack); + } +} + + +void luaK_reserveregs (FuncState *fs, int n) { + luaK_checkstack(fs, n); + fs->freereg += n; +} + + +static void freereg (FuncState *fs, int reg) { + if (!ISK(reg) && reg >= fs->nactvar) { + fs->freereg--; + lua_assert(reg == fs->freereg); + } +} + + +static void freeexp (FuncState *fs, expdesc *e) { + if (e->k == VNONRELOC) + freereg(fs, e->u.s.info); +} + + +static int addk (FuncState *fs, TValue *k, TValue *v) { + lua_State *L = fs->L; + TValue *idx = luaH_set(L, fs->h, k); + Proto *f = fs->f; + int oldsize = f->sizek; + if (ttisnumber(idx)) { + lua_assert(luaO_rawequalObj(&fs->f->k[cast_int(nvalue(idx))], v)); + return cast_int(nvalue(idx)); + } + else { /* constant not found; create a new entry */ + setnvalue(idx, cast_num(fs->nk)); + luaM_growvector(L, f->k, fs->nk, f->sizek, TValue, + MAXARG_Bx, "constant table overflow"); + while (oldsize < f->sizek) setnilvalue(&f->k[oldsize++]); + setobj(L, &f->k[fs->nk], v); + luaC_barrier(L, f, v); + return fs->nk++; + } +} + + +int luaK_stringK (FuncState *fs, TString *s) { + TValue o; + setsvalue(fs->L, &o, s); + return addk(fs, &o, &o); +} + + +int luaK_numberK (FuncState *fs, lua_Number r) { + TValue o; + setnvalue(&o, r); + return addk(fs, &o, &o); +} + + +static int boolK (FuncState *fs, int b) { + TValue o; + setbvalue(&o, b); + return addk(fs, &o, &o); +} + + +static int nilK (FuncState *fs) { + TValue k, v; + setnilvalue(&v); + /* cannot use nil as key; instead use table itself to represent nil */ + sethvalue(fs->L, &k, fs->h); + return addk(fs, &k, &v); +} + + +void luaK_setreturns (FuncState *fs, expdesc *e, int nresults) { + if (e->k == VCALL) { /* expression is an open function call? */ + SETARG_C(getcode(fs, e), nresults+1); + } + else if (e->k == VVARARG) { + SETARG_B(getcode(fs, e), nresults+1); + SETARG_A(getcode(fs, e), fs->freereg); + luaK_reserveregs(fs, 1); + } +} + + +void luaK_setoneret (FuncState *fs, expdesc *e) { + if (e->k == VCALL) { /* expression is an open function call? */ + e->k = VNONRELOC; + e->u.s.info = GETARG_A(getcode(fs, e)); + } + else if (e->k == VVARARG) { + SETARG_B(getcode(fs, e), 2); + e->k = VRELOCABLE; /* can relocate its simple result */ + } +} + + +void luaK_dischargevars (FuncState *fs, expdesc *e) { + switch (e->k) { + case VLOCAL: { + e->k = VNONRELOC; + break; + } + case VUPVAL: { + e->u.s.info = luaK_codeABC(fs, OP_GETUPVAL, 0, e->u.s.info, 0); + e->k = VRELOCABLE; + break; + } + case VGLOBAL: { + e->u.s.info = luaK_codeABx(fs, OP_GETGLOBAL, 0, e->u.s.info); + e->k = VRELOCABLE; + break; + } + case VINDEXED: { + freereg(fs, e->u.s.aux); + freereg(fs, e->u.s.info); + e->u.s.info = luaK_codeABC(fs, OP_GETTABLE, 0, e->u.s.info, e->u.s.aux); + e->k = VRELOCABLE; + break; + } + case VVARARG: + case VCALL: { + luaK_setoneret(fs, e); + break; + } + default: break; /* there is one value available (somewhere) */ + } +} + + +static int code_label (FuncState *fs, int A, int b, int jump) { + luaK_getlabel(fs); /* those instructions may be jump targets */ + return luaK_codeABC(fs, OP_LOADBOOL, A, b, jump); +} + + +static void discharge2reg (FuncState *fs, expdesc *e, int reg) { + luaK_dischargevars(fs, e); + switch (e->k) { + case VNIL: { + luaK_nil(fs, reg, 1); + break; + } + case VFALSE: case VTRUE: { + luaK_codeABC(fs, OP_LOADBOOL, reg, e->k == VTRUE, 0); + break; + } + case VK: { + luaK_codeABx(fs, OP_LOADK, reg, e->u.s.info); + break; + } + case VKNUM: { + luaK_codeABx(fs, OP_LOADK, reg, luaK_numberK(fs, e->u.nval)); + break; + } + case VRELOCABLE: { + Instruction *pc = &getcode(fs, e); + SETARG_A(*pc, reg); + break; + } + case VNONRELOC: { + if (reg != e->u.s.info) + luaK_codeABC(fs, OP_MOVE, reg, e->u.s.info, 0); + break; + } + default: { + lua_assert(e->k == VVOID || e->k == VJMP); + return; /* nothing to do... */ + } + } + e->u.s.info = reg; + e->k = VNONRELOC; +} + + +static void discharge2anyreg (FuncState *fs, expdesc *e) { + if (e->k != VNONRELOC) { + luaK_reserveregs(fs, 1); + discharge2reg(fs, e, fs->freereg-1); + } +} + + +static void exp2reg (FuncState *fs, expdesc *e, int reg) { + discharge2reg(fs, e, reg); + if (e->k == VJMP) + luaK_concat(fs, &e->t, e->u.s.info); /* put this jump in `t' list */ + if (hasjumps(e)) { + int final; /* position after whole expression */ + int p_f = NO_JUMP; /* position of an eventual LOAD false */ + int p_t = NO_JUMP; /* position of an eventual LOAD true */ + if (need_value(fs, e->t) || need_value(fs, e->f)) { + int fj = (e->k == VJMP) ? NO_JUMP : luaK_jump(fs); + p_f = code_label(fs, reg, 0, 1); + p_t = code_label(fs, reg, 1, 0); + luaK_patchtohere(fs, fj); + } + final = luaK_getlabel(fs); + patchlistaux(fs, e->f, final, reg, p_f); + patchlistaux(fs, e->t, final, reg, p_t); + } + e->f = e->t = NO_JUMP; + e->u.s.info = reg; + e->k = VNONRELOC; +} + + +void luaK_exp2nextreg (FuncState *fs, expdesc *e) { + luaK_dischargevars(fs, e); + freeexp(fs, e); + luaK_reserveregs(fs, 1); + exp2reg(fs, e, fs->freereg - 1); +} + + +int luaK_exp2anyreg (FuncState *fs, expdesc *e) { + luaK_dischargevars(fs, e); + if (e->k == VNONRELOC) { + if (!hasjumps(e)) return e->u.s.info; /* exp is already in a register */ + if (e->u.s.info >= fs->nactvar) { /* reg. is not a local? */ + exp2reg(fs, e, e->u.s.info); /* put value on it */ + return e->u.s.info; + } + } + luaK_exp2nextreg(fs, e); /* default */ + return e->u.s.info; +} + + +void luaK_exp2val (FuncState *fs, expdesc *e) { + if (hasjumps(e)) + luaK_exp2anyreg(fs, e); + else + luaK_dischargevars(fs, e); +} + + +int luaK_exp2RK (FuncState *fs, expdesc *e) { + luaK_exp2val(fs, e); + switch (e->k) { + case VKNUM: + case VTRUE: + case VFALSE: + case VNIL: { + if (fs->nk <= MAXINDEXRK) { /* constant fit in RK operand? */ + e->u.s.info = (e->k == VNIL) ? nilK(fs) : + (e->k == VKNUM) ? luaK_numberK(fs, e->u.nval) : + boolK(fs, (e->k == VTRUE)); + e->k = VK; + return RKASK(e->u.s.info); + } + else break; + } + case VK: { + if (e->u.s.info <= MAXINDEXRK) /* constant fit in argC? */ + return RKASK(e->u.s.info); + else break; + } + default: break; + } + /* not a constant in the right range: put it in a register */ + return luaK_exp2anyreg(fs, e); +} + + +void luaK_storevar (FuncState *fs, expdesc *var, expdesc *ex) { + switch (var->k) { + case VLOCAL: { + freeexp(fs, ex); + exp2reg(fs, ex, var->u.s.info); + return; + } + case VUPVAL: { + int e = luaK_exp2anyreg(fs, ex); + luaK_codeABC(fs, OP_SETUPVAL, e, var->u.s.info, 0); + break; + } + case VGLOBAL: { + int e = luaK_exp2anyreg(fs, ex); + luaK_codeABx(fs, OP_SETGLOBAL, e, var->u.s.info); + break; + } + case VINDEXED: { + int e = luaK_exp2RK(fs, ex); + luaK_codeABC(fs, OP_SETTABLE, var->u.s.info, var->u.s.aux, e); + break; + } + default: { + lua_assert(0); /* invalid var kind to store */ + break; + } + } + freeexp(fs, ex); +} + + +void luaK_self (FuncState *fs, expdesc *e, expdesc *key) { + int func; + luaK_exp2anyreg(fs, e); + freeexp(fs, e); + func = fs->freereg; + luaK_reserveregs(fs, 2); + luaK_codeABC(fs, OP_SELF, func, e->u.s.info, luaK_exp2RK(fs, key)); + freeexp(fs, key); + e->u.s.info = func; + e->k = VNONRELOC; +} + + +static void invertjump (FuncState *fs, expdesc *e) { + Instruction *pc = getjumpcontrol(fs, e->u.s.info); + lua_assert(testTMode(GET_OPCODE(*pc)) && GET_OPCODE(*pc) != OP_TESTSET && + GET_OPCODE(*pc) != OP_TEST); + SETARG_A(*pc, !(GETARG_A(*pc))); +} + + +static int jumponcond (FuncState *fs, expdesc *e, int cond) { + if (e->k == VRELOCABLE) { + Instruction ie = getcode(fs, e); + if (GET_OPCODE(ie) == OP_NOT) { + fs->pc--; /* remove previous OP_NOT */ + return condjump(fs, OP_TEST, GETARG_B(ie), 0, !cond); + } + /* else go through */ + } + discharge2anyreg(fs, e); + freeexp(fs, e); + return condjump(fs, OP_TESTSET, NO_REG, e->u.s.info, cond); +} + + +void luaK_goiftrue (FuncState *fs, expdesc *e) { + int pc; /* pc of last jump */ + luaK_dischargevars(fs, e); + switch (e->k) { + case VK: case VKNUM: case VTRUE: { + pc = NO_JUMP; /* always true; do nothing */ + break; + } + case VFALSE: { + pc = luaK_jump(fs); /* always jump */ + break; + } + case VJMP: { + invertjump(fs, e); + pc = e->u.s.info; + break; + } + default: { + pc = jumponcond(fs, e, 0); + break; + } + } + luaK_concat(fs, &e->f, pc); /* insert last jump in `f' list */ + luaK_patchtohere(fs, e->t); + e->t = NO_JUMP; +} + + +static void luaK_goiffalse (FuncState *fs, expdesc *e) { + int pc; /* pc of last jump */ + luaK_dischargevars(fs, e); + switch (e->k) { + case VNIL: case VFALSE: { + pc = NO_JUMP; /* always false; do nothing */ + break; + } + case VTRUE: { + pc = luaK_jump(fs); /* always jump */ + break; + } + case VJMP: { + pc = e->u.s.info; + break; + } + default: { + pc = jumponcond(fs, e, 1); + break; + } + } + luaK_concat(fs, &e->t, pc); /* insert last jump in `t' list */ + luaK_patchtohere(fs, e->f); + e->f = NO_JUMP; +} + + +static void codenot (FuncState *fs, expdesc *e) { + luaK_dischargevars(fs, e); + switch (e->k) { + case VNIL: case VFALSE: { + e->k = VTRUE; + break; + } + case VK: case VKNUM: case VTRUE: { + e->k = VFALSE; + break; + } + case VJMP: { + invertjump(fs, e); + break; + } + case VRELOCABLE: + case VNONRELOC: { + discharge2anyreg(fs, e); + freeexp(fs, e); + e->u.s.info = luaK_codeABC(fs, OP_NOT, 0, e->u.s.info, 0); + e->k = VRELOCABLE; + break; + } + default: { + lua_assert(0); /* cannot happen */ + break; + } + } + /* interchange true and false lists */ + { int temp = e->f; e->f = e->t; e->t = temp; } + removevalues(fs, e->f); + removevalues(fs, e->t); +} + + +void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k) { + t->u.s.aux = luaK_exp2RK(fs, k); + t->k = VINDEXED; +} + + +static int constfolding (OpCode op, expdesc *e1, expdesc *e2) { + lua_Number v1, v2, r; + if (!isnumeral(e1) || !isnumeral(e2)) return 0; + v1 = e1->u.nval; + v2 = e2->u.nval; + switch (op) { + case OP_ADD: r = luai_numadd(v1, v2); break; + case OP_SUB: r = luai_numsub(v1, v2); break; + case OP_MUL: r = luai_nummul(v1, v2); break; + case OP_DIV: + if (v2 == 0) return 0; /* do not attempt to divide by 0 */ + r = luai_numdiv(v1, v2); break; + case OP_MOD: + if (v2 == 0) return 0; /* do not attempt to divide by 0 */ + r = luai_nummod(v1, v2); break; + case OP_POW: r = luai_numpow(v1, v2); break; + case OP_UNM: r = luai_numunm(v1); break; + case OP_LEN: return 0; /* no constant folding for 'len' */ + default: lua_assert(0); r = 0; break; + } + if (luai_numisnan(r)) return 0; /* do not attempt to produce NaN */ + e1->u.nval = r; + return 1; +} + + +static void codearith (FuncState *fs, OpCode op, expdesc *e1, expdesc *e2) { + if (constfolding(op, e1, e2)) + return; + else { + int o2 = (op != OP_UNM && op != OP_LEN) ? luaK_exp2RK(fs, e2) : 0; + int o1 = luaK_exp2RK(fs, e1); + if (o1 > o2) { + freeexp(fs, e1); + freeexp(fs, e2); + } + else { + freeexp(fs, e2); + freeexp(fs, e1); + } + e1->u.s.info = luaK_codeABC(fs, op, 0, o1, o2); + e1->k = VRELOCABLE; + } +} + + +static void codecomp (FuncState *fs, OpCode op, int cond, expdesc *e1, + expdesc *e2) { + int o1 = luaK_exp2RK(fs, e1); + int o2 = luaK_exp2RK(fs, e2); + freeexp(fs, e2); + freeexp(fs, e1); + if (cond == 0 && op != OP_EQ) { + int temp; /* exchange args to replace by `<' or `<=' */ + temp = o1; o1 = o2; o2 = temp; /* o1 <==> o2 */ + cond = 1; + } + e1->u.s.info = condjump(fs, op, cond, o1, o2); + e1->k = VJMP; +} + + +void luaK_prefix (FuncState *fs, UnOpr op, expdesc *e) { + expdesc e2; + e2.t = e2.f = NO_JUMP; e2.k = VKNUM; e2.u.nval = 0; + switch (op) { + case OPR_MINUS: { + if (!isnumeral(e)) + luaK_exp2anyreg(fs, e); /* cannot operate on non-numeric constants */ + codearith(fs, OP_UNM, e, &e2); + break; + } + case OPR_NOT: codenot(fs, e); break; + case OPR_LEN: { + luaK_exp2anyreg(fs, e); /* cannot operate on constants */ + codearith(fs, OP_LEN, e, &e2); + break; + } + default: lua_assert(0); + } +} + + +void luaK_infix (FuncState *fs, BinOpr op, expdesc *v) { + switch (op) { + case OPR_AND: { + luaK_goiftrue(fs, v); + break; + } + case OPR_OR: { + luaK_goiffalse(fs, v); + break; + } + case OPR_CONCAT: { + luaK_exp2nextreg(fs, v); /* operand must be on the `stack' */ + break; + } + case OPR_ADD: case OPR_SUB: case OPR_MUL: case OPR_DIV: + case OPR_MOD: case OPR_POW: { + if (!isnumeral(v)) luaK_exp2RK(fs, v); + break; + } + default: { + luaK_exp2RK(fs, v); + break; + } + } +} + + +void luaK_posfix (FuncState *fs, BinOpr op, expdesc *e1, expdesc *e2) { + switch (op) { + case OPR_AND: { + lua_assert(e1->t == NO_JUMP); /* list must be closed */ + luaK_dischargevars(fs, e2); + luaK_concat(fs, &e2->f, e1->f); + *e1 = *e2; + break; + } + case OPR_OR: { + lua_assert(e1->f == NO_JUMP); /* list must be closed */ + luaK_dischargevars(fs, e2); + luaK_concat(fs, &e2->t, e1->t); + *e1 = *e2; + break; + } + case OPR_CONCAT: { + luaK_exp2val(fs, e2); + if (e2->k == VRELOCABLE && GET_OPCODE(getcode(fs, e2)) == OP_CONCAT) { + lua_assert(e1->u.s.info == GETARG_B(getcode(fs, e2))-1); + freeexp(fs, e1); + SETARG_B(getcode(fs, e2), e1->u.s.info); + e1->k = VRELOCABLE; e1->u.s.info = e2->u.s.info; + } + else { + luaK_exp2nextreg(fs, e2); /* operand must be on the 'stack' */ + codearith(fs, OP_CONCAT, e1, e2); + } + break; + } + case OPR_ADD: codearith(fs, OP_ADD, e1, e2); break; + case OPR_SUB: codearith(fs, OP_SUB, e1, e2); break; + case OPR_MUL: codearith(fs, OP_MUL, e1, e2); break; + case OPR_DIV: codearith(fs, OP_DIV, e1, e2); break; + case OPR_MOD: codearith(fs, OP_MOD, e1, e2); break; + case OPR_POW: codearith(fs, OP_POW, e1, e2); break; + case OPR_EQ: codecomp(fs, OP_EQ, 1, e1, e2); break; + case OPR_NE: codecomp(fs, OP_EQ, 0, e1, e2); break; + case OPR_LT: codecomp(fs, OP_LT, 1, e1, e2); break; + case OPR_LE: codecomp(fs, OP_LE, 1, e1, e2); break; + case OPR_GT: codecomp(fs, OP_LT, 0, e1, e2); break; + case OPR_GE: codecomp(fs, OP_LE, 0, e1, e2); break; + default: lua_assert(0); + } +} + + +void luaK_fixline (FuncState *fs, int line) { + fs->f->lineinfo[fs->pc - 1] = line; +} + + +static int luaK_code (FuncState *fs, Instruction i, int line) { + Proto *f = fs->f; + dischargejpc(fs); /* `pc' will change */ + /* put new instruction in code array */ + luaM_growvector(fs->L, f->code, fs->pc, f->sizecode, Instruction, + MAX_INT, "code size overflow"); + f->code[fs->pc] = i; + /* save corresponding line information */ + luaM_growvector(fs->L, f->lineinfo, fs->pc, f->sizelineinfo, int, + MAX_INT, "code size overflow"); + f->lineinfo[fs->pc] = line; + return fs->pc++; +} + + +int luaK_codeABC (FuncState *fs, OpCode o, int a, int b, int c) { + lua_assert(getOpMode(o) == iABC); + lua_assert(getBMode(o) != OpArgN || b == 0); + lua_assert(getCMode(o) != OpArgN || c == 0); + return luaK_code(fs, CREATE_ABC(o, a, b, c), fs->ls->lastline); +} + + +int luaK_codeABx (FuncState *fs, OpCode o, int a, unsigned int bc) { + lua_assert(getOpMode(o) == iABx || getOpMode(o) == iAsBx); + lua_assert(getCMode(o) == OpArgN); + return luaK_code(fs, CREATE_ABx(o, a, bc), fs->ls->lastline); +} + + +void luaK_setlist (FuncState *fs, int base, int nelems, int tostore) { + int c = (nelems - 1)/LFIELDS_PER_FLUSH + 1; + int b = (tostore == LUA_MULTRET) ? 0 : tostore; + lua_assert(tostore != 0); + if (c <= MAXARG_C) + luaK_codeABC(fs, OP_SETLIST, base, b, c); + else { + luaK_codeABC(fs, OP_SETLIST, base, b, 0); + luaK_code(fs, cast(Instruction, c), fs->ls->lastline); + } + fs->freereg = base + 1; /* free registers with list values */ +} + diff --git a/lua-5.1.4/src/lcode.h b/lua-5.1.4/src/lcode.h new file mode 100644 index 0000000..b941c60 --- /dev/null +++ b/lua-5.1.4/src/lcode.h @@ -0,0 +1,76 @@ +/* +** $Id: lcode.h,v 1.48.1.1 2007/12/27 13:02:25 roberto Exp $ +** Code generator for Lua +** See Copyright Notice in lua.h +*/ + +#ifndef lcode_h +#define lcode_h + +#include "llex.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" + + +/* +** Marks the end of a patch list. It is an invalid value both as an absolute +** address, and as a list link (would link an element to itself). +*/ +#define NO_JUMP (-1) + + +/* +** grep "ORDER OPR" if you change these enums +*/ +typedef enum BinOpr { + OPR_ADD, OPR_SUB, OPR_MUL, OPR_DIV, OPR_MOD, OPR_POW, + OPR_CONCAT, + OPR_NE, OPR_EQ, + OPR_LT, OPR_LE, OPR_GT, OPR_GE, + OPR_AND, OPR_OR, + OPR_NOBINOPR +} BinOpr; + + +typedef enum UnOpr { OPR_MINUS, OPR_NOT, OPR_LEN, OPR_NOUNOPR } UnOpr; + + +#define getcode(fs,e) ((fs)->f->code[(e)->u.s.info]) + +#define luaK_codeAsBx(fs,o,A,sBx) luaK_codeABx(fs,o,A,(sBx)+MAXARG_sBx) + +#define luaK_setmultret(fs,e) luaK_setreturns(fs, e, LUA_MULTRET) + +LUAI_FUNC int luaK_codeABx (FuncState *fs, OpCode o, int A, unsigned int Bx); +LUAI_FUNC int luaK_codeABC (FuncState *fs, OpCode o, int A, int B, int C); +LUAI_FUNC void luaK_fixline (FuncState *fs, int line); +LUAI_FUNC void luaK_nil (FuncState *fs, int from, int n); +LUAI_FUNC void luaK_reserveregs (FuncState *fs, int n); +LUAI_FUNC void luaK_checkstack (FuncState *fs, int n); +LUAI_FUNC int luaK_stringK (FuncState *fs, TString *s); +LUAI_FUNC int luaK_numberK (FuncState *fs, lua_Number r); +LUAI_FUNC void luaK_dischargevars (FuncState *fs, expdesc *e); +LUAI_FUNC int luaK_exp2anyreg (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_exp2nextreg (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_exp2val (FuncState *fs, expdesc *e); +LUAI_FUNC int luaK_exp2RK (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_self (FuncState *fs, expdesc *e, expdesc *key); +LUAI_FUNC void luaK_indexed (FuncState *fs, expdesc *t, expdesc *k); +LUAI_FUNC void luaK_goiftrue (FuncState *fs, expdesc *e); +LUAI_FUNC void luaK_storevar (FuncState *fs, expdesc *var, expdesc *e); +LUAI_FUNC void luaK_setreturns (FuncState *fs, expdesc *e, int nresults); +LUAI_FUNC void luaK_setoneret (FuncState *fs, expdesc *e); +LUAI_FUNC int luaK_jump (FuncState *fs); +LUAI_FUNC void luaK_ret (FuncState *fs, int first, int nret); +LUAI_FUNC void luaK_patchlist (FuncState *fs, int list, int target); +LUAI_FUNC void luaK_patchtohere (FuncState *fs, int list); +LUAI_FUNC void luaK_concat (FuncState *fs, int *l1, int l2); +LUAI_FUNC int luaK_getlabel (FuncState *fs); +LUAI_FUNC void luaK_prefix (FuncState *fs, UnOpr op, expdesc *v); +LUAI_FUNC void luaK_infix (FuncState *fs, BinOpr op, expdesc *v); +LUAI_FUNC void luaK_posfix (FuncState *fs, BinOpr op, expdesc *v1, expdesc *v2); +LUAI_FUNC void luaK_setlist (FuncState *fs, int base, int nelems, int tostore); + + +#endif diff --git a/lua-5.1.4/src/ldblib.c b/lua-5.1.4/src/ldblib.c new file mode 100644 index 0000000..67de122 --- /dev/null +++ b/lua-5.1.4/src/ldblib.c @@ -0,0 +1,397 @@ +/* +** $Id: ldblib.c,v 1.104.1.3 2008/01/21 13:11:21 roberto Exp $ +** Interface from Lua to its debug API +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define ldblib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + +static int db_getregistry (lua_State *L) { + lua_pushvalue(L, LUA_REGISTRYINDEX); + return 1; +} + + +static int db_getmetatable (lua_State *L) { + luaL_checkany(L, 1); + if (!lua_getmetatable(L, 1)) { + lua_pushnil(L); /* no metatable */ + } + return 1; +} + + +static int db_setmetatable (lua_State *L) { + int t = lua_type(L, 2); + luaL_argcheck(L, t == LUA_TNIL || t == LUA_TTABLE, 2, + "nil or table expected"); + lua_settop(L, 2); + lua_pushboolean(L, lua_setmetatable(L, 1)); + return 1; +} + + +static int db_getfenv (lua_State *L) { + lua_getfenv(L, 1); + return 1; +} + + +static int db_setfenv (lua_State *L) { + luaL_checktype(L, 2, LUA_TTABLE); + lua_settop(L, 2); + if (lua_setfenv(L, 1) == 0) + luaL_error(L, LUA_QL("setfenv") + " cannot change environment of given object"); + return 1; +} + + +static void settabss (lua_State *L, const char *i, const char *v) { + lua_pushstring(L, v); + lua_setfield(L, -2, i); +} + + +static void settabsi (lua_State *L, const char *i, int v) { + lua_pushinteger(L, v); + lua_setfield(L, -2, i); +} + + +static lua_State *getthread (lua_State *L, int *arg) { + if (lua_isthread(L, 1)) { + *arg = 1; + return lua_tothread(L, 1); + } + else { + *arg = 0; + return L; + } +} + + +static void treatstackoption (lua_State *L, lua_State *L1, const char *fname) { + if (L == L1) { + lua_pushvalue(L, -2); + lua_remove(L, -3); + } + else + lua_xmove(L1, L, 1); + lua_setfield(L, -2, fname); +} + + +static int db_getinfo (lua_State *L) { + lua_Debug ar; + int arg; + lua_State *L1 = getthread(L, &arg); + const char *options = luaL_optstring(L, arg+2, "flnSu"); + if (lua_isnumber(L, arg+1)) { + if (!lua_getstack(L1, (int)lua_tointeger(L, arg+1), &ar)) { + lua_pushnil(L); /* level out of range */ + return 1; + } + } + else if (lua_isfunction(L, arg+1)) { + lua_pushfstring(L, ">%s", options); + options = lua_tostring(L, -1); + lua_pushvalue(L, arg+1); + lua_xmove(L, L1, 1); + } + else + return luaL_argerror(L, arg+1, "function or level expected"); + if (!lua_getinfo(L1, options, &ar)) + return luaL_argerror(L, arg+2, "invalid option"); + lua_createtable(L, 0, 2); + if (strchr(options, 'S')) { + settabss(L, "source", ar.source); + settabss(L, "short_src", ar.short_src); + settabsi(L, "linedefined", ar.linedefined); + settabsi(L, "lastlinedefined", ar.lastlinedefined); + settabss(L, "what", ar.what); + } + if (strchr(options, 'l')) + settabsi(L, "currentline", ar.currentline); + if (strchr(options, 'u')) + settabsi(L, "nups", ar.nups); + if (strchr(options, 'n')) { + settabss(L, "name", ar.name); + settabss(L, "namewhat", ar.namewhat); + } + if (strchr(options, 'L')) + treatstackoption(L, L1, "activelines"); + if (strchr(options, 'f')) + treatstackoption(L, L1, "func"); + return 1; /* return table */ +} + + +static int db_getlocal (lua_State *L) { + int arg; + lua_State *L1 = getthread(L, &arg); + lua_Debug ar; + const char *name; + if (!lua_getstack(L1, luaL_checkint(L, arg+1), &ar)) /* out of range? */ + return luaL_argerror(L, arg+1, "level out of range"); + name = lua_getlocal(L1, &ar, luaL_checkint(L, arg+2)); + if (name) { + lua_xmove(L1, L, 1); + lua_pushstring(L, name); + lua_pushvalue(L, -2); + return 2; + } + else { + lua_pushnil(L); + return 1; + } +} + + +static int db_setlocal (lua_State *L) { + int arg; + lua_State *L1 = getthread(L, &arg); + lua_Debug ar; + if (!lua_getstack(L1, luaL_checkint(L, arg+1), &ar)) /* out of range? */ + return luaL_argerror(L, arg+1, "level out of range"); + luaL_checkany(L, arg+3); + lua_settop(L, arg+3); + lua_xmove(L, L1, 1); + lua_pushstring(L, lua_setlocal(L1, &ar, luaL_checkint(L, arg+2))); + return 1; +} + + +static int auxupvalue (lua_State *L, int get) { + const char *name; + int n = luaL_checkint(L, 2); + luaL_checktype(L, 1, LUA_TFUNCTION); + if (lua_iscfunction(L, 1)) return 0; /* cannot touch C upvalues from Lua */ + name = get ? lua_getupvalue(L, 1, n) : lua_setupvalue(L, 1, n); + if (name == NULL) return 0; + lua_pushstring(L, name); + lua_insert(L, -(get+1)); + return get + 1; +} + + +static int db_getupvalue (lua_State *L) { + return auxupvalue(L, 1); +} + + +static int db_setupvalue (lua_State *L) { + luaL_checkany(L, 3); + return auxupvalue(L, 0); +} + + + +static const char KEY_HOOK = 'h'; + + +static void hookf (lua_State *L, lua_Debug *ar) { + static const char *const hooknames[] = + {"call", "return", "line", "count", "tail return"}; + lua_pushlightuserdata(L, (void *)&KEY_HOOK); + lua_rawget(L, LUA_REGISTRYINDEX); + lua_pushlightuserdata(L, L); + lua_rawget(L, -2); + if (lua_isfunction(L, -1)) { + lua_pushstring(L, hooknames[(int)ar->event]); + if (ar->currentline >= 0) + lua_pushinteger(L, ar->currentline); + else lua_pushnil(L); + lua_assert(lua_getinfo(L, "lS", ar)); + lua_call(L, 2, 0); + } +} + + +static int makemask (const char *smask, int count) { + int mask = 0; + if (strchr(smask, 'c')) mask |= LUA_MASKCALL; + if (strchr(smask, 'r')) mask |= LUA_MASKRET; + if (strchr(smask, 'l')) mask |= LUA_MASKLINE; + if (count > 0) mask |= LUA_MASKCOUNT; + return mask; +} + + +static char *unmakemask (int mask, char *smask) { + int i = 0; + if (mask & LUA_MASKCALL) smask[i++] = 'c'; + if (mask & LUA_MASKRET) smask[i++] = 'r'; + if (mask & LUA_MASKLINE) smask[i++] = 'l'; + smask[i] = '\0'; + return smask; +} + + +static void gethooktable (lua_State *L) { + lua_pushlightuserdata(L, (void *)&KEY_HOOK); + lua_rawget(L, LUA_REGISTRYINDEX); + if (!lua_istable(L, -1)) { + lua_pop(L, 1); + lua_createtable(L, 0, 1); + lua_pushlightuserdata(L, (void *)&KEY_HOOK); + lua_pushvalue(L, -2); + lua_rawset(L, LUA_REGISTRYINDEX); + } +} + + +static int db_sethook (lua_State *L) { + int arg, mask, count; + lua_Hook func; + lua_State *L1 = getthread(L, &arg); + if (lua_isnoneornil(L, arg+1)) { + lua_settop(L, arg+1); + func = NULL; mask = 0; count = 0; /* turn off hooks */ + } + else { + const char *smask = luaL_checkstring(L, arg+2); + luaL_checktype(L, arg+1, LUA_TFUNCTION); + count = luaL_optint(L, arg+3, 0); + func = hookf; mask = makemask(smask, count); + } + gethooktable(L); + lua_pushlightuserdata(L, L1); + lua_pushvalue(L, arg+1); + lua_rawset(L, -3); /* set new hook */ + lua_pop(L, 1); /* remove hook table */ + lua_sethook(L1, func, mask, count); /* set hooks */ + return 0; +} + + +static int db_gethook (lua_State *L) { + int arg; + lua_State *L1 = getthread(L, &arg); + char buff[5]; + int mask = lua_gethookmask(L1); + lua_Hook hook = lua_gethook(L1); + if (hook != NULL && hook != hookf) /* external hook? */ + lua_pushliteral(L, "external hook"); + else { + gethooktable(L); + lua_pushlightuserdata(L, L1); + lua_rawget(L, -2); /* get hook */ + lua_remove(L, -2); /* remove hook table */ + } + lua_pushstring(L, unmakemask(mask, buff)); + lua_pushinteger(L, lua_gethookcount(L1)); + return 3; +} + + +static int db_debug (lua_State *L) { + for (;;) { + char buffer[250]; + fputs("lua_debug> ", stderr); + if (fgets(buffer, sizeof(buffer), stdin) == 0 || + strcmp(buffer, "cont\n") == 0) + return 0; + if (luaL_loadbuffer(L, buffer, strlen(buffer), "=(debug command)") || + lua_pcall(L, 0, 0, 0)) { + fputs(lua_tostring(L, -1), stderr); + fputs("\n", stderr); + } + lua_settop(L, 0); /* remove eventual returns */ + } +} + + +#define LEVELS1 12 /* size of the first part of the stack */ +#define LEVELS2 10 /* size of the second part of the stack */ + +static int db_errorfb (lua_State *L) { + int level; + int firstpart = 1; /* still before eventual `...' */ + int arg; + lua_State *L1 = getthread(L, &arg); + lua_Debug ar; + if (lua_isnumber(L, arg+2)) { + level = (int)lua_tointeger(L, arg+2); + lua_pop(L, 1); + } + else + level = (L == L1) ? 1 : 0; /* level 0 may be this own function */ + if (lua_gettop(L) == arg) + lua_pushliteral(L, ""); + else if (!lua_isstring(L, arg+1)) return 1; /* message is not a string */ + else lua_pushliteral(L, "\n"); + lua_pushliteral(L, "stack traceback:"); + while (lua_getstack(L1, level++, &ar)) { + if (level > LEVELS1 && firstpart) { + /* no more than `LEVELS2' more levels? */ + if (!lua_getstack(L1, level+LEVELS2, &ar)) + level--; /* keep going */ + else { + lua_pushliteral(L, "\n\t..."); /* too many levels */ + while (lua_getstack(L1, level+LEVELS2, &ar)) /* find last levels */ + level++; + } + firstpart = 0; + continue; + } + lua_pushliteral(L, "\n\t"); + lua_getinfo(L1, "Snl", &ar); + lua_pushfstring(L, "%s:", ar.short_src); + if (ar.currentline > 0) + lua_pushfstring(L, "%d:", ar.currentline); + if (*ar.namewhat != '\0') /* is there a name? */ + lua_pushfstring(L, " in function " LUA_QS, ar.name); + else { + if (*ar.what == 'm') /* main? */ + lua_pushfstring(L, " in main chunk"); + else if (*ar.what == 'C' || *ar.what == 't') + lua_pushliteral(L, " ?"); /* C function or tail call */ + else + lua_pushfstring(L, " in function <%s:%d>", + ar.short_src, ar.linedefined); + } + lua_concat(L, lua_gettop(L) - arg); + } + lua_concat(L, lua_gettop(L) - arg); + return 1; +} + + +static const luaL_Reg dblib[] = { + {"debug", db_debug}, + {"getfenv", db_getfenv}, + {"gethook", db_gethook}, + {"getinfo", db_getinfo}, + {"getlocal", db_getlocal}, + {"getregistry", db_getregistry}, + {"getmetatable", db_getmetatable}, + {"getupvalue", db_getupvalue}, + {"setfenv", db_setfenv}, + {"sethook", db_sethook}, + {"setlocal", db_setlocal}, + {"setmetatable", db_setmetatable}, + {"setupvalue", db_setupvalue}, + {"traceback", db_errorfb}, + {NULL, NULL} +}; + + +LUALIB_API int luaopen_debug (lua_State *L) { + luaL_register(L, LUA_DBLIBNAME, dblib); + return 1; +} + diff --git a/lua-5.1.4/src/ldebug.c b/lua-5.1.4/src/ldebug.c new file mode 100644 index 0000000..50ad3d3 --- /dev/null +++ b/lua-5.1.4/src/ldebug.c @@ -0,0 +1,638 @@ +/* +** $Id: ldebug.c,v 2.29.1.6 2008/05/08 16:56:26 roberto Exp $ +** Debug Interface +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + + +#define ldebug_c +#define LUA_CORE + +#include "lua.h" + +#include "lapi.h" +#include "lcode.h" +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lvm.h" + + + +static const char *getfuncname (lua_State *L, CallInfo *ci, const char **name); + + +static int currentpc (lua_State *L, CallInfo *ci) { + if (!isLua(ci)) return -1; /* function is not a Lua function? */ + if (ci == L->ci) + ci->savedpc = L->savedpc; + return pcRel(ci->savedpc, ci_func(ci)->l.p); +} + + +static int currentline (lua_State *L, CallInfo *ci) { + int pc = currentpc(L, ci); + if (pc < 0) + return -1; /* only active lua functions have current-line information */ + else + return getline(ci_func(ci)->l.p, pc); +} + + +/* +** this function can be called asynchronous (e.g. during a signal) +*/ +LUA_API int lua_sethook (lua_State *L, lua_Hook func, int mask, int count) { + if (func == NULL || mask == 0) { /* turn off hooks? */ + mask = 0; + func = NULL; + } + L->hook = func; + L->basehookcount = count; + resethookcount(L); + L->hookmask = cast_byte(mask); + return 1; +} + + +LUA_API lua_Hook lua_gethook (lua_State *L) { + return L->hook; +} + + +LUA_API int lua_gethookmask (lua_State *L) { + return L->hookmask; +} + + +LUA_API int lua_gethookcount (lua_State *L) { + return L->basehookcount; +} + + +LUA_API int lua_getstack (lua_State *L, int level, lua_Debug *ar) { + int status; + CallInfo *ci; + lua_lock(L); + for (ci = L->ci; level > 0 && ci > L->base_ci; ci--) { + level--; + if (f_isLua(ci)) /* Lua function? */ + level -= ci->tailcalls; /* skip lost tail calls */ + } + if (level == 0 && ci > L->base_ci) { /* level found? */ + status = 1; + ar->i_ci = cast_int(ci - L->base_ci); + } + else if (level < 0) { /* level is of a lost tail call? */ + status = 1; + ar->i_ci = 0; + } + else status = 0; /* no such level */ + lua_unlock(L); + return status; +} + + +static Proto *getluaproto (CallInfo *ci) { + return (isLua(ci) ? ci_func(ci)->l.p : NULL); +} + + +static const char *findlocal (lua_State *L, CallInfo *ci, int n) { + const char *name; + Proto *fp = getluaproto(ci); + if (fp && (name = luaF_getlocalname(fp, n, currentpc(L, ci))) != NULL) + return name; /* is a local variable in a Lua function */ + else { + StkId limit = (ci == L->ci) ? L->top : (ci+1)->func; + if (limit - ci->base >= n && n > 0) /* is 'n' inside 'ci' stack? */ + return "(*temporary)"; + else + return NULL; + } +} + + +LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n) { + CallInfo *ci = L->base_ci + ar->i_ci; + const char *name = findlocal(L, ci, n); + lua_lock(L); + if (name) + luaA_pushobject(L, ci->base + (n - 1)); + lua_unlock(L); + return name; +} + + +LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n) { + CallInfo *ci = L->base_ci + ar->i_ci; + const char *name = findlocal(L, ci, n); + lua_lock(L); + if (name) + setobjs2s(L, ci->base + (n - 1), L->top - 1); + L->top--; /* pop value */ + lua_unlock(L); + return name; +} + + +static void funcinfo (lua_Debug *ar, Closure *cl) { + if (cl->c.isC) { + ar->source = "=[C]"; + ar->linedefined = -1; + ar->lastlinedefined = -1; + ar->what = "C"; + } + else { + ar->source = getstr(cl->l.p->source); + ar->linedefined = cl->l.p->linedefined; + ar->lastlinedefined = cl->l.p->lastlinedefined; + ar->what = (ar->linedefined == 0) ? "main" : "Lua"; + } + luaO_chunkid(ar->short_src, ar->source, LUA_IDSIZE); +} + + +static void info_tailcall (lua_Debug *ar) { + ar->name = ar->namewhat = ""; + ar->what = "tail"; + ar->lastlinedefined = ar->linedefined = ar->currentline = -1; + ar->source = "=(tail call)"; + luaO_chunkid(ar->short_src, ar->source, LUA_IDSIZE); + ar->nups = 0; +} + + +static void collectvalidlines (lua_State *L, Closure *f) { + if (f == NULL || f->c.isC) { + setnilvalue(L->top); + } + else { + Table *t = luaH_new(L, 0, 0); + int *lineinfo = f->l.p->lineinfo; + int i; + for (i=0; il.p->sizelineinfo; i++) + setbvalue(luaH_setnum(L, t, lineinfo[i]), 1); + sethvalue(L, L->top, t); + } + incr_top(L); +} + + +static int auxgetinfo (lua_State *L, const char *what, lua_Debug *ar, + Closure *f, CallInfo *ci) { + int status = 1; + if (f == NULL) { + info_tailcall(ar); + return status; + } + for (; *what; what++) { + switch (*what) { + case 'S': { + funcinfo(ar, f); + break; + } + case 'l': { + ar->currentline = (ci) ? currentline(L, ci) : -1; + break; + } + case 'u': { + ar->nups = f->c.nupvalues; + break; + } + case 'n': { + ar->namewhat = (ci) ? getfuncname(L, ci, &ar->name) : NULL; + if (ar->namewhat == NULL) { + ar->namewhat = ""; /* not found */ + ar->name = NULL; + } + break; + } + case 'L': + case 'f': /* handled by lua_getinfo */ + break; + default: status = 0; /* invalid option */ + } + } + return status; +} + + +LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar) { + int status; + Closure *f = NULL; + CallInfo *ci = NULL; + lua_lock(L); + if (*what == '>') { + StkId func = L->top - 1; + luai_apicheck(L, ttisfunction(func)); + what++; /* skip the '>' */ + f = clvalue(func); + L->top--; /* pop function */ + } + else if (ar->i_ci != 0) { /* no tail call? */ + ci = L->base_ci + ar->i_ci; + lua_assert(ttisfunction(ci->func)); + f = clvalue(ci->func); + } + status = auxgetinfo(L, what, ar, f, ci); + if (strchr(what, 'f')) { + if (f == NULL) setnilvalue(L->top); + else setclvalue(L, L->top, f); + incr_top(L); + } + if (strchr(what, 'L')) + collectvalidlines(L, f); + lua_unlock(L); + return status; +} + + +/* +** {====================================================== +** Symbolic Execution and code checker +** ======================================================= +*/ + +#define check(x) if (!(x)) return 0; + +#define checkjump(pt,pc) check(0 <= pc && pc < pt->sizecode) + +#define checkreg(pt,reg) check((reg) < (pt)->maxstacksize) + + + +static int precheck (const Proto *pt) { + check(pt->maxstacksize <= MAXSTACK); + check(pt->numparams+(pt->is_vararg & VARARG_HASARG) <= pt->maxstacksize); + check(!(pt->is_vararg & VARARG_NEEDSARG) || + (pt->is_vararg & VARARG_HASARG)); + check(pt->sizeupvalues <= pt->nups); + check(pt->sizelineinfo == pt->sizecode || pt->sizelineinfo == 0); + check(pt->sizecode > 0 && GET_OPCODE(pt->code[pt->sizecode-1]) == OP_RETURN); + return 1; +} + + +#define checkopenop(pt,pc) luaG_checkopenop((pt)->code[(pc)+1]) + +int luaG_checkopenop (Instruction i) { + switch (GET_OPCODE(i)) { + case OP_CALL: + case OP_TAILCALL: + case OP_RETURN: + case OP_SETLIST: { + check(GETARG_B(i) == 0); + return 1; + } + default: return 0; /* invalid instruction after an open call */ + } +} + + +static int checkArgMode (const Proto *pt, int r, enum OpArgMask mode) { + switch (mode) { + case OpArgN: check(r == 0); break; + case OpArgU: break; + case OpArgR: checkreg(pt, r); break; + case OpArgK: + check(ISK(r) ? INDEXK(r) < pt->sizek : r < pt->maxstacksize); + break; + } + return 1; +} + + +static Instruction symbexec (const Proto *pt, int lastpc, int reg) { + int pc; + int last; /* stores position of last instruction that changed `reg' */ + last = pt->sizecode-1; /* points to final return (a `neutral' instruction) */ + check(precheck(pt)); + for (pc = 0; pc < lastpc; pc++) { + Instruction i = pt->code[pc]; + OpCode op = GET_OPCODE(i); + int a = GETARG_A(i); + int b = 0; + int c = 0; + check(op < NUM_OPCODES); + checkreg(pt, a); + switch (getOpMode(op)) { + case iABC: { + b = GETARG_B(i); + c = GETARG_C(i); + check(checkArgMode(pt, b, getBMode(op))); + check(checkArgMode(pt, c, getCMode(op))); + break; + } + case iABx: { + b = GETARG_Bx(i); + if (getBMode(op) == OpArgK) check(b < pt->sizek); + break; + } + case iAsBx: { + b = GETARG_sBx(i); + if (getBMode(op) == OpArgR) { + int dest = pc+1+b; + check(0 <= dest && dest < pt->sizecode); + if (dest > 0) { + int j; + /* check that it does not jump to a setlist count; this + is tricky, because the count from a previous setlist may + have the same value of an invalid setlist; so, we must + go all the way back to the first of them (if any) */ + for (j = 0; j < dest; j++) { + Instruction d = pt->code[dest-1-j]; + if (!(GET_OPCODE(d) == OP_SETLIST && GETARG_C(d) == 0)) break; + } + /* if 'j' is even, previous value is not a setlist (even if + it looks like one) */ + check((j&1) == 0); + } + } + break; + } + } + if (testAMode(op)) { + if (a == reg) last = pc; /* change register `a' */ + } + if (testTMode(op)) { + check(pc+2 < pt->sizecode); /* check skip */ + check(GET_OPCODE(pt->code[pc+1]) == OP_JMP); + } + switch (op) { + case OP_LOADBOOL: { + if (c == 1) { /* does it jump? */ + check(pc+2 < pt->sizecode); /* check its jump */ + check(GET_OPCODE(pt->code[pc+1]) != OP_SETLIST || + GETARG_C(pt->code[pc+1]) != 0); + } + break; + } + case OP_LOADNIL: { + if (a <= reg && reg <= b) + last = pc; /* set registers from `a' to `b' */ + break; + } + case OP_GETUPVAL: + case OP_SETUPVAL: { + check(b < pt->nups); + break; + } + case OP_GETGLOBAL: + case OP_SETGLOBAL: { + check(ttisstring(&pt->k[b])); + break; + } + case OP_SELF: { + checkreg(pt, a+1); + if (reg == a+1) last = pc; + break; + } + case OP_CONCAT: { + check(b < c); /* at least two operands */ + break; + } + case OP_TFORLOOP: { + check(c >= 1); /* at least one result (control variable) */ + checkreg(pt, a+2+c); /* space for results */ + if (reg >= a+2) last = pc; /* affect all regs above its base */ + break; + } + case OP_FORLOOP: + case OP_FORPREP: + checkreg(pt, a+3); + /* go through */ + case OP_JMP: { + int dest = pc+1+b; + /* not full check and jump is forward and do not skip `lastpc'? */ + if (reg != NO_REG && pc < dest && dest <= lastpc) + pc += b; /* do the jump */ + break; + } + case OP_CALL: + case OP_TAILCALL: { + if (b != 0) { + checkreg(pt, a+b-1); + } + c--; /* c = num. returns */ + if (c == LUA_MULTRET) { + check(checkopenop(pt, pc)); + } + else if (c != 0) + checkreg(pt, a+c-1); + if (reg >= a) last = pc; /* affect all registers above base */ + break; + } + case OP_RETURN: { + b--; /* b = num. returns */ + if (b > 0) checkreg(pt, a+b-1); + break; + } + case OP_SETLIST: { + if (b > 0) checkreg(pt, a + b); + if (c == 0) { + pc++; + check(pc < pt->sizecode - 1); + } + break; + } + case OP_CLOSURE: { + int nup, j; + check(b < pt->sizep); + nup = pt->p[b]->nups; + check(pc + nup < pt->sizecode); + for (j = 1; j <= nup; j++) { + OpCode op1 = GET_OPCODE(pt->code[pc + j]); + check(op1 == OP_GETUPVAL || op1 == OP_MOVE); + } + if (reg != NO_REG) /* tracing? */ + pc += nup; /* do not 'execute' these pseudo-instructions */ + break; + } + case OP_VARARG: { + check((pt->is_vararg & VARARG_ISVARARG) && + !(pt->is_vararg & VARARG_NEEDSARG)); + b--; + if (b == LUA_MULTRET) check(checkopenop(pt, pc)); + checkreg(pt, a+b-1); + break; + } + default: break; + } + } + return pt->code[last]; +} + +#undef check +#undef checkjump +#undef checkreg + +/* }====================================================== */ + + +int luaG_checkcode (const Proto *pt) { + return (symbexec(pt, pt->sizecode, NO_REG) != 0); +} + + +static const char *kname (Proto *p, int c) { + if (ISK(c) && ttisstring(&p->k[INDEXK(c)])) + return svalue(&p->k[INDEXK(c)]); + else + return "?"; +} + + +static const char *getobjname (lua_State *L, CallInfo *ci, int stackpos, + const char **name) { + if (isLua(ci)) { /* a Lua function? */ + Proto *p = ci_func(ci)->l.p; + int pc = currentpc(L, ci); + Instruction i; + *name = luaF_getlocalname(p, stackpos+1, pc); + if (*name) /* is a local? */ + return "local"; + i = symbexec(p, pc, stackpos); /* try symbolic execution */ + lua_assert(pc != -1); + switch (GET_OPCODE(i)) { + case OP_GETGLOBAL: { + int g = GETARG_Bx(i); /* global index */ + lua_assert(ttisstring(&p->k[g])); + *name = svalue(&p->k[g]); + return "global"; + } + case OP_MOVE: { + int a = GETARG_A(i); + int b = GETARG_B(i); /* move from `b' to `a' */ + if (b < a) + return getobjname(L, ci, b, name); /* get name for `b' */ + break; + } + case OP_GETTABLE: { + int k = GETARG_C(i); /* key index */ + *name = kname(p, k); + return "field"; + } + case OP_GETUPVAL: { + int u = GETARG_B(i); /* upvalue index */ + *name = p->upvalues ? getstr(p->upvalues[u]) : "?"; + return "upvalue"; + } + case OP_SELF: { + int k = GETARG_C(i); /* key index */ + *name = kname(p, k); + return "method"; + } + default: break; + } + } + return NULL; /* no useful name found */ +} + + +static const char *getfuncname (lua_State *L, CallInfo *ci, const char **name) { + Instruction i; + if ((isLua(ci) && ci->tailcalls > 0) || !isLua(ci - 1)) + return NULL; /* calling function is not Lua (or is unknown) */ + ci--; /* calling function */ + i = ci_func(ci)->l.p->code[currentpc(L, ci)]; + if (GET_OPCODE(i) == OP_CALL || GET_OPCODE(i) == OP_TAILCALL || + GET_OPCODE(i) == OP_TFORLOOP) + return getobjname(L, ci, GETARG_A(i), name); + else + return NULL; /* no useful name can be found */ +} + + +/* only ANSI way to check whether a pointer points to an array */ +static int isinstack (CallInfo *ci, const TValue *o) { + StkId p; + for (p = ci->base; p < ci->top; p++) + if (o == p) return 1; + return 0; +} + + +void luaG_typeerror (lua_State *L, const TValue *o, const char *op) { + const char *name = NULL; + const char *t = luaT_typenames[ttype(o)]; + const char *kind = (isinstack(L->ci, o)) ? + getobjname(L, L->ci, cast_int(o - L->base), &name) : + NULL; + if (kind) + luaG_runerror(L, "attempt to %s %s " LUA_QS " (a %s value)", + op, kind, name, t); + else + luaG_runerror(L, "attempt to %s a %s value", op, t); +} + + +void luaG_concaterror (lua_State *L, StkId p1, StkId p2) { + if (ttisstring(p1) || ttisnumber(p1)) p1 = p2; + lua_assert(!ttisstring(p1) && !ttisnumber(p1)); + luaG_typeerror(L, p1, "concatenate"); +} + + +void luaG_aritherror (lua_State *L, const TValue *p1, const TValue *p2) { + TValue temp; + if (luaV_tonumber(p1, &temp) == NULL) + p2 = p1; /* first operand is wrong */ + luaG_typeerror(L, p2, "perform arithmetic on"); +} + + +int luaG_ordererror (lua_State *L, const TValue *p1, const TValue *p2) { + const char *t1 = luaT_typenames[ttype(p1)]; + const char *t2 = luaT_typenames[ttype(p2)]; + if (t1[2] == t2[2]) + luaG_runerror(L, "attempt to compare two %s values", t1); + else + luaG_runerror(L, "attempt to compare %s with %s", t1, t2); + return 0; +} + + +static void addinfo (lua_State *L, const char *msg) { + CallInfo *ci = L->ci; + if (isLua(ci)) { /* is Lua code? */ + char buff[LUA_IDSIZE]; /* add file:line information */ + int line = currentline(L, ci); + luaO_chunkid(buff, getstr(getluaproto(ci)->source), LUA_IDSIZE); + luaO_pushfstring(L, "%s:%d: %s", buff, line, msg); + } +} + + +void luaG_errormsg (lua_State *L) { + if (L->errfunc != 0) { /* is there an error handling function? */ + StkId errfunc = restorestack(L, L->errfunc); + if (!ttisfunction(errfunc)) luaD_throw(L, LUA_ERRERR); + setobjs2s(L, L->top, L->top - 1); /* move argument */ + setobjs2s(L, L->top - 1, errfunc); /* push function */ + incr_top(L); + luaD_call(L, L->top - 2, 1); /* call it */ + } + luaD_throw(L, LUA_ERRRUN); +} + + +void luaG_runerror (lua_State *L, const char *fmt, ...) { + va_list argp; + va_start(argp, fmt); + addinfo(L, luaO_pushvfstring(L, fmt, argp)); + va_end(argp); + luaG_errormsg(L); +} + diff --git a/lua-5.1.4/src/ldebug.h b/lua-5.1.4/src/ldebug.h new file mode 100644 index 0000000..ba28a97 --- /dev/null +++ b/lua-5.1.4/src/ldebug.h @@ -0,0 +1,33 @@ +/* +** $Id: ldebug.h,v 2.3.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions from Debug Interface module +** See Copyright Notice in lua.h +*/ + +#ifndef ldebug_h +#define ldebug_h + + +#include "lstate.h" + + +#define pcRel(pc, p) (cast(int, (pc) - (p)->code) - 1) + +#define getline(f,pc) (((f)->lineinfo) ? (f)->lineinfo[pc] : 0) + +#define resethookcount(L) (L->hookcount = L->basehookcount) + + +LUAI_FUNC void luaG_typeerror (lua_State *L, const TValue *o, + const char *opname); +LUAI_FUNC void luaG_concaterror (lua_State *L, StkId p1, StkId p2); +LUAI_FUNC void luaG_aritherror (lua_State *L, const TValue *p1, + const TValue *p2); +LUAI_FUNC int luaG_ordererror (lua_State *L, const TValue *p1, + const TValue *p2); +LUAI_FUNC void luaG_runerror (lua_State *L, const char *fmt, ...); +LUAI_FUNC void luaG_errormsg (lua_State *L); +LUAI_FUNC int luaG_checkcode (const Proto *pt); +LUAI_FUNC int luaG_checkopenop (Instruction i); + +#endif diff --git a/lua-5.1.4/src/ldo.c b/lua-5.1.4/src/ldo.c new file mode 100644 index 0000000..8de05f7 --- /dev/null +++ b/lua-5.1.4/src/ldo.c @@ -0,0 +1,518 @@ +/* +** $Id: ldo.c,v 2.38.1.3 2008/01/18 22:31:22 roberto Exp $ +** Stack and Call structure of Lua +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define ldo_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lundump.h" +#include "lvm.h" +#include "lzio.h" + + + + +/* +** {====================================================== +** Error-recovery functions +** ======================================================= +*/ + + +/* chain list of long jump buffers */ +struct lua_longjmp { + struct lua_longjmp *previous; + luai_jmpbuf b; + volatile int status; /* error code */ +}; + + +void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop) { + switch (errcode) { + case LUA_ERRMEM: { + setsvalue2s(L, oldtop, luaS_newliteral(L, MEMERRMSG)); + break; + } + case LUA_ERRERR: { + setsvalue2s(L, oldtop, luaS_newliteral(L, "error in error handling")); + break; + } + case LUA_ERRSYNTAX: + case LUA_ERRRUN: { + setobjs2s(L, oldtop, L->top - 1); /* error message on current top */ + break; + } + } + L->top = oldtop + 1; +} + + +static void restore_stack_limit (lua_State *L) { + lua_assert(L->stack_last - L->stack == L->stacksize - EXTRA_STACK - 1); + if (L->size_ci > LUAI_MAXCALLS) { /* there was an overflow? */ + int inuse = cast_int(L->ci - L->base_ci); + if (inuse + 1 < LUAI_MAXCALLS) /* can `undo' overflow? */ + luaD_reallocCI(L, LUAI_MAXCALLS); + } +} + + +static void resetstack (lua_State *L, int status) { + L->ci = L->base_ci; + L->base = L->ci->base; + luaF_close(L, L->base); /* close eventual pending closures */ + luaD_seterrorobj(L, status, L->base); + L->nCcalls = L->baseCcalls; + L->allowhook = 1; + restore_stack_limit(L); + L->errfunc = 0; + L->errorJmp = NULL; +} + + +void luaD_throw (lua_State *L, int errcode) { + if (L->errorJmp) { + L->errorJmp->status = errcode; + LUAI_THROW(L, L->errorJmp); + } + else { + L->status = cast_byte(errcode); + if (G(L)->panic) { + resetstack(L, errcode); + lua_unlock(L); + G(L)->panic(L); + } + exit(EXIT_FAILURE); + } +} + + +int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud) { + struct lua_longjmp lj; + lj.status = 0; + lj.previous = L->errorJmp; /* chain new error handler */ + L->errorJmp = &lj; + LUAI_TRY(L, &lj, + (*f)(L, ud); + ); + L->errorJmp = lj.previous; /* restore old error handler */ + return lj.status; +} + +/* }====================================================== */ + + +static void correctstack (lua_State *L, TValue *oldstack) { + CallInfo *ci; + GCObject *up; + L->top = (L->top - oldstack) + L->stack; + for (up = L->openupval; up != NULL; up = up->gch.next) + gco2uv(up)->v = (gco2uv(up)->v - oldstack) + L->stack; + for (ci = L->base_ci; ci <= L->ci; ci++) { + ci->top = (ci->top - oldstack) + L->stack; + ci->base = (ci->base - oldstack) + L->stack; + ci->func = (ci->func - oldstack) + L->stack; + } + L->base = (L->base - oldstack) + L->stack; +} + + +void luaD_reallocstack (lua_State *L, int newsize) { + TValue *oldstack = L->stack; + int realsize = newsize + 1 + EXTRA_STACK; + lua_assert(L->stack_last - L->stack == L->stacksize - EXTRA_STACK - 1); + luaM_reallocvector(L, L->stack, L->stacksize, realsize, TValue); + L->stacksize = realsize; + L->stack_last = L->stack+newsize; + correctstack(L, oldstack); +} + + +void luaD_reallocCI (lua_State *L, int newsize) { + CallInfo *oldci = L->base_ci; + luaM_reallocvector(L, L->base_ci, L->size_ci, newsize, CallInfo); + L->size_ci = newsize; + L->ci = (L->ci - oldci) + L->base_ci; + L->end_ci = L->base_ci + L->size_ci - 1; +} + + +void luaD_growstack (lua_State *L, int n) { + if (n <= L->stacksize) /* double size is enough? */ + luaD_reallocstack(L, 2*L->stacksize); + else + luaD_reallocstack(L, L->stacksize + n); +} + + +static CallInfo *growCI (lua_State *L) { + if (L->size_ci > LUAI_MAXCALLS) /* overflow while handling overflow? */ + luaD_throw(L, LUA_ERRERR); + else { + luaD_reallocCI(L, 2*L->size_ci); + if (L->size_ci > LUAI_MAXCALLS) + luaG_runerror(L, "stack overflow"); + } + return ++L->ci; +} + + +void luaD_callhook (lua_State *L, int event, int line) { + lua_Hook hook = L->hook; + if (hook && L->allowhook) { + ptrdiff_t top = savestack(L, L->top); + ptrdiff_t ci_top = savestack(L, L->ci->top); + lua_Debug ar; + ar.event = event; + ar.currentline = line; + if (event == LUA_HOOKTAILRET) + ar.i_ci = 0; /* tail call; no debug information about it */ + else + ar.i_ci = cast_int(L->ci - L->base_ci); + luaD_checkstack(L, LUA_MINSTACK); /* ensure minimum stack size */ + L->ci->top = L->top + LUA_MINSTACK; + lua_assert(L->ci->top <= L->stack_last); + L->allowhook = 0; /* cannot call hooks inside a hook */ + lua_unlock(L); + (*hook)(L, &ar); + lua_lock(L); + lua_assert(!L->allowhook); + L->allowhook = 1; + L->ci->top = restorestack(L, ci_top); + L->top = restorestack(L, top); + } +} + + +static StkId adjust_varargs (lua_State *L, Proto *p, int actual) { + int i; + int nfixargs = p->numparams; + Table *htab = NULL; + StkId base, fixed; + for (; actual < nfixargs; ++actual) + setnilvalue(L->top++); +#if defined(LUA_COMPAT_VARARG) + if (p->is_vararg & VARARG_NEEDSARG) { /* compat. with old-style vararg? */ + int nvar = actual - nfixargs; /* number of extra arguments */ + lua_assert(p->is_vararg & VARARG_HASARG); + luaC_checkGC(L); + htab = luaH_new(L, nvar, 1); /* create `arg' table */ + for (i=0; itop - nvar + i); + /* store counter in field `n' */ + setnvalue(luaH_setstr(L, htab, luaS_newliteral(L, "n")), cast_num(nvar)); + } +#endif + /* move fixed parameters to final position */ + fixed = L->top - actual; /* first fixed argument */ + base = L->top; /* final position of first argument */ + for (i=0; itop++, fixed+i); + setnilvalue(fixed+i); + } + /* add `arg' parameter */ + if (htab) { + sethvalue(L, L->top++, htab); + lua_assert(iswhite(obj2gco(htab))); + } + return base; +} + + +static StkId tryfuncTM (lua_State *L, StkId func) { + const TValue *tm = luaT_gettmbyobj(L, func, TM_CALL); + StkId p; + ptrdiff_t funcr = savestack(L, func); + if (!ttisfunction(tm)) + luaG_typeerror(L, func, "call"); + /* Open a hole inside the stack at `func' */ + for (p = L->top; p > func; p--) setobjs2s(L, p, p-1); + incr_top(L); + func = restorestack(L, funcr); /* previous call may change stack */ + setobj2s(L, func, tm); /* tag method is the new function to be called */ + return func; +} + + + +#define inc_ci(L) \ + ((L->ci == L->end_ci) ? growCI(L) : \ + (condhardstacktests(luaD_reallocCI(L, L->size_ci)), ++L->ci)) + + +int luaD_precall (lua_State *L, StkId func, int nresults) { + LClosure *cl; + ptrdiff_t funcr; + if (!ttisfunction(func)) /* `func' is not a function? */ + func = tryfuncTM(L, func); /* check the `function' tag method */ + funcr = savestack(L, func); + cl = &clvalue(func)->l; + L->ci->savedpc = L->savedpc; + if (!cl->isC) { /* Lua function? prepare its call */ + CallInfo *ci; + StkId st, base; + Proto *p = cl->p; + luaD_checkstack(L, p->maxstacksize); + func = restorestack(L, funcr); + if (!p->is_vararg) { /* no varargs? */ + base = func + 1; + if (L->top > base + p->numparams) + L->top = base + p->numparams; + } + else { /* vararg function */ + int nargs = cast_int(L->top - func) - 1; + base = adjust_varargs(L, p, nargs); + func = restorestack(L, funcr); /* previous call may change the stack */ + } + ci = inc_ci(L); /* now `enter' new function */ + ci->func = func; + L->base = ci->base = base; + ci->top = L->base + p->maxstacksize; + lua_assert(ci->top <= L->stack_last); + L->savedpc = p->code; /* starting point */ + ci->tailcalls = 0; + ci->nresults = nresults; + for (st = L->top; st < ci->top; st++) + setnilvalue(st); + L->top = ci->top; + if (L->hookmask & LUA_MASKCALL) { + L->savedpc++; /* hooks assume 'pc' is already incremented */ + luaD_callhook(L, LUA_HOOKCALL, -1); + L->savedpc--; /* correct 'pc' */ + } + return PCRLUA; + } + else { /* if is a C function, call it */ + CallInfo *ci; + int n; + luaD_checkstack(L, LUA_MINSTACK); /* ensure minimum stack size */ + ci = inc_ci(L); /* now `enter' new function */ + ci->func = restorestack(L, funcr); + L->base = ci->base = ci->func + 1; + ci->top = L->top + LUA_MINSTACK; + lua_assert(ci->top <= L->stack_last); + ci->nresults = nresults; + if (L->hookmask & LUA_MASKCALL) + luaD_callhook(L, LUA_HOOKCALL, -1); + lua_unlock(L); + n = (*curr_func(L)->c.f)(L); /* do the actual call */ + lua_lock(L); + if (n < 0) /* yielding? */ + return PCRYIELD; + else { + luaD_poscall(L, L->top - n); + return PCRC; + } + } +} + + +static StkId callrethooks (lua_State *L, StkId firstResult) { + ptrdiff_t fr = savestack(L, firstResult); /* next call may change stack */ + luaD_callhook(L, LUA_HOOKRET, -1); + if (f_isLua(L->ci)) { /* Lua function? */ + while ((L->hookmask & LUA_MASKRET) && L->ci->tailcalls--) /* tail calls */ + luaD_callhook(L, LUA_HOOKTAILRET, -1); + } + return restorestack(L, fr); +} + + +int luaD_poscall (lua_State *L, StkId firstResult) { + StkId res; + int wanted, i; + CallInfo *ci; + if (L->hookmask & LUA_MASKRET) + firstResult = callrethooks(L, firstResult); + ci = L->ci--; + res = ci->func; /* res == final position of 1st result */ + wanted = ci->nresults; + L->base = (ci - 1)->base; /* restore base */ + L->savedpc = (ci - 1)->savedpc; /* restore savedpc */ + /* move results to correct place */ + for (i = wanted; i != 0 && firstResult < L->top; i--) + setobjs2s(L, res++, firstResult++); + while (i-- > 0) + setnilvalue(res++); + L->top = res; + return (wanted - LUA_MULTRET); /* 0 iff wanted == LUA_MULTRET */ +} + + +/* +** Call a function (C or Lua). The function to be called is at *func. +** The arguments are on the stack, right after the function. +** When returns, all the results are on the stack, starting at the original +** function position. +*/ +void luaD_call (lua_State *L, StkId func, int nResults) { + if (++L->nCcalls >= LUAI_MAXCCALLS) { + if (L->nCcalls == LUAI_MAXCCALLS) + luaG_runerror(L, "C stack overflow"); + else if (L->nCcalls >= (LUAI_MAXCCALLS + (LUAI_MAXCCALLS>>3))) + luaD_throw(L, LUA_ERRERR); /* error while handing stack error */ + } + if (luaD_precall(L, func, nResults) == PCRLUA) /* is a Lua function? */ + luaV_execute(L, 1); /* call it */ + L->nCcalls--; + luaC_checkGC(L); +} + + +static void resume (lua_State *L, void *ud) { + StkId firstArg = cast(StkId, ud); + CallInfo *ci = L->ci; + if (L->status == 0) { /* start coroutine? */ + lua_assert(ci == L->base_ci && firstArg > L->base); + if (luaD_precall(L, firstArg - 1, LUA_MULTRET) != PCRLUA) + return; + } + else { /* resuming from previous yield */ + lua_assert(L->status == LUA_YIELD); + L->status = 0; + if (!f_isLua(ci)) { /* `common' yield? */ + /* finish interrupted execution of `OP_CALL' */ + lua_assert(GET_OPCODE(*((ci-1)->savedpc - 1)) == OP_CALL || + GET_OPCODE(*((ci-1)->savedpc - 1)) == OP_TAILCALL); + if (luaD_poscall(L, firstArg)) /* complete it... */ + L->top = L->ci->top; /* and correct top if not multiple results */ + } + else /* yielded inside a hook: just continue its execution */ + L->base = L->ci->base; + } + luaV_execute(L, cast_int(L->ci - L->base_ci)); +} + + +static int resume_error (lua_State *L, const char *msg) { + L->top = L->ci->base; + setsvalue2s(L, L->top, luaS_new(L, msg)); + incr_top(L); + lua_unlock(L); + return LUA_ERRRUN; +} + + +LUA_API int lua_resume (lua_State *L, int nargs) { + int status; + lua_lock(L); + if (L->status != LUA_YIELD && (L->status != 0 || L->ci != L->base_ci)) + return resume_error(L, "cannot resume non-suspended coroutine"); + if (L->nCcalls >= LUAI_MAXCCALLS) + return resume_error(L, "C stack overflow"); + luai_userstateresume(L, nargs); + lua_assert(L->errfunc == 0); + L->baseCcalls = ++L->nCcalls; + status = luaD_rawrunprotected(L, resume, L->top - nargs); + if (status != 0) { /* error? */ + L->status = cast_byte(status); /* mark thread as `dead' */ + luaD_seterrorobj(L, status, L->top); + L->ci->top = L->top; + } + else { + lua_assert(L->nCcalls == L->baseCcalls); + status = L->status; + } + --L->nCcalls; + lua_unlock(L); + return status; +} + + +LUA_API int lua_yield (lua_State *L, int nresults) { + luai_userstateyield(L, nresults); + lua_lock(L); + if (L->nCcalls > L->baseCcalls) + luaG_runerror(L, "attempt to yield across metamethod/C-call boundary"); + L->base = L->top - nresults; /* protect stack slots below */ + L->status = LUA_YIELD; + lua_unlock(L); + return -1; +} + + +int luaD_pcall (lua_State *L, Pfunc func, void *u, + ptrdiff_t old_top, ptrdiff_t ef) { + int status; + unsigned short oldnCcalls = L->nCcalls; + ptrdiff_t old_ci = saveci(L, L->ci); + lu_byte old_allowhooks = L->allowhook; + ptrdiff_t old_errfunc = L->errfunc; + L->errfunc = ef; + status = luaD_rawrunprotected(L, func, u); + if (status != 0) { /* an error occurred? */ + StkId oldtop = restorestack(L, old_top); + luaF_close(L, oldtop); /* close eventual pending closures */ + luaD_seterrorobj(L, status, oldtop); + L->nCcalls = oldnCcalls; + L->ci = restoreci(L, old_ci); + L->base = L->ci->base; + L->savedpc = L->ci->savedpc; + L->allowhook = old_allowhooks; + restore_stack_limit(L); + } + L->errfunc = old_errfunc; + return status; +} + + + +/* +** Execute a protected parser. +*/ +struct SParser { /* data to `f_parser' */ + ZIO *z; + Mbuffer buff; /* buffer to be used by the scanner */ + const char *name; +}; + +static void f_parser (lua_State *L, void *ud) { + int i; + Proto *tf; + Closure *cl; + struct SParser *p = cast(struct SParser *, ud); + int c = luaZ_lookahead(p->z); + luaC_checkGC(L); + tf = ((c == LUA_SIGNATURE[0]) ? luaU_undump : luaY_parser)(L, p->z, + &p->buff, p->name); + cl = luaF_newLclosure(L, tf->nups, hvalue(gt(L))); + cl->l.p = tf; + for (i = 0; i < tf->nups; i++) /* initialize eventual upvalues */ + cl->l.upvals[i] = luaF_newupval(L); + setclvalue(L, L->top, cl); + incr_top(L); +} + + +int luaD_protectedparser (lua_State *L, ZIO *z, const char *name) { + struct SParser p; + int status; + p.z = z; p.name = name; + luaZ_initbuffer(L, &p.buff); + status = luaD_pcall(L, f_parser, &p, savestack(L, L->top), L->errfunc); + luaZ_freebuffer(L, &p.buff); + return status; +} + + diff --git a/lua-5.1.4/src/ldo.h b/lua-5.1.4/src/ldo.h new file mode 100644 index 0000000..98fddac --- /dev/null +++ b/lua-5.1.4/src/ldo.h @@ -0,0 +1,57 @@ +/* +** $Id: ldo.h,v 2.7.1.1 2007/12/27 13:02:25 roberto Exp $ +** Stack and Call structure of Lua +** See Copyright Notice in lua.h +*/ + +#ifndef ldo_h +#define ldo_h + + +#include "lobject.h" +#include "lstate.h" +#include "lzio.h" + + +#define luaD_checkstack(L,n) \ + if ((char *)L->stack_last - (char *)L->top <= (n)*(int)sizeof(TValue)) \ + luaD_growstack(L, n); \ + else condhardstacktests(luaD_reallocstack(L, L->stacksize - EXTRA_STACK - 1)); + + +#define incr_top(L) {luaD_checkstack(L,1); L->top++;} + +#define savestack(L,p) ((char *)(p) - (char *)L->stack) +#define restorestack(L,n) ((TValue *)((char *)L->stack + (n))) + +#define saveci(L,p) ((char *)(p) - (char *)L->base_ci) +#define restoreci(L,n) ((CallInfo *)((char *)L->base_ci + (n))) + + +/* results from luaD_precall */ +#define PCRLUA 0 /* initiated a call to a Lua function */ +#define PCRC 1 /* did a call to a C function */ +#define PCRYIELD 2 /* C funtion yielded */ + + +/* type of protected functions, to be ran by `runprotected' */ +typedef void (*Pfunc) (lua_State *L, void *ud); + +LUAI_FUNC int luaD_protectedparser (lua_State *L, ZIO *z, const char *name); +LUAI_FUNC void luaD_callhook (lua_State *L, int event, int line); +LUAI_FUNC int luaD_precall (lua_State *L, StkId func, int nresults); +LUAI_FUNC void luaD_call (lua_State *L, StkId func, int nResults); +LUAI_FUNC int luaD_pcall (lua_State *L, Pfunc func, void *u, + ptrdiff_t oldtop, ptrdiff_t ef); +LUAI_FUNC int luaD_poscall (lua_State *L, StkId firstResult); +LUAI_FUNC void luaD_reallocCI (lua_State *L, int newsize); +LUAI_FUNC void luaD_reallocstack (lua_State *L, int newsize); +LUAI_FUNC void luaD_growstack (lua_State *L, int n); + +LUAI_FUNC void luaD_throw (lua_State *L, int errcode); +LUAI_FUNC int luaD_rawrunprotected (lua_State *L, Pfunc f, void *ud); + +LUAI_FUNC void luaD_seterrorobj (lua_State *L, int errcode, StkId oldtop); + +#endif + diff --git a/lua-5.1.4/src/ldump.c b/lua-5.1.4/src/ldump.c new file mode 100644 index 0000000..c9d3d48 --- /dev/null +++ b/lua-5.1.4/src/ldump.c @@ -0,0 +1,164 @@ +/* +** $Id: ldump.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ +** save precompiled Lua chunks +** See Copyright Notice in lua.h +*/ + +#include + +#define ldump_c +#define LUA_CORE + +#include "lua.h" + +#include "lobject.h" +#include "lstate.h" +#include "lundump.h" + +typedef struct { + lua_State* L; + lua_Writer writer; + void* data; + int strip; + int status; +} DumpState; + +#define DumpMem(b,n,size,D) DumpBlock(b,(n)*(size),D) +#define DumpVar(x,D) DumpMem(&x,1,sizeof(x),D) + +static void DumpBlock(const void* b, size_t size, DumpState* D) +{ + if (D->status==0) + { + lua_unlock(D->L); + D->status=(*D->writer)(D->L,b,size,D->data); + lua_lock(D->L); + } +} + +static void DumpChar(int y, DumpState* D) +{ + char x=(char)y; + DumpVar(x,D); +} + +static void DumpInt(int x, DumpState* D) +{ + DumpVar(x,D); +} + +static void DumpNumber(lua_Number x, DumpState* D) +{ + DumpVar(x,D); +} + +static void DumpVector(const void* b, int n, size_t size, DumpState* D) +{ + DumpInt(n,D); + DumpMem(b,n,size,D); +} + +static void DumpString(const TString* s, DumpState* D) +{ + if (s==NULL || getstr(s)==NULL) + { + size_t size=0; + DumpVar(size,D); + } + else + { + size_t size=s->tsv.len+1; /* include trailing '\0' */ + DumpVar(size,D); + DumpBlock(getstr(s),size,D); + } +} + +#define DumpCode(f,D) DumpVector(f->code,f->sizecode,sizeof(Instruction),D) + +static void DumpFunction(const Proto* f, const TString* p, DumpState* D); + +static void DumpConstants(const Proto* f, DumpState* D) +{ + int i,n=f->sizek; + DumpInt(n,D); + for (i=0; ik[i]; + DumpChar(ttype(o),D); + switch (ttype(o)) + { + case LUA_TNIL: + break; + case LUA_TBOOLEAN: + DumpChar(bvalue(o),D); + break; + case LUA_TNUMBER: + DumpNumber(nvalue(o),D); + break; + case LUA_TSTRING: + DumpString(rawtsvalue(o),D); + break; + default: + lua_assert(0); /* cannot happen */ + break; + } + } + n=f->sizep; + DumpInt(n,D); + for (i=0; ip[i],f->source,D); +} + +static void DumpDebug(const Proto* f, DumpState* D) +{ + int i,n; + n= (D->strip) ? 0 : f->sizelineinfo; + DumpVector(f->lineinfo,n,sizeof(int),D); + n= (D->strip) ? 0 : f->sizelocvars; + DumpInt(n,D); + for (i=0; ilocvars[i].varname,D); + DumpInt(f->locvars[i].startpc,D); + DumpInt(f->locvars[i].endpc,D); + } + n= (D->strip) ? 0 : f->sizeupvalues; + DumpInt(n,D); + for (i=0; iupvalues[i],D); +} + +static void DumpFunction(const Proto* f, const TString* p, DumpState* D) +{ + DumpString((f->source==p || D->strip) ? NULL : f->source,D); + DumpInt(f->linedefined,D); + DumpInt(f->lastlinedefined,D); + DumpChar(f->nups,D); + DumpChar(f->numparams,D); + DumpChar(f->is_vararg,D); + DumpChar(f->maxstacksize,D); + DumpCode(f,D); + DumpConstants(f,D); + DumpDebug(f,D); +} + +static void DumpHeader(DumpState* D) +{ + char h[LUAC_HEADERSIZE]; + luaU_header(h); + DumpBlock(h,LUAC_HEADERSIZE,D); +} + +/* +** dump Lua function as precompiled chunk +*/ +int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip) +{ + DumpState D; + D.L=L; + D.writer=w; + D.data=data; + D.strip=strip; + D.status=0; + DumpHeader(&D); + DumpFunction(f,NULL,&D); + return D.status; +} diff --git a/lua-5.1.4/src/lfunc.c b/lua-5.1.4/src/lfunc.c new file mode 100644 index 0000000..813e88f --- /dev/null +++ b/lua-5.1.4/src/lfunc.c @@ -0,0 +1,174 @@ +/* +** $Id: lfunc.c,v 2.12.1.2 2007/12/28 14:58:43 roberto Exp $ +** Auxiliary functions to manipulate prototypes and closures +** See Copyright Notice in lua.h +*/ + + +#include + +#define lfunc_c +#define LUA_CORE + +#include "lua.h" + +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" + + + +Closure *luaF_newCclosure (lua_State *L, int nelems, Table *e) { + Closure *c = cast(Closure *, luaM_malloc(L, sizeCclosure(nelems))); + luaC_link(L, obj2gco(c), LUA_TFUNCTION); + c->c.isC = 1; + c->c.env = e; + c->c.nupvalues = cast_byte(nelems); + return c; +} + + +Closure *luaF_newLclosure (lua_State *L, int nelems, Table *e) { + Closure *c = cast(Closure *, luaM_malloc(L, sizeLclosure(nelems))); + luaC_link(L, obj2gco(c), LUA_TFUNCTION); + c->l.isC = 0; + c->l.env = e; + c->l.nupvalues = cast_byte(nelems); + while (nelems--) c->l.upvals[nelems] = NULL; + return c; +} + + +UpVal *luaF_newupval (lua_State *L) { + UpVal *uv = luaM_new(L, UpVal); + luaC_link(L, obj2gco(uv), LUA_TUPVAL); + uv->v = &uv->u.value; + setnilvalue(uv->v); + return uv; +} + + +UpVal *luaF_findupval (lua_State *L, StkId level) { + global_State *g = G(L); + GCObject **pp = &L->openupval; + UpVal *p; + UpVal *uv; + while (*pp != NULL && (p = ngcotouv(*pp))->v >= level) { + lua_assert(p->v != &p->u.value); + if (p->v == level) { /* found a corresponding upvalue? */ + if (isdead(g, obj2gco(p))) /* is it dead? */ + changewhite(obj2gco(p)); /* ressurect it */ + return p; + } + pp = &p->next; + } + uv = luaM_new(L, UpVal); /* not found: create a new one */ + uv->tt = LUA_TUPVAL; + uv->marked = luaC_white(g); + uv->v = level; /* current value lives in the stack */ + uv->next = *pp; /* chain it in the proper position */ + *pp = obj2gco(uv); + uv->u.l.prev = &g->uvhead; /* double link it in `uvhead' list */ + uv->u.l.next = g->uvhead.u.l.next; + uv->u.l.next->u.l.prev = uv; + g->uvhead.u.l.next = uv; + lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); + return uv; +} + + +static void unlinkupval (UpVal *uv) { + lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); + uv->u.l.next->u.l.prev = uv->u.l.prev; /* remove from `uvhead' list */ + uv->u.l.prev->u.l.next = uv->u.l.next; +} + + +void luaF_freeupval (lua_State *L, UpVal *uv) { + if (uv->v != &uv->u.value) /* is it open? */ + unlinkupval(uv); /* remove from open list */ + luaM_free(L, uv); /* free upvalue */ +} + + +void luaF_close (lua_State *L, StkId level) { + UpVal *uv; + global_State *g = G(L); + while (L->openupval != NULL && (uv = ngcotouv(L->openupval))->v >= level) { + GCObject *o = obj2gco(uv); + lua_assert(!isblack(o) && uv->v != &uv->u.value); + L->openupval = uv->next; /* remove from `open' list */ + if (isdead(g, o)) + luaF_freeupval(L, uv); /* free upvalue */ + else { + unlinkupval(uv); + setobj(L, &uv->u.value, uv->v); + uv->v = &uv->u.value; /* now current value lives here */ + luaC_linkupval(L, uv); /* link upvalue into `gcroot' list */ + } + } +} + + +Proto *luaF_newproto (lua_State *L) { + Proto *f = luaM_new(L, Proto); + luaC_link(L, obj2gco(f), LUA_TPROTO); + f->k = NULL; + f->sizek = 0; + f->p = NULL; + f->sizep = 0; + f->code = NULL; + f->sizecode = 0; + f->sizelineinfo = 0; + f->sizeupvalues = 0; + f->nups = 0; + f->upvalues = NULL; + f->numparams = 0; + f->is_vararg = 0; + f->maxstacksize = 0; + f->lineinfo = NULL; + f->sizelocvars = 0; + f->locvars = NULL; + f->linedefined = 0; + f->lastlinedefined = 0; + f->source = NULL; + return f; +} + + +void luaF_freeproto (lua_State *L, Proto *f) { + luaM_freearray(L, f->code, f->sizecode, Instruction); + luaM_freearray(L, f->p, f->sizep, Proto *); + luaM_freearray(L, f->k, f->sizek, TValue); + luaM_freearray(L, f->lineinfo, f->sizelineinfo, int); + luaM_freearray(L, f->locvars, f->sizelocvars, struct LocVar); + luaM_freearray(L, f->upvalues, f->sizeupvalues, TString *); + luaM_free(L, f); +} + + +void luaF_freeclosure (lua_State *L, Closure *c) { + int size = (c->c.isC) ? sizeCclosure(c->c.nupvalues) : + sizeLclosure(c->l.nupvalues); + luaM_freemem(L, c, size); +} + + +/* +** Look for n-th local variable at line `line' in function `func'. +** Returns NULL if not found. +*/ +const char *luaF_getlocalname (const Proto *f, int local_number, int pc) { + int i; + for (i = 0; isizelocvars && f->locvars[i].startpc <= pc; i++) { + if (pc < f->locvars[i].endpc) { /* is variable active? */ + local_number--; + if (local_number == 0) + return getstr(f->locvars[i].varname); + } + } + return NULL; /* not found */ +} + diff --git a/lua-5.1.4/src/lfunc.h b/lua-5.1.4/src/lfunc.h new file mode 100644 index 0000000..a68cf51 --- /dev/null +++ b/lua-5.1.4/src/lfunc.h @@ -0,0 +1,34 @@ +/* +** $Id: lfunc.h,v 2.4.1.1 2007/12/27 13:02:25 roberto Exp $ +** Auxiliary functions to manipulate prototypes and closures +** See Copyright Notice in lua.h +*/ + +#ifndef lfunc_h +#define lfunc_h + + +#include "lobject.h" + + +#define sizeCclosure(n) (cast(int, sizeof(CClosure)) + \ + cast(int, sizeof(TValue)*((n)-1))) + +#define sizeLclosure(n) (cast(int, sizeof(LClosure)) + \ + cast(int, sizeof(TValue *)*((n)-1))) + + +LUAI_FUNC Proto *luaF_newproto (lua_State *L); +LUAI_FUNC Closure *luaF_newCclosure (lua_State *L, int nelems, Table *e); +LUAI_FUNC Closure *luaF_newLclosure (lua_State *L, int nelems, Table *e); +LUAI_FUNC UpVal *luaF_newupval (lua_State *L); +LUAI_FUNC UpVal *luaF_findupval (lua_State *L, StkId level); +LUAI_FUNC void luaF_close (lua_State *L, StkId level); +LUAI_FUNC void luaF_freeproto (lua_State *L, Proto *f); +LUAI_FUNC void luaF_freeclosure (lua_State *L, Closure *c); +LUAI_FUNC void luaF_freeupval (lua_State *L, UpVal *uv); +LUAI_FUNC const char *luaF_getlocalname (const Proto *func, int local_number, + int pc); + + +#endif diff --git a/lua-5.1.4/src/lgc.c b/lua-5.1.4/src/lgc.c new file mode 100644 index 0000000..d9e0b78 --- /dev/null +++ b/lua-5.1.4/src/lgc.c @@ -0,0 +1,711 @@ +/* +** $Id: lgc.c,v 2.38.1.1 2007/12/27 13:02:25 roberto Exp $ +** Garbage Collector +** See Copyright Notice in lua.h +*/ + +#include + +#define lgc_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" + + +#define GCSTEPSIZE 1024u +#define GCSWEEPMAX 40 +#define GCSWEEPCOST 10 +#define GCFINALIZECOST 100 + + +#define maskmarks cast_byte(~(bitmask(BLACKBIT)|WHITEBITS)) + +#define makewhite(g,x) \ + ((x)->gch.marked = cast_byte(((x)->gch.marked & maskmarks) | luaC_white(g))) + +#define white2gray(x) reset2bits((x)->gch.marked, WHITE0BIT, WHITE1BIT) +#define black2gray(x) resetbit((x)->gch.marked, BLACKBIT) + +#define stringmark(s) reset2bits((s)->tsv.marked, WHITE0BIT, WHITE1BIT) + + +#define isfinalized(u) testbit((u)->marked, FINALIZEDBIT) +#define markfinalized(u) l_setbit((u)->marked, FINALIZEDBIT) + + +#define KEYWEAK bitmask(KEYWEAKBIT) +#define VALUEWEAK bitmask(VALUEWEAKBIT) + + + +#define markvalue(g,o) { checkconsistency(o); \ + if (iscollectable(o) && iswhite(gcvalue(o))) reallymarkobject(g,gcvalue(o)); } + +#define markobject(g,t) { if (iswhite(obj2gco(t))) \ + reallymarkobject(g, obj2gco(t)); } + + +#define setthreshold(g) (g->GCthreshold = (g->estimate/100) * g->gcpause) + + +static void removeentry (Node *n) { + lua_assert(ttisnil(gval(n))); + if (iscollectable(gkey(n))) + setttype(gkey(n), LUA_TDEADKEY); /* dead key; remove it */ +} + + +static void reallymarkobject (global_State *g, GCObject *o) { + lua_assert(iswhite(o) && !isdead(g, o)); + white2gray(o); + switch (o->gch.tt) { + case LUA_TSTRING: { + return; + } + case LUA_TUSERDATA: { + Table *mt = gco2u(o)->metatable; + gray2black(o); /* udata are never gray */ + if (mt) markobject(g, mt); + markobject(g, gco2u(o)->env); + return; + } + case LUA_TUPVAL: { + UpVal *uv = gco2uv(o); + markvalue(g, uv->v); + if (uv->v == &uv->u.value) /* closed? */ + gray2black(o); /* open upvalues are never black */ + return; + } + case LUA_TFUNCTION: { + gco2cl(o)->c.gclist = g->gray; + g->gray = o; + break; + } + case LUA_TTABLE: { + gco2h(o)->gclist = g->gray; + g->gray = o; + break; + } + case LUA_TTHREAD: { + gco2th(o)->gclist = g->gray; + g->gray = o; + break; + } + case LUA_TPROTO: { + gco2p(o)->gclist = g->gray; + g->gray = o; + break; + } + default: lua_assert(0); + } +} + + +static void marktmu (global_State *g) { + GCObject *u = g->tmudata; + if (u) { + do { + u = u->gch.next; + makewhite(g, u); /* may be marked, if left from previous GC */ + reallymarkobject(g, u); + } while (u != g->tmudata); + } +} + + +/* move `dead' udata that need finalization to list `tmudata' */ +size_t luaC_separateudata (lua_State *L, int all) { + global_State *g = G(L); + size_t deadmem = 0; + GCObject **p = &g->mainthread->next; + GCObject *curr; + while ((curr = *p) != NULL) { + if (!(iswhite(curr) || all) || isfinalized(gco2u(curr))) + p = &curr->gch.next; /* don't bother with them */ + else if (fasttm(L, gco2u(curr)->metatable, TM_GC) == NULL) { + markfinalized(gco2u(curr)); /* don't need finalization */ + p = &curr->gch.next; + } + else { /* must call its gc method */ + deadmem += sizeudata(gco2u(curr)); + markfinalized(gco2u(curr)); + *p = curr->gch.next; + /* link `curr' at the end of `tmudata' list */ + if (g->tmudata == NULL) /* list is empty? */ + g->tmudata = curr->gch.next = curr; /* creates a circular list */ + else { + curr->gch.next = g->tmudata->gch.next; + g->tmudata->gch.next = curr; + g->tmudata = curr; + } + } + } + return deadmem; +} + + +static int traversetable (global_State *g, Table *h) { + int i; + int weakkey = 0; + int weakvalue = 0; + const TValue *mode; + if (h->metatable) + markobject(g, h->metatable); + mode = gfasttm(g, h->metatable, TM_MODE); + if (mode && ttisstring(mode)) { /* is there a weak mode? */ + weakkey = (strchr(svalue(mode), 'k') != NULL); + weakvalue = (strchr(svalue(mode), 'v') != NULL); + if (weakkey || weakvalue) { /* is really weak? */ + h->marked &= ~(KEYWEAK | VALUEWEAK); /* clear bits */ + h->marked |= cast_byte((weakkey << KEYWEAKBIT) | + (weakvalue << VALUEWEAKBIT)); + h->gclist = g->weak; /* must be cleared after GC, ... */ + g->weak = obj2gco(h); /* ... so put in the appropriate list */ + } + } + if (weakkey && weakvalue) return 1; + if (!weakvalue) { + i = h->sizearray; + while (i--) + markvalue(g, &h->array[i]); + } + i = sizenode(h); + while (i--) { + Node *n = gnode(h, i); + lua_assert(ttype(gkey(n)) != LUA_TDEADKEY || ttisnil(gval(n))); + if (ttisnil(gval(n))) + removeentry(n); /* remove empty entries */ + else { + lua_assert(!ttisnil(gkey(n))); + if (!weakkey) markvalue(g, gkey(n)); + if (!weakvalue) markvalue(g, gval(n)); + } + } + return weakkey || weakvalue; +} + + +/* +** All marks are conditional because a GC may happen while the +** prototype is still being created +*/ +static void traverseproto (global_State *g, Proto *f) { + int i; + if (f->source) stringmark(f->source); + for (i=0; isizek; i++) /* mark literals */ + markvalue(g, &f->k[i]); + for (i=0; isizeupvalues; i++) { /* mark upvalue names */ + if (f->upvalues[i]) + stringmark(f->upvalues[i]); + } + for (i=0; isizep; i++) { /* mark nested protos */ + if (f->p[i]) + markobject(g, f->p[i]); + } + for (i=0; isizelocvars; i++) { /* mark local-variable names */ + if (f->locvars[i].varname) + stringmark(f->locvars[i].varname); + } +} + + + +static void traverseclosure (global_State *g, Closure *cl) { + markobject(g, cl->c.env); + if (cl->c.isC) { + int i; + for (i=0; ic.nupvalues; i++) /* mark its upvalues */ + markvalue(g, &cl->c.upvalue[i]); + } + else { + int i; + lua_assert(cl->l.nupvalues == cl->l.p->nups); + markobject(g, cl->l.p); + for (i=0; il.nupvalues; i++) /* mark its upvalues */ + markobject(g, cl->l.upvals[i]); + } +} + + +static void checkstacksizes (lua_State *L, StkId max) { + int ci_used = cast_int(L->ci - L->base_ci); /* number of `ci' in use */ + int s_used = cast_int(max - L->stack); /* part of stack in use */ + if (L->size_ci > LUAI_MAXCALLS) /* handling overflow? */ + return; /* do not touch the stacks */ + if (4*ci_used < L->size_ci && 2*BASIC_CI_SIZE < L->size_ci) + luaD_reallocCI(L, L->size_ci/2); /* still big enough... */ + condhardstacktests(luaD_reallocCI(L, ci_used + 1)); + if (4*s_used < L->stacksize && + 2*(BASIC_STACK_SIZE+EXTRA_STACK) < L->stacksize) + luaD_reallocstack(L, L->stacksize/2); /* still big enough... */ + condhardstacktests(luaD_reallocstack(L, s_used)); +} + + +static void traversestack (global_State *g, lua_State *l) { + StkId o, lim; + CallInfo *ci; + markvalue(g, gt(l)); + lim = l->top; + for (ci = l->base_ci; ci <= l->ci; ci++) { + lua_assert(ci->top <= l->stack_last); + if (lim < ci->top) lim = ci->top; + } + for (o = l->stack; o < l->top; o++) + markvalue(g, o); + for (; o <= lim; o++) + setnilvalue(o); + checkstacksizes(l, lim); +} + + +/* +** traverse one gray object, turning it to black. +** Returns `quantity' traversed. +*/ +static l_mem propagatemark (global_State *g) { + GCObject *o = g->gray; + lua_assert(isgray(o)); + gray2black(o); + switch (o->gch.tt) { + case LUA_TTABLE: { + Table *h = gco2h(o); + g->gray = h->gclist; + if (traversetable(g, h)) /* table is weak? */ + black2gray(o); /* keep it gray */ + return sizeof(Table) + sizeof(TValue) * h->sizearray + + sizeof(Node) * sizenode(h); + } + case LUA_TFUNCTION: { + Closure *cl = gco2cl(o); + g->gray = cl->c.gclist; + traverseclosure(g, cl); + return (cl->c.isC) ? sizeCclosure(cl->c.nupvalues) : + sizeLclosure(cl->l.nupvalues); + } + case LUA_TTHREAD: { + lua_State *th = gco2th(o); + g->gray = th->gclist; + th->gclist = g->grayagain; + g->grayagain = o; + black2gray(o); + traversestack(g, th); + return sizeof(lua_State) + sizeof(TValue) * th->stacksize + + sizeof(CallInfo) * th->size_ci; + } + case LUA_TPROTO: { + Proto *p = gco2p(o); + g->gray = p->gclist; + traverseproto(g, p); + return sizeof(Proto) + sizeof(Instruction) * p->sizecode + + sizeof(Proto *) * p->sizep + + sizeof(TValue) * p->sizek + + sizeof(int) * p->sizelineinfo + + sizeof(LocVar) * p->sizelocvars + + sizeof(TString *) * p->sizeupvalues; + } + default: lua_assert(0); return 0; + } +} + + +static size_t propagateall (global_State *g) { + size_t m = 0; + while (g->gray) m += propagatemark(g); + return m; +} + + +/* +** The next function tells whether a key or value can be cleared from +** a weak table. Non-collectable objects are never removed from weak +** tables. Strings behave as `values', so are never removed too. for +** other objects: if really collected, cannot keep them; for userdata +** being finalized, keep them in keys, but not in values +*/ +static int iscleared (const TValue *o, int iskey) { + if (!iscollectable(o)) return 0; + if (ttisstring(o)) { + stringmark(rawtsvalue(o)); /* strings are `values', so are never weak */ + return 0; + } + return iswhite(gcvalue(o)) || + (ttisuserdata(o) && (!iskey && isfinalized(uvalue(o)))); +} + + +/* +** clear collected entries from weaktables +*/ +static void cleartable (GCObject *l) { + while (l) { + Table *h = gco2h(l); + int i = h->sizearray; + lua_assert(testbit(h->marked, VALUEWEAKBIT) || + testbit(h->marked, KEYWEAKBIT)); + if (testbit(h->marked, VALUEWEAKBIT)) { + while (i--) { + TValue *o = &h->array[i]; + if (iscleared(o, 0)) /* value was collected? */ + setnilvalue(o); /* remove value */ + } + } + i = sizenode(h); + while (i--) { + Node *n = gnode(h, i); + if (!ttisnil(gval(n)) && /* non-empty entry? */ + (iscleared(key2tval(n), 1) || iscleared(gval(n), 0))) { + setnilvalue(gval(n)); /* remove value ... */ + removeentry(n); /* remove entry from table */ + } + } + l = h->gclist; + } +} + + +static void freeobj (lua_State *L, GCObject *o) { + switch (o->gch.tt) { + case LUA_TPROTO: luaF_freeproto(L, gco2p(o)); break; + case LUA_TFUNCTION: luaF_freeclosure(L, gco2cl(o)); break; + case LUA_TUPVAL: luaF_freeupval(L, gco2uv(o)); break; + case LUA_TTABLE: luaH_free(L, gco2h(o)); break; + case LUA_TTHREAD: { + lua_assert(gco2th(o) != L && gco2th(o) != G(L)->mainthread); + luaE_freethread(L, gco2th(o)); + break; + } + case LUA_TSTRING: { + G(L)->strt.nuse--; + luaM_freemem(L, o, sizestring(gco2ts(o))); + break; + } + case LUA_TUSERDATA: { + luaM_freemem(L, o, sizeudata(gco2u(o))); + break; + } + default: lua_assert(0); + } +} + + + +#define sweepwholelist(L,p) sweeplist(L,p,MAX_LUMEM) + + +static GCObject **sweeplist (lua_State *L, GCObject **p, lu_mem count) { + GCObject *curr; + global_State *g = G(L); + int deadmask = otherwhite(g); + while ((curr = *p) != NULL && count-- > 0) { + if (curr->gch.tt == LUA_TTHREAD) /* sweep open upvalues of each thread */ + sweepwholelist(L, &gco2th(curr)->openupval); + if ((curr->gch.marked ^ WHITEBITS) & deadmask) { /* not dead? */ + lua_assert(!isdead(g, curr) || testbit(curr->gch.marked, FIXEDBIT)); + makewhite(g, curr); /* make it white (for next cycle) */ + p = &curr->gch.next; + } + else { /* must erase `curr' */ + lua_assert(isdead(g, curr) || deadmask == bitmask(SFIXEDBIT)); + *p = curr->gch.next; + if (curr == g->rootgc) /* is the first element of the list? */ + g->rootgc = curr->gch.next; /* adjust first */ + freeobj(L, curr); + } + } + return p; +} + + +static void checkSizes (lua_State *L) { + global_State *g = G(L); + /* check size of string hash */ + if (g->strt.nuse < cast(lu_int32, g->strt.size/4) && + g->strt.size > MINSTRTABSIZE*2) + luaS_resize(L, g->strt.size/2); /* table is too big */ + /* check size of buffer */ + if (luaZ_sizebuffer(&g->buff) > LUA_MINBUFFER*2) { /* buffer too big? */ + size_t newsize = luaZ_sizebuffer(&g->buff) / 2; + luaZ_resizebuffer(L, &g->buff, newsize); + } +} + + +static void GCTM (lua_State *L) { + global_State *g = G(L); + GCObject *o = g->tmudata->gch.next; /* get first element */ + Udata *udata = rawgco2u(o); + const TValue *tm; + /* remove udata from `tmudata' */ + if (o == g->tmudata) /* last element? */ + g->tmudata = NULL; + else + g->tmudata->gch.next = udata->uv.next; + udata->uv.next = g->mainthread->next; /* return it to `root' list */ + g->mainthread->next = o; + makewhite(g, o); + tm = fasttm(L, udata->uv.metatable, TM_GC); + if (tm != NULL) { + lu_byte oldah = L->allowhook; + lu_mem oldt = g->GCthreshold; + L->allowhook = 0; /* stop debug hooks during GC tag method */ + g->GCthreshold = 2*g->totalbytes; /* avoid GC steps */ + setobj2s(L, L->top, tm); + setuvalue(L, L->top+1, udata); + L->top += 2; + luaD_call(L, L->top - 2, 0); + L->allowhook = oldah; /* restore hooks */ + g->GCthreshold = oldt; /* restore threshold */ + } +} + + +/* +** Call all GC tag methods +*/ +void luaC_callGCTM (lua_State *L) { + while (G(L)->tmudata) + GCTM(L); +} + + +void luaC_freeall (lua_State *L) { + global_State *g = G(L); + int i; + g->currentwhite = WHITEBITS | bitmask(SFIXEDBIT); /* mask to collect all elements */ + sweepwholelist(L, &g->rootgc); + for (i = 0; i < g->strt.size; i++) /* free all string lists */ + sweepwholelist(L, &g->strt.hash[i]); +} + + +static void markmt (global_State *g) { + int i; + for (i=0; imt[i]) markobject(g, g->mt[i]); +} + + +/* mark root set */ +static void markroot (lua_State *L) { + global_State *g = G(L); + g->gray = NULL; + g->grayagain = NULL; + g->weak = NULL; + markobject(g, g->mainthread); + /* make global table be traversed before main stack */ + markvalue(g, gt(g->mainthread)); + markvalue(g, registry(L)); + markmt(g); + g->gcstate = GCSpropagate; +} + + +static void remarkupvals (global_State *g) { + UpVal *uv; + for (uv = g->uvhead.u.l.next; uv != &g->uvhead; uv = uv->u.l.next) { + lua_assert(uv->u.l.next->u.l.prev == uv && uv->u.l.prev->u.l.next == uv); + if (isgray(obj2gco(uv))) + markvalue(g, uv->v); + } +} + + +static void atomic (lua_State *L) { + global_State *g = G(L); + size_t udsize; /* total size of userdata to be finalized */ + /* remark occasional upvalues of (maybe) dead threads */ + remarkupvals(g); + /* traverse objects cautch by write barrier and by 'remarkupvals' */ + propagateall(g); + /* remark weak tables */ + g->gray = g->weak; + g->weak = NULL; + lua_assert(!iswhite(obj2gco(g->mainthread))); + markobject(g, L); /* mark running thread */ + markmt(g); /* mark basic metatables (again) */ + propagateall(g); + /* remark gray again */ + g->gray = g->grayagain; + g->grayagain = NULL; + propagateall(g); + udsize = luaC_separateudata(L, 0); /* separate userdata to be finalized */ + marktmu(g); /* mark `preserved' userdata */ + udsize += propagateall(g); /* remark, to propagate `preserveness' */ + cleartable(g->weak); /* remove collected objects from weak tables */ + /* flip current white */ + g->currentwhite = cast_byte(otherwhite(g)); + g->sweepstrgc = 0; + g->sweepgc = &g->rootgc; + g->gcstate = GCSsweepstring; + g->estimate = g->totalbytes - udsize; /* first estimate */ +} + + +static l_mem singlestep (lua_State *L) { + global_State *g = G(L); + /*lua_checkmemory(L);*/ + switch (g->gcstate) { + case GCSpause: { + markroot(L); /* start a new collection */ + return 0; + } + case GCSpropagate: { + if (g->gray) + return propagatemark(g); + else { /* no more `gray' objects */ + atomic(L); /* finish mark phase */ + return 0; + } + } + case GCSsweepstring: { + lu_mem old = g->totalbytes; + sweepwholelist(L, &g->strt.hash[g->sweepstrgc++]); + if (g->sweepstrgc >= g->strt.size) /* nothing more to sweep? */ + g->gcstate = GCSsweep; /* end sweep-string phase */ + lua_assert(old >= g->totalbytes); + g->estimate -= old - g->totalbytes; + return GCSWEEPCOST; + } + case GCSsweep: { + lu_mem old = g->totalbytes; + g->sweepgc = sweeplist(L, g->sweepgc, GCSWEEPMAX); + if (*g->sweepgc == NULL) { /* nothing more to sweep? */ + checkSizes(L); + g->gcstate = GCSfinalize; /* end sweep phase */ + } + lua_assert(old >= g->totalbytes); + g->estimate -= old - g->totalbytes; + return GCSWEEPMAX*GCSWEEPCOST; + } + case GCSfinalize: { + if (g->tmudata) { + GCTM(L); + if (g->estimate > GCFINALIZECOST) + g->estimate -= GCFINALIZECOST; + return GCFINALIZECOST; + } + else { + g->gcstate = GCSpause; /* end collection */ + g->gcdept = 0; + return 0; + } + } + default: lua_assert(0); return 0; + } +} + + +void luaC_step (lua_State *L) { + global_State *g = G(L); + l_mem lim = (GCSTEPSIZE/100) * g->gcstepmul; + if (lim == 0) + lim = (MAX_LUMEM-1)/2; /* no limit */ + g->gcdept += g->totalbytes - g->GCthreshold; + do { + lim -= singlestep(L); + if (g->gcstate == GCSpause) + break; + } while (lim > 0); + if (g->gcstate != GCSpause) { + if (g->gcdept < GCSTEPSIZE) + g->GCthreshold = g->totalbytes + GCSTEPSIZE; /* - lim/g->gcstepmul;*/ + else { + g->gcdept -= GCSTEPSIZE; + g->GCthreshold = g->totalbytes; + } + } + else { + lua_assert(g->totalbytes >= g->estimate); + setthreshold(g); + } +} + + +void luaC_fullgc (lua_State *L) { + global_State *g = G(L); + if (g->gcstate <= GCSpropagate) { + /* reset sweep marks to sweep all elements (returning them to white) */ + g->sweepstrgc = 0; + g->sweepgc = &g->rootgc; + /* reset other collector lists */ + g->gray = NULL; + g->grayagain = NULL; + g->weak = NULL; + g->gcstate = GCSsweepstring; + } + lua_assert(g->gcstate != GCSpause && g->gcstate != GCSpropagate); + /* finish any pending sweep phase */ + while (g->gcstate != GCSfinalize) { + lua_assert(g->gcstate == GCSsweepstring || g->gcstate == GCSsweep); + singlestep(L); + } + markroot(L); + while (g->gcstate != GCSpause) { + singlestep(L); + } + setthreshold(g); +} + + +void luaC_barrierf (lua_State *L, GCObject *o, GCObject *v) { + global_State *g = G(L); + lua_assert(isblack(o) && iswhite(v) && !isdead(g, v) && !isdead(g, o)); + lua_assert(g->gcstate != GCSfinalize && g->gcstate != GCSpause); + lua_assert(ttype(&o->gch) != LUA_TTABLE); + /* must keep invariant? */ + if (g->gcstate == GCSpropagate) + reallymarkobject(g, v); /* restore invariant */ + else /* don't mind */ + makewhite(g, o); /* mark as white just to avoid other barriers */ +} + + +void luaC_barrierback (lua_State *L, Table *t) { + global_State *g = G(L); + GCObject *o = obj2gco(t); + lua_assert(isblack(o) && !isdead(g, o)); + lua_assert(g->gcstate != GCSfinalize && g->gcstate != GCSpause); + black2gray(o); /* make table gray (again) */ + t->gclist = g->grayagain; + g->grayagain = o; +} + + +void luaC_link (lua_State *L, GCObject *o, lu_byte tt) { + global_State *g = G(L); + o->gch.next = g->rootgc; + g->rootgc = o; + o->gch.marked = luaC_white(g); + o->gch.tt = tt; +} + + +void luaC_linkupval (lua_State *L, UpVal *uv) { + global_State *g = G(L); + GCObject *o = obj2gco(uv); + o->gch.next = g->rootgc; /* link upvalue into `rootgc' list */ + g->rootgc = o; + if (isgray(o)) { + if (g->gcstate == GCSpropagate) { + gray2black(o); /* closed upvalues need barrier */ + luaC_barrier(L, uv, uv->v); + } + else { /* sweep phase: sweep it (turning it into white) */ + makewhite(g, o); + lua_assert(g->gcstate != GCSfinalize && g->gcstate != GCSpause); + } + } +} + diff --git a/lua-5.1.4/src/lgc.h b/lua-5.1.4/src/lgc.h new file mode 100644 index 0000000..5a8dc60 --- /dev/null +++ b/lua-5.1.4/src/lgc.h @@ -0,0 +1,110 @@ +/* +** $Id: lgc.h,v 2.15.1.1 2007/12/27 13:02:25 roberto Exp $ +** Garbage Collector +** See Copyright Notice in lua.h +*/ + +#ifndef lgc_h +#define lgc_h + + +#include "lobject.h" + + +/* +** Possible states of the Garbage Collector +*/ +#define GCSpause 0 +#define GCSpropagate 1 +#define GCSsweepstring 2 +#define GCSsweep 3 +#define GCSfinalize 4 + + +/* +** some userful bit tricks +*/ +#define resetbits(x,m) ((x) &= cast(lu_byte, ~(m))) +#define setbits(x,m) ((x) |= (m)) +#define testbits(x,m) ((x) & (m)) +#define bitmask(b) (1<<(b)) +#define bit2mask(b1,b2) (bitmask(b1) | bitmask(b2)) +#define l_setbit(x,b) setbits(x, bitmask(b)) +#define resetbit(x,b) resetbits(x, bitmask(b)) +#define testbit(x,b) testbits(x, bitmask(b)) +#define set2bits(x,b1,b2) setbits(x, (bit2mask(b1, b2))) +#define reset2bits(x,b1,b2) resetbits(x, (bit2mask(b1, b2))) +#define test2bits(x,b1,b2) testbits(x, (bit2mask(b1, b2))) + + + +/* +** Layout for bit use in `marked' field: +** bit 0 - object is white (type 0) +** bit 1 - object is white (type 1) +** bit 2 - object is black +** bit 3 - for userdata: has been finalized +** bit 3 - for tables: has weak keys +** bit 4 - for tables: has weak values +** bit 5 - object is fixed (should not be collected) +** bit 6 - object is "super" fixed (only the main thread) +*/ + + +#define WHITE0BIT 0 +#define WHITE1BIT 1 +#define BLACKBIT 2 +#define FINALIZEDBIT 3 +#define KEYWEAKBIT 3 +#define VALUEWEAKBIT 4 +#define FIXEDBIT 5 +#define SFIXEDBIT 6 +#define WHITEBITS bit2mask(WHITE0BIT, WHITE1BIT) + + +#define iswhite(x) test2bits((x)->gch.marked, WHITE0BIT, WHITE1BIT) +#define isblack(x) testbit((x)->gch.marked, BLACKBIT) +#define isgray(x) (!isblack(x) && !iswhite(x)) + +#define otherwhite(g) (g->currentwhite ^ WHITEBITS) +#define isdead(g,v) ((v)->gch.marked & otherwhite(g) & WHITEBITS) + +#define changewhite(x) ((x)->gch.marked ^= WHITEBITS) +#define gray2black(x) l_setbit((x)->gch.marked, BLACKBIT) + +#define valiswhite(x) (iscollectable(x) && iswhite(gcvalue(x))) + +#define luaC_white(g) cast(lu_byte, (g)->currentwhite & WHITEBITS) + + +#define luaC_checkGC(L) { \ + condhardstacktests(luaD_reallocstack(L, L->stacksize - EXTRA_STACK - 1)); \ + if (G(L)->totalbytes >= G(L)->GCthreshold) \ + luaC_step(L); } + + +#define luaC_barrier(L,p,v) { if (valiswhite(v) && isblack(obj2gco(p))) \ + luaC_barrierf(L,obj2gco(p),gcvalue(v)); } + +#define luaC_barriert(L,t,v) { if (valiswhite(v) && isblack(obj2gco(t))) \ + luaC_barrierback(L,t); } + +#define luaC_objbarrier(L,p,o) \ + { if (iswhite(obj2gco(o)) && isblack(obj2gco(p))) \ + luaC_barrierf(L,obj2gco(p),obj2gco(o)); } + +#define luaC_objbarriert(L,t,o) \ + { if (iswhite(obj2gco(o)) && isblack(obj2gco(t))) luaC_barrierback(L,t); } + +LUAI_FUNC size_t luaC_separateudata (lua_State *L, int all); +LUAI_FUNC void luaC_callGCTM (lua_State *L); +LUAI_FUNC void luaC_freeall (lua_State *L); +LUAI_FUNC void luaC_step (lua_State *L); +LUAI_FUNC void luaC_fullgc (lua_State *L); +LUAI_FUNC void luaC_link (lua_State *L, GCObject *o, lu_byte tt); +LUAI_FUNC void luaC_linkupval (lua_State *L, UpVal *uv); +LUAI_FUNC void luaC_barrierf (lua_State *L, GCObject *o, GCObject *v); +LUAI_FUNC void luaC_barrierback (lua_State *L, Table *t); + + +#endif diff --git a/lua-5.1.4/src/linit.c b/lua-5.1.4/src/linit.c new file mode 100644 index 0000000..c1f90df --- /dev/null +++ b/lua-5.1.4/src/linit.c @@ -0,0 +1,38 @@ +/* +** $Id: linit.c,v 1.14.1.1 2007/12/27 13:02:25 roberto Exp $ +** Initialization of libraries for lua.c +** See Copyright Notice in lua.h +*/ + + +#define linit_c +#define LUA_LIB + +#include "lua.h" + +#include "lualib.h" +#include "lauxlib.h" + + +static const luaL_Reg lualibs[] = { + {"", luaopen_base}, + {LUA_LOADLIBNAME, luaopen_package}, + {LUA_TABLIBNAME, luaopen_table}, + {LUA_IOLIBNAME, luaopen_io}, + {LUA_OSLIBNAME, luaopen_os}, + {LUA_STRLIBNAME, luaopen_string}, + {LUA_MATHLIBNAME, luaopen_math}, + {LUA_DBLIBNAME, luaopen_debug}, + {NULL, NULL} +}; + + +LUALIB_API void luaL_openlibs (lua_State *L) { + const luaL_Reg *lib = lualibs; + for (; lib->func; lib++) { + lua_pushcfunction(L, lib->func); + lua_pushstring(L, lib->name); + lua_call(L, 1, 0); + } +} + diff --git a/lua-5.1.4/src/liolib.c b/lua-5.1.4/src/liolib.c new file mode 100644 index 0000000..e79ed1c --- /dev/null +++ b/lua-5.1.4/src/liolib.c @@ -0,0 +1,553 @@ +/* +** $Id: liolib.c,v 2.73.1.3 2008/01/18 17:47:43 roberto Exp $ +** Standard I/O (and system) library +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include + +#define liolib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + +#define IO_INPUT 1 +#define IO_OUTPUT 2 + + +static const char *const fnames[] = {"input", "output"}; + + +static int pushresult (lua_State *L, int i, const char *filename) { + int en = errno; /* calls to Lua API may change this value */ + if (i) { + lua_pushboolean(L, 1); + return 1; + } + else { + lua_pushnil(L); + if (filename) + lua_pushfstring(L, "%s: %s", filename, strerror(en)); + else + lua_pushfstring(L, "%s", strerror(en)); + lua_pushinteger(L, en); + return 3; + } +} + + +static void fileerror (lua_State *L, int arg, const char *filename) { + lua_pushfstring(L, "%s: %s", filename, strerror(errno)); + luaL_argerror(L, arg, lua_tostring(L, -1)); +} + + +#define tofilep(L) ((FILE **)luaL_checkudata(L, 1, LUA_FILEHANDLE)) + + +static int io_type (lua_State *L) { + void *ud; + luaL_checkany(L, 1); + ud = lua_touserdata(L, 1); + lua_getfield(L, LUA_REGISTRYINDEX, LUA_FILEHANDLE); + if (ud == NULL || !lua_getmetatable(L, 1) || !lua_rawequal(L, -2, -1)) + lua_pushnil(L); /* not a file */ + else if (*((FILE **)ud) == NULL) + lua_pushliteral(L, "closed file"); + else + lua_pushliteral(L, "file"); + return 1; +} + + +static FILE *tofile (lua_State *L) { + FILE **f = tofilep(L); + if (*f == NULL) + luaL_error(L, "attempt to use a closed file"); + return *f; +} + + + +/* +** When creating file handles, always creates a `closed' file handle +** before opening the actual file; so, if there is a memory error, the +** file is not left opened. +*/ +static FILE **newfile (lua_State *L) { + FILE **pf = (FILE **)lua_newuserdata(L, sizeof(FILE *)); + *pf = NULL; /* file handle is currently `closed' */ + luaL_getmetatable(L, LUA_FILEHANDLE); + lua_setmetatable(L, -2); + return pf; +} + + +/* +** function to (not) close the standard files stdin, stdout, and stderr +*/ +static int io_noclose (lua_State *L) { + lua_pushnil(L); + lua_pushliteral(L, "cannot close standard file"); + return 2; +} + + +/* +** function to close 'popen' files +*/ +static int io_pclose (lua_State *L) { + FILE **p = tofilep(L); + int ok = lua_pclose(L, *p); + *p = NULL; + return pushresult(L, ok, NULL); +} + + +/* +** function to close regular files +*/ +static int io_fclose (lua_State *L) { + FILE **p = tofilep(L); + int ok = (fclose(*p) == 0); + *p = NULL; + return pushresult(L, ok, NULL); +} + + +static int aux_close (lua_State *L) { + lua_getfenv(L, 1); + lua_getfield(L, -1, "__close"); + return (lua_tocfunction(L, -1))(L); +} + + +static int io_close (lua_State *L) { + if (lua_isnone(L, 1)) + lua_rawgeti(L, LUA_ENVIRONINDEX, IO_OUTPUT); + tofile(L); /* make sure argument is a file */ + return aux_close(L); +} + + +static int io_gc (lua_State *L) { + FILE *f = *tofilep(L); + /* ignore closed files */ + if (f != NULL) + aux_close(L); + return 0; +} + + +static int io_tostring (lua_State *L) { + FILE *f = *tofilep(L); + if (f == NULL) + lua_pushliteral(L, "file (closed)"); + else + lua_pushfstring(L, "file (%p)", f); + return 1; +} + + +static int io_open (lua_State *L) { + const char *filename = luaL_checkstring(L, 1); + const char *mode = luaL_optstring(L, 2, "r"); + FILE **pf = newfile(L); + *pf = fopen(filename, mode); + return (*pf == NULL) ? pushresult(L, 0, filename) : 1; +} + + +/* +** this function has a separated environment, which defines the +** correct __close for 'popen' files +*/ +static int io_popen (lua_State *L) { + const char *filename = luaL_checkstring(L, 1); + const char *mode = luaL_optstring(L, 2, "r"); + FILE **pf = newfile(L); + *pf = lua_popen(L, filename, mode); + return (*pf == NULL) ? pushresult(L, 0, filename) : 1; +} + + +static int io_tmpfile (lua_State *L) { + FILE **pf = newfile(L); + *pf = tmpfile(); + return (*pf == NULL) ? pushresult(L, 0, NULL) : 1; +} + + +static FILE *getiofile (lua_State *L, int findex) { + FILE *f; + lua_rawgeti(L, LUA_ENVIRONINDEX, findex); + f = *(FILE **)lua_touserdata(L, -1); + if (f == NULL) + luaL_error(L, "standard %s file is closed", fnames[findex - 1]); + return f; +} + + +static int g_iofile (lua_State *L, int f, const char *mode) { + if (!lua_isnoneornil(L, 1)) { + const char *filename = lua_tostring(L, 1); + if (filename) { + FILE **pf = newfile(L); + *pf = fopen(filename, mode); + if (*pf == NULL) + fileerror(L, 1, filename); + } + else { + tofile(L); /* check that it's a valid file handle */ + lua_pushvalue(L, 1); + } + lua_rawseti(L, LUA_ENVIRONINDEX, f); + } + /* return current value */ + lua_rawgeti(L, LUA_ENVIRONINDEX, f); + return 1; +} + + +static int io_input (lua_State *L) { + return g_iofile(L, IO_INPUT, "r"); +} + + +static int io_output (lua_State *L) { + return g_iofile(L, IO_OUTPUT, "w"); +} + + +static int io_readline (lua_State *L); + + +static void aux_lines (lua_State *L, int idx, int toclose) { + lua_pushvalue(L, idx); + lua_pushboolean(L, toclose); /* close/not close file when finished */ + lua_pushcclosure(L, io_readline, 2); +} + + +static int f_lines (lua_State *L) { + tofile(L); /* check that it's a valid file handle */ + aux_lines(L, 1, 0); + return 1; +} + + +static int io_lines (lua_State *L) { + if (lua_isnoneornil(L, 1)) { /* no arguments? */ + /* will iterate over default input */ + lua_rawgeti(L, LUA_ENVIRONINDEX, IO_INPUT); + return f_lines(L); + } + else { + const char *filename = luaL_checkstring(L, 1); + FILE **pf = newfile(L); + *pf = fopen(filename, "r"); + if (*pf == NULL) + fileerror(L, 1, filename); + aux_lines(L, lua_gettop(L), 1); + return 1; + } +} + + +/* +** {====================================================== +** READ +** ======================================================= +*/ + + +static int read_number (lua_State *L, FILE *f) { + lua_Number d; + if (fscanf(f, LUA_NUMBER_SCAN, &d) == 1) { + lua_pushnumber(L, d); + return 1; + } + else return 0; /* read fails */ +} + + +static int test_eof (lua_State *L, FILE *f) { + int c = getc(f); + ungetc(c, f); + lua_pushlstring(L, NULL, 0); + return (c != EOF); +} + + +static int read_line (lua_State *L, FILE *f) { + luaL_Buffer b; + luaL_buffinit(L, &b); + for (;;) { + size_t l; + char *p = luaL_prepbuffer(&b); + if (fgets(p, LUAL_BUFFERSIZE, f) == NULL) { /* eof? */ + luaL_pushresult(&b); /* close buffer */ + return (lua_objlen(L, -1) > 0); /* check whether read something */ + } + l = strlen(p); + if (l == 0 || p[l-1] != '\n') + luaL_addsize(&b, l); + else { + luaL_addsize(&b, l - 1); /* do not include `eol' */ + luaL_pushresult(&b); /* close buffer */ + return 1; /* read at least an `eol' */ + } + } +} + + +static int read_chars (lua_State *L, FILE *f, size_t n) { + size_t rlen; /* how much to read */ + size_t nr; /* number of chars actually read */ + luaL_Buffer b; + luaL_buffinit(L, &b); + rlen = LUAL_BUFFERSIZE; /* try to read that much each time */ + do { + char *p = luaL_prepbuffer(&b); + if (rlen > n) rlen = n; /* cannot read more than asked */ + nr = fread(p, sizeof(char), rlen, f); + luaL_addsize(&b, nr); + n -= nr; /* still have to read `n' chars */ + } while (n > 0 && nr == rlen); /* until end of count or eof */ + luaL_pushresult(&b); /* close buffer */ + return (n == 0 || lua_objlen(L, -1) > 0); +} + + +static int g_read (lua_State *L, FILE *f, int first) { + int nargs = lua_gettop(L) - 1; + int success; + int n; + clearerr(f); + if (nargs == 0) { /* no arguments? */ + success = read_line(L, f); + n = first+1; /* to return 1 result */ + } + else { /* ensure stack space for all results and for auxlib's buffer */ + luaL_checkstack(L, nargs+LUA_MINSTACK, "too many arguments"); + success = 1; + for (n = first; nargs-- && success; n++) { + if (lua_type(L, n) == LUA_TNUMBER) { + size_t l = (size_t)lua_tointeger(L, n); + success = (l == 0) ? test_eof(L, f) : read_chars(L, f, l); + } + else { + const char *p = lua_tostring(L, n); + luaL_argcheck(L, p && p[0] == '*', n, "invalid option"); + switch (p[1]) { + case 'n': /* number */ + success = read_number(L, f); + break; + case 'l': /* line */ + success = read_line(L, f); + break; + case 'a': /* file */ + read_chars(L, f, ~((size_t)0)); /* read MAX_SIZE_T chars */ + success = 1; /* always success */ + break; + default: + return luaL_argerror(L, n, "invalid format"); + } + } + } + } + if (ferror(f)) + return pushresult(L, 0, NULL); + if (!success) { + lua_pop(L, 1); /* remove last result */ + lua_pushnil(L); /* push nil instead */ + } + return n - first; +} + + +static int io_read (lua_State *L) { + return g_read(L, getiofile(L, IO_INPUT), 1); +} + + +static int f_read (lua_State *L) { + return g_read(L, tofile(L), 2); +} + + +static int io_readline (lua_State *L) { + FILE *f = *(FILE **)lua_touserdata(L, lua_upvalueindex(1)); + int sucess; + if (f == NULL) /* file is already closed? */ + luaL_error(L, "file is already closed"); + sucess = read_line(L, f); + if (ferror(f)) + return luaL_error(L, "%s", strerror(errno)); + if (sucess) return 1; + else { /* EOF */ + if (lua_toboolean(L, lua_upvalueindex(2))) { /* generator created file? */ + lua_settop(L, 0); + lua_pushvalue(L, lua_upvalueindex(1)); + aux_close(L); /* close it */ + } + return 0; + } +} + +/* }====================================================== */ + + +static int g_write (lua_State *L, FILE *f, int arg) { + int nargs = lua_gettop(L) - 1; + int status = 1; + for (; nargs--; arg++) { + if (lua_type(L, arg) == LUA_TNUMBER) { + /* optimization: could be done exactly as for strings */ + status = status && + fprintf(f, LUA_NUMBER_FMT, lua_tonumber(L, arg)) > 0; + } + else { + size_t l; + const char *s = luaL_checklstring(L, arg, &l); + status = status && (fwrite(s, sizeof(char), l, f) == l); + } + } + return pushresult(L, status, NULL); +} + + +static int io_write (lua_State *L) { + return g_write(L, getiofile(L, IO_OUTPUT), 1); +} + + +static int f_write (lua_State *L) { + return g_write(L, tofile(L), 2); +} + + +static int f_seek (lua_State *L) { + static const int mode[] = {SEEK_SET, SEEK_CUR, SEEK_END}; + static const char *const modenames[] = {"set", "cur", "end", NULL}; + FILE *f = tofile(L); + int op = luaL_checkoption(L, 2, "cur", modenames); + long offset = luaL_optlong(L, 3, 0); + op = fseek(f, offset, mode[op]); + if (op) + return pushresult(L, 0, NULL); /* error */ + else { + lua_pushinteger(L, ftell(f)); + return 1; + } +} + + +static int f_setvbuf (lua_State *L) { + static const int mode[] = {_IONBF, _IOFBF, _IOLBF}; + static const char *const modenames[] = {"no", "full", "line", NULL}; + FILE *f = tofile(L); + int op = luaL_checkoption(L, 2, NULL, modenames); + lua_Integer sz = luaL_optinteger(L, 3, LUAL_BUFFERSIZE); + int res = setvbuf(f, NULL, mode[op], sz); + return pushresult(L, res == 0, NULL); +} + + + +static int io_flush (lua_State *L) { + return pushresult(L, fflush(getiofile(L, IO_OUTPUT)) == 0, NULL); +} + + +static int f_flush (lua_State *L) { + return pushresult(L, fflush(tofile(L)) == 0, NULL); +} + + +static const luaL_Reg iolib[] = { + {"close", io_close}, + {"flush", io_flush}, + {"input", io_input}, + {"lines", io_lines}, + {"open", io_open}, + {"output", io_output}, + {"popen", io_popen}, + {"read", io_read}, + {"tmpfile", io_tmpfile}, + {"type", io_type}, + {"write", io_write}, + {NULL, NULL} +}; + + +static const luaL_Reg flib[] = { + {"close", io_close}, + {"flush", f_flush}, + {"lines", f_lines}, + {"read", f_read}, + {"seek", f_seek}, + {"setvbuf", f_setvbuf}, + {"write", f_write}, + {"__gc", io_gc}, + {"__tostring", io_tostring}, + {NULL, NULL} +}; + + +static void createmeta (lua_State *L) { + luaL_newmetatable(L, LUA_FILEHANDLE); /* create metatable for file handles */ + lua_pushvalue(L, -1); /* push metatable */ + lua_setfield(L, -2, "__index"); /* metatable.__index = metatable */ + luaL_register(L, NULL, flib); /* file methods */ +} + + +static void createstdfile (lua_State *L, FILE *f, int k, const char *fname) { + *newfile(L) = f; + if (k > 0) { + lua_pushvalue(L, -1); + lua_rawseti(L, LUA_ENVIRONINDEX, k); + } + lua_pushvalue(L, -2); /* copy environment */ + lua_setfenv(L, -2); /* set it */ + lua_setfield(L, -3, fname); +} + + +static void newfenv (lua_State *L, lua_CFunction cls) { + lua_createtable(L, 0, 1); + lua_pushcfunction(L, cls); + lua_setfield(L, -2, "__close"); +} + + +LUALIB_API int luaopen_io (lua_State *L) { + createmeta(L); + /* create (private) environment (with fields IO_INPUT, IO_OUTPUT, __close) */ + newfenv(L, io_fclose); + lua_replace(L, LUA_ENVIRONINDEX); + /* open library */ + luaL_register(L, LUA_IOLIBNAME, iolib); + /* create (and set) default files */ + newfenv(L, io_noclose); /* close function for default files */ + createstdfile(L, stdin, IO_INPUT, "stdin"); + createstdfile(L, stdout, IO_OUTPUT, "stdout"); + createstdfile(L, stderr, 0, "stderr"); + lua_pop(L, 1); /* pop environment for default files */ + lua_getfield(L, -1, "popen"); + newfenv(L, io_pclose); /* create environment for 'popen' */ + lua_setfenv(L, -2); /* set fenv for 'popen' */ + lua_pop(L, 1); /* pop 'popen' */ + return 1; +} + diff --git a/lua-5.1.4/src/llex.c b/lua-5.1.4/src/llex.c new file mode 100644 index 0000000..6dc3193 --- /dev/null +++ b/lua-5.1.4/src/llex.c @@ -0,0 +1,461 @@ +/* +** $Id: llex.c,v 2.20.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lexical Analyzer +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define llex_c +#define LUA_CORE + +#include "lua.h" + +#include "ldo.h" +#include "llex.h" +#include "lobject.h" +#include "lparser.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "lzio.h" + + + +#define next(ls) (ls->current = zgetc(ls->z)) + + + + +#define currIsNewline(ls) (ls->current == '\n' || ls->current == '\r') + + +/* ORDER RESERVED */ +const char *const luaX_tokens [] = { + "and", "break", "do", "else", "elseif", + "end", "false", "for", "function", "if", + "in", "local", "nil", "not", "or", "repeat", + "return", "then", "true", "until", "while", + "..", "...", "==", ">=", "<=", "~=", + "", "", "", "", + NULL +}; + + +#define save_and_next(ls) (save(ls, ls->current), next(ls)) + + +static void save (LexState *ls, int c) { + Mbuffer *b = ls->buff; + if (b->n + 1 > b->buffsize) { + size_t newsize; + if (b->buffsize >= MAX_SIZET/2) + luaX_lexerror(ls, "lexical element too long", 0); + newsize = b->buffsize * 2; + luaZ_resizebuffer(ls->L, b, newsize); + } + b->buffer[b->n++] = cast(char, c); +} + + +void luaX_init (lua_State *L) { + int i; + for (i=0; itsv.reserved = cast_byte(i+1); /* reserved word */ + } +} + + +#define MAXSRC 80 + + +const char *luaX_token2str (LexState *ls, int token) { + if (token < FIRST_RESERVED) { + lua_assert(token == cast(unsigned char, token)); + return (iscntrl(token)) ? luaO_pushfstring(ls->L, "char(%d)", token) : + luaO_pushfstring(ls->L, "%c", token); + } + else + return luaX_tokens[token-FIRST_RESERVED]; +} + + +static const char *txtToken (LexState *ls, int token) { + switch (token) { + case TK_NAME: + case TK_STRING: + case TK_NUMBER: + save(ls, '\0'); + return luaZ_buffer(ls->buff); + default: + return luaX_token2str(ls, token); + } +} + + +void luaX_lexerror (LexState *ls, const char *msg, int token) { + char buff[MAXSRC]; + luaO_chunkid(buff, getstr(ls->source), MAXSRC); + msg = luaO_pushfstring(ls->L, "%s:%d: %s", buff, ls->linenumber, msg); + if (token) + luaO_pushfstring(ls->L, "%s near " LUA_QS, msg, txtToken(ls, token)); + luaD_throw(ls->L, LUA_ERRSYNTAX); +} + + +void luaX_syntaxerror (LexState *ls, const char *msg) { + luaX_lexerror(ls, msg, ls->t.token); +} + + +TString *luaX_newstring (LexState *ls, const char *str, size_t l) { + lua_State *L = ls->L; + TString *ts = luaS_newlstr(L, str, l); + TValue *o = luaH_setstr(L, ls->fs->h, ts); /* entry for `str' */ + if (ttisnil(o)) + setbvalue(o, 1); /* make sure `str' will not be collected */ + return ts; +} + + +static void inclinenumber (LexState *ls) { + int old = ls->current; + lua_assert(currIsNewline(ls)); + next(ls); /* skip `\n' or `\r' */ + if (currIsNewline(ls) && ls->current != old) + next(ls); /* skip `\n\r' or `\r\n' */ + if (++ls->linenumber >= MAX_INT) + luaX_syntaxerror(ls, "chunk has too many lines"); +} + + +void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, TString *source) { + ls->decpoint = '.'; + ls->L = L; + ls->lookahead.token = TK_EOS; /* no look-ahead token */ + ls->z = z; + ls->fs = NULL; + ls->linenumber = 1; + ls->lastline = 1; + ls->source = source; + luaZ_resizebuffer(ls->L, ls->buff, LUA_MINBUFFER); /* initialize buffer */ + next(ls); /* read first char */ +} + + + +/* +** ======================================================= +** LEXICAL ANALYZER +** ======================================================= +*/ + + + +static int check_next (LexState *ls, const char *set) { + if (!strchr(set, ls->current)) + return 0; + save_and_next(ls); + return 1; +} + + +static void buffreplace (LexState *ls, char from, char to) { + size_t n = luaZ_bufflen(ls->buff); + char *p = luaZ_buffer(ls->buff); + while (n--) + if (p[n] == from) p[n] = to; +} + + +static void trydecpoint (LexState *ls, SemInfo *seminfo) { + /* format error: try to update decimal point separator */ + struct lconv *cv = localeconv(); + char old = ls->decpoint; + ls->decpoint = (cv ? cv->decimal_point[0] : '.'); + buffreplace(ls, old, ls->decpoint); /* try updated decimal separator */ + if (!luaO_str2d(luaZ_buffer(ls->buff), &seminfo->r)) { + /* format error with correct decimal point: no more options */ + buffreplace(ls, ls->decpoint, '.'); /* undo change (for error message) */ + luaX_lexerror(ls, "malformed number", TK_NUMBER); + } +} + + +/* LUA_NUMBER */ +static void read_numeral (LexState *ls, SemInfo *seminfo) { + lua_assert(isdigit(ls->current)); + do { + save_and_next(ls); + } while (isdigit(ls->current) || ls->current == '.'); + if (check_next(ls, "Ee")) /* `E'? */ + check_next(ls, "+-"); /* optional exponent sign */ + while (isalnum(ls->current) || ls->current == '_') + save_and_next(ls); + save(ls, '\0'); + buffreplace(ls, '.', ls->decpoint); /* follow locale for decimal point */ + if (!luaO_str2d(luaZ_buffer(ls->buff), &seminfo->r)) /* format error? */ + trydecpoint(ls, seminfo); /* try to update decimal point separator */ +} + + +static int skip_sep (LexState *ls) { + int count = 0; + int s = ls->current; + lua_assert(s == '[' || s == ']'); + save_and_next(ls); + while (ls->current == '=') { + save_and_next(ls); + count++; + } + return (ls->current == s) ? count : (-count) - 1; +} + + +static void read_long_string (LexState *ls, SemInfo *seminfo, int sep) { + int cont = 0; + (void)(cont); /* avoid warnings when `cont' is not used */ + save_and_next(ls); /* skip 2nd `[' */ + if (currIsNewline(ls)) /* string starts with a newline? */ + inclinenumber(ls); /* skip it */ + for (;;) { + switch (ls->current) { + case EOZ: + luaX_lexerror(ls, (seminfo) ? "unfinished long string" : + "unfinished long comment", TK_EOS); + break; /* to avoid warnings */ +#if defined(LUA_COMPAT_LSTR) + case '[': { + if (skip_sep(ls) == sep) { + save_and_next(ls); /* skip 2nd `[' */ + cont++; +#if LUA_COMPAT_LSTR == 1 + if (sep == 0) + luaX_lexerror(ls, "nesting of [[...]] is deprecated", '['); +#endif + } + break; + } +#endif + case ']': { + if (skip_sep(ls) == sep) { + save_and_next(ls); /* skip 2nd `]' */ +#if defined(LUA_COMPAT_LSTR) && LUA_COMPAT_LSTR == 2 + cont--; + if (sep == 0 && cont >= 0) break; +#endif + goto endloop; + } + break; + } + case '\n': + case '\r': { + save(ls, '\n'); + inclinenumber(ls); + if (!seminfo) luaZ_resetbuffer(ls->buff); /* avoid wasting space */ + break; + } + default: { + if (seminfo) save_and_next(ls); + else next(ls); + } + } + } endloop: + if (seminfo) + seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + (2 + sep), + luaZ_bufflen(ls->buff) - 2*(2 + sep)); +} + + +static void read_string (LexState *ls, int del, SemInfo *seminfo) { + save_and_next(ls); + while (ls->current != del) { + switch (ls->current) { + case EOZ: + luaX_lexerror(ls, "unfinished string", TK_EOS); + continue; /* to avoid warnings */ + case '\n': + case '\r': + luaX_lexerror(ls, "unfinished string", TK_STRING); + continue; /* to avoid warnings */ + case '\\': { + int c; + next(ls); /* do not save the `\' */ + switch (ls->current) { + case 'a': c = '\a'; break; + case 'b': c = '\b'; break; + case 'f': c = '\f'; break; + case 'n': c = '\n'; break; + case 'r': c = '\r'; break; + case 't': c = '\t'; break; + case 'v': c = '\v'; break; + case '\n': /* go through */ + case '\r': save(ls, '\n'); inclinenumber(ls); continue; + case EOZ: continue; /* will raise an error next loop */ + default: { + if (!isdigit(ls->current)) + save_and_next(ls); /* handles \\, \", \', and \? */ + else { /* \xxx */ + int i = 0; + c = 0; + do { + c = 10*c + (ls->current-'0'); + next(ls); + } while (++i<3 && isdigit(ls->current)); + if (c > UCHAR_MAX) + luaX_lexerror(ls, "escape sequence too large", TK_STRING); + save(ls, c); + } + continue; + } + } + save(ls, c); + next(ls); + continue; + } + default: + save_and_next(ls); + } + } + save_and_next(ls); /* skip delimiter */ + seminfo->ts = luaX_newstring(ls, luaZ_buffer(ls->buff) + 1, + luaZ_bufflen(ls->buff) - 2); +} + + +static int llex (LexState *ls, SemInfo *seminfo) { + luaZ_resetbuffer(ls->buff); + for (;;) { + switch (ls->current) { + case '\n': + case '\r': { + inclinenumber(ls); + continue; + } + case '-': { + next(ls); + if (ls->current != '-') return '-'; + /* else is a comment */ + next(ls); + if (ls->current == '[') { + int sep = skip_sep(ls); + luaZ_resetbuffer(ls->buff); /* `skip_sep' may dirty the buffer */ + if (sep >= 0) { + read_long_string(ls, NULL, sep); /* long comment */ + luaZ_resetbuffer(ls->buff); + continue; + } + } + /* else short comment */ + while (!currIsNewline(ls) && ls->current != EOZ) + next(ls); + continue; + } + case '[': { + int sep = skip_sep(ls); + if (sep >= 0) { + read_long_string(ls, seminfo, sep); + return TK_STRING; + } + else if (sep == -1) return '['; + else luaX_lexerror(ls, "invalid long string delimiter", TK_STRING); + } + case '=': { + next(ls); + if (ls->current != '=') return '='; + else { next(ls); return TK_EQ; } + } + case '<': { + next(ls); + if (ls->current != '=') return '<'; + else { next(ls); return TK_LE; } + } + case '>': { + next(ls); + if (ls->current != '=') return '>'; + else { next(ls); return TK_GE; } + } + case '~': { + next(ls); + if (ls->current != '=') return '~'; + else { next(ls); return TK_NE; } + } + case '"': + case '\'': { + read_string(ls, ls->current, seminfo); + return TK_STRING; + } + case '.': { + save_and_next(ls); + if (check_next(ls, ".")) { + if (check_next(ls, ".")) + return TK_DOTS; /* ... */ + else return TK_CONCAT; /* .. */ + } + else if (!isdigit(ls->current)) return '.'; + else { + read_numeral(ls, seminfo); + return TK_NUMBER; + } + } + case EOZ: { + return TK_EOS; + } + default: { + if (isspace(ls->current)) { + lua_assert(!currIsNewline(ls)); + next(ls); + continue; + } + else if (isdigit(ls->current)) { + read_numeral(ls, seminfo); + return TK_NUMBER; + } + else if (isalpha(ls->current) || ls->current == '_') { + /* identifier or reserved word */ + TString *ts; + do { + save_and_next(ls); + } while (isalnum(ls->current) || ls->current == '_'); + ts = luaX_newstring(ls, luaZ_buffer(ls->buff), + luaZ_bufflen(ls->buff)); + if (ts->tsv.reserved > 0) /* reserved word? */ + return ts->tsv.reserved - 1 + FIRST_RESERVED; + else { + seminfo->ts = ts; + return TK_NAME; + } + } + else { + int c = ls->current; + next(ls); + return c; /* single-char tokens (+ - / ...) */ + } + } + } + } +} + + +void luaX_next (LexState *ls) { + ls->lastline = ls->linenumber; + if (ls->lookahead.token != TK_EOS) { /* is there a look-ahead token? */ + ls->t = ls->lookahead; /* use this one */ + ls->lookahead.token = TK_EOS; /* and discharge it */ + } + else + ls->t.token = llex(ls, &ls->t.seminfo); /* read next token */ +} + + +void luaX_lookahead (LexState *ls) { + lua_assert(ls->lookahead.token == TK_EOS); + ls->lookahead.token = llex(ls, &ls->lookahead.seminfo); +} + diff --git a/lua-5.1.4/src/llex.h b/lua-5.1.4/src/llex.h new file mode 100644 index 0000000..a9201ce --- /dev/null +++ b/lua-5.1.4/src/llex.h @@ -0,0 +1,81 @@ +/* +** $Id: llex.h,v 1.58.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lexical Analyzer +** See Copyright Notice in lua.h +*/ + +#ifndef llex_h +#define llex_h + +#include "lobject.h" +#include "lzio.h" + + +#define FIRST_RESERVED 257 + +/* maximum length of a reserved word */ +#define TOKEN_LEN (sizeof("function")/sizeof(char)) + + +/* +* WARNING: if you change the order of this enumeration, +* grep "ORDER RESERVED" +*/ +enum RESERVED { + /* terminal symbols denoted by reserved words */ + TK_AND = FIRST_RESERVED, TK_BREAK, + TK_DO, TK_ELSE, TK_ELSEIF, TK_END, TK_FALSE, TK_FOR, TK_FUNCTION, + TK_IF, TK_IN, TK_LOCAL, TK_NIL, TK_NOT, TK_OR, TK_REPEAT, + TK_RETURN, TK_THEN, TK_TRUE, TK_UNTIL, TK_WHILE, + /* other terminal symbols */ + TK_CONCAT, TK_DOTS, TK_EQ, TK_GE, TK_LE, TK_NE, TK_NUMBER, + TK_NAME, TK_STRING, TK_EOS +}; + +/* number of reserved words */ +#define NUM_RESERVED (cast(int, TK_WHILE-FIRST_RESERVED+1)) + + +/* array with token `names' */ +LUAI_DATA const char *const luaX_tokens []; + + +typedef union { + lua_Number r; + TString *ts; +} SemInfo; /* semantics information */ + + +typedef struct Token { + int token; + SemInfo seminfo; +} Token; + + +typedef struct LexState { + int current; /* current character (charint) */ + int linenumber; /* input line counter */ + int lastline; /* line of last token `consumed' */ + Token t; /* current token */ + Token lookahead; /* look ahead token */ + struct FuncState *fs; /* `FuncState' is private to the parser */ + struct lua_State *L; + ZIO *z; /* input stream */ + Mbuffer *buff; /* buffer for tokens */ + TString *source; /* current source name */ + char decpoint; /* locale decimal point */ +} LexState; + + +LUAI_FUNC void luaX_init (lua_State *L); +LUAI_FUNC void luaX_setinput (lua_State *L, LexState *ls, ZIO *z, + TString *source); +LUAI_FUNC TString *luaX_newstring (LexState *ls, const char *str, size_t l); +LUAI_FUNC void luaX_next (LexState *ls); +LUAI_FUNC void luaX_lookahead (LexState *ls); +LUAI_FUNC void luaX_lexerror (LexState *ls, const char *msg, int token); +LUAI_FUNC void luaX_syntaxerror (LexState *ls, const char *s); +LUAI_FUNC const char *luaX_token2str (LexState *ls, int token); + + +#endif diff --git a/lua-5.1.4/src/llimits.h b/lua-5.1.4/src/llimits.h new file mode 100644 index 0000000..ca8dcb7 --- /dev/null +++ b/lua-5.1.4/src/llimits.h @@ -0,0 +1,128 @@ +/* +** $Id: llimits.h,v 1.69.1.1 2007/12/27 13:02:25 roberto Exp $ +** Limits, basic types, and some other `installation-dependent' definitions +** See Copyright Notice in lua.h +*/ + +#ifndef llimits_h +#define llimits_h + + +#include +#include + + +#include "lua.h" + + +typedef LUAI_UINT32 lu_int32; + +typedef LUAI_UMEM lu_mem; + +typedef LUAI_MEM l_mem; + + + +/* chars used as small naturals (so that `char' is reserved for characters) */ +typedef unsigned char lu_byte; + + +#define MAX_SIZET ((size_t)(~(size_t)0)-2) + +#define MAX_LUMEM ((lu_mem)(~(lu_mem)0)-2) + + +#define MAX_INT (INT_MAX-2) /* maximum value of an int (-2 for safety) */ + +/* +** conversion of pointer to integer +** this is for hashing only; there is no problem if the integer +** cannot hold the whole pointer value +*/ +#define IntPoint(p) ((unsigned int)(lu_mem)(p)) + + + +/* type to ensure maximum alignment */ +typedef LUAI_USER_ALIGNMENT_T L_Umaxalign; + + +/* result of a `usual argument conversion' over lua_Number */ +typedef LUAI_UACNUMBER l_uacNumber; + + +/* internal assertions for in-house debugging */ +#ifdef lua_assert + +#define check_exp(c,e) (lua_assert(c), (e)) +#define api_check(l,e) lua_assert(e) + +#else + +#define lua_assert(c) ((void)0) +#define check_exp(c,e) (e) +#define api_check luai_apicheck + +#endif + + +#ifndef UNUSED +#define UNUSED(x) ((void)(x)) /* to avoid warnings */ +#endif + + +#ifndef cast +#define cast(t, exp) ((t)(exp)) +#endif + +#define cast_byte(i) cast(lu_byte, (i)) +#define cast_num(i) cast(lua_Number, (i)) +#define cast_int(i) cast(int, (i)) + + + +/* +** type for virtual-machine instructions +** must be an unsigned with (at least) 4 bytes (see details in lopcodes.h) +*/ +typedef lu_int32 Instruction; + + + +/* maximum stack for a Lua function */ +#define MAXSTACK 250 + + + +/* minimum size for the string table (must be power of 2) */ +#ifndef MINSTRTABSIZE +#define MINSTRTABSIZE 32 +#endif + + +/* minimum size for string buffer */ +#ifndef LUA_MINBUFFER +#define LUA_MINBUFFER 32 +#endif + + +#ifndef lua_lock +#define lua_lock(L) ((void) 0) +#define lua_unlock(L) ((void) 0) +#endif + +#ifndef luai_threadyield +#define luai_threadyield(L) {lua_unlock(L); lua_lock(L);} +#endif + + +/* +** macro to control inclusion of some hard tests on stack reallocation +*/ +#ifndef HARDSTACKTESTS +#define condhardstacktests(x) ((void)0) +#else +#define condhardstacktests(x) x +#endif + +#endif diff --git a/lua-5.1.4/src/lmathlib.c b/lua-5.1.4/src/lmathlib.c new file mode 100644 index 0000000..441fbf7 --- /dev/null +++ b/lua-5.1.4/src/lmathlib.c @@ -0,0 +1,263 @@ +/* +** $Id: lmathlib.c,v 1.67.1.1 2007/12/27 13:02:25 roberto Exp $ +** Standard mathematical library +** See Copyright Notice in lua.h +*/ + + +#include +#include + +#define lmathlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +#undef PI +#define PI (3.14159265358979323846) +#define RADIANS_PER_DEGREE (PI/180.0) + + + +static int math_abs (lua_State *L) { + lua_pushnumber(L, fabs(luaL_checknumber(L, 1))); + return 1; +} + +static int math_sin (lua_State *L) { + lua_pushnumber(L, sin(luaL_checknumber(L, 1))); + return 1; +} + +static int math_sinh (lua_State *L) { + lua_pushnumber(L, sinh(luaL_checknumber(L, 1))); + return 1; +} + +static int math_cos (lua_State *L) { + lua_pushnumber(L, cos(luaL_checknumber(L, 1))); + return 1; +} + +static int math_cosh (lua_State *L) { + lua_pushnumber(L, cosh(luaL_checknumber(L, 1))); + return 1; +} + +static int math_tan (lua_State *L) { + lua_pushnumber(L, tan(luaL_checknumber(L, 1))); + return 1; +} + +static int math_tanh (lua_State *L) { + lua_pushnumber(L, tanh(luaL_checknumber(L, 1))); + return 1; +} + +static int math_asin (lua_State *L) { + lua_pushnumber(L, asin(luaL_checknumber(L, 1))); + return 1; +} + +static int math_acos (lua_State *L) { + lua_pushnumber(L, acos(luaL_checknumber(L, 1))); + return 1; +} + +static int math_atan (lua_State *L) { + lua_pushnumber(L, atan(luaL_checknumber(L, 1))); + return 1; +} + +static int math_atan2 (lua_State *L) { + lua_pushnumber(L, atan2(luaL_checknumber(L, 1), luaL_checknumber(L, 2))); + return 1; +} + +static int math_ceil (lua_State *L) { + lua_pushnumber(L, ceil(luaL_checknumber(L, 1))); + return 1; +} + +static int math_floor (lua_State *L) { + lua_pushnumber(L, floor(luaL_checknumber(L, 1))); + return 1; +} + +static int math_fmod (lua_State *L) { + lua_pushnumber(L, fmod(luaL_checknumber(L, 1), luaL_checknumber(L, 2))); + return 1; +} + +static int math_modf (lua_State *L) { + double ip; + double fp = modf(luaL_checknumber(L, 1), &ip); + lua_pushnumber(L, ip); + lua_pushnumber(L, fp); + return 2; +} + +static int math_sqrt (lua_State *L) { + lua_pushnumber(L, sqrt(luaL_checknumber(L, 1))); + return 1; +} + +static int math_pow (lua_State *L) { + lua_pushnumber(L, pow(luaL_checknumber(L, 1), luaL_checknumber(L, 2))); + return 1; +} + +static int math_log (lua_State *L) { + lua_pushnumber(L, log(luaL_checknumber(L, 1))); + return 1; +} + +static int math_log10 (lua_State *L) { + lua_pushnumber(L, log10(luaL_checknumber(L, 1))); + return 1; +} + +static int math_exp (lua_State *L) { + lua_pushnumber(L, exp(luaL_checknumber(L, 1))); + return 1; +} + +static int math_deg (lua_State *L) { + lua_pushnumber(L, luaL_checknumber(L, 1)/RADIANS_PER_DEGREE); + return 1; +} + +static int math_rad (lua_State *L) { + lua_pushnumber(L, luaL_checknumber(L, 1)*RADIANS_PER_DEGREE); + return 1; +} + +static int math_frexp (lua_State *L) { + int e; + lua_pushnumber(L, frexp(luaL_checknumber(L, 1), &e)); + lua_pushinteger(L, e); + return 2; +} + +static int math_ldexp (lua_State *L) { + lua_pushnumber(L, ldexp(luaL_checknumber(L, 1), luaL_checkint(L, 2))); + return 1; +} + + + +static int math_min (lua_State *L) { + int n = lua_gettop(L); /* number of arguments */ + lua_Number dmin = luaL_checknumber(L, 1); + int i; + for (i=2; i<=n; i++) { + lua_Number d = luaL_checknumber(L, i); + if (d < dmin) + dmin = d; + } + lua_pushnumber(L, dmin); + return 1; +} + + +static int math_max (lua_State *L) { + int n = lua_gettop(L); /* number of arguments */ + lua_Number dmax = luaL_checknumber(L, 1); + int i; + for (i=2; i<=n; i++) { + lua_Number d = luaL_checknumber(L, i); + if (d > dmax) + dmax = d; + } + lua_pushnumber(L, dmax); + return 1; +} + + +static int math_random (lua_State *L) { + /* the `%' avoids the (rare) case of r==1, and is needed also because on + some systems (SunOS!) `rand()' may return a value larger than RAND_MAX */ + lua_Number r = (lua_Number)(rand()%RAND_MAX) / (lua_Number)RAND_MAX; + switch (lua_gettop(L)) { /* check number of arguments */ + case 0: { /* no arguments */ + lua_pushnumber(L, r); /* Number between 0 and 1 */ + break; + } + case 1: { /* only upper limit */ + int u = luaL_checkint(L, 1); + luaL_argcheck(L, 1<=u, 1, "interval is empty"); + lua_pushnumber(L, floor(r*u)+1); /* int between 1 and `u' */ + break; + } + case 2: { /* lower and upper limits */ + int l = luaL_checkint(L, 1); + int u = luaL_checkint(L, 2); + luaL_argcheck(L, l<=u, 2, "interval is empty"); + lua_pushnumber(L, floor(r*(u-l+1))+l); /* int between `l' and `u' */ + break; + } + default: return luaL_error(L, "wrong number of arguments"); + } + return 1; +} + + +static int math_randomseed (lua_State *L) { + srand(luaL_checkint(L, 1)); + return 0; +} + + +static const luaL_Reg mathlib[] = { + {"abs", math_abs}, + {"acos", math_acos}, + {"asin", math_asin}, + {"atan2", math_atan2}, + {"atan", math_atan}, + {"ceil", math_ceil}, + {"cosh", math_cosh}, + {"cos", math_cos}, + {"deg", math_deg}, + {"exp", math_exp}, + {"floor", math_floor}, + {"fmod", math_fmod}, + {"frexp", math_frexp}, + {"ldexp", math_ldexp}, + {"log10", math_log10}, + {"log", math_log}, + {"max", math_max}, + {"min", math_min}, + {"modf", math_modf}, + {"pow", math_pow}, + {"rad", math_rad}, + {"random", math_random}, + {"randomseed", math_randomseed}, + {"sinh", math_sinh}, + {"sin", math_sin}, + {"sqrt", math_sqrt}, + {"tanh", math_tanh}, + {"tan", math_tan}, + {NULL, NULL} +}; + + +/* +** Open math library +*/ +LUALIB_API int luaopen_math (lua_State *L) { + luaL_register(L, LUA_MATHLIBNAME, mathlib); + lua_pushnumber(L, PI); + lua_setfield(L, -2, "pi"); + lua_pushnumber(L, HUGE_VAL); + lua_setfield(L, -2, "huge"); +#if defined(LUA_COMPAT_MOD) + lua_getfield(L, -1, "fmod"); + lua_setfield(L, -2, "mod"); +#endif + return 1; +} + diff --git a/lua-5.1.4/src/lmem.c b/lua-5.1.4/src/lmem.c new file mode 100644 index 0000000..ae7d8c9 --- /dev/null +++ b/lua-5.1.4/src/lmem.c @@ -0,0 +1,86 @@ +/* +** $Id: lmem.c,v 1.70.1.1 2007/12/27 13:02:25 roberto Exp $ +** Interface to Memory Manager +** See Copyright Notice in lua.h +*/ + + +#include + +#define lmem_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" + + + +/* +** About the realloc function: +** void * frealloc (void *ud, void *ptr, size_t osize, size_t nsize); +** (`osize' is the old size, `nsize' is the new size) +** +** Lua ensures that (ptr == NULL) iff (osize == 0). +** +** * frealloc(ud, NULL, 0, x) creates a new block of size `x' +** +** * frealloc(ud, p, x, 0) frees the block `p' +** (in this specific case, frealloc must return NULL). +** particularly, frealloc(ud, NULL, 0, 0) does nothing +** (which is equivalent to free(NULL) in ANSI C) +** +** frealloc returns NULL if it cannot create or reallocate the area +** (any reallocation to an equal or smaller size cannot fail!) +*/ + + + +#define MINSIZEARRAY 4 + + +void *luaM_growaux_ (lua_State *L, void *block, int *size, size_t size_elems, + int limit, const char *errormsg) { + void *newblock; + int newsize; + if (*size >= limit/2) { /* cannot double it? */ + if (*size >= limit) /* cannot grow even a little? */ + luaG_runerror(L, errormsg); + newsize = limit; /* still have at least one free place */ + } + else { + newsize = (*size)*2; + if (newsize < MINSIZEARRAY) + newsize = MINSIZEARRAY; /* minimum size */ + } + newblock = luaM_reallocv(L, block, *size, newsize, size_elems); + *size = newsize; /* update only when everything else is OK */ + return newblock; +} + + +void *luaM_toobig (lua_State *L) { + luaG_runerror(L, "memory allocation error: block too big"); + return NULL; /* to avoid warnings */ +} + + + +/* +** generic allocation routine. +*/ +void *luaM_realloc_ (lua_State *L, void *block, size_t osize, size_t nsize) { + global_State *g = G(L); + lua_assert((osize == 0) == (block == NULL)); + block = (*g->frealloc)(g->ud, block, osize, nsize); + if (block == NULL && nsize > 0) + luaD_throw(L, LUA_ERRMEM); + lua_assert((nsize == 0) == (block == NULL)); + g->totalbytes = (g->totalbytes - osize) + nsize; + return block; +} + diff --git a/lua-5.1.4/src/lmem.h b/lua-5.1.4/src/lmem.h new file mode 100644 index 0000000..7c2dcb3 --- /dev/null +++ b/lua-5.1.4/src/lmem.h @@ -0,0 +1,49 @@ +/* +** $Id: lmem.h,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ +** Interface to Memory Manager +** See Copyright Notice in lua.h +*/ + +#ifndef lmem_h +#define lmem_h + + +#include + +#include "llimits.h" +#include "lua.h" + +#define MEMERRMSG "not enough memory" + + +#define luaM_reallocv(L,b,on,n,e) \ + ((cast(size_t, (n)+1) <= MAX_SIZET/(e)) ? /* +1 to avoid warnings */ \ + luaM_realloc_(L, (b), (on)*(e), (n)*(e)) : \ + luaM_toobig(L)) + +#define luaM_freemem(L, b, s) luaM_realloc_(L, (b), (s), 0) +#define luaM_free(L, b) luaM_realloc_(L, (b), sizeof(*(b)), 0) +#define luaM_freearray(L, b, n, t) luaM_reallocv(L, (b), n, 0, sizeof(t)) + +#define luaM_malloc(L,t) luaM_realloc_(L, NULL, 0, (t)) +#define luaM_new(L,t) cast(t *, luaM_malloc(L, sizeof(t))) +#define luaM_newvector(L,n,t) \ + cast(t *, luaM_reallocv(L, NULL, 0, n, sizeof(t))) + +#define luaM_growvector(L,v,nelems,size,t,limit,e) \ + if ((nelems)+1 > (size)) \ + ((v)=cast(t *, luaM_growaux_(L,v,&(size),sizeof(t),limit,e))) + +#define luaM_reallocvector(L, v,oldn,n,t) \ + ((v)=cast(t *, luaM_reallocv(L, v, oldn, n, sizeof(t)))) + + +LUAI_FUNC void *luaM_realloc_ (lua_State *L, void *block, size_t oldsize, + size_t size); +LUAI_FUNC void *luaM_toobig (lua_State *L); +LUAI_FUNC void *luaM_growaux_ (lua_State *L, void *block, int *size, + size_t size_elem, int limit, + const char *errormsg); + +#endif + diff --git a/lua-5.1.4/src/loadlib.c b/lua-5.1.4/src/loadlib.c new file mode 100644 index 0000000..0d401eb --- /dev/null +++ b/lua-5.1.4/src/loadlib.c @@ -0,0 +1,666 @@ +/* +** $Id: loadlib.c,v 1.52.1.3 2008/08/06 13:29:28 roberto Exp $ +** Dynamic library loader for Lua +** See Copyright Notice in lua.h +** +** This module contains an implementation of loadlib for Unix systems +** that have dlfcn, an implementation for Darwin (Mac OS X), an +** implementation for Windows, and a stub for other systems. +*/ + + +#include +#include + + +#define loadlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +/* prefix for open functions in C libraries */ +#define LUA_POF "luaopen_" + +/* separator for open functions in C libraries */ +#define LUA_OFSEP "_" + + +#define LIBPREFIX "LOADLIB: " + +#define POF LUA_POF +#define LIB_FAIL "open" + + +/* error codes for ll_loadfunc */ +#define ERRLIB 1 +#define ERRFUNC 2 + +#define setprogdir(L) ((void)0) + + +static void ll_unloadlib (void *lib); +static void *ll_load (lua_State *L, const char *path); +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym); + + + +#if defined(LUA_DL_DLOPEN) +/* +** {======================================================================== +** This is an implementation of loadlib based on the dlfcn interface. +** The dlfcn interface is available in Linux, SunOS, Solaris, IRIX, FreeBSD, +** NetBSD, AIX 4.2, HPUX 11, and probably most other Unix flavors, at least +** as an emulation layer on top of native functions. +** ========================================================================= +*/ + +#include + +static void ll_unloadlib (void *lib) { + dlclose(lib); +} + + +static void *ll_load (lua_State *L, const char *path) { + void *lib = dlopen(path, RTLD_NOW); + if (lib == NULL) lua_pushstring(L, dlerror()); + return lib; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + lua_CFunction f = (lua_CFunction)dlsym(lib, sym); + if (f == NULL) lua_pushstring(L, dlerror()); + return f; +} + +/* }====================================================== */ + + + +#elif defined(LUA_DL_DLL) +/* +** {====================================================================== +** This is an implementation of loadlib for Windows using native functions. +** ======================================================================= +*/ + +#include + + +#undef setprogdir + +static void setprogdir (lua_State *L) { + char buff[MAX_PATH + 1]; + char *lb; + DWORD nsize = sizeof(buff)/sizeof(char); + DWORD n = GetModuleFileNameA(NULL, buff, nsize); + if (n == 0 || n == nsize || (lb = strrchr(buff, '\\')) == NULL) + luaL_error(L, "unable to get ModuleFileName"); + else { + *lb = '\0'; + luaL_gsub(L, lua_tostring(L, -1), LUA_EXECDIR, buff); + lua_remove(L, -2); /* remove original string */ + } +} + + +static void pusherror (lua_State *L) { + int error = GetLastError(); + char buffer[128]; + if (FormatMessageA(FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_FROM_SYSTEM, + NULL, error, 0, buffer, sizeof(buffer), NULL)) + lua_pushstring(L, buffer); + else + lua_pushfstring(L, "system error %d\n", error); +} + +static void ll_unloadlib (void *lib) { + FreeLibrary((HINSTANCE)lib); +} + + +static void *ll_load (lua_State *L, const char *path) { + HINSTANCE lib = LoadLibraryA(path); + if (lib == NULL) pusherror(L); + return lib; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + lua_CFunction f = (lua_CFunction)GetProcAddress((HINSTANCE)lib, sym); + if (f == NULL) pusherror(L); + return f; +} + +/* }====================================================== */ + + + +#elif defined(LUA_DL_DYLD) +/* +** {====================================================================== +** Native Mac OS X / Darwin Implementation +** ======================================================================= +*/ + +#include + + +/* Mac appends a `_' before C function names */ +#undef POF +#define POF "_" LUA_POF + + +static void pusherror (lua_State *L) { + const char *err_str; + const char *err_file; + NSLinkEditErrors err; + int err_num; + NSLinkEditError(&err, &err_num, &err_file, &err_str); + lua_pushstring(L, err_str); +} + + +static const char *errorfromcode (NSObjectFileImageReturnCode ret) { + switch (ret) { + case NSObjectFileImageInappropriateFile: + return "file is not a bundle"; + case NSObjectFileImageArch: + return "library is for wrong CPU type"; + case NSObjectFileImageFormat: + return "bad format"; + case NSObjectFileImageAccess: + return "cannot access file"; + case NSObjectFileImageFailure: + default: + return "unable to load library"; + } +} + + +static void ll_unloadlib (void *lib) { + NSUnLinkModule((NSModule)lib, NSUNLINKMODULE_OPTION_RESET_LAZY_REFERENCES); +} + + +static void *ll_load (lua_State *L, const char *path) { + NSObjectFileImage img; + NSObjectFileImageReturnCode ret; + /* this would be a rare case, but prevents crashing if it happens */ + if(!_dyld_present()) { + lua_pushliteral(L, "dyld not present"); + return NULL; + } + ret = NSCreateObjectFileImageFromFile(path, &img); + if (ret == NSObjectFileImageSuccess) { + NSModule mod = NSLinkModule(img, path, NSLINKMODULE_OPTION_PRIVATE | + NSLINKMODULE_OPTION_RETURN_ON_ERROR); + NSDestroyObjectFileImage(img); + if (mod == NULL) pusherror(L); + return mod; + } + lua_pushstring(L, errorfromcode(ret)); + return NULL; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + NSSymbol nss = NSLookupSymbolInModule((NSModule)lib, sym); + if (nss == NULL) { + lua_pushfstring(L, "symbol " LUA_QS " not found", sym); + return NULL; + } + return (lua_CFunction)NSAddressOfSymbol(nss); +} + +/* }====================================================== */ + + + +#else +/* +** {====================================================== +** Fallback for other systems +** ======================================================= +*/ + +#undef LIB_FAIL +#define LIB_FAIL "absent" + + +#define DLMSG "dynamic libraries not enabled; check your Lua installation" + + +static void ll_unloadlib (void *lib) { + (void)lib; /* to avoid warnings */ +} + + +static void *ll_load (lua_State *L, const char *path) { + (void)path; /* to avoid warnings */ + lua_pushliteral(L, DLMSG); + return NULL; +} + + +static lua_CFunction ll_sym (lua_State *L, void *lib, const char *sym) { + (void)lib; (void)sym; /* to avoid warnings */ + lua_pushliteral(L, DLMSG); + return NULL; +} + +/* }====================================================== */ +#endif + + + +static void **ll_register (lua_State *L, const char *path) { + void **plib; + lua_pushfstring(L, "%s%s", LIBPREFIX, path); + lua_gettable(L, LUA_REGISTRYINDEX); /* check library in registry? */ + if (!lua_isnil(L, -1)) /* is there an entry? */ + plib = (void **)lua_touserdata(L, -1); + else { /* no entry yet; create one */ + lua_pop(L, 1); + plib = (void **)lua_newuserdata(L, sizeof(const void *)); + *plib = NULL; + luaL_getmetatable(L, "_LOADLIB"); + lua_setmetatable(L, -2); + lua_pushfstring(L, "%s%s", LIBPREFIX, path); + lua_pushvalue(L, -2); + lua_settable(L, LUA_REGISTRYINDEX); + } + return plib; +} + + +/* +** __gc tag method: calls library's `ll_unloadlib' function with the lib +** handle +*/ +static int gctm (lua_State *L) { + void **lib = (void **)luaL_checkudata(L, 1, "_LOADLIB"); + if (*lib) ll_unloadlib(*lib); + *lib = NULL; /* mark library as closed */ + return 0; +} + + +static int ll_loadfunc (lua_State *L, const char *path, const char *sym) { + void **reg = ll_register(L, path); + if (*reg == NULL) *reg = ll_load(L, path); + if (*reg == NULL) + return ERRLIB; /* unable to load library */ + else { + lua_CFunction f = ll_sym(L, *reg, sym); + if (f == NULL) + return ERRFUNC; /* unable to find function */ + lua_pushcfunction(L, f); + return 0; /* return function */ + } +} + + +static int ll_loadlib (lua_State *L) { + const char *path = luaL_checkstring(L, 1); + const char *init = luaL_checkstring(L, 2); + int stat = ll_loadfunc(L, path, init); + if (stat == 0) /* no errors? */ + return 1; /* return the loaded function */ + else { /* error; error message is on stack top */ + lua_pushnil(L); + lua_insert(L, -2); + lua_pushstring(L, (stat == ERRLIB) ? LIB_FAIL : "init"); + return 3; /* return nil, error message, and where */ + } +} + + + +/* +** {====================================================== +** 'require' function +** ======================================================= +*/ + + +static int readable (const char *filename) { + FILE *f = fopen(filename, "r"); /* try to open file */ + if (f == NULL) return 0; /* open failed */ + fclose(f); + return 1; +} + + +static const char *pushnexttemplate (lua_State *L, const char *path) { + const char *l; + while (*path == *LUA_PATHSEP) path++; /* skip separators */ + if (*path == '\0') return NULL; /* no more templates */ + l = strchr(path, *LUA_PATHSEP); /* find next separator */ + if (l == NULL) l = path + strlen(path); + lua_pushlstring(L, path, l - path); /* template */ + return l; +} + + +static const char *findfile (lua_State *L, const char *name, + const char *pname) { + const char *path; + name = luaL_gsub(L, name, ".", LUA_DIRSEP); + lua_getfield(L, LUA_ENVIRONINDEX, pname); + path = lua_tostring(L, -1); + if (path == NULL) + luaL_error(L, LUA_QL("package.%s") " must be a string", pname); + lua_pushliteral(L, ""); /* error accumulator */ + while ((path = pushnexttemplate(L, path)) != NULL) { + const char *filename; + filename = luaL_gsub(L, lua_tostring(L, -1), LUA_PATH_MARK, name); + lua_remove(L, -2); /* remove path template */ + if (readable(filename)) /* does file exist and is readable? */ + return filename; /* return that file name */ + lua_pushfstring(L, "\n\tno file " LUA_QS, filename); + lua_remove(L, -2); /* remove file name */ + lua_concat(L, 2); /* add entry to possible error message */ + } + return NULL; /* not found */ +} + + +static void loaderror (lua_State *L, const char *filename) { + luaL_error(L, "error loading module " LUA_QS " from file " LUA_QS ":\n\t%s", + lua_tostring(L, 1), filename, lua_tostring(L, -1)); +} + + +static int loader_Lua (lua_State *L) { + const char *filename; + const char *name = luaL_checkstring(L, 1); + filename = findfile(L, name, "path"); + if (filename == NULL) return 1; /* library not found in this path */ + if (luaL_loadfile(L, filename) != 0) + loaderror(L, filename); + return 1; /* library loaded successfully */ +} + + +static const char *mkfuncname (lua_State *L, const char *modname) { + const char *funcname; + const char *mark = strchr(modname, *LUA_IGMARK); + if (mark) modname = mark + 1; + funcname = luaL_gsub(L, modname, ".", LUA_OFSEP); + funcname = lua_pushfstring(L, POF"%s", funcname); + lua_remove(L, -2); /* remove 'gsub' result */ + return funcname; +} + + +static int loader_C (lua_State *L) { + const char *funcname; + const char *name = luaL_checkstring(L, 1); + const char *filename = findfile(L, name, "cpath"); + if (filename == NULL) return 1; /* library not found in this path */ + funcname = mkfuncname(L, name); + if (ll_loadfunc(L, filename, funcname) != 0) + loaderror(L, filename); + return 1; /* library loaded successfully */ +} + + +static int loader_Croot (lua_State *L) { + const char *funcname; + const char *filename; + const char *name = luaL_checkstring(L, 1); + const char *p = strchr(name, '.'); + int stat; + if (p == NULL) return 0; /* is root */ + lua_pushlstring(L, name, p - name); + filename = findfile(L, lua_tostring(L, -1), "cpath"); + if (filename == NULL) return 1; /* root not found */ + funcname = mkfuncname(L, name); + if ((stat = ll_loadfunc(L, filename, funcname)) != 0) { + if (stat != ERRFUNC) loaderror(L, filename); /* real error */ + lua_pushfstring(L, "\n\tno module " LUA_QS " in file " LUA_QS, + name, filename); + return 1; /* function not found */ + } + return 1; +} + + +static int loader_preload (lua_State *L) { + const char *name = luaL_checkstring(L, 1); + lua_getfield(L, LUA_ENVIRONINDEX, "preload"); + if (!lua_istable(L, -1)) + luaL_error(L, LUA_QL("package.preload") " must be a table"); + lua_getfield(L, -1, name); + if (lua_isnil(L, -1)) /* not found? */ + lua_pushfstring(L, "\n\tno field package.preload['%s']", name); + return 1; +} + + +static const int sentinel_ = 0; +#define sentinel ((void *)&sentinel_) + + +static int ll_require (lua_State *L) { + const char *name = luaL_checkstring(L, 1); + int i; + lua_settop(L, 1); /* _LOADED table will be at index 2 */ + lua_getfield(L, LUA_REGISTRYINDEX, "_LOADED"); + lua_getfield(L, 2, name); + if (lua_toboolean(L, -1)) { /* is it there? */ + if (lua_touserdata(L, -1) == sentinel) /* check loops */ + luaL_error(L, "loop or previous error loading module " LUA_QS, name); + return 1; /* package is already loaded */ + } + /* else must load it; iterate over available loaders */ + lua_getfield(L, LUA_ENVIRONINDEX, "loaders"); + if (!lua_istable(L, -1)) + luaL_error(L, LUA_QL("package.loaders") " must be a table"); + lua_pushliteral(L, ""); /* error message accumulator */ + for (i=1; ; i++) { + lua_rawgeti(L, -2, i); /* get a loader */ + if (lua_isnil(L, -1)) + luaL_error(L, "module " LUA_QS " not found:%s", + name, lua_tostring(L, -2)); + lua_pushstring(L, name); + lua_call(L, 1, 1); /* call it */ + if (lua_isfunction(L, -1)) /* did it find module? */ + break; /* module loaded successfully */ + else if (lua_isstring(L, -1)) /* loader returned error message? */ + lua_concat(L, 2); /* accumulate it */ + else + lua_pop(L, 1); + } + lua_pushlightuserdata(L, sentinel); + lua_setfield(L, 2, name); /* _LOADED[name] = sentinel */ + lua_pushstring(L, name); /* pass name as argument to module */ + lua_call(L, 1, 1); /* run loaded module */ + if (!lua_isnil(L, -1)) /* non-nil return? */ + lua_setfield(L, 2, name); /* _LOADED[name] = returned value */ + lua_getfield(L, 2, name); + if (lua_touserdata(L, -1) == sentinel) { /* module did not set a value? */ + lua_pushboolean(L, 1); /* use true as result */ + lua_pushvalue(L, -1); /* extra copy to be returned */ + lua_setfield(L, 2, name); /* _LOADED[name] = true */ + } + return 1; +} + +/* }====================================================== */ + + + +/* +** {====================================================== +** 'module' function +** ======================================================= +*/ + + +static void setfenv (lua_State *L) { + lua_Debug ar; + if (lua_getstack(L, 1, &ar) == 0 || + lua_getinfo(L, "f", &ar) == 0 || /* get calling function */ + lua_iscfunction(L, -1)) + luaL_error(L, LUA_QL("module") " not called from a Lua function"); + lua_pushvalue(L, -2); + lua_setfenv(L, -2); + lua_pop(L, 1); +} + + +static void dooptions (lua_State *L, int n) { + int i; + for (i = 2; i <= n; i++) { + lua_pushvalue(L, i); /* get option (a function) */ + lua_pushvalue(L, -2); /* module */ + lua_call(L, 1, 0); + } +} + + +static void modinit (lua_State *L, const char *modname) { + const char *dot; + lua_pushvalue(L, -1); + lua_setfield(L, -2, "_M"); /* module._M = module */ + lua_pushstring(L, modname); + lua_setfield(L, -2, "_NAME"); + dot = strrchr(modname, '.'); /* look for last dot in module name */ + if (dot == NULL) dot = modname; + else dot++; + /* set _PACKAGE as package name (full module name minus last part) */ + lua_pushlstring(L, modname, dot - modname); + lua_setfield(L, -2, "_PACKAGE"); +} + + +static int ll_module (lua_State *L) { + const char *modname = luaL_checkstring(L, 1); + int loaded = lua_gettop(L) + 1; /* index of _LOADED table */ + lua_getfield(L, LUA_REGISTRYINDEX, "_LOADED"); + lua_getfield(L, loaded, modname); /* get _LOADED[modname] */ + if (!lua_istable(L, -1)) { /* not found? */ + lua_pop(L, 1); /* remove previous result */ + /* try global variable (and create one if it does not exist) */ + if (luaL_findtable(L, LUA_GLOBALSINDEX, modname, 1) != NULL) + return luaL_error(L, "name conflict for module " LUA_QS, modname); + lua_pushvalue(L, -1); + lua_setfield(L, loaded, modname); /* _LOADED[modname] = new table */ + } + /* check whether table already has a _NAME field */ + lua_getfield(L, -1, "_NAME"); + if (!lua_isnil(L, -1)) /* is table an initialized module? */ + lua_pop(L, 1); + else { /* no; initialize it */ + lua_pop(L, 1); + modinit(L, modname); + } + lua_pushvalue(L, -1); + setfenv(L); + dooptions(L, loaded - 1); + return 0; +} + + +static int ll_seeall (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + if (!lua_getmetatable(L, 1)) { + lua_createtable(L, 0, 1); /* create new metatable */ + lua_pushvalue(L, -1); + lua_setmetatable(L, 1); + } + lua_pushvalue(L, LUA_GLOBALSINDEX); + lua_setfield(L, -2, "__index"); /* mt.__index = _G */ + return 0; +} + + +/* }====================================================== */ + + + +/* auxiliary mark (for internal use) */ +#define AUXMARK "\1" + +static void setpath (lua_State *L, const char *fieldname, const char *envname, + const char *def) { + const char *path = getenv(envname); + if (path == NULL) /* no environment variable? */ + lua_pushstring(L, def); /* use default */ + else { + /* replace ";;" by ";AUXMARK;" and then AUXMARK by default path */ + path = luaL_gsub(L, path, LUA_PATHSEP LUA_PATHSEP, + LUA_PATHSEP AUXMARK LUA_PATHSEP); + luaL_gsub(L, path, AUXMARK, def); + lua_remove(L, -2); + } + setprogdir(L); + lua_setfield(L, -2, fieldname); +} + + +static const luaL_Reg pk_funcs[] = { + {"loadlib", ll_loadlib}, + {"seeall", ll_seeall}, + {NULL, NULL} +}; + + +static const luaL_Reg ll_funcs[] = { + {"module", ll_module}, + {"require", ll_require}, + {NULL, NULL} +}; + + +static const lua_CFunction loaders[] = + {loader_preload, loader_Lua, loader_C, loader_Croot, NULL}; + + +LUALIB_API int luaopen_package (lua_State *L) { + int i; + /* create new type _LOADLIB */ + luaL_newmetatable(L, "_LOADLIB"); + lua_pushcfunction(L, gctm); + lua_setfield(L, -2, "__gc"); + /* create `package' table */ + luaL_register(L, LUA_LOADLIBNAME, pk_funcs); +#if defined(LUA_COMPAT_LOADLIB) + lua_getfield(L, -1, "loadlib"); + lua_setfield(L, LUA_GLOBALSINDEX, "loadlib"); +#endif + lua_pushvalue(L, -1); + lua_replace(L, LUA_ENVIRONINDEX); + /* create `loaders' table */ + lua_createtable(L, 0, sizeof(loaders)/sizeof(loaders[0]) - 1); + /* fill it with pre-defined loaders */ + for (i=0; loaders[i] != NULL; i++) { + lua_pushcfunction(L, loaders[i]); + lua_rawseti(L, -2, i+1); + } + lua_setfield(L, -2, "loaders"); /* put it in field `loaders' */ + setpath(L, "path", LUA_PATH, LUA_PATH_DEFAULT); /* set field `path' */ + setpath(L, "cpath", LUA_CPATH, LUA_CPATH_DEFAULT); /* set field `cpath' */ + /* store config information */ + lua_pushliteral(L, LUA_DIRSEP "\n" LUA_PATHSEP "\n" LUA_PATH_MARK "\n" + LUA_EXECDIR "\n" LUA_IGMARK); + lua_setfield(L, -2, "config"); + /* set field `loaded' */ + luaL_findtable(L, LUA_REGISTRYINDEX, "_LOADED", 2); + lua_setfield(L, -2, "loaded"); + /* set field `preload' */ + lua_newtable(L); + lua_setfield(L, -2, "preload"); + lua_pushvalue(L, LUA_GLOBALSINDEX); + luaL_register(L, NULL, ll_funcs); /* open lib into global table */ + lua_pop(L, 1); + return 1; /* return 'package' table */ +} + diff --git a/lua-5.1.4/src/lobject.c b/lua-5.1.4/src/lobject.c new file mode 100644 index 0000000..4ff5073 --- /dev/null +++ b/lua-5.1.4/src/lobject.c @@ -0,0 +1,214 @@ +/* +** $Id: lobject.c,v 2.22.1.1 2007/12/27 13:02:25 roberto Exp $ +** Some generic functions over Lua objects +** See Copyright Notice in lua.h +*/ + +#include +#include +#include +#include +#include + +#define lobject_c +#define LUA_CORE + +#include "lua.h" + +#include "ldo.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "lvm.h" + + + +const TValue luaO_nilobject_ = {{NULL}, LUA_TNIL}; + + +/* +** converts an integer to a "floating point byte", represented as +** (eeeeexxx), where the real value is (1xxx) * 2^(eeeee - 1) if +** eeeee != 0 and (xxx) otherwise. +*/ +int luaO_int2fb (unsigned int x) { + int e = 0; /* expoent */ + while (x >= 16) { + x = (x+1) >> 1; + e++; + } + if (x < 8) return x; + else return ((e+1) << 3) | (cast_int(x) - 8); +} + + +/* converts back */ +int luaO_fb2int (int x) { + int e = (x >> 3) & 31; + if (e == 0) return x; + else return ((x & 7)+8) << (e - 1); +} + + +int luaO_log2 (unsigned int x) { + static const lu_byte log_2[256] = { + 0,1,2,2,3,3,3,3,4,4,4,4,4,4,4,4,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5,5, + 6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6,6, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8, + 8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8,8 + }; + int l = -1; + while (x >= 256) { l += 8; x >>= 8; } + return l + log_2[x]; + +} + + +int luaO_rawequalObj (const TValue *t1, const TValue *t2) { + if (ttype(t1) != ttype(t2)) return 0; + else switch (ttype(t1)) { + case LUA_TNIL: + return 1; + case LUA_TNUMBER: + return luai_numeq(nvalue(t1), nvalue(t2)); + case LUA_TBOOLEAN: + return bvalue(t1) == bvalue(t2); /* boolean true must be 1 !! */ + case LUA_TLIGHTUSERDATA: + return pvalue(t1) == pvalue(t2); + default: + lua_assert(iscollectable(t1)); + return gcvalue(t1) == gcvalue(t2); + } +} + + +int luaO_str2d (const char *s, lua_Number *result) { + char *endptr; + *result = lua_str2number(s, &endptr); + if (endptr == s) return 0; /* conversion failed */ + if (*endptr == 'x' || *endptr == 'X') /* maybe an hexadecimal constant? */ + *result = cast_num(strtoul(s, &endptr, 16)); + if (*endptr == '\0') return 1; /* most common case */ + while (isspace(cast(unsigned char, *endptr))) endptr++; + if (*endptr != '\0') return 0; /* invalid trailing characters? */ + return 1; +} + + + +static void pushstr (lua_State *L, const char *str) { + setsvalue2s(L, L->top, luaS_new(L, str)); + incr_top(L); +} + + +/* this function handles only `%d', `%c', %f, %p, and `%s' formats */ +const char *luaO_pushvfstring (lua_State *L, const char *fmt, va_list argp) { + int n = 1; + pushstr(L, ""); + for (;;) { + const char *e = strchr(fmt, '%'); + if (e == NULL) break; + setsvalue2s(L, L->top, luaS_newlstr(L, fmt, e-fmt)); + incr_top(L); + switch (*(e+1)) { + case 's': { + const char *s = va_arg(argp, char *); + if (s == NULL) s = "(null)"; + pushstr(L, s); + break; + } + case 'c': { + char buff[2]; + buff[0] = cast(char, va_arg(argp, int)); + buff[1] = '\0'; + pushstr(L, buff); + break; + } + case 'd': { + setnvalue(L->top, cast_num(va_arg(argp, int))); + incr_top(L); + break; + } + case 'f': { + setnvalue(L->top, cast_num(va_arg(argp, l_uacNumber))); + incr_top(L); + break; + } + case 'p': { + char buff[4*sizeof(void *) + 8]; /* should be enough space for a `%p' */ + sprintf(buff, "%p", va_arg(argp, void *)); + pushstr(L, buff); + break; + } + case '%': { + pushstr(L, "%"); + break; + } + default: { + char buff[3]; + buff[0] = '%'; + buff[1] = *(e+1); + buff[2] = '\0'; + pushstr(L, buff); + break; + } + } + n += 2; + fmt = e+2; + } + pushstr(L, fmt); + luaV_concat(L, n+1, cast_int(L->top - L->base) - 1); + L->top -= n; + return svalue(L->top - 1); +} + + +const char *luaO_pushfstring (lua_State *L, const char *fmt, ...) { + const char *msg; + va_list argp; + va_start(argp, fmt); + msg = luaO_pushvfstring(L, fmt, argp); + va_end(argp); + return msg; +} + + +void luaO_chunkid (char *out, const char *source, size_t bufflen) { + if (*source == '=') { + strncpy(out, source+1, bufflen); /* remove first char */ + out[bufflen-1] = '\0'; /* ensures null termination */ + } + else { /* out = "source", or "...source" */ + if (*source == '@') { + size_t l; + source++; /* skip the `@' */ + bufflen -= sizeof(" '...' "); + l = strlen(source); + strcpy(out, ""); + if (l > bufflen) { + source += (l-bufflen); /* get last part of file name */ + strcat(out, "..."); + } + strcat(out, source); + } + else { /* out = [string "string"] */ + size_t len = strcspn(source, "\n\r"); /* stop at first newline */ + bufflen -= sizeof(" [string \"...\"] "); + if (len > bufflen) len = bufflen; + strcpy(out, "[string \""); + if (source[len] != '\0') { /* must truncate? */ + strncat(out, source, len); + strcat(out, "..."); + } + else + strcat(out, source); + strcat(out, "\"]"); + } + } +} diff --git a/lua-5.1.4/src/lobject.h b/lua-5.1.4/src/lobject.h new file mode 100644 index 0000000..f1e447e --- /dev/null +++ b/lua-5.1.4/src/lobject.h @@ -0,0 +1,381 @@ +/* +** $Id: lobject.h,v 2.20.1.2 2008/08/06 13:29:48 roberto Exp $ +** Type definitions for Lua objects +** See Copyright Notice in lua.h +*/ + + +#ifndef lobject_h +#define lobject_h + + +#include + + +#include "llimits.h" +#include "lua.h" + + +/* tags for values visible from Lua */ +#define LAST_TAG LUA_TTHREAD + +#define NUM_TAGS (LAST_TAG+1) + + +/* +** Extra tags for non-values +*/ +#define LUA_TPROTO (LAST_TAG+1) +#define LUA_TUPVAL (LAST_TAG+2) +#define LUA_TDEADKEY (LAST_TAG+3) + + +/* +** Union of all collectable objects +*/ +typedef union GCObject GCObject; + + +/* +** Common Header for all collectable objects (in macro form, to be +** included in other objects) +*/ +#define CommonHeader GCObject *next; lu_byte tt; lu_byte marked + + +/* +** Common header in struct form +*/ +typedef struct GCheader { + CommonHeader; +} GCheader; + + + + +/* +** Union of all Lua values +*/ +typedef union { + GCObject *gc; + void *p; + lua_Number n; + int b; +} Value; + + +/* +** Tagged Values +*/ + +#define TValuefields Value value; int tt + +typedef struct lua_TValue { + TValuefields; +} TValue; + + +/* Macros to test type */ +#define ttisnil(o) (ttype(o) == LUA_TNIL) +#define ttisnumber(o) (ttype(o) == LUA_TNUMBER) +#define ttisstring(o) (ttype(o) == LUA_TSTRING) +#define ttistable(o) (ttype(o) == LUA_TTABLE) +#define ttisfunction(o) (ttype(o) == LUA_TFUNCTION) +#define ttisboolean(o) (ttype(o) == LUA_TBOOLEAN) +#define ttisuserdata(o) (ttype(o) == LUA_TUSERDATA) +#define ttisthread(o) (ttype(o) == LUA_TTHREAD) +#define ttislightuserdata(o) (ttype(o) == LUA_TLIGHTUSERDATA) + +/* Macros to access values */ +#define ttype(o) ((o)->tt) +#define gcvalue(o) check_exp(iscollectable(o), (o)->value.gc) +#define pvalue(o) check_exp(ttislightuserdata(o), (o)->value.p) +#define nvalue(o) check_exp(ttisnumber(o), (o)->value.n) +#define rawtsvalue(o) check_exp(ttisstring(o), &(o)->value.gc->ts) +#define tsvalue(o) (&rawtsvalue(o)->tsv) +#define rawuvalue(o) check_exp(ttisuserdata(o), &(o)->value.gc->u) +#define uvalue(o) (&rawuvalue(o)->uv) +#define clvalue(o) check_exp(ttisfunction(o), &(o)->value.gc->cl) +#define hvalue(o) check_exp(ttistable(o), &(o)->value.gc->h) +#define bvalue(o) check_exp(ttisboolean(o), (o)->value.b) +#define thvalue(o) check_exp(ttisthread(o), &(o)->value.gc->th) + +#define l_isfalse(o) (ttisnil(o) || (ttisboolean(o) && bvalue(o) == 0)) + +/* +** for internal debug only +*/ +#define checkconsistency(obj) \ + lua_assert(!iscollectable(obj) || (ttype(obj) == (obj)->value.gc->gch.tt)) + +#define checkliveness(g,obj) \ + lua_assert(!iscollectable(obj) || \ + ((ttype(obj) == (obj)->value.gc->gch.tt) && !isdead(g, (obj)->value.gc))) + + +/* Macros to set values */ +#define setnilvalue(obj) ((obj)->tt=LUA_TNIL) + +#define setnvalue(obj,x) \ + { TValue *i_o=(obj); i_o->value.n=(x); i_o->tt=LUA_TNUMBER; } + +#define setpvalue(obj,x) \ + { TValue *i_o=(obj); i_o->value.p=(x); i_o->tt=LUA_TLIGHTUSERDATA; } + +#define setbvalue(obj,x) \ + { TValue *i_o=(obj); i_o->value.b=(x); i_o->tt=LUA_TBOOLEAN; } + +#define setsvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TSTRING; \ + checkliveness(G(L),i_o); } + +#define setuvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TUSERDATA; \ + checkliveness(G(L),i_o); } + +#define setthvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TTHREAD; \ + checkliveness(G(L),i_o); } + +#define setclvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TFUNCTION; \ + checkliveness(G(L),i_o); } + +#define sethvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TTABLE; \ + checkliveness(G(L),i_o); } + +#define setptvalue(L,obj,x) \ + { TValue *i_o=(obj); \ + i_o->value.gc=cast(GCObject *, (x)); i_o->tt=LUA_TPROTO; \ + checkliveness(G(L),i_o); } + + + + +#define setobj(L,obj1,obj2) \ + { const TValue *o2=(obj2); TValue *o1=(obj1); \ + o1->value = o2->value; o1->tt=o2->tt; \ + checkliveness(G(L),o1); } + + +/* +** different types of sets, according to destination +*/ + +/* from stack to (same) stack */ +#define setobjs2s setobj +/* to stack (not from same stack) */ +#define setobj2s setobj +#define setsvalue2s setsvalue +#define sethvalue2s sethvalue +#define setptvalue2s setptvalue +/* from table to same table */ +#define setobjt2t setobj +/* to table */ +#define setobj2t setobj +/* to new object */ +#define setobj2n setobj +#define setsvalue2n setsvalue + +#define setttype(obj, tt) (ttype(obj) = (tt)) + + +#define iscollectable(o) (ttype(o) >= LUA_TSTRING) + + + +typedef TValue *StkId; /* index to stack elements */ + + +/* +** String headers for string table +*/ +typedef union TString { + L_Umaxalign dummy; /* ensures maximum alignment for strings */ + struct { + CommonHeader; + lu_byte reserved; + unsigned int hash; + size_t len; + } tsv; +} TString; + + +#define getstr(ts) cast(const char *, (ts) + 1) +#define svalue(o) getstr(rawtsvalue(o)) + + + +typedef union Udata { + L_Umaxalign dummy; /* ensures maximum alignment for `local' udata */ + struct { + CommonHeader; + struct Table *metatable; + struct Table *env; + size_t len; + } uv; +} Udata; + + + + +/* +** Function Prototypes +*/ +typedef struct Proto { + CommonHeader; + TValue *k; /* constants used by the function */ + Instruction *code; + struct Proto **p; /* functions defined inside the function */ + int *lineinfo; /* map from opcodes to source lines */ + struct LocVar *locvars; /* information about local variables */ + TString **upvalues; /* upvalue names */ + TString *source; + int sizeupvalues; + int sizek; /* size of `k' */ + int sizecode; + int sizelineinfo; + int sizep; /* size of `p' */ + int sizelocvars; + int linedefined; + int lastlinedefined; + GCObject *gclist; + lu_byte nups; /* number of upvalues */ + lu_byte numparams; + lu_byte is_vararg; + lu_byte maxstacksize; +} Proto; + + +/* masks for new-style vararg */ +#define VARARG_HASARG 1 +#define VARARG_ISVARARG 2 +#define VARARG_NEEDSARG 4 + + +typedef struct LocVar { + TString *varname; + int startpc; /* first point where variable is active */ + int endpc; /* first point where variable is dead */ +} LocVar; + + + +/* +** Upvalues +*/ + +typedef struct UpVal { + CommonHeader; + TValue *v; /* points to stack or to its own value */ + union { + TValue value; /* the value (when closed) */ + struct { /* double linked list (when open) */ + struct UpVal *prev; + struct UpVal *next; + } l; + } u; +} UpVal; + + +/* +** Closures +*/ + +#define ClosureHeader \ + CommonHeader; lu_byte isC; lu_byte nupvalues; GCObject *gclist; \ + struct Table *env + +typedef struct CClosure { + ClosureHeader; + lua_CFunction f; + TValue upvalue[1]; +} CClosure; + + +typedef struct LClosure { + ClosureHeader; + struct Proto *p; + UpVal *upvals[1]; +} LClosure; + + +typedef union Closure { + CClosure c; + LClosure l; +} Closure; + + +#define iscfunction(o) (ttype(o) == LUA_TFUNCTION && clvalue(o)->c.isC) +#define isLfunction(o) (ttype(o) == LUA_TFUNCTION && !clvalue(o)->c.isC) + + +/* +** Tables +*/ + +typedef union TKey { + struct { + TValuefields; + struct Node *next; /* for chaining */ + } nk; + TValue tvk; +} TKey; + + +typedef struct Node { + TValue i_val; + TKey i_key; +} Node; + + +typedef struct Table { + CommonHeader; + lu_byte flags; /* 1<

lsizenode)) + + +#define luaO_nilobject (&luaO_nilobject_) + +LUAI_DATA const TValue luaO_nilobject_; + +#define ceillog2(x) (luaO_log2((x)-1) + 1) + +LUAI_FUNC int luaO_log2 (unsigned int x); +LUAI_FUNC int luaO_int2fb (unsigned int x); +LUAI_FUNC int luaO_fb2int (int x); +LUAI_FUNC int luaO_rawequalObj (const TValue *t1, const TValue *t2); +LUAI_FUNC int luaO_str2d (const char *s, lua_Number *result); +LUAI_FUNC const char *luaO_pushvfstring (lua_State *L, const char *fmt, + va_list argp); +LUAI_FUNC const char *luaO_pushfstring (lua_State *L, const char *fmt, ...); +LUAI_FUNC void luaO_chunkid (char *out, const char *source, size_t len); + + +#endif + diff --git a/lua-5.1.4/src/lopcodes.c b/lua-5.1.4/src/lopcodes.c new file mode 100644 index 0000000..4cc7452 --- /dev/null +++ b/lua-5.1.4/src/lopcodes.c @@ -0,0 +1,102 @@ +/* +** $Id: lopcodes.c,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ +** See Copyright Notice in lua.h +*/ + + +#define lopcodes_c +#define LUA_CORE + + +#include "lopcodes.h" + + +/* ORDER OP */ + +const char *const luaP_opnames[NUM_OPCODES+1] = { + "MOVE", + "LOADK", + "LOADBOOL", + "LOADNIL", + "GETUPVAL", + "GETGLOBAL", + "GETTABLE", + "SETGLOBAL", + "SETUPVAL", + "SETTABLE", + "NEWTABLE", + "SELF", + "ADD", + "SUB", + "MUL", + "DIV", + "MOD", + "POW", + "UNM", + "NOT", + "LEN", + "CONCAT", + "JMP", + "EQ", + "LT", + "LE", + "TEST", + "TESTSET", + "CALL", + "TAILCALL", + "RETURN", + "FORLOOP", + "FORPREP", + "TFORLOOP", + "SETLIST", + "CLOSE", + "CLOSURE", + "VARARG", + NULL +}; + + +#define opmode(t,a,b,c,m) (((t)<<7) | ((a)<<6) | ((b)<<4) | ((c)<<2) | (m)) + +const lu_byte luaP_opmodes[NUM_OPCODES] = { +/* T A B C mode opcode */ + opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_MOVE */ + ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_LOADK */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_LOADBOOL */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LOADNIL */ + ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_GETUPVAL */ + ,opmode(0, 1, OpArgK, OpArgN, iABx) /* OP_GETGLOBAL */ + ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_GETTABLE */ + ,opmode(0, 0, OpArgK, OpArgN, iABx) /* OP_SETGLOBAL */ + ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_SETUPVAL */ + ,opmode(0, 0, OpArgK, OpArgK, iABC) /* OP_SETTABLE */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_NEWTABLE */ + ,opmode(0, 1, OpArgR, OpArgK, iABC) /* OP_SELF */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_ADD */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_SUB */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MUL */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_DIV */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_MOD */ + ,opmode(0, 1, OpArgK, OpArgK, iABC) /* OP_POW */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_UNM */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_NOT */ + ,opmode(0, 1, OpArgR, OpArgN, iABC) /* OP_LEN */ + ,opmode(0, 1, OpArgR, OpArgR, iABC) /* OP_CONCAT */ + ,opmode(0, 0, OpArgR, OpArgN, iAsBx) /* OP_JMP */ + ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_EQ */ + ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LT */ + ,opmode(1, 0, OpArgK, OpArgK, iABC) /* OP_LE */ + ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TEST */ + ,opmode(1, 1, OpArgR, OpArgU, iABC) /* OP_TESTSET */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_CALL */ + ,opmode(0, 1, OpArgU, OpArgU, iABC) /* OP_TAILCALL */ + ,opmode(0, 0, OpArgU, OpArgN, iABC) /* OP_RETURN */ + ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORLOOP */ + ,opmode(0, 1, OpArgR, OpArgN, iAsBx) /* OP_FORPREP */ + ,opmode(1, 0, OpArgN, OpArgU, iABC) /* OP_TFORLOOP */ + ,opmode(0, 0, OpArgU, OpArgU, iABC) /* OP_SETLIST */ + ,opmode(0, 0, OpArgN, OpArgN, iABC) /* OP_CLOSE */ + ,opmode(0, 1, OpArgU, OpArgN, iABx) /* OP_CLOSURE */ + ,opmode(0, 1, OpArgU, OpArgN, iABC) /* OP_VARARG */ +}; + diff --git a/lua-5.1.4/src/lopcodes.h b/lua-5.1.4/src/lopcodes.h new file mode 100644 index 0000000..41224d6 --- /dev/null +++ b/lua-5.1.4/src/lopcodes.h @@ -0,0 +1,268 @@ +/* +** $Id: lopcodes.h,v 1.125.1.1 2007/12/27 13:02:25 roberto Exp $ +** Opcodes for Lua virtual machine +** See Copyright Notice in lua.h +*/ + +#ifndef lopcodes_h +#define lopcodes_h + +#include "llimits.h" + + +/*=========================================================================== + We assume that instructions are unsigned numbers. + All instructions have an opcode in the first 6 bits. + Instructions can have the following fields: + `A' : 8 bits + `B' : 9 bits + `C' : 9 bits + `Bx' : 18 bits (`B' and `C' together) + `sBx' : signed Bx + + A signed argument is represented in excess K; that is, the number + value is the unsigned value minus K. K is exactly the maximum value + for that argument (so that -max is represented by 0, and +max is + represented by 2*max), which is half the maximum for the corresponding + unsigned argument. +===========================================================================*/ + + +enum OpMode {iABC, iABx, iAsBx}; /* basic instruction format */ + + +/* +** size and position of opcode arguments. +*/ +#define SIZE_C 9 +#define SIZE_B 9 +#define SIZE_Bx (SIZE_C + SIZE_B) +#define SIZE_A 8 + +#define SIZE_OP 6 + +#define POS_OP 0 +#define POS_A (POS_OP + SIZE_OP) +#define POS_C (POS_A + SIZE_A) +#define POS_B (POS_C + SIZE_C) +#define POS_Bx POS_C + + +/* +** limits for opcode arguments. +** we use (signed) int to manipulate most arguments, +** so they must fit in LUAI_BITSINT-1 bits (-1 for sign) +*/ +#if SIZE_Bx < LUAI_BITSINT-1 +#define MAXARG_Bx ((1<>1) /* `sBx' is signed */ +#else +#define MAXARG_Bx MAX_INT +#define MAXARG_sBx MAX_INT +#endif + + +#define MAXARG_A ((1<>POS_OP) & MASK1(SIZE_OP,0))) +#define SET_OPCODE(i,o) ((i) = (((i)&MASK0(SIZE_OP,POS_OP)) | \ + ((cast(Instruction, o)<>POS_A) & MASK1(SIZE_A,0))) +#define SETARG_A(i,u) ((i) = (((i)&MASK0(SIZE_A,POS_A)) | \ + ((cast(Instruction, u)<>POS_B) & MASK1(SIZE_B,0))) +#define SETARG_B(i,b) ((i) = (((i)&MASK0(SIZE_B,POS_B)) | \ + ((cast(Instruction, b)<>POS_C) & MASK1(SIZE_C,0))) +#define SETARG_C(i,b) ((i) = (((i)&MASK0(SIZE_C,POS_C)) | \ + ((cast(Instruction, b)<>POS_Bx) & MASK1(SIZE_Bx,0))) +#define SETARG_Bx(i,b) ((i) = (((i)&MASK0(SIZE_Bx,POS_Bx)) | \ + ((cast(Instruction, b)< C) then pc++ */ +OP_TESTSET,/* A B C if (R(B) <=> C) then R(A) := R(B) else pc++ */ + +OP_CALL,/* A B C R(A), ... ,R(A+C-2) := R(A)(R(A+1), ... ,R(A+B-1)) */ +OP_TAILCALL,/* A B C return R(A)(R(A+1), ... ,R(A+B-1)) */ +OP_RETURN,/* A B return R(A), ... ,R(A+B-2) (see note) */ + +OP_FORLOOP,/* A sBx R(A)+=R(A+2); + if R(A) =) R(A)*/ +OP_CLOSURE,/* A Bx R(A) := closure(KPROTO[Bx], R(A), ... ,R(A+n)) */ + +OP_VARARG/* A B R(A), R(A+1), ..., R(A+B-1) = vararg */ +} OpCode; + + +#define NUM_OPCODES (cast(int, OP_VARARG) + 1) + + + +/*=========================================================================== + Notes: + (*) In OP_CALL, if (B == 0) then B = top. C is the number of returns - 1, + and can be 0: OP_CALL then sets `top' to last_result+1, so + next open instruction (OP_CALL, OP_RETURN, OP_SETLIST) may use `top'. + + (*) In OP_VARARG, if (B == 0) then use actual number of varargs and + set top (like in OP_CALL with C == 0). + + (*) In OP_RETURN, if (B == 0) then return up to `top' + + (*) In OP_SETLIST, if (B == 0) then B = `top'; + if (C == 0) then next `instruction' is real C + + (*) For comparisons, A specifies what condition the test should accept + (true or false). + + (*) All `skips' (pc++) assume that next instruction is a jump +===========================================================================*/ + + +/* +** masks for instruction properties. The format is: +** bits 0-1: op mode +** bits 2-3: C arg mode +** bits 4-5: B arg mode +** bit 6: instruction set register A +** bit 7: operator is a test +*/ + +enum OpArgMask { + OpArgN, /* argument is not used */ + OpArgU, /* argument is used */ + OpArgR, /* argument is a register or a jump offset */ + OpArgK /* argument is a constant or register/constant */ +}; + +LUAI_DATA const lu_byte luaP_opmodes[NUM_OPCODES]; + +#define getOpMode(m) (cast(enum OpMode, luaP_opmodes[m] & 3)) +#define getBMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 4) & 3)) +#define getCMode(m) (cast(enum OpArgMask, (luaP_opmodes[m] >> 2) & 3)) +#define testAMode(m) (luaP_opmodes[m] & (1 << 6)) +#define testTMode(m) (luaP_opmodes[m] & (1 << 7)) + + +LUAI_DATA const char *const luaP_opnames[NUM_OPCODES+1]; /* opcode names */ + + +/* number of list items to accumulate before a SETLIST instruction */ +#define LFIELDS_PER_FLUSH 50 + + +#endif diff --git a/lua-5.1.4/src/loslib.c b/lua-5.1.4/src/loslib.c new file mode 100644 index 0000000..da06a57 --- /dev/null +++ b/lua-5.1.4/src/loslib.c @@ -0,0 +1,243 @@ +/* +** $Id: loslib.c,v 1.19.1.3 2008/01/18 16:38:18 roberto Exp $ +** Standard Operating System library +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include +#include + +#define loslib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +static int os_pushresult (lua_State *L, int i, const char *filename) { + int en = errno; /* calls to Lua API may change this value */ + if (i) { + lua_pushboolean(L, 1); + return 1; + } + else { + lua_pushnil(L); + lua_pushfstring(L, "%s: %s", filename, strerror(en)); + lua_pushinteger(L, en); + return 3; + } +} + + +static int os_execute (lua_State *L) { + lua_pushinteger(L, system(luaL_optstring(L, 1, NULL))); + return 1; +} + + +static int os_remove (lua_State *L) { + const char *filename = luaL_checkstring(L, 1); + return os_pushresult(L, remove(filename) == 0, filename); +} + + +static int os_rename (lua_State *L) { + const char *fromname = luaL_checkstring(L, 1); + const char *toname = luaL_checkstring(L, 2); + return os_pushresult(L, rename(fromname, toname) == 0, fromname); +} + + +static int os_tmpname (lua_State *L) { + char buff[LUA_TMPNAMBUFSIZE]; + int err; + lua_tmpnam(buff, err); + if (err) + return luaL_error(L, "unable to generate a unique filename"); + lua_pushstring(L, buff); + return 1; +} + + +static int os_getenv (lua_State *L) { + lua_pushstring(L, getenv(luaL_checkstring(L, 1))); /* if NULL push nil */ + return 1; +} + + +static int os_clock (lua_State *L) { + lua_pushnumber(L, ((lua_Number)clock())/(lua_Number)CLOCKS_PER_SEC); + return 1; +} + + +/* +** {====================================================== +** Time/Date operations +** { year=%Y, month=%m, day=%d, hour=%H, min=%M, sec=%S, +** wday=%w+1, yday=%j, isdst=? } +** ======================================================= +*/ + +static void setfield (lua_State *L, const char *key, int value) { + lua_pushinteger(L, value); + lua_setfield(L, -2, key); +} + +static void setboolfield (lua_State *L, const char *key, int value) { + if (value < 0) /* undefined? */ + return; /* does not set field */ + lua_pushboolean(L, value); + lua_setfield(L, -2, key); +} + +static int getboolfield (lua_State *L, const char *key) { + int res; + lua_getfield(L, -1, key); + res = lua_isnil(L, -1) ? -1 : lua_toboolean(L, -1); + lua_pop(L, 1); + return res; +} + + +static int getfield (lua_State *L, const char *key, int d) { + int res; + lua_getfield(L, -1, key); + if (lua_isnumber(L, -1)) + res = (int)lua_tointeger(L, -1); + else { + if (d < 0) + return luaL_error(L, "field " LUA_QS " missing in date table", key); + res = d; + } + lua_pop(L, 1); + return res; +} + + +static int os_date (lua_State *L) { + const char *s = luaL_optstring(L, 1, "%c"); + time_t t = luaL_opt(L, (time_t)luaL_checknumber, 2, time(NULL)); + struct tm *stm; + if (*s == '!') { /* UTC? */ + stm = gmtime(&t); + s++; /* skip `!' */ + } + else + stm = localtime(&t); + if (stm == NULL) /* invalid date? */ + lua_pushnil(L); + else if (strcmp(s, "*t") == 0) { + lua_createtable(L, 0, 9); /* 9 = number of fields */ + setfield(L, "sec", stm->tm_sec); + setfield(L, "min", stm->tm_min); + setfield(L, "hour", stm->tm_hour); + setfield(L, "day", stm->tm_mday); + setfield(L, "month", stm->tm_mon+1); + setfield(L, "year", stm->tm_year+1900); + setfield(L, "wday", stm->tm_wday+1); + setfield(L, "yday", stm->tm_yday+1); + setboolfield(L, "isdst", stm->tm_isdst); + } + else { + char cc[3]; + luaL_Buffer b; + cc[0] = '%'; cc[2] = '\0'; + luaL_buffinit(L, &b); + for (; *s; s++) { + if (*s != '%' || *(s + 1) == '\0') /* no conversion specifier? */ + luaL_addchar(&b, *s); + else { + size_t reslen; + char buff[200]; /* should be big enough for any conversion result */ + cc[1] = *(++s); + reslen = strftime(buff, sizeof(buff), cc, stm); + luaL_addlstring(&b, buff, reslen); + } + } + luaL_pushresult(&b); + } + return 1; +} + + +static int os_time (lua_State *L) { + time_t t; + if (lua_isnoneornil(L, 1)) /* called without args? */ + t = time(NULL); /* get current time */ + else { + struct tm ts; + luaL_checktype(L, 1, LUA_TTABLE); + lua_settop(L, 1); /* make sure table is at the top */ + ts.tm_sec = getfield(L, "sec", 0); + ts.tm_min = getfield(L, "min", 0); + ts.tm_hour = getfield(L, "hour", 12); + ts.tm_mday = getfield(L, "day", -1); + ts.tm_mon = getfield(L, "month", -1) - 1; + ts.tm_year = getfield(L, "year", -1) - 1900; + ts.tm_isdst = getboolfield(L, "isdst"); + t = mktime(&ts); + } + if (t == (time_t)(-1)) + lua_pushnil(L); + else + lua_pushnumber(L, (lua_Number)t); + return 1; +} + + +static int os_difftime (lua_State *L) { + lua_pushnumber(L, difftime((time_t)(luaL_checknumber(L, 1)), + (time_t)(luaL_optnumber(L, 2, 0)))); + return 1; +} + +/* }====================================================== */ + + +static int os_setlocale (lua_State *L) { + static const int cat[] = {LC_ALL, LC_COLLATE, LC_CTYPE, LC_MONETARY, + LC_NUMERIC, LC_TIME}; + static const char *const catnames[] = {"all", "collate", "ctype", "monetary", + "numeric", "time", NULL}; + const char *l = luaL_optstring(L, 1, NULL); + int op = luaL_checkoption(L, 2, "all", catnames); + lua_pushstring(L, setlocale(cat[op], l)); + return 1; +} + + +static int os_exit (lua_State *L) { + exit(luaL_optint(L, 1, EXIT_SUCCESS)); +} + +static const luaL_Reg syslib[] = { + {"clock", os_clock}, + {"date", os_date}, + {"difftime", os_difftime}, + {"execute", os_execute}, + {"exit", os_exit}, + {"getenv", os_getenv}, + {"remove", os_remove}, + {"rename", os_rename}, + {"setlocale", os_setlocale}, + {"time", os_time}, + {"tmpname", os_tmpname}, + {NULL, NULL} +}; + +/* }====================================================== */ + + + +LUALIB_API int luaopen_os (lua_State *L) { + luaL_register(L, LUA_OSLIBNAME, syslib); + return 1; +} + diff --git a/lua-5.1.4/src/lparser.c b/lua-5.1.4/src/lparser.c new file mode 100644 index 0000000..1e2a9a8 --- /dev/null +++ b/lua-5.1.4/src/lparser.c @@ -0,0 +1,1339 @@ +/* +** $Id: lparser.c,v 2.42.1.3 2007/12/28 15:32:23 roberto Exp $ +** Lua Parser +** See Copyright Notice in lua.h +*/ + + +#include + +#define lparser_c +#define LUA_CORE + +#include "lua.h" + +#include "lcode.h" +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "llex.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lparser.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" + + + +#define hasmultret(k) ((k) == VCALL || (k) == VVARARG) + +#define getlocvar(fs, i) ((fs)->f->locvars[(fs)->actvar[i]]) + +#define luaY_checklimit(fs,v,l,m) if ((v)>(l)) errorlimit(fs,l,m) + + +/* +** nodes for block list (list of active blocks) +*/ +typedef struct BlockCnt { + struct BlockCnt *previous; /* chain */ + int breaklist; /* list of jumps out of this loop */ + lu_byte nactvar; /* # active locals outside the breakable structure */ + lu_byte upval; /* true if some variable in the block is an upvalue */ + lu_byte isbreakable; /* true if `block' is a loop */ +} BlockCnt; + + + +/* +** prototypes for recursive non-terminal functions +*/ +static void chunk (LexState *ls); +static void expr (LexState *ls, expdesc *v); + + +static void anchor_token (LexState *ls) { + if (ls->t.token == TK_NAME || ls->t.token == TK_STRING) { + TString *ts = ls->t.seminfo.ts; + luaX_newstring(ls, getstr(ts), ts->tsv.len); + } +} + + +static void error_expected (LexState *ls, int token) { + luaX_syntaxerror(ls, + luaO_pushfstring(ls->L, LUA_QS " expected", luaX_token2str(ls, token))); +} + + +static void errorlimit (FuncState *fs, int limit, const char *what) { + const char *msg = (fs->f->linedefined == 0) ? + luaO_pushfstring(fs->L, "main function has more than %d %s", limit, what) : + luaO_pushfstring(fs->L, "function at line %d has more than %d %s", + fs->f->linedefined, limit, what); + luaX_lexerror(fs->ls, msg, 0); +} + + +static int testnext (LexState *ls, int c) { + if (ls->t.token == c) { + luaX_next(ls); + return 1; + } + else return 0; +} + + +static void check (LexState *ls, int c) { + if (ls->t.token != c) + error_expected(ls, c); +} + +static void checknext (LexState *ls, int c) { + check(ls, c); + luaX_next(ls); +} + + +#define check_condition(ls,c,msg) { if (!(c)) luaX_syntaxerror(ls, msg); } + + + +static void check_match (LexState *ls, int what, int who, int where) { + if (!testnext(ls, what)) { + if (where == ls->linenumber) + error_expected(ls, what); + else { + luaX_syntaxerror(ls, luaO_pushfstring(ls->L, + LUA_QS " expected (to close " LUA_QS " at line %d)", + luaX_token2str(ls, what), luaX_token2str(ls, who), where)); + } + } +} + + +static TString *str_checkname (LexState *ls) { + TString *ts; + check(ls, TK_NAME); + ts = ls->t.seminfo.ts; + luaX_next(ls); + return ts; +} + + +static void init_exp (expdesc *e, expkind k, int i) { + e->f = e->t = NO_JUMP; + e->k = k; + e->u.s.info = i; +} + + +static void codestring (LexState *ls, expdesc *e, TString *s) { + init_exp(e, VK, luaK_stringK(ls->fs, s)); +} + + +static void checkname(LexState *ls, expdesc *e) { + codestring(ls, e, str_checkname(ls)); +} + + +static int registerlocalvar (LexState *ls, TString *varname) { + FuncState *fs = ls->fs; + Proto *f = fs->f; + int oldsize = f->sizelocvars; + luaM_growvector(ls->L, f->locvars, fs->nlocvars, f->sizelocvars, + LocVar, SHRT_MAX, "too many local variables"); + while (oldsize < f->sizelocvars) f->locvars[oldsize++].varname = NULL; + f->locvars[fs->nlocvars].varname = varname; + luaC_objbarrier(ls->L, f, varname); + return fs->nlocvars++; +} + + +#define new_localvarliteral(ls,v,n) \ + new_localvar(ls, luaX_newstring(ls, "" v, (sizeof(v)/sizeof(char))-1), n) + + +static void new_localvar (LexState *ls, TString *name, int n) { + FuncState *fs = ls->fs; + luaY_checklimit(fs, fs->nactvar+n+1, LUAI_MAXVARS, "local variables"); + fs->actvar[fs->nactvar+n] = cast(unsigned short, registerlocalvar(ls, name)); +} + + +static void adjustlocalvars (LexState *ls, int nvars) { + FuncState *fs = ls->fs; + fs->nactvar = cast_byte(fs->nactvar + nvars); + for (; nvars; nvars--) { + getlocvar(fs, fs->nactvar - nvars).startpc = fs->pc; + } +} + + +static void removevars (LexState *ls, int tolevel) { + FuncState *fs = ls->fs; + while (fs->nactvar > tolevel) + getlocvar(fs, --fs->nactvar).endpc = fs->pc; +} + + +static int indexupvalue (FuncState *fs, TString *name, expdesc *v) { + int i; + Proto *f = fs->f; + int oldsize = f->sizeupvalues; + for (i=0; inups; i++) { + if (fs->upvalues[i].k == v->k && fs->upvalues[i].info == v->u.s.info) { + lua_assert(f->upvalues[i] == name); + return i; + } + } + /* new one */ + luaY_checklimit(fs, f->nups + 1, LUAI_MAXUPVALUES, "upvalues"); + luaM_growvector(fs->L, f->upvalues, f->nups, f->sizeupvalues, + TString *, MAX_INT, ""); + while (oldsize < f->sizeupvalues) f->upvalues[oldsize++] = NULL; + f->upvalues[f->nups] = name; + luaC_objbarrier(fs->L, f, name); + lua_assert(v->k == VLOCAL || v->k == VUPVAL); + fs->upvalues[f->nups].k = cast_byte(v->k); + fs->upvalues[f->nups].info = cast_byte(v->u.s.info); + return f->nups++; +} + + +static int searchvar (FuncState *fs, TString *n) { + int i; + for (i=fs->nactvar-1; i >= 0; i--) { + if (n == getlocvar(fs, i).varname) + return i; + } + return -1; /* not found */ +} + + +static void markupval (FuncState *fs, int level) { + BlockCnt *bl = fs->bl; + while (bl && bl->nactvar > level) bl = bl->previous; + if (bl) bl->upval = 1; +} + + +static int singlevaraux (FuncState *fs, TString *n, expdesc *var, int base) { + if (fs == NULL) { /* no more levels? */ + init_exp(var, VGLOBAL, NO_REG); /* default is global variable */ + return VGLOBAL; + } + else { + int v = searchvar(fs, n); /* look up at current level */ + if (v >= 0) { + init_exp(var, VLOCAL, v); + if (!base) + markupval(fs, v); /* local will be used as an upval */ + return VLOCAL; + } + else { /* not found at current level; try upper one */ + if (singlevaraux(fs->prev, n, var, 0) == VGLOBAL) + return VGLOBAL; + var->u.s.info = indexupvalue(fs, n, var); /* else was LOCAL or UPVAL */ + var->k = VUPVAL; /* upvalue in this level */ + return VUPVAL; + } + } +} + + +static void singlevar (LexState *ls, expdesc *var) { + TString *varname = str_checkname(ls); + FuncState *fs = ls->fs; + if (singlevaraux(fs, varname, var, 1) == VGLOBAL) + var->u.s.info = luaK_stringK(fs, varname); /* info points to global name */ +} + + +static void adjust_assign (LexState *ls, int nvars, int nexps, expdesc *e) { + FuncState *fs = ls->fs; + int extra = nvars - nexps; + if (hasmultret(e->k)) { + extra++; /* includes call itself */ + if (extra < 0) extra = 0; + luaK_setreturns(fs, e, extra); /* last exp. provides the difference */ + if (extra > 1) luaK_reserveregs(fs, extra-1); + } + else { + if (e->k != VVOID) luaK_exp2nextreg(fs, e); /* close last expression */ + if (extra > 0) { + int reg = fs->freereg; + luaK_reserveregs(fs, extra); + luaK_nil(fs, reg, extra); + } + } +} + + +static void enterlevel (LexState *ls) { + if (++ls->L->nCcalls > LUAI_MAXCCALLS) + luaX_lexerror(ls, "chunk has too many syntax levels", 0); +} + + +#define leavelevel(ls) ((ls)->L->nCcalls--) + + +static void enterblock (FuncState *fs, BlockCnt *bl, lu_byte isbreakable) { + bl->breaklist = NO_JUMP; + bl->isbreakable = isbreakable; + bl->nactvar = fs->nactvar; + bl->upval = 0; + bl->previous = fs->bl; + fs->bl = bl; + lua_assert(fs->freereg == fs->nactvar); +} + + +static void leaveblock (FuncState *fs) { + BlockCnt *bl = fs->bl; + fs->bl = bl->previous; + removevars(fs->ls, bl->nactvar); + if (bl->upval) + luaK_codeABC(fs, OP_CLOSE, bl->nactvar, 0, 0); + /* a block either controls scope or breaks (never both) */ + lua_assert(!bl->isbreakable || !bl->upval); + lua_assert(bl->nactvar == fs->nactvar); + fs->freereg = fs->nactvar; /* free registers */ + luaK_patchtohere(fs, bl->breaklist); +} + + +static void pushclosure (LexState *ls, FuncState *func, expdesc *v) { + FuncState *fs = ls->fs; + Proto *f = fs->f; + int oldsize = f->sizep; + int i; + luaM_growvector(ls->L, f->p, fs->np, f->sizep, Proto *, + MAXARG_Bx, "constant table overflow"); + while (oldsize < f->sizep) f->p[oldsize++] = NULL; + f->p[fs->np++] = func->f; + luaC_objbarrier(ls->L, f, func->f); + init_exp(v, VRELOCABLE, luaK_codeABx(fs, OP_CLOSURE, 0, fs->np-1)); + for (i=0; if->nups; i++) { + OpCode o = (func->upvalues[i].k == VLOCAL) ? OP_MOVE : OP_GETUPVAL; + luaK_codeABC(fs, o, 0, func->upvalues[i].info, 0); + } +} + + +static void open_func (LexState *ls, FuncState *fs) { + lua_State *L = ls->L; + Proto *f = luaF_newproto(L); + fs->f = f; + fs->prev = ls->fs; /* linked list of funcstates */ + fs->ls = ls; + fs->L = L; + ls->fs = fs; + fs->pc = 0; + fs->lasttarget = -1; + fs->jpc = NO_JUMP; + fs->freereg = 0; + fs->nk = 0; + fs->np = 0; + fs->nlocvars = 0; + fs->nactvar = 0; + fs->bl = NULL; + f->source = ls->source; + f->maxstacksize = 2; /* registers 0/1 are always valid */ + fs->h = luaH_new(L, 0, 0); + /* anchor table of constants and prototype (to avoid being collected) */ + sethvalue2s(L, L->top, fs->h); + incr_top(L); + setptvalue2s(L, L->top, f); + incr_top(L); +} + + +static void close_func (LexState *ls) { + lua_State *L = ls->L; + FuncState *fs = ls->fs; + Proto *f = fs->f; + removevars(ls, 0); + luaK_ret(fs, 0, 0); /* final return */ + luaM_reallocvector(L, f->code, f->sizecode, fs->pc, Instruction); + f->sizecode = fs->pc; + luaM_reallocvector(L, f->lineinfo, f->sizelineinfo, fs->pc, int); + f->sizelineinfo = fs->pc; + luaM_reallocvector(L, f->k, f->sizek, fs->nk, TValue); + f->sizek = fs->nk; + luaM_reallocvector(L, f->p, f->sizep, fs->np, Proto *); + f->sizep = fs->np; + luaM_reallocvector(L, f->locvars, f->sizelocvars, fs->nlocvars, LocVar); + f->sizelocvars = fs->nlocvars; + luaM_reallocvector(L, f->upvalues, f->sizeupvalues, f->nups, TString *); + f->sizeupvalues = f->nups; + lua_assert(luaG_checkcode(f)); + lua_assert(fs->bl == NULL); + ls->fs = fs->prev; + L->top -= 2; /* remove table and prototype from the stack */ + /* last token read was anchored in defunct function; must reanchor it */ + if (fs) anchor_token(ls); +} + + +Proto *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, const char *name) { + struct LexState lexstate; + struct FuncState funcstate; + lexstate.buff = buff; + luaX_setinput(L, &lexstate, z, luaS_new(L, name)); + open_func(&lexstate, &funcstate); + funcstate.f->is_vararg = VARARG_ISVARARG; /* main func. is always vararg */ + luaX_next(&lexstate); /* read first token */ + chunk(&lexstate); + check(&lexstate, TK_EOS); + close_func(&lexstate); + lua_assert(funcstate.prev == NULL); + lua_assert(funcstate.f->nups == 0); + lua_assert(lexstate.fs == NULL); + return funcstate.f; +} + + + +/*============================================================*/ +/* GRAMMAR RULES */ +/*============================================================*/ + + +static void field (LexState *ls, expdesc *v) { + /* field -> ['.' | ':'] NAME */ + FuncState *fs = ls->fs; + expdesc key; + luaK_exp2anyreg(fs, v); + luaX_next(ls); /* skip the dot or colon */ + checkname(ls, &key); + luaK_indexed(fs, v, &key); +} + + +static void yindex (LexState *ls, expdesc *v) { + /* index -> '[' expr ']' */ + luaX_next(ls); /* skip the '[' */ + expr(ls, v); + luaK_exp2val(ls->fs, v); + checknext(ls, ']'); +} + + +/* +** {====================================================================== +** Rules for Constructors +** ======================================================================= +*/ + + +struct ConsControl { + expdesc v; /* last list item read */ + expdesc *t; /* table descriptor */ + int nh; /* total number of `record' elements */ + int na; /* total number of array elements */ + int tostore; /* number of array elements pending to be stored */ +}; + + +static void recfield (LexState *ls, struct ConsControl *cc) { + /* recfield -> (NAME | `['exp1`]') = exp1 */ + FuncState *fs = ls->fs; + int reg = ls->fs->freereg; + expdesc key, val; + int rkkey; + if (ls->t.token == TK_NAME) { + luaY_checklimit(fs, cc->nh, MAX_INT, "items in a constructor"); + checkname(ls, &key); + } + else /* ls->t.token == '[' */ + yindex(ls, &key); + cc->nh++; + checknext(ls, '='); + rkkey = luaK_exp2RK(fs, &key); + expr(ls, &val); + luaK_codeABC(fs, OP_SETTABLE, cc->t->u.s.info, rkkey, luaK_exp2RK(fs, &val)); + fs->freereg = reg; /* free registers */ +} + + +static void closelistfield (FuncState *fs, struct ConsControl *cc) { + if (cc->v.k == VVOID) return; /* there is no list item */ + luaK_exp2nextreg(fs, &cc->v); + cc->v.k = VVOID; + if (cc->tostore == LFIELDS_PER_FLUSH) { + luaK_setlist(fs, cc->t->u.s.info, cc->na, cc->tostore); /* flush */ + cc->tostore = 0; /* no more items pending */ + } +} + + +static void lastlistfield (FuncState *fs, struct ConsControl *cc) { + if (cc->tostore == 0) return; + if (hasmultret(cc->v.k)) { + luaK_setmultret(fs, &cc->v); + luaK_setlist(fs, cc->t->u.s.info, cc->na, LUA_MULTRET); + cc->na--; /* do not count last expression (unknown number of elements) */ + } + else { + if (cc->v.k != VVOID) + luaK_exp2nextreg(fs, &cc->v); + luaK_setlist(fs, cc->t->u.s.info, cc->na, cc->tostore); + } +} + + +static void listfield (LexState *ls, struct ConsControl *cc) { + expr(ls, &cc->v); + luaY_checklimit(ls->fs, cc->na, MAX_INT, "items in a constructor"); + cc->na++; + cc->tostore++; +} + + +static void constructor (LexState *ls, expdesc *t) { + /* constructor -> ?? */ + FuncState *fs = ls->fs; + int line = ls->linenumber; + int pc = luaK_codeABC(fs, OP_NEWTABLE, 0, 0, 0); + struct ConsControl cc; + cc.na = cc.nh = cc.tostore = 0; + cc.t = t; + init_exp(t, VRELOCABLE, pc); + init_exp(&cc.v, VVOID, 0); /* no value (yet) */ + luaK_exp2nextreg(ls->fs, t); /* fix it at stack top (for gc) */ + checknext(ls, '{'); + do { + lua_assert(cc.v.k == VVOID || cc.tostore > 0); + if (ls->t.token == '}') break; + closelistfield(fs, &cc); + switch(ls->t.token) { + case TK_NAME: { /* may be listfields or recfields */ + luaX_lookahead(ls); + if (ls->lookahead.token != '=') /* expression? */ + listfield(ls, &cc); + else + recfield(ls, &cc); + break; + } + case '[': { /* constructor_item -> recfield */ + recfield(ls, &cc); + break; + } + default: { /* constructor_part -> listfield */ + listfield(ls, &cc); + break; + } + } + } while (testnext(ls, ',') || testnext(ls, ';')); + check_match(ls, '}', '{', line); + lastlistfield(fs, &cc); + SETARG_B(fs->f->code[pc], luaO_int2fb(cc.na)); /* set initial array size */ + SETARG_C(fs->f->code[pc], luaO_int2fb(cc.nh)); /* set initial table size */ +} + +/* }====================================================================== */ + + + +static void parlist (LexState *ls) { + /* parlist -> [ param { `,' param } ] */ + FuncState *fs = ls->fs; + Proto *f = fs->f; + int nparams = 0; + f->is_vararg = 0; + if (ls->t.token != ')') { /* is `parlist' not empty? */ + do { + switch (ls->t.token) { + case TK_NAME: { /* param -> NAME */ + new_localvar(ls, str_checkname(ls), nparams++); + break; + } + case TK_DOTS: { /* param -> `...' */ + luaX_next(ls); +#if defined(LUA_COMPAT_VARARG) + /* use `arg' as default name */ + new_localvarliteral(ls, "arg", nparams++); + f->is_vararg = VARARG_HASARG | VARARG_NEEDSARG; +#endif + f->is_vararg |= VARARG_ISVARARG; + break; + } + default: luaX_syntaxerror(ls, " or " LUA_QL("...") " expected"); + } + } while (!f->is_vararg && testnext(ls, ',')); + } + adjustlocalvars(ls, nparams); + f->numparams = cast_byte(fs->nactvar - (f->is_vararg & VARARG_HASARG)); + luaK_reserveregs(fs, fs->nactvar); /* reserve register for parameters */ +} + + +static void body (LexState *ls, expdesc *e, int needself, int line) { + /* body -> `(' parlist `)' chunk END */ + FuncState new_fs; + open_func(ls, &new_fs); + new_fs.f->linedefined = line; + checknext(ls, '('); + if (needself) { + new_localvarliteral(ls, "self", 0); + adjustlocalvars(ls, 1); + } + parlist(ls); + checknext(ls, ')'); + chunk(ls); + new_fs.f->lastlinedefined = ls->linenumber; + check_match(ls, TK_END, TK_FUNCTION, line); + close_func(ls); + pushclosure(ls, &new_fs, e); +} + + +static int explist1 (LexState *ls, expdesc *v) { + /* explist1 -> expr { `,' expr } */ + int n = 1; /* at least one expression */ + expr(ls, v); + while (testnext(ls, ',')) { + luaK_exp2nextreg(ls->fs, v); + expr(ls, v); + n++; + } + return n; +} + + +static void funcargs (LexState *ls, expdesc *f) { + FuncState *fs = ls->fs; + expdesc args; + int base, nparams; + int line = ls->linenumber; + switch (ls->t.token) { + case '(': { /* funcargs -> `(' [ explist1 ] `)' */ + if (line != ls->lastline) + luaX_syntaxerror(ls,"ambiguous syntax (function call x new statement)"); + luaX_next(ls); + if (ls->t.token == ')') /* arg list is empty? */ + args.k = VVOID; + else { + explist1(ls, &args); + luaK_setmultret(fs, &args); + } + check_match(ls, ')', '(', line); + break; + } + case '{': { /* funcargs -> constructor */ + constructor(ls, &args); + break; + } + case TK_STRING: { /* funcargs -> STRING */ + codestring(ls, &args, ls->t.seminfo.ts); + luaX_next(ls); /* must use `seminfo' before `next' */ + break; + } + default: { + luaX_syntaxerror(ls, "function arguments expected"); + return; + } + } + lua_assert(f->k == VNONRELOC); + base = f->u.s.info; /* base register for call */ + if (hasmultret(args.k)) + nparams = LUA_MULTRET; /* open call */ + else { + if (args.k != VVOID) + luaK_exp2nextreg(fs, &args); /* close last argument */ + nparams = fs->freereg - (base+1); + } + init_exp(f, VCALL, luaK_codeABC(fs, OP_CALL, base, nparams+1, 2)); + luaK_fixline(fs, line); + fs->freereg = base+1; /* call remove function and arguments and leaves + (unless changed) one result */ +} + + + + +/* +** {====================================================================== +** Expression parsing +** ======================================================================= +*/ + + +static void prefixexp (LexState *ls, expdesc *v) { + /* prefixexp -> NAME | '(' expr ')' */ + switch (ls->t.token) { + case '(': { + int line = ls->linenumber; + luaX_next(ls); + expr(ls, v); + check_match(ls, ')', '(', line); + luaK_dischargevars(ls->fs, v); + return; + } + case TK_NAME: { + singlevar(ls, v); + return; + } + default: { + luaX_syntaxerror(ls, "unexpected symbol"); + return; + } + } +} + + +static void primaryexp (LexState *ls, expdesc *v) { + /* primaryexp -> + prefixexp { `.' NAME | `[' exp `]' | `:' NAME funcargs | funcargs } */ + FuncState *fs = ls->fs; + prefixexp(ls, v); + for (;;) { + switch (ls->t.token) { + case '.': { /* field */ + field(ls, v); + break; + } + case '[': { /* `[' exp1 `]' */ + expdesc key; + luaK_exp2anyreg(fs, v); + yindex(ls, &key); + luaK_indexed(fs, v, &key); + break; + } + case ':': { /* `:' NAME funcargs */ + expdesc key; + luaX_next(ls); + checkname(ls, &key); + luaK_self(fs, v, &key); + funcargs(ls, v); + break; + } + case '(': case TK_STRING: case '{': { /* funcargs */ + luaK_exp2nextreg(fs, v); + funcargs(ls, v); + break; + } + default: return; + } + } +} + + +static void simpleexp (LexState *ls, expdesc *v) { + /* simpleexp -> NUMBER | STRING | NIL | true | false | ... | + constructor | FUNCTION body | primaryexp */ + switch (ls->t.token) { + case TK_NUMBER: { + init_exp(v, VKNUM, 0); + v->u.nval = ls->t.seminfo.r; + break; + } + case TK_STRING: { + codestring(ls, v, ls->t.seminfo.ts); + break; + } + case TK_NIL: { + init_exp(v, VNIL, 0); + break; + } + case TK_TRUE: { + init_exp(v, VTRUE, 0); + break; + } + case TK_FALSE: { + init_exp(v, VFALSE, 0); + break; + } + case TK_DOTS: { /* vararg */ + FuncState *fs = ls->fs; + check_condition(ls, fs->f->is_vararg, + "cannot use " LUA_QL("...") " outside a vararg function"); + fs->f->is_vararg &= ~VARARG_NEEDSARG; /* don't need 'arg' */ + init_exp(v, VVARARG, luaK_codeABC(fs, OP_VARARG, 0, 1, 0)); + break; + } + case '{': { /* constructor */ + constructor(ls, v); + return; + } + case TK_FUNCTION: { + luaX_next(ls); + body(ls, v, 0, ls->linenumber); + return; + } + default: { + primaryexp(ls, v); + return; + } + } + luaX_next(ls); +} + + +static UnOpr getunopr (int op) { + switch (op) { + case TK_NOT: return OPR_NOT; + case '-': return OPR_MINUS; + case '#': return OPR_LEN; + default: return OPR_NOUNOPR; + } +} + + +static BinOpr getbinopr (int op) { + switch (op) { + case '+': return OPR_ADD; + case '-': return OPR_SUB; + case '*': return OPR_MUL; + case '/': return OPR_DIV; + case '%': return OPR_MOD; + case '^': return OPR_POW; + case TK_CONCAT: return OPR_CONCAT; + case TK_NE: return OPR_NE; + case TK_EQ: return OPR_EQ; + case '<': return OPR_LT; + case TK_LE: return OPR_LE; + case '>': return OPR_GT; + case TK_GE: return OPR_GE; + case TK_AND: return OPR_AND; + case TK_OR: return OPR_OR; + default: return OPR_NOBINOPR; + } +} + + +static const struct { + lu_byte left; /* left priority for each binary operator */ + lu_byte right; /* right priority */ +} priority[] = { /* ORDER OPR */ + {6, 6}, {6, 6}, {7, 7}, {7, 7}, {7, 7}, /* `+' `-' `/' `%' */ + {10, 9}, {5, 4}, /* power and concat (right associative) */ + {3, 3}, {3, 3}, /* equality and inequality */ + {3, 3}, {3, 3}, {3, 3}, {3, 3}, /* order */ + {2, 2}, {1, 1} /* logical (and/or) */ +}; + +#define UNARY_PRIORITY 8 /* priority for unary operators */ + + +/* +** subexpr -> (simpleexp | unop subexpr) { binop subexpr } +** where `binop' is any binary operator with a priority higher than `limit' +*/ +static BinOpr subexpr (LexState *ls, expdesc *v, unsigned int limit) { + BinOpr op; + UnOpr uop; + enterlevel(ls); + uop = getunopr(ls->t.token); + if (uop != OPR_NOUNOPR) { + luaX_next(ls); + subexpr(ls, v, UNARY_PRIORITY); + luaK_prefix(ls->fs, uop, v); + } + else simpleexp(ls, v); + /* expand while operators have priorities higher than `limit' */ + op = getbinopr(ls->t.token); + while (op != OPR_NOBINOPR && priority[op].left > limit) { + expdesc v2; + BinOpr nextop; + luaX_next(ls); + luaK_infix(ls->fs, op, v); + /* read sub-expression with higher priority */ + nextop = subexpr(ls, &v2, priority[op].right); + luaK_posfix(ls->fs, op, v, &v2); + op = nextop; + } + leavelevel(ls); + return op; /* return first untreated operator */ +} + + +static void expr (LexState *ls, expdesc *v) { + subexpr(ls, v, 0); +} + +/* }==================================================================== */ + + + +/* +** {====================================================================== +** Rules for Statements +** ======================================================================= +*/ + + +static int block_follow (int token) { + switch (token) { + case TK_ELSE: case TK_ELSEIF: case TK_END: + case TK_UNTIL: case TK_EOS: + return 1; + default: return 0; + } +} + + +static void block (LexState *ls) { + /* block -> chunk */ + FuncState *fs = ls->fs; + BlockCnt bl; + enterblock(fs, &bl, 0); + chunk(ls); + lua_assert(bl.breaklist == NO_JUMP); + leaveblock(fs); +} + + +/* +** structure to chain all variables in the left-hand side of an +** assignment +*/ +struct LHS_assign { + struct LHS_assign *prev; + expdesc v; /* variable (global, local, upvalue, or indexed) */ +}; + + +/* +** check whether, in an assignment to a local variable, the local variable +** is needed in a previous assignment (to a table). If so, save original +** local value in a safe place and use this safe copy in the previous +** assignment. +*/ +static void check_conflict (LexState *ls, struct LHS_assign *lh, expdesc *v) { + FuncState *fs = ls->fs; + int extra = fs->freereg; /* eventual position to save local variable */ + int conflict = 0; + for (; lh; lh = lh->prev) { + if (lh->v.k == VINDEXED) { + if (lh->v.u.s.info == v->u.s.info) { /* conflict? */ + conflict = 1; + lh->v.u.s.info = extra; /* previous assignment will use safe copy */ + } + if (lh->v.u.s.aux == v->u.s.info) { /* conflict? */ + conflict = 1; + lh->v.u.s.aux = extra; /* previous assignment will use safe copy */ + } + } + } + if (conflict) { + luaK_codeABC(fs, OP_MOVE, fs->freereg, v->u.s.info, 0); /* make copy */ + luaK_reserveregs(fs, 1); + } +} + + +static void assignment (LexState *ls, struct LHS_assign *lh, int nvars) { + expdesc e; + check_condition(ls, VLOCAL <= lh->v.k && lh->v.k <= VINDEXED, + "syntax error"); + if (testnext(ls, ',')) { /* assignment -> `,' primaryexp assignment */ + struct LHS_assign nv; + nv.prev = lh; + primaryexp(ls, &nv.v); + if (nv.v.k == VLOCAL) + check_conflict(ls, lh, &nv.v); + luaY_checklimit(ls->fs, nvars, LUAI_MAXCCALLS - ls->L->nCcalls, + "variables in assignment"); + assignment(ls, &nv, nvars+1); + } + else { /* assignment -> `=' explist1 */ + int nexps; + checknext(ls, '='); + nexps = explist1(ls, &e); + if (nexps != nvars) { + adjust_assign(ls, nvars, nexps, &e); + if (nexps > nvars) + ls->fs->freereg -= nexps - nvars; /* remove extra values */ + } + else { + luaK_setoneret(ls->fs, &e); /* close last expression */ + luaK_storevar(ls->fs, &lh->v, &e); + return; /* avoid default */ + } + } + init_exp(&e, VNONRELOC, ls->fs->freereg-1); /* default assignment */ + luaK_storevar(ls->fs, &lh->v, &e); +} + + +static int cond (LexState *ls) { + /* cond -> exp */ + expdesc v; + expr(ls, &v); /* read condition */ + if (v.k == VNIL) v.k = VFALSE; /* `falses' are all equal here */ + luaK_goiftrue(ls->fs, &v); + return v.f; +} + + +static void breakstat (LexState *ls) { + FuncState *fs = ls->fs; + BlockCnt *bl = fs->bl; + int upval = 0; + while (bl && !bl->isbreakable) { + upval |= bl->upval; + bl = bl->previous; + } + if (!bl) + luaX_syntaxerror(ls, "no loop to break"); + if (upval) + luaK_codeABC(fs, OP_CLOSE, bl->nactvar, 0, 0); + luaK_concat(fs, &bl->breaklist, luaK_jump(fs)); +} + + +static void whilestat (LexState *ls, int line) { + /* whilestat -> WHILE cond DO block END */ + FuncState *fs = ls->fs; + int whileinit; + int condexit; + BlockCnt bl; + luaX_next(ls); /* skip WHILE */ + whileinit = luaK_getlabel(fs); + condexit = cond(ls); + enterblock(fs, &bl, 1); + checknext(ls, TK_DO); + block(ls); + luaK_patchlist(fs, luaK_jump(fs), whileinit); + check_match(ls, TK_END, TK_WHILE, line); + leaveblock(fs); + luaK_patchtohere(fs, condexit); /* false conditions finish the loop */ +} + + +static void repeatstat (LexState *ls, int line) { + /* repeatstat -> REPEAT block UNTIL cond */ + int condexit; + FuncState *fs = ls->fs; + int repeat_init = luaK_getlabel(fs); + BlockCnt bl1, bl2; + enterblock(fs, &bl1, 1); /* loop block */ + enterblock(fs, &bl2, 0); /* scope block */ + luaX_next(ls); /* skip REPEAT */ + chunk(ls); + check_match(ls, TK_UNTIL, TK_REPEAT, line); + condexit = cond(ls); /* read condition (inside scope block) */ + if (!bl2.upval) { /* no upvalues? */ + leaveblock(fs); /* finish scope */ + luaK_patchlist(ls->fs, condexit, repeat_init); /* close the loop */ + } + else { /* complete semantics when there are upvalues */ + breakstat(ls); /* if condition then break */ + luaK_patchtohere(ls->fs, condexit); /* else... */ + leaveblock(fs); /* finish scope... */ + luaK_patchlist(ls->fs, luaK_jump(fs), repeat_init); /* and repeat */ + } + leaveblock(fs); /* finish loop */ +} + + +static int exp1 (LexState *ls) { + expdesc e; + int k; + expr(ls, &e); + k = e.k; + luaK_exp2nextreg(ls->fs, &e); + return k; +} + + +static void forbody (LexState *ls, int base, int line, int nvars, int isnum) { + /* forbody -> DO block */ + BlockCnt bl; + FuncState *fs = ls->fs; + int prep, endfor; + adjustlocalvars(ls, 3); /* control variables */ + checknext(ls, TK_DO); + prep = isnum ? luaK_codeAsBx(fs, OP_FORPREP, base, NO_JUMP) : luaK_jump(fs); + enterblock(fs, &bl, 0); /* scope for declared variables */ + adjustlocalvars(ls, nvars); + luaK_reserveregs(fs, nvars); + block(ls); + leaveblock(fs); /* end of scope for declared variables */ + luaK_patchtohere(fs, prep); + endfor = (isnum) ? luaK_codeAsBx(fs, OP_FORLOOP, base, NO_JUMP) : + luaK_codeABC(fs, OP_TFORLOOP, base, 0, nvars); + luaK_fixline(fs, line); /* pretend that `OP_FOR' starts the loop */ + luaK_patchlist(fs, (isnum ? endfor : luaK_jump(fs)), prep + 1); +} + + +static void fornum (LexState *ls, TString *varname, int line) { + /* fornum -> NAME = exp1,exp1[,exp1] forbody */ + FuncState *fs = ls->fs; + int base = fs->freereg; + new_localvarliteral(ls, "(for index)", 0); + new_localvarliteral(ls, "(for limit)", 1); + new_localvarliteral(ls, "(for step)", 2); + new_localvar(ls, varname, 3); + checknext(ls, '='); + exp1(ls); /* initial value */ + checknext(ls, ','); + exp1(ls); /* limit */ + if (testnext(ls, ',')) + exp1(ls); /* optional step */ + else { /* default step = 1 */ + luaK_codeABx(fs, OP_LOADK, fs->freereg, luaK_numberK(fs, 1)); + luaK_reserveregs(fs, 1); + } + forbody(ls, base, line, 1, 1); +} + + +static void forlist (LexState *ls, TString *indexname) { + /* forlist -> NAME {,NAME} IN explist1 forbody */ + FuncState *fs = ls->fs; + expdesc e; + int nvars = 0; + int line; + int base = fs->freereg; + /* create control variables */ + new_localvarliteral(ls, "(for generator)", nvars++); + new_localvarliteral(ls, "(for state)", nvars++); + new_localvarliteral(ls, "(for control)", nvars++); + /* create declared variables */ + new_localvar(ls, indexname, nvars++); + while (testnext(ls, ',')) + new_localvar(ls, str_checkname(ls), nvars++); + checknext(ls, TK_IN); + line = ls->linenumber; + adjust_assign(ls, 3, explist1(ls, &e), &e); + luaK_checkstack(fs, 3); /* extra space to call generator */ + forbody(ls, base, line, nvars - 3, 0); +} + + +static void forstat (LexState *ls, int line) { + /* forstat -> FOR (fornum | forlist) END */ + FuncState *fs = ls->fs; + TString *varname; + BlockCnt bl; + enterblock(fs, &bl, 1); /* scope for loop and control variables */ + luaX_next(ls); /* skip `for' */ + varname = str_checkname(ls); /* first variable name */ + switch (ls->t.token) { + case '=': fornum(ls, varname, line); break; + case ',': case TK_IN: forlist(ls, varname); break; + default: luaX_syntaxerror(ls, LUA_QL("=") " or " LUA_QL("in") " expected"); + } + check_match(ls, TK_END, TK_FOR, line); + leaveblock(fs); /* loop scope (`break' jumps to this point) */ +} + + +static int test_then_block (LexState *ls) { + /* test_then_block -> [IF | ELSEIF] cond THEN block */ + int condexit; + luaX_next(ls); /* skip IF or ELSEIF */ + condexit = cond(ls); + checknext(ls, TK_THEN); + block(ls); /* `then' part */ + return condexit; +} + + +static void ifstat (LexState *ls, int line) { + /* ifstat -> IF cond THEN block {ELSEIF cond THEN block} [ELSE block] END */ + FuncState *fs = ls->fs; + int flist; + int escapelist = NO_JUMP; + flist = test_then_block(ls); /* IF cond THEN block */ + while (ls->t.token == TK_ELSEIF) { + luaK_concat(fs, &escapelist, luaK_jump(fs)); + luaK_patchtohere(fs, flist); + flist = test_then_block(ls); /* ELSEIF cond THEN block */ + } + if (ls->t.token == TK_ELSE) { + luaK_concat(fs, &escapelist, luaK_jump(fs)); + luaK_patchtohere(fs, flist); + luaX_next(ls); /* skip ELSE (after patch, for correct line info) */ + block(ls); /* `else' part */ + } + else + luaK_concat(fs, &escapelist, flist); + luaK_patchtohere(fs, escapelist); + check_match(ls, TK_END, TK_IF, line); +} + + +static void localfunc (LexState *ls) { + expdesc v, b; + FuncState *fs = ls->fs; + new_localvar(ls, str_checkname(ls), 0); + init_exp(&v, VLOCAL, fs->freereg); + luaK_reserveregs(fs, 1); + adjustlocalvars(ls, 1); + body(ls, &b, 0, ls->linenumber); + luaK_storevar(fs, &v, &b); + /* debug information will only see the variable after this point! */ + getlocvar(fs, fs->nactvar - 1).startpc = fs->pc; +} + + +static void localstat (LexState *ls) { + /* stat -> LOCAL NAME {`,' NAME} [`=' explist1] */ + int nvars = 0; + int nexps; + expdesc e; + do { + new_localvar(ls, str_checkname(ls), nvars++); + } while (testnext(ls, ',')); + if (testnext(ls, '=')) + nexps = explist1(ls, &e); + else { + e.k = VVOID; + nexps = 0; + } + adjust_assign(ls, nvars, nexps, &e); + adjustlocalvars(ls, nvars); +} + + +static int funcname (LexState *ls, expdesc *v) { + /* funcname -> NAME {field} [`:' NAME] */ + int needself = 0; + singlevar(ls, v); + while (ls->t.token == '.') + field(ls, v); + if (ls->t.token == ':') { + needself = 1; + field(ls, v); + } + return needself; +} + + +static void funcstat (LexState *ls, int line) { + /* funcstat -> FUNCTION funcname body */ + int needself; + expdesc v, b; + luaX_next(ls); /* skip FUNCTION */ + needself = funcname(ls, &v); + body(ls, &b, needself, line); + luaK_storevar(ls->fs, &v, &b); + luaK_fixline(ls->fs, line); /* definition `happens' in the first line */ +} + + +static void exprstat (LexState *ls) { + /* stat -> func | assignment */ + FuncState *fs = ls->fs; + struct LHS_assign v; + primaryexp(ls, &v.v); + if (v.v.k == VCALL) /* stat -> func */ + SETARG_C(getcode(fs, &v.v), 1); /* call statement uses no results */ + else { /* stat -> assignment */ + v.prev = NULL; + assignment(ls, &v, 1); + } +} + + +static void retstat (LexState *ls) { + /* stat -> RETURN explist */ + FuncState *fs = ls->fs; + expdesc e; + int first, nret; /* registers with returned values */ + luaX_next(ls); /* skip RETURN */ + if (block_follow(ls->t.token) || ls->t.token == ';') + first = nret = 0; /* return no values */ + else { + nret = explist1(ls, &e); /* optional return values */ + if (hasmultret(e.k)) { + luaK_setmultret(fs, &e); + if (e.k == VCALL && nret == 1) { /* tail call? */ + SET_OPCODE(getcode(fs,&e), OP_TAILCALL); + lua_assert(GETARG_A(getcode(fs,&e)) == fs->nactvar); + } + first = fs->nactvar; + nret = LUA_MULTRET; /* return all values */ + } + else { + if (nret == 1) /* only one single value? */ + first = luaK_exp2anyreg(fs, &e); + else { + luaK_exp2nextreg(fs, &e); /* values must go to the `stack' */ + first = fs->nactvar; /* return all `active' values */ + lua_assert(nret == fs->freereg - first); + } + } + } + luaK_ret(fs, first, nret); +} + + +static int statement (LexState *ls) { + int line = ls->linenumber; /* may be needed for error messages */ + switch (ls->t.token) { + case TK_IF: { /* stat -> ifstat */ + ifstat(ls, line); + return 0; + } + case TK_WHILE: { /* stat -> whilestat */ + whilestat(ls, line); + return 0; + } + case TK_DO: { /* stat -> DO block END */ + luaX_next(ls); /* skip DO */ + block(ls); + check_match(ls, TK_END, TK_DO, line); + return 0; + } + case TK_FOR: { /* stat -> forstat */ + forstat(ls, line); + return 0; + } + case TK_REPEAT: { /* stat -> repeatstat */ + repeatstat(ls, line); + return 0; + } + case TK_FUNCTION: { + funcstat(ls, line); /* stat -> funcstat */ + return 0; + } + case TK_LOCAL: { /* stat -> localstat */ + luaX_next(ls); /* skip LOCAL */ + if (testnext(ls, TK_FUNCTION)) /* local function? */ + localfunc(ls); + else + localstat(ls); + return 0; + } + case TK_RETURN: { /* stat -> retstat */ + retstat(ls); + return 1; /* must be last statement */ + } + case TK_BREAK: { /* stat -> breakstat */ + luaX_next(ls); /* skip BREAK */ + breakstat(ls); + return 1; /* must be last statement */ + } + default: { + exprstat(ls); + return 0; /* to avoid warnings */ + } + } +} + + +static void chunk (LexState *ls) { + /* chunk -> { stat [`;'] } */ + int islast = 0; + enterlevel(ls); + while (!islast && !block_follow(ls->t.token)) { + islast = statement(ls); + testnext(ls, ';'); + lua_assert(ls->fs->f->maxstacksize >= ls->fs->freereg && + ls->fs->freereg >= ls->fs->nactvar); + ls->fs->freereg = ls->fs->nactvar; /* free registers */ + } + leavelevel(ls); +} + +/* }====================================================================== */ diff --git a/lua-5.1.4/src/lparser.h b/lua-5.1.4/src/lparser.h new file mode 100644 index 0000000..18836af --- /dev/null +++ b/lua-5.1.4/src/lparser.h @@ -0,0 +1,82 @@ +/* +** $Id: lparser.h,v 1.57.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua Parser +** See Copyright Notice in lua.h +*/ + +#ifndef lparser_h +#define lparser_h + +#include "llimits.h" +#include "lobject.h" +#include "lzio.h" + + +/* +** Expression descriptor +*/ + +typedef enum { + VVOID, /* no value */ + VNIL, + VTRUE, + VFALSE, + VK, /* info = index of constant in `k' */ + VKNUM, /* nval = numerical value */ + VLOCAL, /* info = local register */ + VUPVAL, /* info = index of upvalue in `upvalues' */ + VGLOBAL, /* info = index of table; aux = index of global name in `k' */ + VINDEXED, /* info = table register; aux = index register (or `k') */ + VJMP, /* info = instruction pc */ + VRELOCABLE, /* info = instruction pc */ + VNONRELOC, /* info = result register */ + VCALL, /* info = instruction pc */ + VVARARG /* info = instruction pc */ +} expkind; + +typedef struct expdesc { + expkind k; + union { + struct { int info, aux; } s; + lua_Number nval; + } u; + int t; /* patch list of `exit when true' */ + int f; /* patch list of `exit when false' */ +} expdesc; + + +typedef struct upvaldesc { + lu_byte k; + lu_byte info; +} upvaldesc; + + +struct BlockCnt; /* defined in lparser.c */ + + +/* state needed to generate code for a given function */ +typedef struct FuncState { + Proto *f; /* current function header */ + Table *h; /* table to find (and reuse) elements in `k' */ + struct FuncState *prev; /* enclosing function */ + struct LexState *ls; /* lexical state */ + struct lua_State *L; /* copy of the Lua state */ + struct BlockCnt *bl; /* chain of current blocks */ + int pc; /* next position to code (equivalent to `ncode') */ + int lasttarget; /* `pc' of last `jump target' */ + int jpc; /* list of pending jumps to `pc' */ + int freereg; /* first free register */ + int nk; /* number of elements in `k' */ + int np; /* number of elements in `p' */ + short nlocvars; /* number of elements in `locvars' */ + lu_byte nactvar; /* number of active local variables */ + upvaldesc upvalues[LUAI_MAXUPVALUES]; /* upvalues */ + unsigned short actvar[LUAI_MAXVARS]; /* declared-variable stack */ +} FuncState; + + +LUAI_FUNC Proto *luaY_parser (lua_State *L, ZIO *z, Mbuffer *buff, + const char *name); + + +#endif diff --git a/lua-5.1.4/src/lstate.c b/lua-5.1.4/src/lstate.c new file mode 100644 index 0000000..4313b83 --- /dev/null +++ b/lua-5.1.4/src/lstate.c @@ -0,0 +1,214 @@ +/* +** $Id: lstate.c,v 2.36.1.2 2008/01/03 15:20:39 roberto Exp $ +** Global State +** See Copyright Notice in lua.h +*/ + + +#include + +#define lstate_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "llex.h" +#include "lmem.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" + + +#define state_size(x) (sizeof(x) + LUAI_EXTRASPACE) +#define fromstate(l) (cast(lu_byte *, (l)) - LUAI_EXTRASPACE) +#define tostate(l) (cast(lua_State *, cast(lu_byte *, l) + LUAI_EXTRASPACE)) + + +/* +** Main thread combines a thread state and the global state +*/ +typedef struct LG { + lua_State l; + global_State g; +} LG; + + + +static void stack_init (lua_State *L1, lua_State *L) { + /* initialize CallInfo array */ + L1->base_ci = luaM_newvector(L, BASIC_CI_SIZE, CallInfo); + L1->ci = L1->base_ci; + L1->size_ci = BASIC_CI_SIZE; + L1->end_ci = L1->base_ci + L1->size_ci - 1; + /* initialize stack array */ + L1->stack = luaM_newvector(L, BASIC_STACK_SIZE + EXTRA_STACK, TValue); + L1->stacksize = BASIC_STACK_SIZE + EXTRA_STACK; + L1->top = L1->stack; + L1->stack_last = L1->stack+(L1->stacksize - EXTRA_STACK)-1; + /* initialize first ci */ + L1->ci->func = L1->top; + setnilvalue(L1->top++); /* `function' entry for this `ci' */ + L1->base = L1->ci->base = L1->top; + L1->ci->top = L1->top + LUA_MINSTACK; +} + + +static void freestack (lua_State *L, lua_State *L1) { + luaM_freearray(L, L1->base_ci, L1->size_ci, CallInfo); + luaM_freearray(L, L1->stack, L1->stacksize, TValue); +} + + +/* +** open parts that may cause memory-allocation errors +*/ +static void f_luaopen (lua_State *L, void *ud) { + global_State *g = G(L); + UNUSED(ud); + stack_init(L, L); /* init stack */ + sethvalue(L, gt(L), luaH_new(L, 0, 2)); /* table of globals */ + sethvalue(L, registry(L), luaH_new(L, 0, 2)); /* registry */ + luaS_resize(L, MINSTRTABSIZE); /* initial size of string table */ + luaT_init(L); + luaX_init(L); + luaS_fix(luaS_newliteral(L, MEMERRMSG)); + g->GCthreshold = 4*g->totalbytes; +} + + +static void preinit_state (lua_State *L, global_State *g) { + G(L) = g; + L->stack = NULL; + L->stacksize = 0; + L->errorJmp = NULL; + L->hook = NULL; + L->hookmask = 0; + L->basehookcount = 0; + L->allowhook = 1; + resethookcount(L); + L->openupval = NULL; + L->size_ci = 0; + L->nCcalls = L->baseCcalls = 0; + L->status = 0; + L->base_ci = L->ci = NULL; + L->savedpc = NULL; + L->errfunc = 0; + setnilvalue(gt(L)); +} + + +static void close_state (lua_State *L) { + global_State *g = G(L); + luaF_close(L, L->stack); /* close all upvalues for this thread */ + luaC_freeall(L); /* collect all objects */ + lua_assert(g->rootgc == obj2gco(L)); + lua_assert(g->strt.nuse == 0); + luaM_freearray(L, G(L)->strt.hash, G(L)->strt.size, TString *); + luaZ_freebuffer(L, &g->buff); + freestack(L, L); + lua_assert(g->totalbytes == sizeof(LG)); + (*g->frealloc)(g->ud, fromstate(L), state_size(LG), 0); +} + + +lua_State *luaE_newthread (lua_State *L) { + lua_State *L1 = tostate(luaM_malloc(L, state_size(lua_State))); + luaC_link(L, obj2gco(L1), LUA_TTHREAD); + preinit_state(L1, G(L)); + stack_init(L1, L); /* init stack */ + setobj2n(L, gt(L1), gt(L)); /* share table of globals */ + L1->hookmask = L->hookmask; + L1->basehookcount = L->basehookcount; + L1->hook = L->hook; + resethookcount(L1); + lua_assert(iswhite(obj2gco(L1))); + return L1; +} + + +void luaE_freethread (lua_State *L, lua_State *L1) { + luaF_close(L1, L1->stack); /* close all upvalues for this thread */ + lua_assert(L1->openupval == NULL); + luai_userstatefree(L1); + freestack(L, L1); + luaM_freemem(L, fromstate(L1), state_size(lua_State)); +} + + +LUA_API lua_State *lua_newstate (lua_Alloc f, void *ud) { + int i; + lua_State *L; + global_State *g; + void *l = (*f)(ud, NULL, 0, state_size(LG)); + if (l == NULL) return NULL; + L = tostate(l); + g = &((LG *)L)->g; + L->next = NULL; + L->tt = LUA_TTHREAD; + g->currentwhite = bit2mask(WHITE0BIT, FIXEDBIT); + L->marked = luaC_white(g); + set2bits(L->marked, FIXEDBIT, SFIXEDBIT); + preinit_state(L, g); + g->frealloc = f; + g->ud = ud; + g->mainthread = L; + g->uvhead.u.l.prev = &g->uvhead; + g->uvhead.u.l.next = &g->uvhead; + g->GCthreshold = 0; /* mark it as unfinished state */ + g->strt.size = 0; + g->strt.nuse = 0; + g->strt.hash = NULL; + setnilvalue(registry(L)); + luaZ_initbuffer(L, &g->buff); + g->panic = NULL; + g->gcstate = GCSpause; + g->rootgc = obj2gco(L); + g->sweepstrgc = 0; + g->sweepgc = &g->rootgc; + g->gray = NULL; + g->grayagain = NULL; + g->weak = NULL; + g->tmudata = NULL; + g->totalbytes = sizeof(LG); + g->gcpause = LUAI_GCPAUSE; + g->gcstepmul = LUAI_GCMUL; + g->gcdept = 0; + for (i=0; imt[i] = NULL; + if (luaD_rawrunprotected(L, f_luaopen, NULL) != 0) { + /* memory allocation error: free partial state */ + close_state(L); + L = NULL; + } + else + luai_userstateopen(L); + return L; +} + + +static void callallgcTM (lua_State *L, void *ud) { + UNUSED(ud); + luaC_callGCTM(L); /* call GC metamethods for all udata */ +} + + +LUA_API void lua_close (lua_State *L) { + L = G(L)->mainthread; /* only the main thread can be closed */ + lua_lock(L); + luaF_close(L, L->stack); /* close all upvalues for this thread */ + luaC_separateudata(L, 1); /* separate udata that have GC metamethods */ + L->errfunc = 0; /* no error function during GC metamethods */ + do { /* repeat until no more errors */ + L->ci = L->base_ci; + L->base = L->top = L->ci->base; + L->nCcalls = L->baseCcalls = 0; + } while (luaD_rawrunprotected(L, callallgcTM, NULL) != 0); + lua_assert(G(L)->tmudata == NULL); + luai_userstateclose(L); + close_state(L); +} + diff --git a/lua-5.1.4/src/lstate.h b/lua-5.1.4/src/lstate.h new file mode 100644 index 0000000..3bc575b --- /dev/null +++ b/lua-5.1.4/src/lstate.h @@ -0,0 +1,169 @@ +/* +** $Id: lstate.h,v 2.24.1.2 2008/01/03 15:20:39 roberto Exp $ +** Global State +** See Copyright Notice in lua.h +*/ + +#ifndef lstate_h +#define lstate_h + +#include "lua.h" + +#include "lobject.h" +#include "ltm.h" +#include "lzio.h" + + + +struct lua_longjmp; /* defined in ldo.c */ + + +/* table of globals */ +#define gt(L) (&L->l_gt) + +/* registry */ +#define registry(L) (&G(L)->l_registry) + + +/* extra stack space to handle TM calls and some other extras */ +#define EXTRA_STACK 5 + + +#define BASIC_CI_SIZE 8 + +#define BASIC_STACK_SIZE (2*LUA_MINSTACK) + + + +typedef struct stringtable { + GCObject **hash; + lu_int32 nuse; /* number of elements */ + int size; +} stringtable; + + +/* +** informations about a call +*/ +typedef struct CallInfo { + StkId base; /* base for this function */ + StkId func; /* function index in the stack */ + StkId top; /* top for this function */ + const Instruction *savedpc; + int nresults; /* expected number of results from this function */ + int tailcalls; /* number of tail calls lost under this entry */ +} CallInfo; + + + +#define curr_func(L) (clvalue(L->ci->func)) +#define ci_func(ci) (clvalue((ci)->func)) +#define f_isLua(ci) (!ci_func(ci)->c.isC) +#define isLua(ci) (ttisfunction((ci)->func) && f_isLua(ci)) + + +/* +** `global state', shared by all threads of this state +*/ +typedef struct global_State { + stringtable strt; /* hash table for strings */ + lua_Alloc frealloc; /* function to reallocate memory */ + void *ud; /* auxiliary data to `frealloc' */ + lu_byte currentwhite; + lu_byte gcstate; /* state of garbage collector */ + int sweepstrgc; /* position of sweep in `strt' */ + GCObject *rootgc; /* list of all collectable objects */ + GCObject **sweepgc; /* position of sweep in `rootgc' */ + GCObject *gray; /* list of gray objects */ + GCObject *grayagain; /* list of objects to be traversed atomically */ + GCObject *weak; /* list of weak tables (to be cleared) */ + GCObject *tmudata; /* last element of list of userdata to be GC */ + Mbuffer buff; /* temporary buffer for string concatentation */ + lu_mem GCthreshold; + lu_mem totalbytes; /* number of bytes currently allocated */ + lu_mem estimate; /* an estimate of number of bytes actually in use */ + lu_mem gcdept; /* how much GC is `behind schedule' */ + int gcpause; /* size of pause between successive GCs */ + int gcstepmul; /* GC `granularity' */ + lua_CFunction panic; /* to be called in unprotected errors */ + TValue l_registry; + struct lua_State *mainthread; + UpVal uvhead; /* head of double-linked list of all open upvalues */ + struct Table *mt[NUM_TAGS]; /* metatables for basic types */ + TString *tmname[TM_N]; /* array with tag-method names */ +} global_State; + + +/* +** `per thread' state +*/ +struct lua_State { + CommonHeader; + lu_byte status; + StkId top; /* first free slot in the stack */ + StkId base; /* base of current function */ + global_State *l_G; + CallInfo *ci; /* call info for current function */ + const Instruction *savedpc; /* `savedpc' of current function */ + StkId stack_last; /* last free slot in the stack */ + StkId stack; /* stack base */ + CallInfo *end_ci; /* points after end of ci array*/ + CallInfo *base_ci; /* array of CallInfo's */ + int stacksize; + int size_ci; /* size of array `base_ci' */ + unsigned short nCcalls; /* number of nested C calls */ + unsigned short baseCcalls; /* nested C calls when resuming coroutine */ + lu_byte hookmask; + lu_byte allowhook; + int basehookcount; + int hookcount; + lua_Hook hook; + TValue l_gt; /* table of globals */ + TValue env; /* temporary place for environments */ + GCObject *openupval; /* list of open upvalues in this stack */ + GCObject *gclist; + struct lua_longjmp *errorJmp; /* current error recover point */ + ptrdiff_t errfunc; /* current error handling function (stack index) */ +}; + + +#define G(L) (L->l_G) + + +/* +** Union of all collectable objects +*/ +union GCObject { + GCheader gch; + union TString ts; + union Udata u; + union Closure cl; + struct Table h; + struct Proto p; + struct UpVal uv; + struct lua_State th; /* thread */ +}; + + +/* macros to convert a GCObject into a specific value */ +#define rawgco2ts(o) check_exp((o)->gch.tt == LUA_TSTRING, &((o)->ts)) +#define gco2ts(o) (&rawgco2ts(o)->tsv) +#define rawgco2u(o) check_exp((o)->gch.tt == LUA_TUSERDATA, &((o)->u)) +#define gco2u(o) (&rawgco2u(o)->uv) +#define gco2cl(o) check_exp((o)->gch.tt == LUA_TFUNCTION, &((o)->cl)) +#define gco2h(o) check_exp((o)->gch.tt == LUA_TTABLE, &((o)->h)) +#define gco2p(o) check_exp((o)->gch.tt == LUA_TPROTO, &((o)->p)) +#define gco2uv(o) check_exp((o)->gch.tt == LUA_TUPVAL, &((o)->uv)) +#define ngcotouv(o) \ + check_exp((o) == NULL || (o)->gch.tt == LUA_TUPVAL, &((o)->uv)) +#define gco2th(o) check_exp((o)->gch.tt == LUA_TTHREAD, &((o)->th)) + +/* macro to convert any Lua object into a GCObject */ +#define obj2gco(v) (cast(GCObject *, (v))) + + +LUAI_FUNC lua_State *luaE_newthread (lua_State *L); +LUAI_FUNC void luaE_freethread (lua_State *L, lua_State *L1); + +#endif + diff --git a/lua-5.1.4/src/lstring.c b/lua-5.1.4/src/lstring.c new file mode 100644 index 0000000..4911315 --- /dev/null +++ b/lua-5.1.4/src/lstring.c @@ -0,0 +1,111 @@ +/* +** $Id: lstring.c,v 2.8.1.1 2007/12/27 13:02:25 roberto Exp $ +** String table (keeps all strings handled by Lua) +** See Copyright Notice in lua.h +*/ + + +#include + +#define lstring_c +#define LUA_CORE + +#include "lua.h" + +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" + + + +void luaS_resize (lua_State *L, int newsize) { + GCObject **newhash; + stringtable *tb; + int i; + if (G(L)->gcstate == GCSsweepstring) + return; /* cannot resize during GC traverse */ + newhash = luaM_newvector(L, newsize, GCObject *); + tb = &G(L)->strt; + for (i=0; isize; i++) { + GCObject *p = tb->hash[i]; + while (p) { /* for each node in the list */ + GCObject *next = p->gch.next; /* save next */ + unsigned int h = gco2ts(p)->hash; + int h1 = lmod(h, newsize); /* new position */ + lua_assert(cast_int(h%newsize) == lmod(h, newsize)); + p->gch.next = newhash[h1]; /* chain it */ + newhash[h1] = p; + p = next; + } + } + luaM_freearray(L, tb->hash, tb->size, TString *); + tb->size = newsize; + tb->hash = newhash; +} + + +static TString *newlstr (lua_State *L, const char *str, size_t l, + unsigned int h) { + TString *ts; + stringtable *tb; + if (l+1 > (MAX_SIZET - sizeof(TString))/sizeof(char)) + luaM_toobig(L); + ts = cast(TString *, luaM_malloc(L, (l+1)*sizeof(char)+sizeof(TString))); + ts->tsv.len = l; + ts->tsv.hash = h; + ts->tsv.marked = luaC_white(G(L)); + ts->tsv.tt = LUA_TSTRING; + ts->tsv.reserved = 0; + memcpy(ts+1, str, l*sizeof(char)); + ((char *)(ts+1))[l] = '\0'; /* ending 0 */ + tb = &G(L)->strt; + h = lmod(h, tb->size); + ts->tsv.next = tb->hash[h]; /* chain new entry */ + tb->hash[h] = obj2gco(ts); + tb->nuse++; + if (tb->nuse > cast(lu_int32, tb->size) && tb->size <= MAX_INT/2) + luaS_resize(L, tb->size*2); /* too crowded */ + return ts; +} + + +TString *luaS_newlstr (lua_State *L, const char *str, size_t l) { + GCObject *o; + unsigned int h = cast(unsigned int, l); /* seed */ + size_t step = (l>>5)+1; /* if string is too long, don't hash all its chars */ + size_t l1; + for (l1=l; l1>=step; l1-=step) /* compute hash */ + h = h ^ ((h<<5)+(h>>2)+cast(unsigned char, str[l1-1])); + for (o = G(L)->strt.hash[lmod(h, G(L)->strt.size)]; + o != NULL; + o = o->gch.next) { + TString *ts = rawgco2ts(o); + if (ts->tsv.len == l && (memcmp(str, getstr(ts), l) == 0)) { + /* string may be dead */ + if (isdead(G(L), o)) changewhite(o); + return ts; + } + } + return newlstr(L, str, l, h); /* not found */ +} + + +Udata *luaS_newudata (lua_State *L, size_t s, Table *e) { + Udata *u; + if (s > MAX_SIZET - sizeof(Udata)) + luaM_toobig(L); + u = cast(Udata *, luaM_malloc(L, s + sizeof(Udata))); + u->uv.marked = luaC_white(G(L)); /* is not finalized */ + u->uv.tt = LUA_TUSERDATA; + u->uv.len = s; + u->uv.metatable = NULL; + u->uv.env = e; + /* chain it on udata list (after main thread) */ + u->uv.next = G(L)->mainthread->next; + G(L)->mainthread->next = obj2gco(u); + return u; +} + diff --git a/lua-5.1.4/src/lstring.h b/lua-5.1.4/src/lstring.h new file mode 100644 index 0000000..73a2ff8 --- /dev/null +++ b/lua-5.1.4/src/lstring.h @@ -0,0 +1,31 @@ +/* +** $Id: lstring.h,v 1.43.1.1 2007/12/27 13:02:25 roberto Exp $ +** String table (keep all strings handled by Lua) +** See Copyright Notice in lua.h +*/ + +#ifndef lstring_h +#define lstring_h + + +#include "lgc.h" +#include "lobject.h" +#include "lstate.h" + + +#define sizestring(s) (sizeof(union TString)+((s)->len+1)*sizeof(char)) + +#define sizeudata(u) (sizeof(union Udata)+(u)->len) + +#define luaS_new(L, s) (luaS_newlstr(L, s, strlen(s))) +#define luaS_newliteral(L, s) (luaS_newlstr(L, "" s, \ + (sizeof(s)/sizeof(char))-1)) + +#define luaS_fix(s) l_setbit((s)->tsv.marked, FIXEDBIT) + +LUAI_FUNC void luaS_resize (lua_State *L, int newsize); +LUAI_FUNC Udata *luaS_newudata (lua_State *L, size_t s, Table *e); +LUAI_FUNC TString *luaS_newlstr (lua_State *L, const char *str, size_t l); + + +#endif diff --git a/lua-5.1.4/src/lstrlib.c b/lua-5.1.4/src/lstrlib.c new file mode 100644 index 0000000..1b4763d --- /dev/null +++ b/lua-5.1.4/src/lstrlib.c @@ -0,0 +1,869 @@ +/* +** $Id: lstrlib.c,v 1.132.1.4 2008/07/11 17:27:21 roberto Exp $ +** Standard library for string operations and pattern-matching +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include +#include + +#define lstrlib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +/* macro to `unsign' a character */ +#define uchar(c) ((unsigned char)(c)) + + + +static int str_len (lua_State *L) { + size_t l; + luaL_checklstring(L, 1, &l); + lua_pushinteger(L, l); + return 1; +} + + +static ptrdiff_t posrelat (ptrdiff_t pos, size_t len) { + /* relative string position: negative means back from end */ + if (pos < 0) pos += (ptrdiff_t)len + 1; + return (pos >= 0) ? pos : 0; +} + + +static int str_sub (lua_State *L) { + size_t l; + const char *s = luaL_checklstring(L, 1, &l); + ptrdiff_t start = posrelat(luaL_checkinteger(L, 2), l); + ptrdiff_t end = posrelat(luaL_optinteger(L, 3, -1), l); + if (start < 1) start = 1; + if (end > (ptrdiff_t)l) end = (ptrdiff_t)l; + if (start <= end) + lua_pushlstring(L, s+start-1, end-start+1); + else lua_pushliteral(L, ""); + return 1; +} + + +static int str_reverse (lua_State *L) { + size_t l; + luaL_Buffer b; + const char *s = luaL_checklstring(L, 1, &l); + luaL_buffinit(L, &b); + while (l--) luaL_addchar(&b, s[l]); + luaL_pushresult(&b); + return 1; +} + + +static int str_lower (lua_State *L) { + size_t l; + size_t i; + luaL_Buffer b; + const char *s = luaL_checklstring(L, 1, &l); + luaL_buffinit(L, &b); + for (i=0; i 0) + luaL_addlstring(&b, s, l); + luaL_pushresult(&b); + return 1; +} + + +static int str_byte (lua_State *L) { + size_t l; + const char *s = luaL_checklstring(L, 1, &l); + ptrdiff_t posi = posrelat(luaL_optinteger(L, 2, 1), l); + ptrdiff_t pose = posrelat(luaL_optinteger(L, 3, posi), l); + int n, i; + if (posi <= 0) posi = 1; + if ((size_t)pose > l) pose = l; + if (posi > pose) return 0; /* empty interval; return no values */ + n = (int)(pose - posi + 1); + if (posi + n <= pose) /* overflow? */ + luaL_error(L, "string slice too long"); + luaL_checkstack(L, n, "string slice too long"); + for (i=0; i= ms->level || ms->capture[l].len == CAP_UNFINISHED) + return luaL_error(ms->L, "invalid capture index"); + return l; +} + + +static int capture_to_close (MatchState *ms) { + int level = ms->level; + for (level--; level>=0; level--) + if (ms->capture[level].len == CAP_UNFINISHED) return level; + return luaL_error(ms->L, "invalid pattern capture"); +} + + +static const char *classend (MatchState *ms, const char *p) { + switch (*p++) { + case L_ESC: { + if (*p == '\0') + luaL_error(ms->L, "malformed pattern (ends with " LUA_QL("%%") ")"); + return p+1; + } + case '[': { + if (*p == '^') p++; + do { /* look for a `]' */ + if (*p == '\0') + luaL_error(ms->L, "malformed pattern (missing " LUA_QL("]") ")"); + if (*(p++) == L_ESC && *p != '\0') + p++; /* skip escapes (e.g. `%]') */ + } while (*p != ']'); + return p+1; + } + default: { + return p; + } + } +} + + +static int match_class (int c, int cl) { + int res; + switch (tolower(cl)) { + case 'a' : res = isalpha(c); break; + case 'c' : res = iscntrl(c); break; + case 'd' : res = isdigit(c); break; + case 'l' : res = islower(c); break; + case 'p' : res = ispunct(c); break; + case 's' : res = isspace(c); break; + case 'u' : res = isupper(c); break; + case 'w' : res = isalnum(c); break; + case 'x' : res = isxdigit(c); break; + case 'z' : res = (c == 0); break; + default: return (cl == c); + } + return (islower(cl) ? res : !res); +} + + +static int matchbracketclass (int c, const char *p, const char *ec) { + int sig = 1; + if (*(p+1) == '^') { + sig = 0; + p++; /* skip the `^' */ + } + while (++p < ec) { + if (*p == L_ESC) { + p++; + if (match_class(c, uchar(*p))) + return sig; + } + else if ((*(p+1) == '-') && (p+2 < ec)) { + p+=2; + if (uchar(*(p-2)) <= c && c <= uchar(*p)) + return sig; + } + else if (uchar(*p) == c) return sig; + } + return !sig; +} + + +static int singlematch (int c, const char *p, const char *ep) { + switch (*p) { + case '.': return 1; /* matches any char */ + case L_ESC: return match_class(c, uchar(*(p+1))); + case '[': return matchbracketclass(c, p, ep-1); + default: return (uchar(*p) == c); + } +} + + +static const char *match (MatchState *ms, const char *s, const char *p); + + +static const char *matchbalance (MatchState *ms, const char *s, + const char *p) { + if (*p == 0 || *(p+1) == 0) + luaL_error(ms->L, "unbalanced pattern"); + if (*s != *p) return NULL; + else { + int b = *p; + int e = *(p+1); + int cont = 1; + while (++s < ms->src_end) { + if (*s == e) { + if (--cont == 0) return s+1; + } + else if (*s == b) cont++; + } + } + return NULL; /* string ends out of balance */ +} + + +static const char *max_expand (MatchState *ms, const char *s, + const char *p, const char *ep) { + ptrdiff_t i = 0; /* counts maximum expand for item */ + while ((s+i)src_end && singlematch(uchar(*(s+i)), p, ep)) + i++; + /* keeps trying to match with the maximum repetitions */ + while (i>=0) { + const char *res = match(ms, (s+i), ep+1); + if (res) return res; + i--; /* else didn't match; reduce 1 repetition to try again */ + } + return NULL; +} + + +static const char *min_expand (MatchState *ms, const char *s, + const char *p, const char *ep) { + for (;;) { + const char *res = match(ms, s, ep+1); + if (res != NULL) + return res; + else if (ssrc_end && singlematch(uchar(*s), p, ep)) + s++; /* try with one more repetition */ + else return NULL; + } +} + + +static const char *start_capture (MatchState *ms, const char *s, + const char *p, int what) { + const char *res; + int level = ms->level; + if (level >= LUA_MAXCAPTURES) luaL_error(ms->L, "too many captures"); + ms->capture[level].init = s; + ms->capture[level].len = what; + ms->level = level+1; + if ((res=match(ms, s, p)) == NULL) /* match failed? */ + ms->level--; /* undo capture */ + return res; +} + + +static const char *end_capture (MatchState *ms, const char *s, + const char *p) { + int l = capture_to_close(ms); + const char *res; + ms->capture[l].len = s - ms->capture[l].init; /* close capture */ + if ((res = match(ms, s, p)) == NULL) /* match failed? */ + ms->capture[l].len = CAP_UNFINISHED; /* undo capture */ + return res; +} + + +static const char *match_capture (MatchState *ms, const char *s, int l) { + size_t len; + l = check_capture(ms, l); + len = ms->capture[l].len; + if ((size_t)(ms->src_end-s) >= len && + memcmp(ms->capture[l].init, s, len) == 0) + return s+len; + else return NULL; +} + + +static const char *match (MatchState *ms, const char *s, const char *p) { + init: /* using goto's to optimize tail recursion */ + switch (*p) { + case '(': { /* start capture */ + if (*(p+1) == ')') /* position capture? */ + return start_capture(ms, s, p+2, CAP_POSITION); + else + return start_capture(ms, s, p+1, CAP_UNFINISHED); + } + case ')': { /* end capture */ + return end_capture(ms, s, p+1); + } + case L_ESC: { + switch (*(p+1)) { + case 'b': { /* balanced string? */ + s = matchbalance(ms, s, p+2); + if (s == NULL) return NULL; + p+=4; goto init; /* else return match(ms, s, p+4); */ + } + case 'f': { /* frontier? */ + const char *ep; char previous; + p += 2; + if (*p != '[') + luaL_error(ms->L, "missing " LUA_QL("[") " after " + LUA_QL("%%f") " in pattern"); + ep = classend(ms, p); /* points to what is next */ + previous = (s == ms->src_init) ? '\0' : *(s-1); + if (matchbracketclass(uchar(previous), p, ep-1) || + !matchbracketclass(uchar(*s), p, ep-1)) return NULL; + p=ep; goto init; /* else return match(ms, s, ep); */ + } + default: { + if (isdigit(uchar(*(p+1)))) { /* capture results (%0-%9)? */ + s = match_capture(ms, s, uchar(*(p+1))); + if (s == NULL) return NULL; + p+=2; goto init; /* else return match(ms, s, p+2) */ + } + goto dflt; /* case default */ + } + } + } + case '\0': { /* end of pattern */ + return s; /* match succeeded */ + } + case '$': { + if (*(p+1) == '\0') /* is the `$' the last char in pattern? */ + return (s == ms->src_end) ? s : NULL; /* check end of string */ + else goto dflt; + } + default: dflt: { /* it is a pattern item */ + const char *ep = classend(ms, p); /* points to what is next */ + int m = ssrc_end && singlematch(uchar(*s), p, ep); + switch (*ep) { + case '?': { /* optional */ + const char *res; + if (m && ((res=match(ms, s+1, ep+1)) != NULL)) + return res; + p=ep+1; goto init; /* else return match(ms, s, ep+1); */ + } + case '*': { /* 0 or more repetitions */ + return max_expand(ms, s, p, ep); + } + case '+': { /* 1 or more repetitions */ + return (m ? max_expand(ms, s+1, p, ep) : NULL); + } + case '-': { /* 0 or more repetitions (minimum) */ + return min_expand(ms, s, p, ep); + } + default: { + if (!m) return NULL; + s++; p=ep; goto init; /* else return match(ms, s+1, ep); */ + } + } + } + } +} + + + +static const char *lmemfind (const char *s1, size_t l1, + const char *s2, size_t l2) { + if (l2 == 0) return s1; /* empty strings are everywhere */ + else if (l2 > l1) return NULL; /* avoids a negative `l1' */ + else { + const char *init; /* to search for a `*s2' inside `s1' */ + l2--; /* 1st char will be checked by `memchr' */ + l1 = l1-l2; /* `s2' cannot be found after that */ + while (l1 > 0 && (init = (const char *)memchr(s1, *s2, l1)) != NULL) { + init++; /* 1st char is already checked */ + if (memcmp(init, s2+1, l2) == 0) + return init-1; + else { /* correct `l1' and `s1' to try again */ + l1 -= init-s1; + s1 = init; + } + } + return NULL; /* not found */ + } +} + + +static void push_onecapture (MatchState *ms, int i, const char *s, + const char *e) { + if (i >= ms->level) { + if (i == 0) /* ms->level == 0, too */ + lua_pushlstring(ms->L, s, e - s); /* add whole match */ + else + luaL_error(ms->L, "invalid capture index"); + } + else { + ptrdiff_t l = ms->capture[i].len; + if (l == CAP_UNFINISHED) luaL_error(ms->L, "unfinished capture"); + if (l == CAP_POSITION) + lua_pushinteger(ms->L, ms->capture[i].init - ms->src_init + 1); + else + lua_pushlstring(ms->L, ms->capture[i].init, l); + } +} + + +static int push_captures (MatchState *ms, const char *s, const char *e) { + int i; + int nlevels = (ms->level == 0 && s) ? 1 : ms->level; + luaL_checkstack(ms->L, nlevels, "too many captures"); + for (i = 0; i < nlevels; i++) + push_onecapture(ms, i, s, e); + return nlevels; /* number of strings pushed */ +} + + +static int str_find_aux (lua_State *L, int find) { + size_t l1, l2; + const char *s = luaL_checklstring(L, 1, &l1); + const char *p = luaL_checklstring(L, 2, &l2); + ptrdiff_t init = posrelat(luaL_optinteger(L, 3, 1), l1) - 1; + if (init < 0) init = 0; + else if ((size_t)(init) > l1) init = (ptrdiff_t)l1; + if (find && (lua_toboolean(L, 4) || /* explicit request? */ + strpbrk(p, SPECIALS) == NULL)) { /* or no special characters? */ + /* do a plain search */ + const char *s2 = lmemfind(s+init, l1-init, p, l2); + if (s2) { + lua_pushinteger(L, s2-s+1); + lua_pushinteger(L, s2-s+l2); + return 2; + } + } + else { + MatchState ms; + int anchor = (*p == '^') ? (p++, 1) : 0; + const char *s1=s+init; + ms.L = L; + ms.src_init = s; + ms.src_end = s+l1; + do { + const char *res; + ms.level = 0; + if ((res=match(&ms, s1, p)) != NULL) { + if (find) { + lua_pushinteger(L, s1-s+1); /* start */ + lua_pushinteger(L, res-s); /* end */ + return push_captures(&ms, NULL, 0) + 2; + } + else + return push_captures(&ms, s1, res); + } + } while (s1++ < ms.src_end && !anchor); + } + lua_pushnil(L); /* not found */ + return 1; +} + + +static int str_find (lua_State *L) { + return str_find_aux(L, 1); +} + + +static int str_match (lua_State *L) { + return str_find_aux(L, 0); +} + + +static int gmatch_aux (lua_State *L) { + MatchState ms; + size_t ls; + const char *s = lua_tolstring(L, lua_upvalueindex(1), &ls); + const char *p = lua_tostring(L, lua_upvalueindex(2)); + const char *src; + ms.L = L; + ms.src_init = s; + ms.src_end = s+ls; + for (src = s + (size_t)lua_tointeger(L, lua_upvalueindex(3)); + src <= ms.src_end; + src++) { + const char *e; + ms.level = 0; + if ((e = match(&ms, src, p)) != NULL) { + lua_Integer newstart = e-s; + if (e == src) newstart++; /* empty match? go at least one position */ + lua_pushinteger(L, newstart); + lua_replace(L, lua_upvalueindex(3)); + return push_captures(&ms, src, e); + } + } + return 0; /* not found */ +} + + +static int gmatch (lua_State *L) { + luaL_checkstring(L, 1); + luaL_checkstring(L, 2); + lua_settop(L, 2); + lua_pushinteger(L, 0); + lua_pushcclosure(L, gmatch_aux, 3); + return 1; +} + + +static int gfind_nodef (lua_State *L) { + return luaL_error(L, LUA_QL("string.gfind") " was renamed to " + LUA_QL("string.gmatch")); +} + + +static void add_s (MatchState *ms, luaL_Buffer *b, const char *s, + const char *e) { + size_t l, i; + const char *news = lua_tolstring(ms->L, 3, &l); + for (i = 0; i < l; i++) { + if (news[i] != L_ESC) + luaL_addchar(b, news[i]); + else { + i++; /* skip ESC */ + if (!isdigit(uchar(news[i]))) + luaL_addchar(b, news[i]); + else if (news[i] == '0') + luaL_addlstring(b, s, e - s); + else { + push_onecapture(ms, news[i] - '1', s, e); + luaL_addvalue(b); /* add capture to accumulated result */ + } + } + } +} + + +static void add_value (MatchState *ms, luaL_Buffer *b, const char *s, + const char *e) { + lua_State *L = ms->L; + switch (lua_type(L, 3)) { + case LUA_TNUMBER: + case LUA_TSTRING: { + add_s(ms, b, s, e); + return; + } + case LUA_TFUNCTION: { + int n; + lua_pushvalue(L, 3); + n = push_captures(ms, s, e); + lua_call(L, n, 1); + break; + } + case LUA_TTABLE: { + push_onecapture(ms, 0, s, e); + lua_gettable(L, 3); + break; + } + } + if (!lua_toboolean(L, -1)) { /* nil or false? */ + lua_pop(L, 1); + lua_pushlstring(L, s, e - s); /* keep original text */ + } + else if (!lua_isstring(L, -1)) + luaL_error(L, "invalid replacement value (a %s)", luaL_typename(L, -1)); + luaL_addvalue(b); /* add result to accumulator */ +} + + +static int str_gsub (lua_State *L) { + size_t srcl; + const char *src = luaL_checklstring(L, 1, &srcl); + const char *p = luaL_checkstring(L, 2); + int tr = lua_type(L, 3); + int max_s = luaL_optint(L, 4, srcl+1); + int anchor = (*p == '^') ? (p++, 1) : 0; + int n = 0; + MatchState ms; + luaL_Buffer b; + luaL_argcheck(L, tr == LUA_TNUMBER || tr == LUA_TSTRING || + tr == LUA_TFUNCTION || tr == LUA_TTABLE, 3, + "string/function/table expected"); + luaL_buffinit(L, &b); + ms.L = L; + ms.src_init = src; + ms.src_end = src+srcl; + while (n < max_s) { + const char *e; + ms.level = 0; + e = match(&ms, src, p); + if (e) { + n++; + add_value(&ms, &b, src, e); + } + if (e && e>src) /* non empty match? */ + src = e; /* skip it */ + else if (src < ms.src_end) + luaL_addchar(&b, *src++); + else break; + if (anchor) break; + } + luaL_addlstring(&b, src, ms.src_end-src); + luaL_pushresult(&b); + lua_pushinteger(L, n); /* number of substitutions */ + return 2; +} + +/* }====================================================== */ + + +/* maximum size of each formatted item (> len(format('%99.99f', -1e308))) */ +#define MAX_ITEM 512 +/* valid flags in a format specification */ +#define FLAGS "-+ #0" +/* +** maximum size of each format specification (such as '%-099.99d') +** (+10 accounts for %99.99x plus margin of error) +*/ +#define MAX_FORMAT (sizeof(FLAGS) + sizeof(LUA_INTFRMLEN) + 10) + + +static void addquoted (lua_State *L, luaL_Buffer *b, int arg) { + size_t l; + const char *s = luaL_checklstring(L, arg, &l); + luaL_addchar(b, '"'); + while (l--) { + switch (*s) { + case '"': case '\\': case '\n': { + luaL_addchar(b, '\\'); + luaL_addchar(b, *s); + break; + } + case '\r': { + luaL_addlstring(b, "\\r", 2); + break; + } + case '\0': { + luaL_addlstring(b, "\\000", 4); + break; + } + default: { + luaL_addchar(b, *s); + break; + } + } + s++; + } + luaL_addchar(b, '"'); +} + +static const char *scanformat (lua_State *L, const char *strfrmt, char *form) { + const char *p = strfrmt; + while (*p != '\0' && strchr(FLAGS, *p) != NULL) p++; /* skip flags */ + if ((size_t)(p - strfrmt) >= sizeof(FLAGS)) + luaL_error(L, "invalid format (repeated flags)"); + if (isdigit(uchar(*p))) p++; /* skip width */ + if (isdigit(uchar(*p))) p++; /* (2 digits at most) */ + if (*p == '.') { + p++; + if (isdigit(uchar(*p))) p++; /* skip precision */ + if (isdigit(uchar(*p))) p++; /* (2 digits at most) */ + } + if (isdigit(uchar(*p))) + luaL_error(L, "invalid format (width or precision too long)"); + *(form++) = '%'; + strncpy(form, strfrmt, p - strfrmt + 1); + form += p - strfrmt + 1; + *form = '\0'; + return p; +} + + +static void addintlen (char *form) { + size_t l = strlen(form); + char spec = form[l - 1]; + strcpy(form + l - 1, LUA_INTFRMLEN); + form[l + sizeof(LUA_INTFRMLEN) - 2] = spec; + form[l + sizeof(LUA_INTFRMLEN) - 1] = '\0'; +} + + +static int str_format (lua_State *L) { + int arg = 1; + size_t sfl; + const char *strfrmt = luaL_checklstring(L, arg, &sfl); + const char *strfrmt_end = strfrmt+sfl; + luaL_Buffer b; + luaL_buffinit(L, &b); + while (strfrmt < strfrmt_end) { + if (*strfrmt != L_ESC) + luaL_addchar(&b, *strfrmt++); + else if (*++strfrmt == L_ESC) + luaL_addchar(&b, *strfrmt++); /* %% */ + else { /* format item */ + char form[MAX_FORMAT]; /* to store the format (`%...') */ + char buff[MAX_ITEM]; /* to store the formatted item */ + arg++; + strfrmt = scanformat(L, strfrmt, form); + switch (*strfrmt++) { + case 'c': { + sprintf(buff, form, (int)luaL_checknumber(L, arg)); + break; + } + case 'd': case 'i': { + addintlen(form); + sprintf(buff, form, (LUA_INTFRM_T)luaL_checknumber(L, arg)); + break; + } + case 'o': case 'u': case 'x': case 'X': { + addintlen(form); + sprintf(buff, form, (unsigned LUA_INTFRM_T)luaL_checknumber(L, arg)); + break; + } + case 'e': case 'E': case 'f': + case 'g': case 'G': { + sprintf(buff, form, (double)luaL_checknumber(L, arg)); + break; + } + case 'q': { + addquoted(L, &b, arg); + continue; /* skip the 'addsize' at the end */ + } + case 's': { + size_t l; + const char *s = luaL_checklstring(L, arg, &l); + if (!strchr(form, '.') && l >= 100) { + /* no precision and string is too long to be formatted; + keep original string */ + lua_pushvalue(L, arg); + luaL_addvalue(&b); + continue; /* skip the `addsize' at the end */ + } + else { + sprintf(buff, form, s); + break; + } + } + default: { /* also treat cases `pnLlh' */ + return luaL_error(L, "invalid option " LUA_QL("%%%c") " to " + LUA_QL("format"), *(strfrmt - 1)); + } + } + luaL_addlstring(&b, buff, strlen(buff)); + } + } + luaL_pushresult(&b); + return 1; +} + + +static const luaL_Reg strlib[] = { + {"byte", str_byte}, + {"char", str_char}, + {"dump", str_dump}, + {"find", str_find}, + {"format", str_format}, + {"gfind", gfind_nodef}, + {"gmatch", gmatch}, + {"gsub", str_gsub}, + {"len", str_len}, + {"lower", str_lower}, + {"match", str_match}, + {"rep", str_rep}, + {"reverse", str_reverse}, + {"sub", str_sub}, + {"upper", str_upper}, + {NULL, NULL} +}; + + +static void createmetatable (lua_State *L) { + lua_createtable(L, 0, 1); /* create metatable for strings */ + lua_pushliteral(L, ""); /* dummy string */ + lua_pushvalue(L, -2); + lua_setmetatable(L, -2); /* set string metatable */ + lua_pop(L, 1); /* pop dummy string */ + lua_pushvalue(L, -2); /* string library... */ + lua_setfield(L, -2, "__index"); /* ...is the __index metamethod */ + lua_pop(L, 1); /* pop metatable */ +} + + +/* +** Open string library +*/ +LUALIB_API int luaopen_string (lua_State *L) { + luaL_register(L, LUA_STRLIBNAME, strlib); +#if defined(LUA_COMPAT_GFIND) + lua_getfield(L, -1, "gmatch"); + lua_setfield(L, -2, "gfind"); +#endif + createmetatable(L); + return 1; +} + diff --git a/lua-5.1.4/src/ltable.c b/lua-5.1.4/src/ltable.c new file mode 100644 index 0000000..ec84f4f --- /dev/null +++ b/lua-5.1.4/src/ltable.c @@ -0,0 +1,588 @@ +/* +** $Id: ltable.c,v 2.32.1.2 2007/12/28 15:32:23 roberto Exp $ +** Lua tables (hash) +** See Copyright Notice in lua.h +*/ + + +/* +** Implementation of tables (aka arrays, objects, or hash tables). +** Tables keep its elements in two parts: an array part and a hash part. +** Non-negative integer keys are all candidates to be kept in the array +** part. The actual size of the array is the largest `n' such that at +** least half the slots between 0 and n are in use. +** Hash uses a mix of chained scatter table with Brent's variation. +** A main invariant of these tables is that, if an element is not +** in its main position (i.e. the `original' position that its hash gives +** to it), then the colliding element is in its own main position. +** Hence even when the load factor reaches 100%, performance remains good. +*/ + +#include +#include + +#define ltable_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lgc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstate.h" +#include "ltable.h" + + +/* +** max size of array part is 2^MAXBITS +*/ +#if LUAI_BITSINT > 26 +#define MAXBITS 26 +#else +#define MAXBITS (LUAI_BITSINT-2) +#endif + +#define MAXASIZE (1 << MAXBITS) + + +#define hashpow2(t,n) (gnode(t, lmod((n), sizenode(t)))) + +#define hashstr(t,str) hashpow2(t, (str)->tsv.hash) +#define hashboolean(t,p) hashpow2(t, p) + + +/* +** for some types, it is better to avoid modulus by power of 2, as +** they tend to have many 2 factors. +*/ +#define hashmod(t,n) (gnode(t, ((n) % ((sizenode(t)-1)|1)))) + + +#define hashpointer(t,p) hashmod(t, IntPoint(p)) + + +/* +** number of ints inside a lua_Number +*/ +#define numints cast_int(sizeof(lua_Number)/sizeof(int)) + + + +#define dummynode (&dummynode_) + +static const Node dummynode_ = { + {{NULL}, LUA_TNIL}, /* value */ + {{{NULL}, LUA_TNIL, NULL}} /* key */ +}; + + +/* +** hash for lua_Numbers +*/ +static Node *hashnum (const Table *t, lua_Number n) { + unsigned int a[numints]; + int i; + if (luai_numeq(n, 0)) /* avoid problems with -0 */ + return gnode(t, 0); + memcpy(a, &n, sizeof(a)); + for (i = 1; i < numints; i++) a[0] += a[i]; + return hashmod(t, a[0]); +} + + + +/* +** returns the `main' position of an element in a table (that is, the index +** of its hash value) +*/ +static Node *mainposition (const Table *t, const TValue *key) { + switch (ttype(key)) { + case LUA_TNUMBER: + return hashnum(t, nvalue(key)); + case LUA_TSTRING: + return hashstr(t, rawtsvalue(key)); + case LUA_TBOOLEAN: + return hashboolean(t, bvalue(key)); + case LUA_TLIGHTUSERDATA: + return hashpointer(t, pvalue(key)); + default: + return hashpointer(t, gcvalue(key)); + } +} + + +/* +** returns the index for `key' if `key' is an appropriate key to live in +** the array part of the table, -1 otherwise. +*/ +static int arrayindex (const TValue *key) { + if (ttisnumber(key)) { + lua_Number n = nvalue(key); + int k; + lua_number2int(k, n); + if (luai_numeq(cast_num(k), n)) + return k; + } + return -1; /* `key' did not match some condition */ +} + + +/* +** returns the index of a `key' for table traversals. First goes all +** elements in the array part, then elements in the hash part. The +** beginning of a traversal is signalled by -1. +*/ +static int findindex (lua_State *L, Table *t, StkId key) { + int i; + if (ttisnil(key)) return -1; /* first iteration */ + i = arrayindex(key); + if (0 < i && i <= t->sizearray) /* is `key' inside array part? */ + return i-1; /* yes; that's the index (corrected to C) */ + else { + Node *n = mainposition(t, key); + do { /* check whether `key' is somewhere in the chain */ + /* key may be dead already, but it is ok to use it in `next' */ + if (luaO_rawequalObj(key2tval(n), key) || + (ttype(gkey(n)) == LUA_TDEADKEY && iscollectable(key) && + gcvalue(gkey(n)) == gcvalue(key))) { + i = cast_int(n - gnode(t, 0)); /* key index in hash table */ + /* hash elements are numbered after array ones */ + return i + t->sizearray; + } + else n = gnext(n); + } while (n); + luaG_runerror(L, "invalid key to " LUA_QL("next")); /* key not found */ + return 0; /* to avoid warnings */ + } +} + + +int luaH_next (lua_State *L, Table *t, StkId key) { + int i = findindex(L, t, key); /* find original element */ + for (i++; i < t->sizearray; i++) { /* try first array part */ + if (!ttisnil(&t->array[i])) { /* a non-nil value? */ + setnvalue(key, cast_num(i+1)); + setobj2s(L, key+1, &t->array[i]); + return 1; + } + } + for (i -= t->sizearray; i < sizenode(t); i++) { /* then hash part */ + if (!ttisnil(gval(gnode(t, i)))) { /* a non-nil value? */ + setobj2s(L, key, key2tval(gnode(t, i))); + setobj2s(L, key+1, gval(gnode(t, i))); + return 1; + } + } + return 0; /* no more elements */ +} + + +/* +** {============================================================= +** Rehash +** ============================================================== +*/ + + +static int computesizes (int nums[], int *narray) { + int i; + int twotoi; /* 2^i */ + int a = 0; /* number of elements smaller than 2^i */ + int na = 0; /* number of elements to go to array part */ + int n = 0; /* optimal size for array part */ + for (i = 0, twotoi = 1; twotoi/2 < *narray; i++, twotoi *= 2) { + if (nums[i] > 0) { + a += nums[i]; + if (a > twotoi/2) { /* more than half elements present? */ + n = twotoi; /* optimal size (till now) */ + na = a; /* all elements smaller than n will go to array part */ + } + } + if (a == *narray) break; /* all elements already counted */ + } + *narray = n; + lua_assert(*narray/2 <= na && na <= *narray); + return na; +} + + +static int countint (const TValue *key, int *nums) { + int k = arrayindex(key); + if (0 < k && k <= MAXASIZE) { /* is `key' an appropriate array index? */ + nums[ceillog2(k)]++; /* count as such */ + return 1; + } + else + return 0; +} + + +static int numusearray (const Table *t, int *nums) { + int lg; + int ttlg; /* 2^lg */ + int ause = 0; /* summation of `nums' */ + int i = 1; /* count to traverse all array keys */ + for (lg=0, ttlg=1; lg<=MAXBITS; lg++, ttlg*=2) { /* for each slice */ + int lc = 0; /* counter */ + int lim = ttlg; + if (lim > t->sizearray) { + lim = t->sizearray; /* adjust upper limit */ + if (i > lim) + break; /* no more elements to count */ + } + /* count elements in range (2^(lg-1), 2^lg] */ + for (; i <= lim; i++) { + if (!ttisnil(&t->array[i-1])) + lc++; + } + nums[lg] += lc; + ause += lc; + } + return ause; +} + + +static int numusehash (const Table *t, int *nums, int *pnasize) { + int totaluse = 0; /* total number of elements */ + int ause = 0; /* summation of `nums' */ + int i = sizenode(t); + while (i--) { + Node *n = &t->node[i]; + if (!ttisnil(gval(n))) { + ause += countint(key2tval(n), nums); + totaluse++; + } + } + *pnasize += ause; + return totaluse; +} + + +static void setarrayvector (lua_State *L, Table *t, int size) { + int i; + luaM_reallocvector(L, t->array, t->sizearray, size, TValue); + for (i=t->sizearray; iarray[i]); + t->sizearray = size; +} + + +static void setnodevector (lua_State *L, Table *t, int size) { + int lsize; + if (size == 0) { /* no elements to hash part? */ + t->node = cast(Node *, dummynode); /* use common `dummynode' */ + lsize = 0; + } + else { + int i; + lsize = ceillog2(size); + if (lsize > MAXBITS) + luaG_runerror(L, "table overflow"); + size = twoto(lsize); + t->node = luaM_newvector(L, size, Node); + for (i=0; ilsizenode = cast_byte(lsize); + t->lastfree = gnode(t, size); /* all positions are free */ +} + + +static void resize (lua_State *L, Table *t, int nasize, int nhsize) { + int i; + int oldasize = t->sizearray; + int oldhsize = t->lsizenode; + Node *nold = t->node; /* save old hash ... */ + if (nasize > oldasize) /* array part must grow? */ + setarrayvector(L, t, nasize); + /* create new hash part with appropriate size */ + setnodevector(L, t, nhsize); + if (nasize < oldasize) { /* array part must shrink? */ + t->sizearray = nasize; + /* re-insert elements from vanishing slice */ + for (i=nasize; iarray[i])) + setobjt2t(L, luaH_setnum(L, t, i+1), &t->array[i]); + } + /* shrink array */ + luaM_reallocvector(L, t->array, oldasize, nasize, TValue); + } + /* re-insert elements from hash part */ + for (i = twoto(oldhsize) - 1; i >= 0; i--) { + Node *old = nold+i; + if (!ttisnil(gval(old))) + setobjt2t(L, luaH_set(L, t, key2tval(old)), gval(old)); + } + if (nold != dummynode) + luaM_freearray(L, nold, twoto(oldhsize), Node); /* free old array */ +} + + +void luaH_resizearray (lua_State *L, Table *t, int nasize) { + int nsize = (t->node == dummynode) ? 0 : sizenode(t); + resize(L, t, nasize, nsize); +} + + +static void rehash (lua_State *L, Table *t, const TValue *ek) { + int nasize, na; + int nums[MAXBITS+1]; /* nums[i] = number of keys between 2^(i-1) and 2^i */ + int i; + int totaluse; + for (i=0; i<=MAXBITS; i++) nums[i] = 0; /* reset counts */ + nasize = numusearray(t, nums); /* count keys in array part */ + totaluse = nasize; /* all those keys are integer keys */ + totaluse += numusehash(t, nums, &nasize); /* count keys in hash part */ + /* count extra key */ + nasize += countint(ek, nums); + totaluse++; + /* compute new size for array part */ + na = computesizes(nums, &nasize); + /* resize the table to new computed sizes */ + resize(L, t, nasize, totaluse - na); +} + + + +/* +** }============================================================= +*/ + + +Table *luaH_new (lua_State *L, int narray, int nhash) { + Table *t = luaM_new(L, Table); + luaC_link(L, obj2gco(t), LUA_TTABLE); + t->metatable = NULL; + t->flags = cast_byte(~0); + /* temporary values (kept only if some malloc fails) */ + t->array = NULL; + t->sizearray = 0; + t->lsizenode = 0; + t->node = cast(Node *, dummynode); + setarrayvector(L, t, narray); + setnodevector(L, t, nhash); + return t; +} + + +void luaH_free (lua_State *L, Table *t) { + if (t->node != dummynode) + luaM_freearray(L, t->node, sizenode(t), Node); + luaM_freearray(L, t->array, t->sizearray, TValue); + luaM_free(L, t); +} + + +static Node *getfreepos (Table *t) { + while (t->lastfree-- > t->node) { + if (ttisnil(gkey(t->lastfree))) + return t->lastfree; + } + return NULL; /* could not find a free place */ +} + + + +/* +** inserts a new key into a hash table; first, check whether key's main +** position is free. If not, check whether colliding node is in its main +** position or not: if it is not, move colliding node to an empty place and +** put new key in its main position; otherwise (colliding node is in its main +** position), new key goes to an empty position. +*/ +static TValue *newkey (lua_State *L, Table *t, const TValue *key) { + Node *mp = mainposition(t, key); + if (!ttisnil(gval(mp)) || mp == dummynode) { + Node *othern; + Node *n = getfreepos(t); /* get a free place */ + if (n == NULL) { /* cannot find a free place? */ + rehash(L, t, key); /* grow table */ + return luaH_set(L, t, key); /* re-insert key into grown table */ + } + lua_assert(n != dummynode); + othern = mainposition(t, key2tval(mp)); + if (othern != mp) { /* is colliding node out of its main position? */ + /* yes; move colliding node into free position */ + while (gnext(othern) != mp) othern = gnext(othern); /* find previous */ + gnext(othern) = n; /* redo the chain with `n' in place of `mp' */ + *n = *mp; /* copy colliding node into free pos. (mp->next also goes) */ + gnext(mp) = NULL; /* now `mp' is free */ + setnilvalue(gval(mp)); + } + else { /* colliding node is in its own main position */ + /* new node will go into free position */ + gnext(n) = gnext(mp); /* chain new position */ + gnext(mp) = n; + mp = n; + } + } + gkey(mp)->value = key->value; gkey(mp)->tt = key->tt; + luaC_barriert(L, t, key); + lua_assert(ttisnil(gval(mp))); + return gval(mp); +} + + +/* +** search function for integers +*/ +const TValue *luaH_getnum (Table *t, int key) { + /* (1 <= key && key <= t->sizearray) */ + if (cast(unsigned int, key-1) < cast(unsigned int, t->sizearray)) + return &t->array[key-1]; + else { + lua_Number nk = cast_num(key); + Node *n = hashnum(t, nk); + do { /* check whether `key' is somewhere in the chain */ + if (ttisnumber(gkey(n)) && luai_numeq(nvalue(gkey(n)), nk)) + return gval(n); /* that's it */ + else n = gnext(n); + } while (n); + return luaO_nilobject; + } +} + + +/* +** search function for strings +*/ +const TValue *luaH_getstr (Table *t, TString *key) { + Node *n = hashstr(t, key); + do { /* check whether `key' is somewhere in the chain */ + if (ttisstring(gkey(n)) && rawtsvalue(gkey(n)) == key) + return gval(n); /* that's it */ + else n = gnext(n); + } while (n); + return luaO_nilobject; +} + + +/* +** main search function +*/ +const TValue *luaH_get (Table *t, const TValue *key) { + switch (ttype(key)) { + case LUA_TNIL: return luaO_nilobject; + case LUA_TSTRING: return luaH_getstr(t, rawtsvalue(key)); + case LUA_TNUMBER: { + int k; + lua_Number n = nvalue(key); + lua_number2int(k, n); + if (luai_numeq(cast_num(k), nvalue(key))) /* index is int? */ + return luaH_getnum(t, k); /* use specialized version */ + /* else go through */ + } + default: { + Node *n = mainposition(t, key); + do { /* check whether `key' is somewhere in the chain */ + if (luaO_rawequalObj(key2tval(n), key)) + return gval(n); /* that's it */ + else n = gnext(n); + } while (n); + return luaO_nilobject; + } + } +} + + +TValue *luaH_set (lua_State *L, Table *t, const TValue *key) { + const TValue *p = luaH_get(t, key); + t->flags = 0; + if (p != luaO_nilobject) + return cast(TValue *, p); + else { + if (ttisnil(key)) luaG_runerror(L, "table index is nil"); + else if (ttisnumber(key) && luai_numisnan(nvalue(key))) + luaG_runerror(L, "table index is NaN"); + return newkey(L, t, key); + } +} + + +TValue *luaH_setnum (lua_State *L, Table *t, int key) { + const TValue *p = luaH_getnum(t, key); + if (p != luaO_nilobject) + return cast(TValue *, p); + else { + TValue k; + setnvalue(&k, cast_num(key)); + return newkey(L, t, &k); + } +} + + +TValue *luaH_setstr (lua_State *L, Table *t, TString *key) { + const TValue *p = luaH_getstr(t, key); + if (p != luaO_nilobject) + return cast(TValue *, p); + else { + TValue k; + setsvalue(L, &k, key); + return newkey(L, t, &k); + } +} + + +static int unbound_search (Table *t, unsigned int j) { + unsigned int i = j; /* i is zero or a present index */ + j++; + /* find `i' and `j' such that i is present and j is not */ + while (!ttisnil(luaH_getnum(t, j))) { + i = j; + j *= 2; + if (j > cast(unsigned int, MAX_INT)) { /* overflow? */ + /* table was built with bad purposes: resort to linear search */ + i = 1; + while (!ttisnil(luaH_getnum(t, i))) i++; + return i - 1; + } + } + /* now do a binary search between them */ + while (j - i > 1) { + unsigned int m = (i+j)/2; + if (ttisnil(luaH_getnum(t, m))) j = m; + else i = m; + } + return i; +} + + +/* +** Try to find a boundary in table `t'. A `boundary' is an integer index +** such that t[i] is non-nil and t[i+1] is nil (and 0 if t[1] is nil). +*/ +int luaH_getn (Table *t) { + unsigned int j = t->sizearray; + if (j > 0 && ttisnil(&t->array[j - 1])) { + /* there is a boundary in the array part: (binary) search for it */ + unsigned int i = 0; + while (j - i > 1) { + unsigned int m = (i+j)/2; + if (ttisnil(&t->array[m - 1])) j = m; + else i = m; + } + return i; + } + /* else must find a boundary in hash part */ + else if (t->node == dummynode) /* hash part is empty? */ + return j; /* that is easy... */ + else return unbound_search(t, j); +} + + + +#if defined(LUA_DEBUG) + +Node *luaH_mainposition (const Table *t, const TValue *key) { + return mainposition(t, key); +} + +int luaH_isdummy (Node *n) { return n == dummynode; } + +#endif diff --git a/lua-5.1.4/src/ltable.h b/lua-5.1.4/src/ltable.h new file mode 100644 index 0000000..f5b9d5e --- /dev/null +++ b/lua-5.1.4/src/ltable.h @@ -0,0 +1,40 @@ +/* +** $Id: ltable.h,v 2.10.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua tables (hash) +** See Copyright Notice in lua.h +*/ + +#ifndef ltable_h +#define ltable_h + +#include "lobject.h" + + +#define gnode(t,i) (&(t)->node[i]) +#define gkey(n) (&(n)->i_key.nk) +#define gval(n) (&(n)->i_val) +#define gnext(n) ((n)->i_key.nk.next) + +#define key2tval(n) (&(n)->i_key.tvk) + + +LUAI_FUNC const TValue *luaH_getnum (Table *t, int key); +LUAI_FUNC TValue *luaH_setnum (lua_State *L, Table *t, int key); +LUAI_FUNC const TValue *luaH_getstr (Table *t, TString *key); +LUAI_FUNC TValue *luaH_setstr (lua_State *L, Table *t, TString *key); +LUAI_FUNC const TValue *luaH_get (Table *t, const TValue *key); +LUAI_FUNC TValue *luaH_set (lua_State *L, Table *t, const TValue *key); +LUAI_FUNC Table *luaH_new (lua_State *L, int narray, int lnhash); +LUAI_FUNC void luaH_resizearray (lua_State *L, Table *t, int nasize); +LUAI_FUNC void luaH_free (lua_State *L, Table *t); +LUAI_FUNC int luaH_next (lua_State *L, Table *t, StkId key); +LUAI_FUNC int luaH_getn (Table *t); + + +#if defined(LUA_DEBUG) +LUAI_FUNC Node *luaH_mainposition (const Table *t, const TValue *key); +LUAI_FUNC int luaH_isdummy (Node *n); +#endif + + +#endif diff --git a/lua-5.1.4/src/ltablib.c b/lua-5.1.4/src/ltablib.c new file mode 100644 index 0000000..b6d9cb4 --- /dev/null +++ b/lua-5.1.4/src/ltablib.c @@ -0,0 +1,287 @@ +/* +** $Id: ltablib.c,v 1.38.1.3 2008/02/14 16:46:58 roberto Exp $ +** Library for Table Manipulation +** See Copyright Notice in lua.h +*/ + + +#include + +#define ltablib_c +#define LUA_LIB + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + +#define aux_getn(L,n) (luaL_checktype(L, n, LUA_TTABLE), luaL_getn(L, n)) + + +static int foreachi (lua_State *L) { + int i; + int n = aux_getn(L, 1); + luaL_checktype(L, 2, LUA_TFUNCTION); + for (i=1; i <= n; i++) { + lua_pushvalue(L, 2); /* function */ + lua_pushinteger(L, i); /* 1st argument */ + lua_rawgeti(L, 1, i); /* 2nd argument */ + lua_call(L, 2, 1); + if (!lua_isnil(L, -1)) + return 1; + lua_pop(L, 1); /* remove nil result */ + } + return 0; +} + + +static int foreach (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); + luaL_checktype(L, 2, LUA_TFUNCTION); + lua_pushnil(L); /* first key */ + while (lua_next(L, 1)) { + lua_pushvalue(L, 2); /* function */ + lua_pushvalue(L, -3); /* key */ + lua_pushvalue(L, -3); /* value */ + lua_call(L, 2, 1); + if (!lua_isnil(L, -1)) + return 1; + lua_pop(L, 2); /* remove value and result */ + } + return 0; +} + + +static int maxn (lua_State *L) { + lua_Number max = 0; + luaL_checktype(L, 1, LUA_TTABLE); + lua_pushnil(L); /* first key */ + while (lua_next(L, 1)) { + lua_pop(L, 1); /* remove value */ + if (lua_type(L, -1) == LUA_TNUMBER) { + lua_Number v = lua_tonumber(L, -1); + if (v > max) max = v; + } + } + lua_pushnumber(L, max); + return 1; +} + + +static int getn (lua_State *L) { + lua_pushinteger(L, aux_getn(L, 1)); + return 1; +} + + +static int setn (lua_State *L) { + luaL_checktype(L, 1, LUA_TTABLE); +#ifndef luaL_setn + luaL_setn(L, 1, luaL_checkint(L, 2)); +#else + luaL_error(L, LUA_QL("setn") " is obsolete"); +#endif + lua_pushvalue(L, 1); + return 1; +} + + +static int tinsert (lua_State *L) { + int e = aux_getn(L, 1) + 1; /* first empty element */ + int pos; /* where to insert new element */ + switch (lua_gettop(L)) { + case 2: { /* called with only 2 arguments */ + pos = e; /* insert new element at the end */ + break; + } + case 3: { + int i; + pos = luaL_checkint(L, 2); /* 2nd argument is the position */ + if (pos > e) e = pos; /* `grow' array if necessary */ + for (i = e; i > pos; i--) { /* move up elements */ + lua_rawgeti(L, 1, i-1); + lua_rawseti(L, 1, i); /* t[i] = t[i-1] */ + } + break; + } + default: { + return luaL_error(L, "wrong number of arguments to " LUA_QL("insert")); + } + } + luaL_setn(L, 1, e); /* new size */ + lua_rawseti(L, 1, pos); /* t[pos] = v */ + return 0; +} + + +static int tremove (lua_State *L) { + int e = aux_getn(L, 1); + int pos = luaL_optint(L, 2, e); + if (!(1 <= pos && pos <= e)) /* position is outside bounds? */ + return 0; /* nothing to remove */ + luaL_setn(L, 1, e - 1); /* t.n = n-1 */ + lua_rawgeti(L, 1, pos); /* result = t[pos] */ + for ( ;pos= P */ + while (lua_rawgeti(L, 1, ++i), sort_comp(L, -1, -2)) { + if (i>u) luaL_error(L, "invalid order function for sorting"); + lua_pop(L, 1); /* remove a[i] */ + } + /* repeat --j until a[j] <= P */ + while (lua_rawgeti(L, 1, --j), sort_comp(L, -3, -1)) { + if (j + +#define ltm_c +#define LUA_CORE + +#include "lua.h" + +#include "lobject.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" + + + +const char *const luaT_typenames[] = { + "nil", "boolean", "userdata", "number", + "string", "table", "function", "userdata", "thread", + "proto", "upval" +}; + + +void luaT_init (lua_State *L) { + static const char *const luaT_eventname[] = { /* ORDER TM */ + "__index", "__newindex", + "__gc", "__mode", "__eq", + "__add", "__sub", "__mul", "__div", "__mod", + "__pow", "__unm", "__len", "__lt", "__le", + "__concat", "__call" + }; + int i; + for (i=0; itmname[i] = luaS_new(L, luaT_eventname[i]); + luaS_fix(G(L)->tmname[i]); /* never collect these names */ + } +} + + +/* +** function to be used with macro "fasttm": optimized for absence of +** tag methods +*/ +const TValue *luaT_gettm (Table *events, TMS event, TString *ename) { + const TValue *tm = luaH_getstr(events, ename); + lua_assert(event <= TM_EQ); + if (ttisnil(tm)) { /* no tag method? */ + events->flags |= cast_byte(1u<metatable; + break; + case LUA_TUSERDATA: + mt = uvalue(o)->metatable; + break; + default: + mt = G(L)->mt[ttype(o)]; + } + return (mt ? luaH_getstr(mt, G(L)->tmname[event]) : luaO_nilobject); +} + diff --git a/lua-5.1.4/src/ltm.h b/lua-5.1.4/src/ltm.h new file mode 100644 index 0000000..64343b7 --- /dev/null +++ b/lua-5.1.4/src/ltm.h @@ -0,0 +1,54 @@ +/* +** $Id: ltm.h,v 2.6.1.1 2007/12/27 13:02:25 roberto Exp $ +** Tag methods +** See Copyright Notice in lua.h +*/ + +#ifndef ltm_h +#define ltm_h + + +#include "lobject.h" + + +/* +* WARNING: if you change the order of this enumeration, +* grep "ORDER TM" +*/ +typedef enum { + TM_INDEX, + TM_NEWINDEX, + TM_GC, + TM_MODE, + TM_EQ, /* last tag method with `fast' access */ + TM_ADD, + TM_SUB, + TM_MUL, + TM_DIV, + TM_MOD, + TM_POW, + TM_UNM, + TM_LEN, + TM_LT, + TM_LE, + TM_CONCAT, + TM_CALL, + TM_N /* number of elements in the enum */ +} TMS; + + + +#define gfasttm(g,et,e) ((et) == NULL ? NULL : \ + ((et)->flags & (1u<<(e))) ? NULL : luaT_gettm(et, e, (g)->tmname[e])) + +#define fasttm(l,et,e) gfasttm(G(l), et, e) + +LUAI_DATA const char *const luaT_typenames[]; + + +LUAI_FUNC const TValue *luaT_gettm (Table *events, TMS event, TString *ename); +LUAI_FUNC const TValue *luaT_gettmbyobj (lua_State *L, const TValue *o, + TMS event); +LUAI_FUNC void luaT_init (lua_State *L); + +#endif diff --git a/lua-5.1.4/src/lua.c b/lua-5.1.4/src/lua.c new file mode 100644 index 0000000..3a46609 --- /dev/null +++ b/lua-5.1.4/src/lua.c @@ -0,0 +1,392 @@ +/* +** $Id: lua.c,v 1.160.1.2 2007/12/28 15:32:23 roberto Exp $ +** Lua stand-alone interpreter +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include +#include + +#define lua_c + +#include "lua.h" + +#include "lauxlib.h" +#include "lualib.h" + + + +static lua_State *globalL = NULL; + +static const char *progname = LUA_PROGNAME; + + + +static void lstop (lua_State *L, lua_Debug *ar) { + (void)ar; /* unused arg. */ + lua_sethook(L, NULL, 0, 0); + luaL_error(L, "interrupted!"); +} + + +static void laction (int i) { + signal(i, SIG_DFL); /* if another SIGINT happens before lstop, + terminate process (default action) */ + lua_sethook(globalL, lstop, LUA_MASKCALL | LUA_MASKRET | LUA_MASKCOUNT, 1); +} + + +static void print_usage (void) { + fprintf(stderr, + "usage: %s [options] [script [args]].\n" + "Available options are:\n" + " -e stat execute string " LUA_QL("stat") "\n" + " -l name require library " LUA_QL("name") "\n" + " -i enter interactive mode after executing " LUA_QL("script") "\n" + " -v show version information\n" + " -- stop handling options\n" + " - execute stdin and stop handling options\n" + , + progname); + fflush(stderr); +} + + +static void l_message (const char *pname, const char *msg) { + if (pname) fprintf(stderr, "%s: ", pname); + fprintf(stderr, "%s\n", msg); + fflush(stderr); +} + + +static int report (lua_State *L, int status) { + if (status && !lua_isnil(L, -1)) { + const char *msg = lua_tostring(L, -1); + if (msg == NULL) msg = "(error object is not a string)"; + l_message(progname, msg); + lua_pop(L, 1); + } + return status; +} + + +static int traceback (lua_State *L) { + if (!lua_isstring(L, 1)) /* 'message' not a string? */ + return 1; /* keep it intact */ + lua_getfield(L, LUA_GLOBALSINDEX, "debug"); + if (!lua_istable(L, -1)) { + lua_pop(L, 1); + return 1; + } + lua_getfield(L, -1, "traceback"); + if (!lua_isfunction(L, -1)) { + lua_pop(L, 2); + return 1; + } + lua_pushvalue(L, 1); /* pass error message */ + lua_pushinteger(L, 2); /* skip this function and traceback */ + lua_call(L, 2, 1); /* call debug.traceback */ + return 1; +} + + +static int docall (lua_State *L, int narg, int clear) { + int status; + int base = lua_gettop(L) - narg; /* function index */ + lua_pushcfunction(L, traceback); /* push traceback function */ + lua_insert(L, base); /* put it under chunk and args */ + signal(SIGINT, laction); + status = lua_pcall(L, narg, (clear ? 0 : LUA_MULTRET), base); + signal(SIGINT, SIG_DFL); + lua_remove(L, base); /* remove traceback function */ + /* force a complete garbage collection in case of errors */ + if (status != 0) lua_gc(L, LUA_GCCOLLECT, 0); + return status; +} + + +static void print_version (void) { + l_message(NULL, LUA_RELEASE " " LUA_COPYRIGHT); +} + + +static int getargs (lua_State *L, char **argv, int n) { + int narg; + int i; + int argc = 0; + while (argv[argc]) argc++; /* count total number of arguments */ + narg = argc - (n + 1); /* number of arguments to the script */ + luaL_checkstack(L, narg + 3, "too many arguments to script"); + for (i=n+1; i < argc; i++) + lua_pushstring(L, argv[i]); + lua_createtable(L, narg, n + 1); + for (i=0; i < argc; i++) { + lua_pushstring(L, argv[i]); + lua_rawseti(L, -2, i - n); + } + return narg; +} + + +static int dofile (lua_State *L, const char *name) { + int status = luaL_loadfile(L, name) || docall(L, 0, 1); + return report(L, status); +} + + +static int dostring (lua_State *L, const char *s, const char *name) { + int status = luaL_loadbuffer(L, s, strlen(s), name) || docall(L, 0, 1); + return report(L, status); +} + + +static int dolibrary (lua_State *L, const char *name) { + lua_getglobal(L, "require"); + lua_pushstring(L, name); + return report(L, docall(L, 1, 1)); +} + + +static const char *get_prompt (lua_State *L, int firstline) { + const char *p; + lua_getfield(L, LUA_GLOBALSINDEX, firstline ? "_PROMPT" : "_PROMPT2"); + p = lua_tostring(L, -1); + if (p == NULL) p = (firstline ? LUA_PROMPT : LUA_PROMPT2); + lua_pop(L, 1); /* remove global */ + return p; +} + + +static int incomplete (lua_State *L, int status) { + if (status == LUA_ERRSYNTAX) { + size_t lmsg; + const char *msg = lua_tolstring(L, -1, &lmsg); + const char *tp = msg + lmsg - (sizeof(LUA_QL("")) - 1); + if (strstr(msg, LUA_QL("")) == tp) { + lua_pop(L, 1); + return 1; + } + } + return 0; /* else... */ +} + + +static int pushline (lua_State *L, int firstline) { + char buffer[LUA_MAXINPUT]; + char *b = buffer; + size_t l; + const char *prmt = get_prompt(L, firstline); + if (lua_readline(L, b, prmt) == 0) + return 0; /* no input */ + l = strlen(b); + if (l > 0 && b[l-1] == '\n') /* line ends with newline? */ + b[l-1] = '\0'; /* remove it */ + if (firstline && b[0] == '=') /* first line starts with `=' ? */ + lua_pushfstring(L, "return %s", b+1); /* change it to `return' */ + else + lua_pushstring(L, b); + lua_freeline(L, b); + return 1; +} + + +static int loadline (lua_State *L) { + int status; + lua_settop(L, 0); + if (!pushline(L, 1)) + return -1; /* no input */ + for (;;) { /* repeat until gets a complete line */ + status = luaL_loadbuffer(L, lua_tostring(L, 1), lua_strlen(L, 1), "=stdin"); + if (!incomplete(L, status)) break; /* cannot try to add lines? */ + if (!pushline(L, 0)) /* no more input? */ + return -1; + lua_pushliteral(L, "\n"); /* add a new line... */ + lua_insert(L, -2); /* ...between the two lines */ + lua_concat(L, 3); /* join them */ + } + lua_saveline(L, 1); + lua_remove(L, 1); /* remove line */ + return status; +} + + +static void dotty (lua_State *L) { + int status; + const char *oldprogname = progname; + progname = NULL; + while ((status = loadline(L)) != -1) { + if (status == 0) status = docall(L, 0, 0); + report(L, status); + if (status == 0 && lua_gettop(L) > 0) { /* any result to print? */ + lua_getglobal(L, "print"); + lua_insert(L, 1); + if (lua_pcall(L, lua_gettop(L)-1, 0, 0) != 0) + l_message(progname, lua_pushfstring(L, + "error calling " LUA_QL("print") " (%s)", + lua_tostring(L, -1))); + } + } + lua_settop(L, 0); /* clear stack */ + fputs("\n", stdout); + fflush(stdout); + progname = oldprogname; +} + + +static int handle_script (lua_State *L, char **argv, int n) { + int status; + const char *fname; + int narg = getargs(L, argv, n); /* collect arguments */ + lua_setglobal(L, "arg"); + fname = argv[n]; + if (strcmp(fname, "-") == 0 && strcmp(argv[n-1], "--") != 0) + fname = NULL; /* stdin */ + status = luaL_loadfile(L, fname); + lua_insert(L, -(narg+1)); + if (status == 0) + status = docall(L, narg, 0); + else + lua_pop(L, narg); + return report(L, status); +} + + +/* check that argument has no extra characters at the end */ +#define notail(x) {if ((x)[2] != '\0') return -1;} + + +static int collectargs (char **argv, int *pi, int *pv, int *pe) { + int i; + for (i = 1; argv[i] != NULL; i++) { + if (argv[i][0] != '-') /* not an option? */ + return i; + switch (argv[i][1]) { /* option */ + case '-': + notail(argv[i]); + return (argv[i+1] != NULL ? i+1 : 0); + case '\0': + return i; + case 'i': + notail(argv[i]); + *pi = 1; /* go through */ + case 'v': + notail(argv[i]); + *pv = 1; + break; + case 'e': + *pe = 1; /* go through */ + case 'l': + if (argv[i][2] == '\0') { + i++; + if (argv[i] == NULL) return -1; + } + break; + default: return -1; /* invalid option */ + } + } + return 0; +} + + +static int runargs (lua_State *L, char **argv, int n) { + int i; + for (i = 1; i < n; i++) { + if (argv[i] == NULL) continue; + lua_assert(argv[i][0] == '-'); + switch (argv[i][1]) { /* option */ + case 'e': { + const char *chunk = argv[i] + 2; + if (*chunk == '\0') chunk = argv[++i]; + lua_assert(chunk != NULL); + if (dostring(L, chunk, "=(command line)") != 0) + return 1; + break; + } + case 'l': { + const char *filename = argv[i] + 2; + if (*filename == '\0') filename = argv[++i]; + lua_assert(filename != NULL); + if (dolibrary(L, filename)) + return 1; /* stop if file fails */ + break; + } + default: break; + } + } + return 0; +} + + +static int handle_luainit (lua_State *L) { + const char *init = getenv(LUA_INIT); + if (init == NULL) return 0; /* status OK */ + else if (init[0] == '@') + return dofile(L, init+1); + else + return dostring(L, init, "=" LUA_INIT); +} + + +struct Smain { + int argc; + char **argv; + int status; +}; + + +static int pmain (lua_State *L) { + struct Smain *s = (struct Smain *)lua_touserdata(L, 1); + char **argv = s->argv; + int script; + int has_i = 0, has_v = 0, has_e = 0; + globalL = L; + if (argv[0] && argv[0][0]) progname = argv[0]; + lua_gc(L, LUA_GCSTOP, 0); /* stop collector during initialization */ + luaL_openlibs(L); /* open libraries */ + lua_gc(L, LUA_GCRESTART, 0); + s->status = handle_luainit(L); + if (s->status != 0) return 0; + script = collectargs(argv, &has_i, &has_v, &has_e); + if (script < 0) { /* invalid args? */ + print_usage(); + s->status = 1; + return 0; + } + if (has_v) print_version(); + s->status = runargs(L, argv, (script > 0) ? script : s->argc); + if (s->status != 0) return 0; + if (script) + s->status = handle_script(L, argv, script); + if (s->status != 0) return 0; + if (has_i) + dotty(L); + else if (script == 0 && !has_e && !has_v) { + if (lua_stdin_is_tty()) { + print_version(); + dotty(L); + } + else dofile(L, NULL); /* executes stdin as a file */ + } + return 0; +} + + +int main (int argc, char **argv) { + int status; + struct Smain s; + lua_State *L = lua_open(); /* create state */ + if (L == NULL) { + l_message(argv[0], "cannot create state: not enough memory"); + return EXIT_FAILURE; + } + s.argc = argc; + s.argv = argv; + status = lua_cpcall(L, &pmain, &s); + report(L, status); + lua_close(L); + return (status || s.status) ? EXIT_FAILURE : EXIT_SUCCESS; +} + diff --git a/lua-5.1.4/src/lua.h b/lua-5.1.4/src/lua.h new file mode 100644 index 0000000..e4bdfd3 --- /dev/null +++ b/lua-5.1.4/src/lua.h @@ -0,0 +1,388 @@ +/* +** $Id: lua.h,v 1.218.1.5 2008/08/06 13:30:12 roberto Exp $ +** Lua - An Extensible Extension Language +** Lua.org, PUC-Rio, Brazil (http://www.lua.org) +** See Copyright Notice at the end of this file +*/ + + +#ifndef lua_h +#define lua_h + +#include +#include + + +#include "luaconf.h" + + +#define LUA_VERSION "Lua 5.1" +#define LUA_RELEASE "Lua 5.1.4" +#define LUA_VERSION_NUM 501 +#define LUA_COPYRIGHT "Copyright (C) 1994-2008 Lua.org, PUC-Rio" +#define LUA_AUTHORS "R. Ierusalimschy, L. H. de Figueiredo & W. Celes" + + +/* mark for precompiled code (`Lua') */ +#define LUA_SIGNATURE "\033Lua" + +/* option for multiple returns in `lua_pcall' and `lua_call' */ +#define LUA_MULTRET (-1) + + +/* +** pseudo-indices +*/ +#define LUA_REGISTRYINDEX (-10000) +#define LUA_ENVIRONINDEX (-10001) +#define LUA_GLOBALSINDEX (-10002) +#define lua_upvalueindex(i) (LUA_GLOBALSINDEX-(i)) + + +/* thread status; 0 is OK */ +#define LUA_YIELD 1 +#define LUA_ERRRUN 2 +#define LUA_ERRSYNTAX 3 +#define LUA_ERRMEM 4 +#define LUA_ERRERR 5 + + +typedef struct lua_State lua_State; + +typedef int (*lua_CFunction) (lua_State *L); + + +/* +** functions that read/write blocks when loading/dumping Lua chunks +*/ +typedef const char * (*lua_Reader) (lua_State *L, void *ud, size_t *sz); + +typedef int (*lua_Writer) (lua_State *L, const void* p, size_t sz, void* ud); + + +/* +** prototype for memory-allocation functions +*/ +typedef void * (*lua_Alloc) (void *ud, void *ptr, size_t osize, size_t nsize); + + +/* +** basic types +*/ +#define LUA_TNONE (-1) + +#define LUA_TNIL 0 +#define LUA_TBOOLEAN 1 +#define LUA_TLIGHTUSERDATA 2 +#define LUA_TNUMBER 3 +#define LUA_TSTRING 4 +#define LUA_TTABLE 5 +#define LUA_TFUNCTION 6 +#define LUA_TUSERDATA 7 +#define LUA_TTHREAD 8 + + + +/* minimum Lua stack available to a C function */ +#define LUA_MINSTACK 20 + + +/* +** generic extra include file +*/ +#if defined(LUA_USER_H) +#include LUA_USER_H +#endif + + +/* type of numbers in Lua */ +typedef LUA_NUMBER lua_Number; + + +/* type for integer functions */ +typedef LUA_INTEGER lua_Integer; + + + +/* +** state manipulation +*/ +LUA_API lua_State *(lua_newstate) (lua_Alloc f, void *ud); +LUA_API void (lua_close) (lua_State *L); +LUA_API lua_State *(lua_newthread) (lua_State *L); + +LUA_API lua_CFunction (lua_atpanic) (lua_State *L, lua_CFunction panicf); + + +/* +** basic stack manipulation +*/ +LUA_API int (lua_gettop) (lua_State *L); +LUA_API void (lua_settop) (lua_State *L, int idx); +LUA_API void (lua_pushvalue) (lua_State *L, int idx); +LUA_API void (lua_remove) (lua_State *L, int idx); +LUA_API void (lua_insert) (lua_State *L, int idx); +LUA_API void (lua_replace) (lua_State *L, int idx); +LUA_API int (lua_checkstack) (lua_State *L, int sz); + +LUA_API void (lua_xmove) (lua_State *from, lua_State *to, int n); + + +/* +** access functions (stack -> C) +*/ + +LUA_API int (lua_isnumber) (lua_State *L, int idx); +LUA_API int (lua_isstring) (lua_State *L, int idx); +LUA_API int (lua_iscfunction) (lua_State *L, int idx); +LUA_API int (lua_isuserdata) (lua_State *L, int idx); +LUA_API int (lua_type) (lua_State *L, int idx); +LUA_API const char *(lua_typename) (lua_State *L, int tp); + +LUA_API int (lua_equal) (lua_State *L, int idx1, int idx2); +LUA_API int (lua_rawequal) (lua_State *L, int idx1, int idx2); +LUA_API int (lua_lessthan) (lua_State *L, int idx1, int idx2); + +LUA_API lua_Number (lua_tonumber) (lua_State *L, int idx); +LUA_API lua_Integer (lua_tointeger) (lua_State *L, int idx); +LUA_API int (lua_toboolean) (lua_State *L, int idx); +LUA_API const char *(lua_tolstring) (lua_State *L, int idx, size_t *len); +LUA_API size_t (lua_objlen) (lua_State *L, int idx); +LUA_API lua_CFunction (lua_tocfunction) (lua_State *L, int idx); +LUA_API void *(lua_touserdata) (lua_State *L, int idx); +LUA_API lua_State *(lua_tothread) (lua_State *L, int idx); +LUA_API const void *(lua_topointer) (lua_State *L, int idx); + + +/* +** push functions (C -> stack) +*/ +LUA_API void (lua_pushnil) (lua_State *L); +LUA_API void (lua_pushnumber) (lua_State *L, lua_Number n); +LUA_API void (lua_pushinteger) (lua_State *L, lua_Integer n); +LUA_API void (lua_pushlstring) (lua_State *L, const char *s, size_t l); +LUA_API void (lua_pushstring) (lua_State *L, const char *s); +LUA_API const char *(lua_pushvfstring) (lua_State *L, const char *fmt, + va_list argp); +LUA_API const char *(lua_pushfstring) (lua_State *L, const char *fmt, ...); +LUA_API void (lua_pushcclosure) (lua_State *L, lua_CFunction fn, int n); +LUA_API void (lua_pushboolean) (lua_State *L, int b); +LUA_API void (lua_pushlightuserdata) (lua_State *L, void *p); +LUA_API int (lua_pushthread) (lua_State *L); + + +/* +** get functions (Lua -> stack) +*/ +LUA_API void (lua_gettable) (lua_State *L, int idx); +LUA_API void (lua_getfield) (lua_State *L, int idx, const char *k); +LUA_API void (lua_rawget) (lua_State *L, int idx); +LUA_API void (lua_rawgeti) (lua_State *L, int idx, int n); +LUA_API void (lua_createtable) (lua_State *L, int narr, int nrec); +LUA_API void *(lua_newuserdata) (lua_State *L, size_t sz); +LUA_API int (lua_getmetatable) (lua_State *L, int objindex); +LUA_API void (lua_getfenv) (lua_State *L, int idx); + + +/* +** set functions (stack -> Lua) +*/ +LUA_API void (lua_settable) (lua_State *L, int idx); +LUA_API void (lua_setfield) (lua_State *L, int idx, const char *k); +LUA_API void (lua_rawset) (lua_State *L, int idx); +LUA_API void (lua_rawseti) (lua_State *L, int idx, int n); +LUA_API int (lua_setmetatable) (lua_State *L, int objindex); +LUA_API int (lua_setfenv) (lua_State *L, int idx); + + +/* +** `load' and `call' functions (load and run Lua code) +*/ +LUA_API void (lua_call) (lua_State *L, int nargs, int nresults); +LUA_API int (lua_pcall) (lua_State *L, int nargs, int nresults, int errfunc); +LUA_API int (lua_cpcall) (lua_State *L, lua_CFunction func, void *ud); +LUA_API int (lua_load) (lua_State *L, lua_Reader reader, void *dt, + const char *chunkname); + +LUA_API int (lua_dump) (lua_State *L, lua_Writer writer, void *data); + + +/* +** coroutine functions +*/ +LUA_API int (lua_yield) (lua_State *L, int nresults); +LUA_API int (lua_resume) (lua_State *L, int narg); +LUA_API int (lua_status) (lua_State *L); + +/* +** garbage-collection function and options +*/ + +#define LUA_GCSTOP 0 +#define LUA_GCRESTART 1 +#define LUA_GCCOLLECT 2 +#define LUA_GCCOUNT 3 +#define LUA_GCCOUNTB 4 +#define LUA_GCSTEP 5 +#define LUA_GCSETPAUSE 6 +#define LUA_GCSETSTEPMUL 7 + +LUA_API int (lua_gc) (lua_State *L, int what, int data); + + +/* +** miscellaneous functions +*/ + +LUA_API int (lua_error) (lua_State *L); + +LUA_API int (lua_next) (lua_State *L, int idx); + +LUA_API void (lua_concat) (lua_State *L, int n); + +LUA_API lua_Alloc (lua_getallocf) (lua_State *L, void **ud); +LUA_API void lua_setallocf (lua_State *L, lua_Alloc f, void *ud); + + + +/* +** =============================================================== +** some useful macros +** =============================================================== +*/ + +#define lua_pop(L,n) lua_settop(L, -(n)-1) + +#define lua_newtable(L) lua_createtable(L, 0, 0) + +#define lua_register(L,n,f) (lua_pushcfunction(L, (f)), lua_setglobal(L, (n))) + +#define lua_pushcfunction(L,f) lua_pushcclosure(L, (f), 0) + +#define lua_strlen(L,i) lua_objlen(L, (i)) + +#define lua_isfunction(L,n) (lua_type(L, (n)) == LUA_TFUNCTION) +#define lua_istable(L,n) (lua_type(L, (n)) == LUA_TTABLE) +#define lua_islightuserdata(L,n) (lua_type(L, (n)) == LUA_TLIGHTUSERDATA) +#define lua_isnil(L,n) (lua_type(L, (n)) == LUA_TNIL) +#define lua_isboolean(L,n) (lua_type(L, (n)) == LUA_TBOOLEAN) +#define lua_isthread(L,n) (lua_type(L, (n)) == LUA_TTHREAD) +#define lua_isnone(L,n) (lua_type(L, (n)) == LUA_TNONE) +#define lua_isnoneornil(L, n) (lua_type(L, (n)) <= 0) + +#define lua_pushliteral(L, s) \ + lua_pushlstring(L, "" s, (sizeof(s)/sizeof(char))-1) + +#define lua_setglobal(L,s) lua_setfield(L, LUA_GLOBALSINDEX, (s)) +#define lua_getglobal(L,s) lua_getfield(L, LUA_GLOBALSINDEX, (s)) + +#define lua_tostring(L,i) lua_tolstring(L, (i), NULL) + + + +/* +** compatibility macros and functions +*/ + +#define lua_open() luaL_newstate() + +#define lua_getregistry(L) lua_pushvalue(L, LUA_REGISTRYINDEX) + +#define lua_getgccount(L) lua_gc(L, LUA_GCCOUNT, 0) + +#define lua_Chunkreader lua_Reader +#define lua_Chunkwriter lua_Writer + + +/* hack */ +LUA_API void lua_setlevel (lua_State *from, lua_State *to); + + +/* +** {====================================================================== +** Debug API +** ======================================================================= +*/ + + +/* +** Event codes +*/ +#define LUA_HOOKCALL 0 +#define LUA_HOOKRET 1 +#define LUA_HOOKLINE 2 +#define LUA_HOOKCOUNT 3 +#define LUA_HOOKTAILRET 4 + + +/* +** Event masks +*/ +#define LUA_MASKCALL (1 << LUA_HOOKCALL) +#define LUA_MASKRET (1 << LUA_HOOKRET) +#define LUA_MASKLINE (1 << LUA_HOOKLINE) +#define LUA_MASKCOUNT (1 << LUA_HOOKCOUNT) + +typedef struct lua_Debug lua_Debug; /* activation record */ + + +/* Functions to be called by the debuger in specific events */ +typedef void (*lua_Hook) (lua_State *L, lua_Debug *ar); + + +LUA_API int lua_getstack (lua_State *L, int level, lua_Debug *ar); +LUA_API int lua_getinfo (lua_State *L, const char *what, lua_Debug *ar); +LUA_API const char *lua_getlocal (lua_State *L, const lua_Debug *ar, int n); +LUA_API const char *lua_setlocal (lua_State *L, const lua_Debug *ar, int n); +LUA_API const char *lua_getupvalue (lua_State *L, int funcindex, int n); +LUA_API const char *lua_setupvalue (lua_State *L, int funcindex, int n); + +LUA_API int lua_sethook (lua_State *L, lua_Hook func, int mask, int count); +LUA_API lua_Hook lua_gethook (lua_State *L); +LUA_API int lua_gethookmask (lua_State *L); +LUA_API int lua_gethookcount (lua_State *L); + + +struct lua_Debug { + int event; + const char *name; /* (n) */ + const char *namewhat; /* (n) `global', `local', `field', `method' */ + const char *what; /* (S) `Lua', `C', `main', `tail' */ + const char *source; /* (S) */ + int currentline; /* (l) */ + int nups; /* (u) number of upvalues */ + int linedefined; /* (S) */ + int lastlinedefined; /* (S) */ + char short_src[LUA_IDSIZE]; /* (S) */ + /* private part */ + int i_ci; /* active function */ +}; + +/* }====================================================================== */ + + +/****************************************************************************** +* Copyright (C) 1994-2008 Lua.org, PUC-Rio. All rights reserved. +* +* Permission is hereby granted, free of charge, to any person obtaining +* a copy of this software and associated documentation files (the +* "Software"), to deal in the Software without restriction, including +* without limitation the rights to use, copy, modify, merge, publish, +* distribute, sublicense, and/or sell copies of the Software, and to +* permit persons to whom the Software is furnished to do so, subject to +* the following conditions: +* +* The above copyright notice and this permission notice shall be +* included in all copies or substantial portions of the Software. +* +* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +* EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +* MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +* IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY +* CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, +* TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE +* SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +******************************************************************************/ + + +#endif diff --git a/lua-5.1.4/src/luac.c b/lua-5.1.4/src/luac.c new file mode 100644 index 0000000..d070173 --- /dev/null +++ b/lua-5.1.4/src/luac.c @@ -0,0 +1,200 @@ +/* +** $Id: luac.c,v 1.54 2006/06/02 17:37:11 lhf Exp $ +** Lua compiler (saves bytecodes to files; also list bytecodes) +** See Copyright Notice in lua.h +*/ + +#include +#include +#include +#include + +#define luac_c +#define LUA_CORE + +#include "lua.h" +#include "lauxlib.h" + +#include "ldo.h" +#include "lfunc.h" +#include "lmem.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lstring.h" +#include "lundump.h" + +#define PROGNAME "luac" /* default program name */ +#define OUTPUT PROGNAME ".out" /* default output file */ + +static int listing=0; /* list bytecodes? */ +static int dumping=1; /* dump bytecodes? */ +static int stripping=0; /* strip debug information? */ +static char Output[]={ OUTPUT }; /* default output file name */ +static const char* output=Output; /* actual output file name */ +static const char* progname=PROGNAME; /* actual program name */ + +static void fatal(const char* message) +{ + fprintf(stderr,"%s: %s\n",progname,message); + exit(EXIT_FAILURE); +} + +static void cannot(const char* what) +{ + fprintf(stderr,"%s: cannot %s %s: %s\n",progname,what,output,strerror(errno)); + exit(EXIT_FAILURE); +} + +static void usage(const char* message) +{ + if (*message=='-') + fprintf(stderr,"%s: unrecognized option " LUA_QS "\n",progname,message); + else + fprintf(stderr,"%s: %s\n",progname,message); + fprintf(stderr, + "usage: %s [options] [filenames].\n" + "Available options are:\n" + " - process stdin\n" + " -l list\n" + " -o name output to file " LUA_QL("name") " (default is \"%s\")\n" + " -p parse only\n" + " -s strip debug information\n" + " -v show version information\n" + " -- stop handling options\n", + progname,Output); + exit(EXIT_FAILURE); +} + +#define IS(s) (strcmp(argv[i],s)==0) + +static int doargs(int argc, char* argv[]) +{ + int i; + int version=0; + if (argv[0]!=NULL && *argv[0]!=0) progname=argv[0]; + for (i=1; itop+(i))->l.p) + +static const Proto* combine(lua_State* L, int n) +{ + if (n==1) + return toproto(L,-1); + else + { + int i,pc; + Proto* f=luaF_newproto(L); + setptvalue2s(L,L->top,f); incr_top(L); + f->source=luaS_newliteral(L,"=(" PROGNAME ")"); + f->maxstacksize=1; + pc=2*n+1; + f->code=luaM_newvector(L,pc,Instruction); + f->sizecode=pc; + f->p=luaM_newvector(L,n,Proto*); + f->sizep=n; + pc=0; + for (i=0; ip[i]=toproto(L,i-n-1); + f->code[pc++]=CREATE_ABx(OP_CLOSURE,0,i); + f->code[pc++]=CREATE_ABC(OP_CALL,0,1,1); + } + f->code[pc++]=CREATE_ABC(OP_RETURN,0,1,0); + return f; + } +} + +static int writer(lua_State* L, const void* p, size_t size, void* u) +{ + UNUSED(L); + return (fwrite(p,size,1,(FILE*)u)!=1) && (size!=0); +} + +struct Smain { + int argc; + char** argv; +}; + +static int pmain(lua_State* L) +{ + struct Smain* s = (struct Smain*)lua_touserdata(L, 1); + int argc=s->argc; + char** argv=s->argv; + const Proto* f; + int i; + if (!lua_checkstack(L,argc)) fatal("too many input files"); + for (i=0; i1); + if (dumping) + { + FILE* D= (output==NULL) ? stdout : fopen(output,"wb"); + if (D==NULL) cannot("open"); + lua_lock(L); + luaU_dump(L,f,writer,D,stripping); + lua_unlock(L); + if (ferror(D)) cannot("write"); + if (fclose(D)) cannot("close"); + } + return 0; +} + +int main(int argc, char* argv[]) +{ + lua_State* L; + struct Smain s; + int i=doargs(argc,argv); + argc-=i; argv+=i; + if (argc<=0) usage("no input files given"); + L=lua_open(); + if (L==NULL) fatal("not enough memory for state"); + s.argc=argc; + s.argv=argv; + if (lua_cpcall(L,pmain,&s)!=0) fatal(lua_tostring(L,-1)); + lua_close(L); + return EXIT_SUCCESS; +} diff --git a/lua-5.1.4/src/luaconf.h b/lua-5.1.4/src/luaconf.h new file mode 100644 index 0000000..e2cb261 --- /dev/null +++ b/lua-5.1.4/src/luaconf.h @@ -0,0 +1,763 @@ +/* +** $Id: luaconf.h,v 1.82.1.7 2008/02/11 16:25:08 roberto Exp $ +** Configuration file for Lua +** See Copyright Notice in lua.h +*/ + + +#ifndef lconfig_h +#define lconfig_h + +#include +#include + + +/* +** ================================================================== +** Search for "@@" to find all configurable definitions. +** =================================================================== +*/ + + +/* +@@ LUA_ANSI controls the use of non-ansi features. +** CHANGE it (define it) if you want Lua to avoid the use of any +** non-ansi feature or library. +*/ +#if defined(__STRICT_ANSI__) +#define LUA_ANSI +#endif + + +#if !defined(LUA_ANSI) && defined(_WIN32) +#define LUA_WIN +#endif + +#if defined(LUA_USE_LINUX) +#define LUA_USE_POSIX +#define LUA_USE_DLOPEN /* needs an extra library: -ldl */ +#define LUA_USE_READLINE /* needs some extra libraries */ +#endif + +#if defined(LUA_USE_MACOSX) +#define LUA_USE_POSIX +#define LUA_DL_DYLD /* does not need extra library */ +#endif + + + +/* +@@ LUA_USE_POSIX includes all functionallity listed as X/Open System +@* Interfaces Extension (XSI). +** CHANGE it (define it) if your system is XSI compatible. +*/ +#if defined(LUA_USE_POSIX) +#define LUA_USE_MKSTEMP +#define LUA_USE_ISATTY +#define LUA_USE_POPEN +#define LUA_USE_ULONGJMP +#endif + + +/* +@@ LUA_PATH and LUA_CPATH are the names of the environment variables that +@* Lua check to set its paths. +@@ LUA_INIT is the name of the environment variable that Lua +@* checks for initialization code. +** CHANGE them if you want different names. +*/ +#define LUA_PATH "LUA_PATH" +#define LUA_CPATH "LUA_CPATH" +#define LUA_INIT "LUA_INIT" + + +/* +@@ LUA_PATH_DEFAULT is the default path that Lua uses to look for +@* Lua libraries. +@@ LUA_CPATH_DEFAULT is the default path that Lua uses to look for +@* C libraries. +** CHANGE them if your machine has a non-conventional directory +** hierarchy or if you want to install your libraries in +** non-conventional directories. +*/ +#if defined(_WIN32) +/* +** In Windows, any exclamation mark ('!') in the path is replaced by the +** path of the directory of the executable file of the current process. +*/ +#define LUA_LDIR "!\\lua\\" +#define LUA_CDIR "!\\" +#define LUA_PATH_DEFAULT \ + ".\\?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?\\init.lua;" \ + LUA_CDIR"?.lua;" LUA_CDIR"?\\init.lua" +#define LUA_CPATH_DEFAULT \ + ".\\?.dll;" LUA_CDIR"?.dll;" LUA_CDIR"loadall.dll" + +#else +#define LUA_ROOT "/usr/local/" +#define LUA_LDIR LUA_ROOT "share/lua/5.1/" +#define LUA_CDIR LUA_ROOT "lib/lua/5.1/" +#define LUA_PATH_DEFAULT \ + "./?.lua;" LUA_LDIR"?.lua;" LUA_LDIR"?/init.lua;" \ + LUA_CDIR"?.lua;" LUA_CDIR"?/init.lua" +#define LUA_CPATH_DEFAULT \ + "./?.so;" LUA_CDIR"?.so;" LUA_CDIR"loadall.so" +#endif + + +/* +@@ LUA_DIRSEP is the directory separator (for submodules). +** CHANGE it if your machine does not use "/" as the directory separator +** and is not Windows. (On Windows Lua automatically uses "\".) +*/ +#if defined(_WIN32) +#define LUA_DIRSEP "\\" +#else +#define LUA_DIRSEP "/" +#endif + + +/* +@@ LUA_PATHSEP is the character that separates templates in a path. +@@ LUA_PATH_MARK is the string that marks the substitution points in a +@* template. +@@ LUA_EXECDIR in a Windows path is replaced by the executable's +@* directory. +@@ LUA_IGMARK is a mark to ignore all before it when bulding the +@* luaopen_ function name. +** CHANGE them if for some reason your system cannot use those +** characters. (E.g., if one of those characters is a common character +** in file/directory names.) Probably you do not need to change them. +*/ +#define LUA_PATHSEP ";" +#define LUA_PATH_MARK "?" +#define LUA_EXECDIR "!" +#define LUA_IGMARK "-" + + +/* +@@ LUA_INTEGER is the integral type used by lua_pushinteger/lua_tointeger. +** CHANGE that if ptrdiff_t is not adequate on your machine. (On most +** machines, ptrdiff_t gives a good choice between int or long.) +*/ +#define LUA_INTEGER ptrdiff_t + + +/* +@@ LUA_API is a mark for all core API functions. +@@ LUALIB_API is a mark for all standard library functions. +** CHANGE them if you need to define those functions in some special way. +** For instance, if you want to create one Windows DLL with the core and +** the libraries, you may want to use the following definition (define +** LUA_BUILD_AS_DLL to get it). +*/ +#if defined(LUA_BUILD_AS_DLL) + +#if defined(LUA_CORE) || defined(LUA_LIB) +#define LUA_API __declspec(dllexport) +#else +#define LUA_API __declspec(dllimport) +#endif + +#else + +#define LUA_API extern + +#endif + +/* more often than not the libs go together with the core */ +#define LUALIB_API LUA_API + + +/* +@@ LUAI_FUNC is a mark for all extern functions that are not to be +@* exported to outside modules. +@@ LUAI_DATA is a mark for all extern (const) variables that are not to +@* be exported to outside modules. +** CHANGE them if you need to mark them in some special way. Elf/gcc +** (versions 3.2 and later) mark them as "hidden" to optimize access +** when Lua is compiled as a shared library. +*/ +#if defined(luaall_c) +#define LUAI_FUNC static +#define LUAI_DATA /* empty */ + +#elif defined(__GNUC__) && ((__GNUC__*100 + __GNUC_MINOR__) >= 302) && \ + defined(__ELF__) +#define LUAI_FUNC __attribute__((visibility("hidden"))) extern +#define LUAI_DATA LUAI_FUNC + +#else +#define LUAI_FUNC extern +#define LUAI_DATA extern +#endif + + + +/* +@@ LUA_QL describes how error messages quote program elements. +** CHANGE it if you want a different appearance. +*/ +#define LUA_QL(x) "'" x "'" +#define LUA_QS LUA_QL("%s") + + +/* +@@ LUA_IDSIZE gives the maximum size for the description of the source +@* of a function in debug information. +** CHANGE it if you want a different size. +*/ +#define LUA_IDSIZE 60 + + +/* +** {================================================================== +** Stand-alone configuration +** =================================================================== +*/ + +#if defined(lua_c) || defined(luaall_c) + +/* +@@ lua_stdin_is_tty detects whether the standard input is a 'tty' (that +@* is, whether we're running lua interactively). +** CHANGE it if you have a better definition for non-POSIX/non-Windows +** systems. +*/ +#if defined(LUA_USE_ISATTY) +#include +#define lua_stdin_is_tty() isatty(0) +#elif defined(LUA_WIN) +#include +#include +#define lua_stdin_is_tty() _isatty(_fileno(stdin)) +#else +#define lua_stdin_is_tty() 1 /* assume stdin is a tty */ +#endif + + +/* +@@ LUA_PROMPT is the default prompt used by stand-alone Lua. +@@ LUA_PROMPT2 is the default continuation prompt used by stand-alone Lua. +** CHANGE them if you want different prompts. (You can also change the +** prompts dynamically, assigning to globals _PROMPT/_PROMPT2.) +*/ +#define LUA_PROMPT "> " +#define LUA_PROMPT2 ">> " + + +/* +@@ LUA_PROGNAME is the default name for the stand-alone Lua program. +** CHANGE it if your stand-alone interpreter has a different name and +** your system is not able to detect that name automatically. +*/ +#define LUA_PROGNAME "lua" + + +/* +@@ LUA_MAXINPUT is the maximum length for an input line in the +@* stand-alone interpreter. +** CHANGE it if you need longer lines. +*/ +#define LUA_MAXINPUT 512 + + +/* +@@ lua_readline defines how to show a prompt and then read a line from +@* the standard input. +@@ lua_saveline defines how to "save" a read line in a "history". +@@ lua_freeline defines how to free a line read by lua_readline. +** CHANGE them if you want to improve this functionality (e.g., by using +** GNU readline and history facilities). +*/ +#if defined(LUA_USE_READLINE) +#include +#include +#include +#define lua_readline(L,b,p) ((void)L, ((b)=readline(p)) != NULL) +#define lua_saveline(L,idx) \ + if (lua_strlen(L,idx) > 0) /* non-empty line? */ \ + add_history(lua_tostring(L, idx)); /* add it to history */ +#define lua_freeline(L,b) ((void)L, free(b)) +#else +#define lua_readline(L,b,p) \ + ((void)L, fputs(p, stdout), fflush(stdout), /* show prompt */ \ + fgets(b, LUA_MAXINPUT, stdin) != NULL) /* get line */ +#define lua_saveline(L,idx) { (void)L; (void)idx; } +#define lua_freeline(L,b) { (void)L; (void)b; } +#endif + +#endif + +/* }================================================================== */ + + +/* +@@ LUAI_GCPAUSE defines the default pause between garbage-collector cycles +@* as a percentage. +** CHANGE it if you want the GC to run faster or slower (higher values +** mean larger pauses which mean slower collection.) You can also change +** this value dynamically. +*/ +#define LUAI_GCPAUSE 200 /* 200% (wait memory to double before next GC) */ + + +/* +@@ LUAI_GCMUL defines the default speed of garbage collection relative to +@* memory allocation as a percentage. +** CHANGE it if you want to change the granularity of the garbage +** collection. (Higher values mean coarser collections. 0 represents +** infinity, where each step performs a full collection.) You can also +** change this value dynamically. +*/ +#define LUAI_GCMUL 200 /* GC runs 'twice the speed' of memory allocation */ + + + +/* +@@ LUA_COMPAT_GETN controls compatibility with old getn behavior. +** CHANGE it (define it) if you want exact compatibility with the +** behavior of setn/getn in Lua 5.0. +*/ +#undef LUA_COMPAT_GETN + +/* +@@ LUA_COMPAT_LOADLIB controls compatibility about global loadlib. +** CHANGE it to undefined as soon as you do not need a global 'loadlib' +** function (the function is still available as 'package.loadlib'). +*/ +#undef LUA_COMPAT_LOADLIB + +/* +@@ LUA_COMPAT_VARARG controls compatibility with old vararg feature. +** CHANGE it to undefined as soon as your programs use only '...' to +** access vararg parameters (instead of the old 'arg' table). +*/ +#define LUA_COMPAT_VARARG + +/* +@@ LUA_COMPAT_MOD controls compatibility with old math.mod function. +** CHANGE it to undefined as soon as your programs use 'math.fmod' or +** the new '%' operator instead of 'math.mod'. +*/ +#define LUA_COMPAT_MOD + +/* +@@ LUA_COMPAT_LSTR controls compatibility with old long string nesting +@* facility. +** CHANGE it to 2 if you want the old behaviour, or undefine it to turn +** off the advisory error when nesting [[...]]. +*/ +#define LUA_COMPAT_LSTR 1 + +/* +@@ LUA_COMPAT_GFIND controls compatibility with old 'string.gfind' name. +** CHANGE it to undefined as soon as you rename 'string.gfind' to +** 'string.gmatch'. +*/ +#define LUA_COMPAT_GFIND + +/* +@@ LUA_COMPAT_OPENLIB controls compatibility with old 'luaL_openlib' +@* behavior. +** CHANGE it to undefined as soon as you replace to 'luaL_register' +** your uses of 'luaL_openlib' +*/ +#define LUA_COMPAT_OPENLIB + + + +/* +@@ luai_apicheck is the assert macro used by the Lua-C API. +** CHANGE luai_apicheck if you want Lua to perform some checks in the +** parameters it gets from API calls. This may slow down the interpreter +** a bit, but may be quite useful when debugging C code that interfaces +** with Lua. A useful redefinition is to use assert.h. +*/ +#if defined(LUA_USE_APICHECK) +#include +#define luai_apicheck(L,o) { (void)L; assert(o); } +#else +#define luai_apicheck(L,o) { (void)L; } +#endif + + +/* +@@ LUAI_BITSINT defines the number of bits in an int. +** CHANGE here if Lua cannot automatically detect the number of bits of +** your machine. Probably you do not need to change this. +*/ +/* avoid overflows in comparison */ +#if INT_MAX-20 < 32760 +#define LUAI_BITSINT 16 +#elif INT_MAX > 2147483640L +/* int has at least 32 bits */ +#define LUAI_BITSINT 32 +#else +#error "you must define LUA_BITSINT with number of bits in an integer" +#endif + + +/* +@@ LUAI_UINT32 is an unsigned integer with at least 32 bits. +@@ LUAI_INT32 is an signed integer with at least 32 bits. +@@ LUAI_UMEM is an unsigned integer big enough to count the total +@* memory used by Lua. +@@ LUAI_MEM is a signed integer big enough to count the total memory +@* used by Lua. +** CHANGE here if for some weird reason the default definitions are not +** good enough for your machine. (The definitions in the 'else' +** part always works, but may waste space on machines with 64-bit +** longs.) Probably you do not need to change this. +*/ +#if LUAI_BITSINT >= 32 +#define LUAI_UINT32 unsigned int +#define LUAI_INT32 int +#define LUAI_MAXINT32 INT_MAX +#define LUAI_UMEM size_t +#define LUAI_MEM ptrdiff_t +#else +/* 16-bit ints */ +#define LUAI_UINT32 unsigned long +#define LUAI_INT32 long +#define LUAI_MAXINT32 LONG_MAX +#define LUAI_UMEM unsigned long +#define LUAI_MEM long +#endif + + +/* +@@ LUAI_MAXCALLS limits the number of nested calls. +** CHANGE it if you need really deep recursive calls. This limit is +** arbitrary; its only purpose is to stop infinite recursion before +** exhausting memory. +*/ +#define LUAI_MAXCALLS 20000 + + +/* +@@ LUAI_MAXCSTACK limits the number of Lua stack slots that a C function +@* can use. +** CHANGE it if you need lots of (Lua) stack space for your C +** functions. This limit is arbitrary; its only purpose is to stop C +** functions to consume unlimited stack space. (must be smaller than +** -LUA_REGISTRYINDEX) +*/ +#define LUAI_MAXCSTACK 8000 + + + +/* +** {================================================================== +** CHANGE (to smaller values) the following definitions if your system +** has a small C stack. (Or you may want to change them to larger +** values if your system has a large C stack and these limits are +** too rigid for you.) Some of these constants control the size of +** stack-allocated arrays used by the compiler or the interpreter, while +** others limit the maximum number of recursive calls that the compiler +** or the interpreter can perform. Values too large may cause a C stack +** overflow for some forms of deep constructs. +** =================================================================== +*/ + + +/* +@@ LUAI_MAXCCALLS is the maximum depth for nested C calls (short) and +@* syntactical nested non-terminals in a program. +*/ +#define LUAI_MAXCCALLS 200 + + +/* +@@ LUAI_MAXVARS is the maximum number of local variables per function +@* (must be smaller than 250). +*/ +#define LUAI_MAXVARS 200 + + +/* +@@ LUAI_MAXUPVALUES is the maximum number of upvalues per function +@* (must be smaller than 250). +*/ +#define LUAI_MAXUPVALUES 60 + + +/* +@@ LUAL_BUFFERSIZE is the buffer size used by the lauxlib buffer system. +*/ +#define LUAL_BUFFERSIZE BUFSIZ + +/* }================================================================== */ + + + + +/* +** {================================================================== +@@ LUA_NUMBER is the type of numbers in Lua. +** CHANGE the following definitions only if you want to build Lua +** with a number type different from double. You may also need to +** change lua_number2int & lua_number2integer. +** =================================================================== +*/ + +#define LUA_NUMBER_DOUBLE +#define LUA_NUMBER double + +/* +@@ LUAI_UACNUMBER is the result of an 'usual argument conversion' +@* over a number. +*/ +#define LUAI_UACNUMBER double + + +/* +@@ LUA_NUMBER_SCAN is the format for reading numbers. +@@ LUA_NUMBER_FMT is the format for writing numbers. +@@ lua_number2str converts a number to a string. +@@ LUAI_MAXNUMBER2STR is maximum size of previous conversion. +@@ lua_str2number converts a string to a number. +*/ +#define LUA_NUMBER_SCAN "%lf" +#define LUA_NUMBER_FMT "%.14g" +#define lua_number2str(s,n) sprintf((s), LUA_NUMBER_FMT, (n)) +#define LUAI_MAXNUMBER2STR 32 /* 16 digits, sign, point, and \0 */ +#define lua_str2number(s,p) strtod((s), (p)) + + +/* +@@ The luai_num* macros define the primitive operations over numbers. +*/ +#if defined(LUA_CORE) +#include +#define luai_numadd(a,b) ((a)+(b)) +#define luai_numsub(a,b) ((a)-(b)) +#define luai_nummul(a,b) ((a)*(b)) +#define luai_numdiv(a,b) ((a)/(b)) +#define luai_nummod(a,b) ((a) - floor((a)/(b))*(b)) +#define luai_numpow(a,b) (pow(a,b)) +#define luai_numunm(a) (-(a)) +#define luai_numeq(a,b) ((a)==(b)) +#define luai_numlt(a,b) ((a)<(b)) +#define luai_numle(a,b) ((a)<=(b)) +#define luai_numisnan(a) (!luai_numeq((a), (a))) +#endif + + +/* +@@ lua_number2int is a macro to convert lua_Number to int. +@@ lua_number2integer is a macro to convert lua_Number to lua_Integer. +** CHANGE them if you know a faster way to convert a lua_Number to +** int (with any rounding method and without throwing errors) in your +** system. In Pentium machines, a naive typecast from double to int +** in C is extremely slow, so any alternative is worth trying. +*/ + +/* On a Pentium, resort to a trick */ +#if defined(LUA_NUMBER_DOUBLE) && !defined(LUA_ANSI) && !defined(__SSE2__) && \ + (defined(__i386) || defined (_M_IX86) || defined(__i386__)) + +/* On a Microsoft compiler, use assembler */ +#if defined(_MSC_VER) + +#define lua_number2int(i,d) __asm fld d __asm fistp i +#define lua_number2integer(i,n) lua_number2int(i, n) + +/* the next trick should work on any Pentium, but sometimes clashes + with a DirectX idiosyncrasy */ +#else + +union luai_Cast { double l_d; long l_l; }; +#define lua_number2int(i,d) \ + { volatile union luai_Cast u; u.l_d = (d) + 6755399441055744.0; (i) = u.l_l; } +#define lua_number2integer(i,n) lua_number2int(i, n) + +#endif + + +/* this option always works, but may be slow */ +#else +#define lua_number2int(i,d) ((i)=(int)(d)) +#define lua_number2integer(i,d) ((i)=(lua_Integer)(d)) + +#endif + +/* }================================================================== */ + + +/* +@@ LUAI_USER_ALIGNMENT_T is a type that requires maximum alignment. +** CHANGE it if your system requires alignments larger than double. (For +** instance, if your system supports long doubles and they must be +** aligned in 16-byte boundaries, then you should add long double in the +** union.) Probably you do not need to change this. +*/ +#define LUAI_USER_ALIGNMENT_T union { double u; void *s; long l; } + + +/* +@@ LUAI_THROW/LUAI_TRY define how Lua does exception handling. +** CHANGE them if you prefer to use longjmp/setjmp even with C++ +** or if want/don't to use _longjmp/_setjmp instead of regular +** longjmp/setjmp. By default, Lua handles errors with exceptions when +** compiling as C++ code, with _longjmp/_setjmp when asked to use them, +** and with longjmp/setjmp otherwise. +*/ +#if defined(__cplusplus) +/* C++ exceptions */ +#define LUAI_THROW(L,c) throw(c) +#define LUAI_TRY(L,c,a) try { a } catch(...) \ + { if ((c)->status == 0) (c)->status = -1; } +#define luai_jmpbuf int /* dummy variable */ + +#elif defined(LUA_USE_ULONGJMP) +/* in Unix, try _longjmp/_setjmp (more efficient) */ +#define LUAI_THROW(L,c) _longjmp((c)->b, 1) +#define LUAI_TRY(L,c,a) if (_setjmp((c)->b) == 0) { a } +#define luai_jmpbuf jmp_buf + +#else +/* default handling with long jumps */ +#define LUAI_THROW(L,c) longjmp((c)->b, 1) +#define LUAI_TRY(L,c,a) if (setjmp((c)->b) == 0) { a } +#define luai_jmpbuf jmp_buf + +#endif + + +/* +@@ LUA_MAXCAPTURES is the maximum number of captures that a pattern +@* can do during pattern-matching. +** CHANGE it if you need more captures. This limit is arbitrary. +*/ +#define LUA_MAXCAPTURES 32 + + +/* +@@ lua_tmpnam is the function that the OS library uses to create a +@* temporary name. +@@ LUA_TMPNAMBUFSIZE is the maximum size of a name created by lua_tmpnam. +** CHANGE them if you have an alternative to tmpnam (which is considered +** insecure) or if you want the original tmpnam anyway. By default, Lua +** uses tmpnam except when POSIX is available, where it uses mkstemp. +*/ +#if defined(loslib_c) || defined(luaall_c) + +#if defined(LUA_USE_MKSTEMP) +#include +#define LUA_TMPNAMBUFSIZE 32 +#define lua_tmpnam(b,e) { \ + strcpy(b, "/tmp/lua_XXXXXX"); \ + e = mkstemp(b); \ + if (e != -1) close(e); \ + e = (e == -1); } + +#else +#define LUA_TMPNAMBUFSIZE L_tmpnam +#define lua_tmpnam(b,e) { e = (tmpnam(b) == NULL); } +#endif + +#endif + + +/* +@@ lua_popen spawns a new process connected to the current one through +@* the file streams. +** CHANGE it if you have a way to implement it in your system. +*/ +#if defined(LUA_USE_POPEN) + +#define lua_popen(L,c,m) ((void)L, fflush(NULL), popen(c,m)) +#define lua_pclose(L,file) ((void)L, (pclose(file) != -1)) + +#elif defined(LUA_WIN) + +#define lua_popen(L,c,m) ((void)L, _popen(c,m)) +#define lua_pclose(L,file) ((void)L, (_pclose(file) != -1)) + +#else + +#define lua_popen(L,c,m) ((void)((void)c, m), \ + luaL_error(L, LUA_QL("popen") " not supported"), (FILE*)0) +#define lua_pclose(L,file) ((void)((void)L, file), 0) + +#endif + +/* +@@ LUA_DL_* define which dynamic-library system Lua should use. +** CHANGE here if Lua has problems choosing the appropriate +** dynamic-library system for your platform (either Windows' DLL, Mac's +** dyld, or Unix's dlopen). If your system is some kind of Unix, there +** is a good chance that it has dlopen, so LUA_DL_DLOPEN will work for +** it. To use dlopen you also need to adapt the src/Makefile (probably +** adding -ldl to the linker options), so Lua does not select it +** automatically. (When you change the makefile to add -ldl, you must +** also add -DLUA_USE_DLOPEN.) +** If you do not want any kind of dynamic library, undefine all these +** options. +** By default, _WIN32 gets LUA_DL_DLL and MAC OS X gets LUA_DL_DYLD. +*/ +#if defined(LUA_USE_DLOPEN) +#define LUA_DL_DLOPEN +#endif + +#if defined(LUA_WIN) +#define LUA_DL_DLL +#endif + + +/* +@@ LUAI_EXTRASPACE allows you to add user-specific data in a lua_State +@* (the data goes just *before* the lua_State pointer). +** CHANGE (define) this if you really need that. This value must be +** a multiple of the maximum alignment required for your machine. +*/ +#define LUAI_EXTRASPACE 0 + + +/* +@@ luai_userstate* allow user-specific actions on threads. +** CHANGE them if you defined LUAI_EXTRASPACE and need to do something +** extra when a thread is created/deleted/resumed/yielded. +*/ +#define luai_userstateopen(L) ((void)L) +#define luai_userstateclose(L) ((void)L) +#define luai_userstatethread(L,L1) ((void)L) +#define luai_userstatefree(L) ((void)L) +#define luai_userstateresume(L,n) ((void)L) +#define luai_userstateyield(L,n) ((void)L) + + +/* +@@ LUA_INTFRMLEN is the length modifier for integer conversions +@* in 'string.format'. +@@ LUA_INTFRM_T is the integer type correspoding to the previous length +@* modifier. +** CHANGE them if your system supports long long or does not support long. +*/ + +#if defined(LUA_USELONGLONG) + +#define LUA_INTFRMLEN "ll" +#define LUA_INTFRM_T long long + +#else + +#define LUA_INTFRMLEN "l" +#define LUA_INTFRM_T long + +#endif + + + +/* =================================================================== */ + +/* +** Local configuration. You can use this space to add your redefinitions +** without modifying the main part of the file. +*/ + + + +#endif + diff --git a/lua-5.1.4/src/lualib.h b/lua-5.1.4/src/lualib.h new file mode 100644 index 0000000..469417f --- /dev/null +++ b/lua-5.1.4/src/lualib.h @@ -0,0 +1,53 @@ +/* +** $Id: lualib.h,v 1.36.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua standard libraries +** See Copyright Notice in lua.h +*/ + + +#ifndef lualib_h +#define lualib_h + +#include "lua.h" + + +/* Key to file-handle type */ +#define LUA_FILEHANDLE "FILE*" + + +#define LUA_COLIBNAME "coroutine" +LUALIB_API int (luaopen_base) (lua_State *L); + +#define LUA_TABLIBNAME "table" +LUALIB_API int (luaopen_table) (lua_State *L); + +#define LUA_IOLIBNAME "io" +LUALIB_API int (luaopen_io) (lua_State *L); + +#define LUA_OSLIBNAME "os" +LUALIB_API int (luaopen_os) (lua_State *L); + +#define LUA_STRLIBNAME "string" +LUALIB_API int (luaopen_string) (lua_State *L); + +#define LUA_MATHLIBNAME "math" +LUALIB_API int (luaopen_math) (lua_State *L); + +#define LUA_DBLIBNAME "debug" +LUALIB_API int (luaopen_debug) (lua_State *L); + +#define LUA_LOADLIBNAME "package" +LUALIB_API int (luaopen_package) (lua_State *L); + + +/* open all previous libraries */ +LUALIB_API void (luaL_openlibs) (lua_State *L); + + + +#ifndef lua_assert +#define lua_assert(x) ((void)0) +#endif + + +#endif diff --git a/lua-5.1.4/src/lundump.c b/lua-5.1.4/src/lundump.c new file mode 100644 index 0000000..8010a45 --- /dev/null +++ b/lua-5.1.4/src/lundump.c @@ -0,0 +1,227 @@ +/* +** $Id: lundump.c,v 2.7.1.4 2008/04/04 19:51:41 roberto Exp $ +** load precompiled Lua chunks +** See Copyright Notice in lua.h +*/ + +#include + +#define lundump_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lmem.h" +#include "lobject.h" +#include "lstring.h" +#include "lundump.h" +#include "lzio.h" + +typedef struct { + lua_State* L; + ZIO* Z; + Mbuffer* b; + const char* name; +} LoadState; + +#ifdef LUAC_TRUST_BINARIES +#define IF(c,s) +#define error(S,s) +#else +#define IF(c,s) if (c) error(S,s) + +static void error(LoadState* S, const char* why) +{ + luaO_pushfstring(S->L,"%s: %s in precompiled chunk",S->name,why); + luaD_throw(S->L,LUA_ERRSYNTAX); +} +#endif + +#define LoadMem(S,b,n,size) LoadBlock(S,b,(n)*(size)) +#define LoadByte(S) (lu_byte)LoadChar(S) +#define LoadVar(S,x) LoadMem(S,&x,1,sizeof(x)) +#define LoadVector(S,b,n,size) LoadMem(S,b,n,size) + +static void LoadBlock(LoadState* S, void* b, size_t size) +{ + size_t r=luaZ_read(S->Z,b,size); + IF (r!=0, "unexpected end"); +} + +static int LoadChar(LoadState* S) +{ + char x; + LoadVar(S,x); + return x; +} + +static int LoadInt(LoadState* S) +{ + int x; + LoadVar(S,x); + IF (x<0, "bad integer"); + return x; +} + +static lua_Number LoadNumber(LoadState* S) +{ + lua_Number x; + LoadVar(S,x); + return x; +} + +static TString* LoadString(LoadState* S) +{ + size_t size; + LoadVar(S,size); + if (size==0) + return NULL; + else + { + char* s=luaZ_openspace(S->L,S->b,size); + LoadBlock(S,s,size); + return luaS_newlstr(S->L,s,size-1); /* remove trailing '\0' */ + } +} + +static void LoadCode(LoadState* S, Proto* f) +{ + int n=LoadInt(S); + f->code=luaM_newvector(S->L,n,Instruction); + f->sizecode=n; + LoadVector(S,f->code,n,sizeof(Instruction)); +} + +static Proto* LoadFunction(LoadState* S, TString* p); + +static void LoadConstants(LoadState* S, Proto* f) +{ + int i,n; + n=LoadInt(S); + f->k=luaM_newvector(S->L,n,TValue); + f->sizek=n; + for (i=0; ik[i]); + for (i=0; ik[i]; + int t=LoadChar(S); + switch (t) + { + case LUA_TNIL: + setnilvalue(o); + break; + case LUA_TBOOLEAN: + setbvalue(o,LoadChar(S)!=0); + break; + case LUA_TNUMBER: + setnvalue(o,LoadNumber(S)); + break; + case LUA_TSTRING: + setsvalue2n(S->L,o,LoadString(S)); + break; + default: + error(S,"bad constant"); + break; + } + } + n=LoadInt(S); + f->p=luaM_newvector(S->L,n,Proto*); + f->sizep=n; + for (i=0; ip[i]=NULL; + for (i=0; ip[i]=LoadFunction(S,f->source); +} + +static void LoadDebug(LoadState* S, Proto* f) +{ + int i,n; + n=LoadInt(S); + f->lineinfo=luaM_newvector(S->L,n,int); + f->sizelineinfo=n; + LoadVector(S,f->lineinfo,n,sizeof(int)); + n=LoadInt(S); + f->locvars=luaM_newvector(S->L,n,LocVar); + f->sizelocvars=n; + for (i=0; ilocvars[i].varname=NULL; + for (i=0; ilocvars[i].varname=LoadString(S); + f->locvars[i].startpc=LoadInt(S); + f->locvars[i].endpc=LoadInt(S); + } + n=LoadInt(S); + f->upvalues=luaM_newvector(S->L,n,TString*); + f->sizeupvalues=n; + for (i=0; iupvalues[i]=NULL; + for (i=0; iupvalues[i]=LoadString(S); +} + +static Proto* LoadFunction(LoadState* S, TString* p) +{ + Proto* f; + if (++S->L->nCcalls > LUAI_MAXCCALLS) error(S,"code too deep"); + f=luaF_newproto(S->L); + setptvalue2s(S->L,S->L->top,f); incr_top(S->L); + f->source=LoadString(S); if (f->source==NULL) f->source=p; + f->linedefined=LoadInt(S); + f->lastlinedefined=LoadInt(S); + f->nups=LoadByte(S); + f->numparams=LoadByte(S); + f->is_vararg=LoadByte(S); + f->maxstacksize=LoadByte(S); + LoadCode(S,f); + LoadConstants(S,f); + LoadDebug(S,f); + IF (!luaG_checkcode(f), "bad code"); + S->L->top--; + S->L->nCcalls--; + return f; +} + +static void LoadHeader(LoadState* S) +{ + char h[LUAC_HEADERSIZE]; + char s[LUAC_HEADERSIZE]; + luaU_header(h); + LoadBlock(S,s,LUAC_HEADERSIZE); + IF (memcmp(h,s,LUAC_HEADERSIZE)!=0, "bad header"); +} + +/* +** load precompiled chunk +*/ +Proto* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name) +{ + LoadState S; + if (*name=='@' || *name=='=') + S.name=name+1; + else if (*name==LUA_SIGNATURE[0]) + S.name="binary string"; + else + S.name=name; + S.L=L; + S.Z=Z; + S.b=buff; + LoadHeader(&S); + return LoadFunction(&S,luaS_newliteral(L,"=?")); +} + +/* +* make header +*/ +void luaU_header (char* h) +{ + int x=1; + memcpy(h,LUA_SIGNATURE,sizeof(LUA_SIGNATURE)-1); + h+=sizeof(LUA_SIGNATURE)-1; + *h++=(char)LUAC_VERSION; + *h++=(char)LUAC_FORMAT; + *h++=(char)*(char*)&x; /* endianness */ + *h++=(char)sizeof(int); + *h++=(char)sizeof(size_t); + *h++=(char)sizeof(Instruction); + *h++=(char)sizeof(lua_Number); + *h++=(char)(((lua_Number)0.5)==0); /* is lua_Number integral? */ +} diff --git a/lua-5.1.4/src/lundump.h b/lua-5.1.4/src/lundump.h new file mode 100644 index 0000000..c80189d --- /dev/null +++ b/lua-5.1.4/src/lundump.h @@ -0,0 +1,36 @@ +/* +** $Id: lundump.h,v 1.37.1.1 2007/12/27 13:02:25 roberto Exp $ +** load precompiled Lua chunks +** See Copyright Notice in lua.h +*/ + +#ifndef lundump_h +#define lundump_h + +#include "lobject.h" +#include "lzio.h" + +/* load one chunk; from lundump.c */ +LUAI_FUNC Proto* luaU_undump (lua_State* L, ZIO* Z, Mbuffer* buff, const char* name); + +/* make header; from lundump.c */ +LUAI_FUNC void luaU_header (char* h); + +/* dump one chunk; from ldump.c */ +LUAI_FUNC int luaU_dump (lua_State* L, const Proto* f, lua_Writer w, void* data, int strip); + +#ifdef luac_c +/* print one chunk; from print.c */ +LUAI_FUNC void luaU_print (const Proto* f, int full); +#endif + +/* for header of binary files -- this is Lua 5.1 */ +#define LUAC_VERSION 0x51 + +/* for header of binary files -- this is the official format */ +#define LUAC_FORMAT 0 + +/* size of header of binary files */ +#define LUAC_HEADERSIZE 12 + +#endif diff --git a/lua-5.1.4/src/lvm.c b/lua-5.1.4/src/lvm.c new file mode 100644 index 0000000..ee3256a --- /dev/null +++ b/lua-5.1.4/src/lvm.c @@ -0,0 +1,763 @@ +/* +** $Id: lvm.c,v 2.63.1.3 2007/12/28 15:32:23 roberto Exp $ +** Lua virtual machine +** See Copyright Notice in lua.h +*/ + + +#include +#include +#include + +#define lvm_c +#define LUA_CORE + +#include "lua.h" + +#include "ldebug.h" +#include "ldo.h" +#include "lfunc.h" +#include "lgc.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lstate.h" +#include "lstring.h" +#include "ltable.h" +#include "ltm.h" +#include "lvm.h" + + + +/* limit for table tag-method chains (to avoid loops) */ +#define MAXTAGLOOP 100 + + +const TValue *luaV_tonumber (const TValue *obj, TValue *n) { + lua_Number num; + if (ttisnumber(obj)) return obj; + if (ttisstring(obj) && luaO_str2d(svalue(obj), &num)) { + setnvalue(n, num); + return n; + } + else + return NULL; +} + + +int luaV_tostring (lua_State *L, StkId obj) { + if (!ttisnumber(obj)) + return 0; + else { + char s[LUAI_MAXNUMBER2STR]; + lua_Number n = nvalue(obj); + lua_number2str(s, n); + setsvalue2s(L, obj, luaS_new(L, s)); + return 1; + } +} + + +static void traceexec (lua_State *L, const Instruction *pc) { + lu_byte mask = L->hookmask; + const Instruction *oldpc = L->savedpc; + L->savedpc = pc; + if ((mask & LUA_MASKCOUNT) && L->hookcount == 0) { + resethookcount(L); + luaD_callhook(L, LUA_HOOKCOUNT, -1); + } + if (mask & LUA_MASKLINE) { + Proto *p = ci_func(L->ci)->l.p; + int npc = pcRel(pc, p); + int newline = getline(p, npc); + /* call linehook when enter a new function, when jump back (loop), + or when enter a new line */ + if (npc == 0 || pc <= oldpc || newline != getline(p, pcRel(oldpc, p))) + luaD_callhook(L, LUA_HOOKLINE, newline); + } +} + + +static void callTMres (lua_State *L, StkId res, const TValue *f, + const TValue *p1, const TValue *p2) { + ptrdiff_t result = savestack(L, res); + setobj2s(L, L->top, f); /* push function */ + setobj2s(L, L->top+1, p1); /* 1st argument */ + setobj2s(L, L->top+2, p2); /* 2nd argument */ + luaD_checkstack(L, 3); + L->top += 3; + luaD_call(L, L->top - 3, 1); + res = restorestack(L, result); + L->top--; + setobjs2s(L, res, L->top); +} + + + +static void callTM (lua_State *L, const TValue *f, const TValue *p1, + const TValue *p2, const TValue *p3) { + setobj2s(L, L->top, f); /* push function */ + setobj2s(L, L->top+1, p1); /* 1st argument */ + setobj2s(L, L->top+2, p2); /* 2nd argument */ + setobj2s(L, L->top+3, p3); /* 3th argument */ + luaD_checkstack(L, 4); + L->top += 4; + luaD_call(L, L->top - 4, 0); +} + + +void luaV_gettable (lua_State *L, const TValue *t, TValue *key, StkId val) { + int loop; + for (loop = 0; loop < MAXTAGLOOP; loop++) { + const TValue *tm; + if (ttistable(t)) { /* `t' is a table? */ + Table *h = hvalue(t); + const TValue *res = luaH_get(h, key); /* do a primitive get */ + if (!ttisnil(res) || /* result is no nil? */ + (tm = fasttm(L, h->metatable, TM_INDEX)) == NULL) { /* or no TM? */ + setobj2s(L, val, res); + return; + } + /* else will try the tag method */ + } + else if (ttisnil(tm = luaT_gettmbyobj(L, t, TM_INDEX))) + luaG_typeerror(L, t, "index"); + if (ttisfunction(tm)) { + callTMres(L, val, tm, t, key); + return; + } + t = tm; /* else repeat with `tm' */ + } + luaG_runerror(L, "loop in gettable"); +} + + +void luaV_settable (lua_State *L, const TValue *t, TValue *key, StkId val) { + int loop; + for (loop = 0; loop < MAXTAGLOOP; loop++) { + const TValue *tm; + if (ttistable(t)) { /* `t' is a table? */ + Table *h = hvalue(t); + TValue *oldval = luaH_set(L, h, key); /* do a primitive set */ + if (!ttisnil(oldval) || /* result is no nil? */ + (tm = fasttm(L, h->metatable, TM_NEWINDEX)) == NULL) { /* or no TM? */ + setobj2t(L, oldval, val); + luaC_barriert(L, h, val); + return; + } + /* else will try the tag method */ + } + else if (ttisnil(tm = luaT_gettmbyobj(L, t, TM_NEWINDEX))) + luaG_typeerror(L, t, "index"); + if (ttisfunction(tm)) { + callTM(L, tm, t, key, val); + return; + } + t = tm; /* else repeat with `tm' */ + } + luaG_runerror(L, "loop in settable"); +} + + +static int call_binTM (lua_State *L, const TValue *p1, const TValue *p2, + StkId res, TMS event) { + const TValue *tm = luaT_gettmbyobj(L, p1, event); /* try first operand */ + if (ttisnil(tm)) + tm = luaT_gettmbyobj(L, p2, event); /* try second operand */ + if (ttisnil(tm)) return 0; + callTMres(L, res, tm, p1, p2); + return 1; +} + + +static const TValue *get_compTM (lua_State *L, Table *mt1, Table *mt2, + TMS event) { + const TValue *tm1 = fasttm(L, mt1, event); + const TValue *tm2; + if (tm1 == NULL) return NULL; /* no metamethod */ + if (mt1 == mt2) return tm1; /* same metatables => same metamethods */ + tm2 = fasttm(L, mt2, event); + if (tm2 == NULL) return NULL; /* no metamethod */ + if (luaO_rawequalObj(tm1, tm2)) /* same metamethods? */ + return tm1; + return NULL; +} + + +static int call_orderTM (lua_State *L, const TValue *p1, const TValue *p2, + TMS event) { + const TValue *tm1 = luaT_gettmbyobj(L, p1, event); + const TValue *tm2; + if (ttisnil(tm1)) return -1; /* no metamethod? */ + tm2 = luaT_gettmbyobj(L, p2, event); + if (!luaO_rawequalObj(tm1, tm2)) /* different metamethods? */ + return -1; + callTMres(L, L->top, tm1, p1, p2); + return !l_isfalse(L->top); +} + + +static int l_strcmp (const TString *ls, const TString *rs) { + const char *l = getstr(ls); + size_t ll = ls->tsv.len; + const char *r = getstr(rs); + size_t lr = rs->tsv.len; + for (;;) { + int temp = strcoll(l, r); + if (temp != 0) return temp; + else { /* strings are equal up to a `\0' */ + size_t len = strlen(l); /* index of first `\0' in both strings */ + if (len == lr) /* r is finished? */ + return (len == ll) ? 0 : 1; + else if (len == ll) /* l is finished? */ + return -1; /* l is smaller than r (because r is not finished) */ + /* both strings longer than `len'; go on comparing (after the `\0') */ + len++; + l += len; ll -= len; r += len; lr -= len; + } + } +} + + +int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r) { + int res; + if (ttype(l) != ttype(r)) + return luaG_ordererror(L, l, r); + else if (ttisnumber(l)) + return luai_numlt(nvalue(l), nvalue(r)); + else if (ttisstring(l)) + return l_strcmp(rawtsvalue(l), rawtsvalue(r)) < 0; + else if ((res = call_orderTM(L, l, r, TM_LT)) != -1) + return res; + return luaG_ordererror(L, l, r); +} + + +static int lessequal (lua_State *L, const TValue *l, const TValue *r) { + int res; + if (ttype(l) != ttype(r)) + return luaG_ordererror(L, l, r); + else if (ttisnumber(l)) + return luai_numle(nvalue(l), nvalue(r)); + else if (ttisstring(l)) + return l_strcmp(rawtsvalue(l), rawtsvalue(r)) <= 0; + else if ((res = call_orderTM(L, l, r, TM_LE)) != -1) /* first try `le' */ + return res; + else if ((res = call_orderTM(L, r, l, TM_LT)) != -1) /* else try `lt' */ + return !res; + return luaG_ordererror(L, l, r); +} + + +int luaV_equalval (lua_State *L, const TValue *t1, const TValue *t2) { + const TValue *tm; + lua_assert(ttype(t1) == ttype(t2)); + switch (ttype(t1)) { + case LUA_TNIL: return 1; + case LUA_TNUMBER: return luai_numeq(nvalue(t1), nvalue(t2)); + case LUA_TBOOLEAN: return bvalue(t1) == bvalue(t2); /* true must be 1 !! */ + case LUA_TLIGHTUSERDATA: return pvalue(t1) == pvalue(t2); + case LUA_TUSERDATA: { + if (uvalue(t1) == uvalue(t2)) return 1; + tm = get_compTM(L, uvalue(t1)->metatable, uvalue(t2)->metatable, + TM_EQ); + break; /* will try TM */ + } + case LUA_TTABLE: { + if (hvalue(t1) == hvalue(t2)) return 1; + tm = get_compTM(L, hvalue(t1)->metatable, hvalue(t2)->metatable, TM_EQ); + break; /* will try TM */ + } + default: return gcvalue(t1) == gcvalue(t2); + } + if (tm == NULL) return 0; /* no TM? */ + callTMres(L, L->top, tm, t1, t2); /* call TM */ + return !l_isfalse(L->top); +} + + +void luaV_concat (lua_State *L, int total, int last) { + do { + StkId top = L->base + last + 1; + int n = 2; /* number of elements handled in this pass (at least 2) */ + if (!(ttisstring(top-2) || ttisnumber(top-2)) || !tostring(L, top-1)) { + if (!call_binTM(L, top-2, top-1, top-2, TM_CONCAT)) + luaG_concaterror(L, top-2, top-1); + } else if (tsvalue(top-1)->len == 0) /* second op is empty? */ + (void)tostring(L, top - 2); /* result is first op (as string) */ + else { + /* at least two string values; get as many as possible */ + size_t tl = tsvalue(top-1)->len; + char *buffer; + int i; + /* collect total length */ + for (n = 1; n < total && tostring(L, top-n-1); n++) { + size_t l = tsvalue(top-n-1)->len; + if (l >= MAX_SIZET - tl) luaG_runerror(L, "string length overflow"); + tl += l; + } + buffer = luaZ_openspace(L, &G(L)->buff, tl); + tl = 0; + for (i=n; i>0; i--) { /* concat all strings */ + size_t l = tsvalue(top-i)->len; + memcpy(buffer+tl, svalue(top-i), l); + tl += l; + } + setsvalue2s(L, top-n, luaS_newlstr(L, buffer, tl)); + } + total -= n-1; /* got `n' strings to create 1 new */ + last -= n-1; + } while (total > 1); /* repeat until only 1 result left */ +} + + +static void Arith (lua_State *L, StkId ra, const TValue *rb, + const TValue *rc, TMS op) { + TValue tempb, tempc; + const TValue *b, *c; + if ((b = luaV_tonumber(rb, &tempb)) != NULL && + (c = luaV_tonumber(rc, &tempc)) != NULL) { + lua_Number nb = nvalue(b), nc = nvalue(c); + switch (op) { + case TM_ADD: setnvalue(ra, luai_numadd(nb, nc)); break; + case TM_SUB: setnvalue(ra, luai_numsub(nb, nc)); break; + case TM_MUL: setnvalue(ra, luai_nummul(nb, nc)); break; + case TM_DIV: setnvalue(ra, luai_numdiv(nb, nc)); break; + case TM_MOD: setnvalue(ra, luai_nummod(nb, nc)); break; + case TM_POW: setnvalue(ra, luai_numpow(nb, nc)); break; + case TM_UNM: setnvalue(ra, luai_numunm(nb)); break; + default: lua_assert(0); break; + } + } + else if (!call_binTM(L, rb, rc, ra, op)) + luaG_aritherror(L, rb, rc); +} + + + +/* +** some macros for common tasks in `luaV_execute' +*/ + +#define runtime_check(L, c) { if (!(c)) break; } + +#define RA(i) (base+GETARG_A(i)) +/* to be used after possible stack reallocation */ +#define RB(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgR, base+GETARG_B(i)) +#define RC(i) check_exp(getCMode(GET_OPCODE(i)) == OpArgR, base+GETARG_C(i)) +#define RKB(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgK, \ + ISK(GETARG_B(i)) ? k+INDEXK(GETARG_B(i)) : base+GETARG_B(i)) +#define RKC(i) check_exp(getCMode(GET_OPCODE(i)) == OpArgK, \ + ISK(GETARG_C(i)) ? k+INDEXK(GETARG_C(i)) : base+GETARG_C(i)) +#define KBx(i) check_exp(getBMode(GET_OPCODE(i)) == OpArgK, k+GETARG_Bx(i)) + + +#define dojump(L,pc,i) {(pc) += (i); luai_threadyield(L);} + + +#define Protect(x) { L->savedpc = pc; {x;}; base = L->base; } + + +#define arith_op(op,tm) { \ + TValue *rb = RKB(i); \ + TValue *rc = RKC(i); \ + if (ttisnumber(rb) && ttisnumber(rc)) { \ + lua_Number nb = nvalue(rb), nc = nvalue(rc); \ + setnvalue(ra, op(nb, nc)); \ + } \ + else \ + Protect(Arith(L, ra, rb, rc, tm)); \ + } + + + +void luaV_execute (lua_State *L, int nexeccalls) { + LClosure *cl; + StkId base; + TValue *k; + const Instruction *pc; + reentry: /* entry point */ + lua_assert(isLua(L->ci)); + pc = L->savedpc; + cl = &clvalue(L->ci->func)->l; + base = L->base; + k = cl->p->k; + /* main loop of interpreter */ + for (;;) { + const Instruction i = *pc++; + StkId ra; + if ((L->hookmask & (LUA_MASKLINE | LUA_MASKCOUNT)) && + (--L->hookcount == 0 || L->hookmask & LUA_MASKLINE)) { + traceexec(L, pc); + if (L->status == LUA_YIELD) { /* did hook yield? */ + L->savedpc = pc - 1; + return; + } + base = L->base; + } + /* warning!! several calls may realloc the stack and invalidate `ra' */ + ra = RA(i); + lua_assert(base == L->base && L->base == L->ci->base); + lua_assert(base <= L->top && L->top <= L->stack + L->stacksize); + lua_assert(L->top == L->ci->top || luaG_checkopenop(i)); + switch (GET_OPCODE(i)) { + case OP_MOVE: { + setobjs2s(L, ra, RB(i)); + continue; + } + case OP_LOADK: { + setobj2s(L, ra, KBx(i)); + continue; + } + case OP_LOADBOOL: { + setbvalue(ra, GETARG_B(i)); + if (GETARG_C(i)) pc++; /* skip next instruction (if C) */ + continue; + } + case OP_LOADNIL: { + TValue *rb = RB(i); + do { + setnilvalue(rb--); + } while (rb >= ra); + continue; + } + case OP_GETUPVAL: { + int b = GETARG_B(i); + setobj2s(L, ra, cl->upvals[b]->v); + continue; + } + case OP_GETGLOBAL: { + TValue g; + TValue *rb = KBx(i); + sethvalue(L, &g, cl->env); + lua_assert(ttisstring(rb)); + Protect(luaV_gettable(L, &g, rb, ra)); + continue; + } + case OP_GETTABLE: { + Protect(luaV_gettable(L, RB(i), RKC(i), ra)); + continue; + } + case OP_SETGLOBAL: { + TValue g; + sethvalue(L, &g, cl->env); + lua_assert(ttisstring(KBx(i))); + Protect(luaV_settable(L, &g, KBx(i), ra)); + continue; + } + case OP_SETUPVAL: { + UpVal *uv = cl->upvals[GETARG_B(i)]; + setobj(L, uv->v, ra); + luaC_barrier(L, uv, ra); + continue; + } + case OP_SETTABLE: { + Protect(luaV_settable(L, ra, RKB(i), RKC(i))); + continue; + } + case OP_NEWTABLE: { + int b = GETARG_B(i); + int c = GETARG_C(i); + sethvalue(L, ra, luaH_new(L, luaO_fb2int(b), luaO_fb2int(c))); + Protect(luaC_checkGC(L)); + continue; + } + case OP_SELF: { + StkId rb = RB(i); + setobjs2s(L, ra+1, rb); + Protect(luaV_gettable(L, rb, RKC(i), ra)); + continue; + } + case OP_ADD: { + arith_op(luai_numadd, TM_ADD); + continue; + } + case OP_SUB: { + arith_op(luai_numsub, TM_SUB); + continue; + } + case OP_MUL: { + arith_op(luai_nummul, TM_MUL); + continue; + } + case OP_DIV: { + arith_op(luai_numdiv, TM_DIV); + continue; + } + case OP_MOD: { + arith_op(luai_nummod, TM_MOD); + continue; + } + case OP_POW: { + arith_op(luai_numpow, TM_POW); + continue; + } + case OP_UNM: { + TValue *rb = RB(i); + if (ttisnumber(rb)) { + lua_Number nb = nvalue(rb); + setnvalue(ra, luai_numunm(nb)); + } + else { + Protect(Arith(L, ra, rb, rb, TM_UNM)); + } + continue; + } + case OP_NOT: { + int res = l_isfalse(RB(i)); /* next assignment may change this value */ + setbvalue(ra, res); + continue; + } + case OP_LEN: { + const TValue *rb = RB(i); + switch (ttype(rb)) { + case LUA_TTABLE: { + setnvalue(ra, cast_num(luaH_getn(hvalue(rb)))); + break; + } + case LUA_TSTRING: { + setnvalue(ra, cast_num(tsvalue(rb)->len)); + break; + } + default: { /* try metamethod */ + Protect( + if (!call_binTM(L, rb, luaO_nilobject, ra, TM_LEN)) + luaG_typeerror(L, rb, "get length of"); + ) + } + } + continue; + } + case OP_CONCAT: { + int b = GETARG_B(i); + int c = GETARG_C(i); + Protect(luaV_concat(L, c-b+1, c); luaC_checkGC(L)); + setobjs2s(L, RA(i), base+b); + continue; + } + case OP_JMP: { + dojump(L, pc, GETARG_sBx(i)); + continue; + } + case OP_EQ: { + TValue *rb = RKB(i); + TValue *rc = RKC(i); + Protect( + if (equalobj(L, rb, rc) == GETARG_A(i)) + dojump(L, pc, GETARG_sBx(*pc)); + ) + pc++; + continue; + } + case OP_LT: { + Protect( + if (luaV_lessthan(L, RKB(i), RKC(i)) == GETARG_A(i)) + dojump(L, pc, GETARG_sBx(*pc)); + ) + pc++; + continue; + } + case OP_LE: { + Protect( + if (lessequal(L, RKB(i), RKC(i)) == GETARG_A(i)) + dojump(L, pc, GETARG_sBx(*pc)); + ) + pc++; + continue; + } + case OP_TEST: { + if (l_isfalse(ra) != GETARG_C(i)) + dojump(L, pc, GETARG_sBx(*pc)); + pc++; + continue; + } + case OP_TESTSET: { + TValue *rb = RB(i); + if (l_isfalse(rb) != GETARG_C(i)) { + setobjs2s(L, ra, rb); + dojump(L, pc, GETARG_sBx(*pc)); + } + pc++; + continue; + } + case OP_CALL: { + int b = GETARG_B(i); + int nresults = GETARG_C(i) - 1; + if (b != 0) L->top = ra+b; /* else previous instruction set top */ + L->savedpc = pc; + switch (luaD_precall(L, ra, nresults)) { + case PCRLUA: { + nexeccalls++; + goto reentry; /* restart luaV_execute over new Lua function */ + } + case PCRC: { + /* it was a C function (`precall' called it); adjust results */ + if (nresults >= 0) L->top = L->ci->top; + base = L->base; + continue; + } + default: { + return; /* yield */ + } + } + } + case OP_TAILCALL: { + int b = GETARG_B(i); + if (b != 0) L->top = ra+b; /* else previous instruction set top */ + L->savedpc = pc; + lua_assert(GETARG_C(i) - 1 == LUA_MULTRET); + switch (luaD_precall(L, ra, LUA_MULTRET)) { + case PCRLUA: { + /* tail call: put new frame in place of previous one */ + CallInfo *ci = L->ci - 1; /* previous frame */ + int aux; + StkId func = ci->func; + StkId pfunc = (ci+1)->func; /* previous function index */ + if (L->openupval) luaF_close(L, ci->base); + L->base = ci->base = ci->func + ((ci+1)->base - pfunc); + for (aux = 0; pfunc+aux < L->top; aux++) /* move frame down */ + setobjs2s(L, func+aux, pfunc+aux); + ci->top = L->top = func+aux; /* correct top */ + lua_assert(L->top == L->base + clvalue(func)->l.p->maxstacksize); + ci->savedpc = L->savedpc; + ci->tailcalls++; /* one more call lost */ + L->ci--; /* remove new frame */ + goto reentry; + } + case PCRC: { /* it was a C function (`precall' called it) */ + base = L->base; + continue; + } + default: { + return; /* yield */ + } + } + } + case OP_RETURN: { + int b = GETARG_B(i); + if (b != 0) L->top = ra+b-1; + if (L->openupval) luaF_close(L, base); + L->savedpc = pc; + b = luaD_poscall(L, ra); + if (--nexeccalls == 0) /* was previous function running `here'? */ + return; /* no: return */ + else { /* yes: continue its execution */ + if (b) L->top = L->ci->top; + lua_assert(isLua(L->ci)); + lua_assert(GET_OPCODE(*((L->ci)->savedpc - 1)) == OP_CALL); + goto reentry; + } + } + case OP_FORLOOP: { + lua_Number step = nvalue(ra+2); + lua_Number idx = luai_numadd(nvalue(ra), step); /* increment index */ + lua_Number limit = nvalue(ra+1); + if (luai_numlt(0, step) ? luai_numle(idx, limit) + : luai_numle(limit, idx)) { + dojump(L, pc, GETARG_sBx(i)); /* jump back */ + setnvalue(ra, idx); /* update internal index... */ + setnvalue(ra+3, idx); /* ...and external index */ + } + continue; + } + case OP_FORPREP: { + const TValue *init = ra; + const TValue *plimit = ra+1; + const TValue *pstep = ra+2; + L->savedpc = pc; /* next steps may throw errors */ + if (!tonumber(init, ra)) + luaG_runerror(L, LUA_QL("for") " initial value must be a number"); + else if (!tonumber(plimit, ra+1)) + luaG_runerror(L, LUA_QL("for") " limit must be a number"); + else if (!tonumber(pstep, ra+2)) + luaG_runerror(L, LUA_QL("for") " step must be a number"); + setnvalue(ra, luai_numsub(nvalue(ra), nvalue(pstep))); + dojump(L, pc, GETARG_sBx(i)); + continue; + } + case OP_TFORLOOP: { + StkId cb = ra + 3; /* call base */ + setobjs2s(L, cb+2, ra+2); + setobjs2s(L, cb+1, ra+1); + setobjs2s(L, cb, ra); + L->top = cb+3; /* func. + 2 args (state and index) */ + Protect(luaD_call(L, cb, GETARG_C(i))); + L->top = L->ci->top; + cb = RA(i) + 3; /* previous call may change the stack */ + if (!ttisnil(cb)) { /* continue loop? */ + setobjs2s(L, cb-1, cb); /* save control variable */ + dojump(L, pc, GETARG_sBx(*pc)); /* jump back */ + } + pc++; + continue; + } + case OP_SETLIST: { + int n = GETARG_B(i); + int c = GETARG_C(i); + int last; + Table *h; + if (n == 0) { + n = cast_int(L->top - ra) - 1; + L->top = L->ci->top; + } + if (c == 0) c = cast_int(*pc++); + runtime_check(L, ttistable(ra)); + h = hvalue(ra); + last = ((c-1)*LFIELDS_PER_FLUSH) + n; + if (last > h->sizearray) /* needs more space? */ + luaH_resizearray(L, h, last); /* pre-alloc it at once */ + for (; n > 0; n--) { + TValue *val = ra+n; + setobj2t(L, luaH_setnum(L, h, last--), val); + luaC_barriert(L, h, val); + } + continue; + } + case OP_CLOSE: { + luaF_close(L, ra); + continue; + } + case OP_CLOSURE: { + Proto *p; + Closure *ncl; + int nup, j; + p = cl->p->p[GETARG_Bx(i)]; + nup = p->nups; + ncl = luaF_newLclosure(L, nup, cl->env); + ncl->l.p = p; + for (j=0; jl.upvals[j] = cl->upvals[GETARG_B(*pc)]; + else { + lua_assert(GET_OPCODE(*pc) == OP_MOVE); + ncl->l.upvals[j] = luaF_findupval(L, base + GETARG_B(*pc)); + } + } + setclvalue(L, ra, ncl); + Protect(luaC_checkGC(L)); + continue; + } + case OP_VARARG: { + int b = GETARG_B(i) - 1; + int j; + CallInfo *ci = L->ci; + int n = cast_int(ci->base - ci->func) - cl->p->numparams - 1; + if (b == LUA_MULTRET) { + Protect(luaD_checkstack(L, n)); + ra = RA(i); /* previous call may change the stack */ + b = n; + L->top = ra + n; + } + for (j = 0; j < b; j++) { + if (j < n) { + setobjs2s(L, ra + j, ci->base - n + j); + } + else { + setnilvalue(ra + j); + } + } + continue; + } + } + } +} + diff --git a/lua-5.1.4/src/lvm.h b/lua-5.1.4/src/lvm.h new file mode 100644 index 0000000..bfe4f56 --- /dev/null +++ b/lua-5.1.4/src/lvm.h @@ -0,0 +1,36 @@ +/* +** $Id: lvm.h,v 2.5.1.1 2007/12/27 13:02:25 roberto Exp $ +** Lua virtual machine +** See Copyright Notice in lua.h +*/ + +#ifndef lvm_h +#define lvm_h + + +#include "ldo.h" +#include "lobject.h" +#include "ltm.h" + + +#define tostring(L,o) ((ttype(o) == LUA_TSTRING) || (luaV_tostring(L, o))) + +#define tonumber(o,n) (ttype(o) == LUA_TNUMBER || \ + (((o) = luaV_tonumber(o,n)) != NULL)) + +#define equalobj(L,o1,o2) \ + (ttype(o1) == ttype(o2) && luaV_equalval(L, o1, o2)) + + +LUAI_FUNC int luaV_lessthan (lua_State *L, const TValue *l, const TValue *r); +LUAI_FUNC int luaV_equalval (lua_State *L, const TValue *t1, const TValue *t2); +LUAI_FUNC const TValue *luaV_tonumber (const TValue *obj, TValue *n); +LUAI_FUNC int luaV_tostring (lua_State *L, StkId obj); +LUAI_FUNC void luaV_gettable (lua_State *L, const TValue *t, TValue *key, + StkId val); +LUAI_FUNC void luaV_settable (lua_State *L, const TValue *t, TValue *key, + StkId val); +LUAI_FUNC void luaV_execute (lua_State *L, int nexeccalls); +LUAI_FUNC void luaV_concat (lua_State *L, int total, int last); + +#endif diff --git a/lua-5.1.4/src/lzio.c b/lua-5.1.4/src/lzio.c new file mode 100644 index 0000000..293edd5 --- /dev/null +++ b/lua-5.1.4/src/lzio.c @@ -0,0 +1,82 @@ +/* +** $Id: lzio.c,v 1.31.1.1 2007/12/27 13:02:25 roberto Exp $ +** a generic input stream interface +** See Copyright Notice in lua.h +*/ + + +#include + +#define lzio_c +#define LUA_CORE + +#include "lua.h" + +#include "llimits.h" +#include "lmem.h" +#include "lstate.h" +#include "lzio.h" + + +int luaZ_fill (ZIO *z) { + size_t size; + lua_State *L = z->L; + const char *buff; + lua_unlock(L); + buff = z->reader(L, z->data, &size); + lua_lock(L); + if (buff == NULL || size == 0) return EOZ; + z->n = size - 1; + z->p = buff; + return char2int(*(z->p++)); +} + + +int luaZ_lookahead (ZIO *z) { + if (z->n == 0) { + if (luaZ_fill(z) == EOZ) + return EOZ; + else { + z->n++; /* luaZ_fill removed first byte; put back it */ + z->p--; + } + } + return char2int(*z->p); +} + + +void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, void *data) { + z->L = L; + z->reader = reader; + z->data = data; + z->n = 0; + z->p = NULL; +} + + +/* --------------------------------------------------------------- read --- */ +size_t luaZ_read (ZIO *z, void *b, size_t n) { + while (n) { + size_t m; + if (luaZ_lookahead(z) == EOZ) + return n; /* return number of missing bytes */ + m = (n <= z->n) ? n : z->n; /* min. between n and z->n */ + memcpy(b, z->p, m); + z->n -= m; + z->p += m; + b = (char *)b + m; + n -= m; + } + return 0; +} + +/* ------------------------------------------------------------------------ */ +char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n) { + if (n > buff->buffsize) { + if (n < LUA_MINBUFFER) n = LUA_MINBUFFER; + luaZ_resizebuffer(L, buff, n); + } + return buff->buffer; +} + + diff --git a/lua-5.1.4/src/lzio.h b/lua-5.1.4/src/lzio.h new file mode 100644 index 0000000..51d695d --- /dev/null +++ b/lua-5.1.4/src/lzio.h @@ -0,0 +1,67 @@ +/* +** $Id: lzio.h,v 1.21.1.1 2007/12/27 13:02:25 roberto Exp $ +** Buffered streams +** See Copyright Notice in lua.h +*/ + + +#ifndef lzio_h +#define lzio_h + +#include "lua.h" + +#include "lmem.h" + + +#define EOZ (-1) /* end of stream */ + +typedef struct Zio ZIO; + +#define char2int(c) cast(int, cast(unsigned char, (c))) + +#define zgetc(z) (((z)->n--)>0 ? char2int(*(z)->p++) : luaZ_fill(z)) + +typedef struct Mbuffer { + char *buffer; + size_t n; + size_t buffsize; +} Mbuffer; + +#define luaZ_initbuffer(L, buff) ((buff)->buffer = NULL, (buff)->buffsize = 0) + +#define luaZ_buffer(buff) ((buff)->buffer) +#define luaZ_sizebuffer(buff) ((buff)->buffsize) +#define luaZ_bufflen(buff) ((buff)->n) + +#define luaZ_resetbuffer(buff) ((buff)->n = 0) + + +#define luaZ_resizebuffer(L, buff, size) \ + (luaM_reallocvector(L, (buff)->buffer, (buff)->buffsize, size, char), \ + (buff)->buffsize = size) + +#define luaZ_freebuffer(L, buff) luaZ_resizebuffer(L, buff, 0) + + +LUAI_FUNC char *luaZ_openspace (lua_State *L, Mbuffer *buff, size_t n); +LUAI_FUNC void luaZ_init (lua_State *L, ZIO *z, lua_Reader reader, + void *data); +LUAI_FUNC size_t luaZ_read (ZIO* z, void* b, size_t n); /* read next n bytes */ +LUAI_FUNC int luaZ_lookahead (ZIO *z); + + + +/* --------- Private Part ------------------ */ + +struct Zio { + size_t n; /* bytes still unread */ + const char *p; /* current position in buffer */ + lua_Reader reader; + void* data; /* additional data */ + lua_State *L; /* Lua state (for reader) */ +}; + + +LUAI_FUNC int luaZ_fill (ZIO *z); + +#endif diff --git a/lua-5.1.4/src/print.c b/lua-5.1.4/src/print.c new file mode 100644 index 0000000..e240cfc --- /dev/null +++ b/lua-5.1.4/src/print.c @@ -0,0 +1,227 @@ +/* +** $Id: print.c,v 1.55a 2006/05/31 13:30:05 lhf Exp $ +** print bytecodes +** See Copyright Notice in lua.h +*/ + +#include +#include + +#define luac_c +#define LUA_CORE + +#include "ldebug.h" +#include "lobject.h" +#include "lopcodes.h" +#include "lundump.h" + +#define PrintFunction luaU_print + +#define Sizeof(x) ((int)sizeof(x)) +#define VOID(p) ((const void*)(p)) + +static void PrintString(const TString* ts) +{ + const char* s=getstr(ts); + size_t i,n=ts->tsv.len; + putchar('"'); + for (i=0; ik[i]; + switch (ttype(o)) + { + case LUA_TNIL: + printf("nil"); + break; + case LUA_TBOOLEAN: + printf(bvalue(o) ? "true" : "false"); + break; + case LUA_TNUMBER: + printf(LUA_NUMBER_FMT,nvalue(o)); + break; + case LUA_TSTRING: + PrintString(rawtsvalue(o)); + break; + default: /* cannot happen */ + printf("? type=%d",ttype(o)); + break; + } +} + +static void PrintCode(const Proto* f) +{ + const Instruction* code=f->code; + int pc,n=f->sizecode; + for (pc=0; pc0) printf("[%d]\t",line); else printf("[-]\t"); + printf("%-9s\t",luaP_opnames[o]); + switch (getOpMode(o)) + { + case iABC: + printf("%d",a); + if (getBMode(o)!=OpArgN) printf(" %d",ISK(b) ? (-1-INDEXK(b)) : b); + if (getCMode(o)!=OpArgN) printf(" %d",ISK(c) ? (-1-INDEXK(c)) : c); + break; + case iABx: + if (getBMode(o)==OpArgK) printf("%d %d",a,-1-bx); else printf("%d %d",a,bx); + break; + case iAsBx: + if (o==OP_JMP) printf("%d",sbx); else printf("%d %d",a,sbx); + break; + } + switch (o) + { + case OP_LOADK: + printf("\t; "); PrintConstant(f,bx); + break; + case OP_GETUPVAL: + case OP_SETUPVAL: + printf("\t; %s", (f->sizeupvalues>0) ? getstr(f->upvalues[b]) : "-"); + break; + case OP_GETGLOBAL: + case OP_SETGLOBAL: + printf("\t; %s",svalue(&f->k[bx])); + break; + case OP_GETTABLE: + case OP_SELF: + if (ISK(c)) { printf("\t; "); PrintConstant(f,INDEXK(c)); } + break; + case OP_SETTABLE: + case OP_ADD: + case OP_SUB: + case OP_MUL: + case OP_DIV: + case OP_POW: + case OP_EQ: + case OP_LT: + case OP_LE: + if (ISK(b) || ISK(c)) + { + printf("\t; "); + if (ISK(b)) PrintConstant(f,INDEXK(b)); else printf("-"); + printf(" "); + if (ISK(c)) PrintConstant(f,INDEXK(c)); else printf("-"); + } + break; + case OP_JMP: + case OP_FORLOOP: + case OP_FORPREP: + printf("\t; to %d",sbx+pc+2); + break; + case OP_CLOSURE: + printf("\t; %p",VOID(f->p[bx])); + break; + case OP_SETLIST: + if (c==0) printf("\t; %d",(int)code[++pc]); + else printf("\t; %d",c); + break; + default: + break; + } + printf("\n"); + } +} + +#define SS(x) (x==1)?"":"s" +#define S(x) x,SS(x) + +static void PrintHeader(const Proto* f) +{ + const char* s=getstr(f->source); + if (*s=='@' || *s=='=') + s++; + else if (*s==LUA_SIGNATURE[0]) + s="(bstring)"; + else + s="(string)"; + printf("\n%s <%s:%d,%d> (%d instruction%s, %d bytes at %p)\n", + (f->linedefined==0)?"main":"function",s, + f->linedefined,f->lastlinedefined, + S(f->sizecode),f->sizecode*Sizeof(Instruction),VOID(f)); + printf("%d%s param%s, %d slot%s, %d upvalue%s, ", + f->numparams,f->is_vararg?"+":"",SS(f->numparams), + S(f->maxstacksize),S(f->nups)); + printf("%d local%s, %d constant%s, %d function%s\n", + S(f->sizelocvars),S(f->sizek),S(f->sizep)); +} + +static void PrintConstants(const Proto* f) +{ + int i,n=f->sizek; + printf("constants (%d) for %p:\n",n,VOID(f)); + for (i=0; isizelocvars; + printf("locals (%d) for %p:\n",n,VOID(f)); + for (i=0; ilocvars[i].varname),f->locvars[i].startpc+1,f->locvars[i].endpc+1); + } +} + +static void PrintUpvalues(const Proto* f) +{ + int i,n=f->sizeupvalues; + printf("upvalues (%d) for %p:\n",n,VOID(f)); + if (f->upvalues==NULL) return; + for (i=0; iupvalues[i])); + } +} + +void PrintFunction(const Proto* f, int full) +{ + int i,n=f->sizep; + PrintHeader(f); + PrintCode(f); + if (full) + { + PrintConstants(f); + PrintLocals(f); + PrintUpvalues(f); + } + for (i=0; ip[i],full); +} diff --git a/main.m b/main.m new file mode 100644 index 0000000..3ffc44b --- /dev/null +++ b/main.m @@ -0,0 +1,109 @@ +// +// main.m +// Pocket Gnome +// +// Created by Jon Drummond on 12/15/07. +// Copyright Savory Software, LLC 2007. All rights reserved. +// + +#import +#import +#import +#import + +#import "Globals.h" + +bool amIWorthy(void); +void authMe(char * FullPathToMe); + +int main(int argc, char *argv[]) +{ + if(MEMORY_GOD_MODE) { + int uid = getuid(); + if (amIWorthy() || uid == 0) { + printf("It's go time.\n"); // signal back to close caller + fflush(stdout); + // WHOA! PG works with Xcode's console in 10.5.6! +#ifndef PGLOGGING + fclose(stderr); // to shut up the noisy NSLog +#endif + } else { + authMe(argv[0]); + return 0; + } + } + + return NSApplicationMain(argc, (const char **) argv); +} + +bool amIWorthy(void) +{ + // running as root? + AuthorizationRef myAuthRef; + OSStatus stat = AuthorizationCopyPrivilegedReference(&myAuthRef, kAuthorizationFlagDefaults); + BOOL success = (stat == errAuthorizationSuccess); + + return success; +} + +void authMe(char * FullPathToMe) +{ + // get authorization as root + OSStatus myStatus; + + // set up Authorization Item + AuthorizationItem myItems[1]; + myItems[0].name = kAuthorizationRightExecute; + myItems[0].valueLength = 0; + myItems[0].value = NULL; + myItems[0].flags = 0; + + // Set up Authorization Rights + AuthorizationRights myRights; + myRights.count = sizeof (myItems) / sizeof (myItems[0]); + myRights.items = myItems; + + // set up Authorization Flags + AuthorizationFlags myFlags; + myFlags = + kAuthorizationFlagDefaults | + kAuthorizationFlagInteractionAllowed | + kAuthorizationFlagExtendRights; + + // Create an Authorization Ref using Objects above. NOTE: Login bod comes up with this call. + AuthorizationRef myAuthorizationRef; + myStatus = AuthorizationCreate (&myRights, kAuthorizationEmptyEnvironment, myFlags, &myAuthorizationRef); + + if (myStatus == errAuthorizationSuccess) + { + // prepare communication path - used to signal that process is loaded + FILE *myCommunicationsPipe = NULL; + char myReadBuffer[256]; + + // run this app in GOD mode by passing authorization ref and comm pipe (asynchoronous call to external application) + myStatus = AuthorizationExecuteWithPrivileges(myAuthorizationRef, FullPathToMe, kAuthorizationFlagDefaults, nil, &myCommunicationsPipe); + + // external app is running asynchronously - it will send to stdout when loaded + if (myStatus == errAuthorizationSuccess) + { + +#ifdef PGLOGGING + for(;;) { + int bytesRead = read(fileno(myCommunicationsPipe), myReadBuffer, sizeof(myReadBuffer)); + if (bytesRead < 1) { // < 1 + break; + } + write(fileno(stdout), myReadBuffer, bytesRead); + fflush(stdout); + } +#else + read(fileno(myCommunicationsPipe), myReadBuffer, sizeof(myReadBuffer)); +#endif + fclose(myCommunicationsPipe); + } + + // release authorization reference + myStatus = AuthorizationFree (myAuthorizationRef, kAuthorizationFlagDestroyRights); + } +} + diff --git a/mbobbleicon.gif b/mbobbleicon.gif new file mode 100644 index 0000000..e7b291b Binary files /dev/null and b/mbobbleicon.gif differ diff --git a/mbobbleicon.png b/mbobbleicon.png new file mode 100644 index 0000000..c8ddca6 Binary files /dev/null and b/mbobbleicon.png differ diff --git a/mixed.png b/mixed.png new file mode 100644 index 0000000..5b22a70 Binary files /dev/null and b/mixed.png differ diff --git a/off.png b/off.png new file mode 100644 index 0000000..0e2727a Binary files /dev/null and b/off.png differ diff --git a/on.png b/on.png new file mode 100644 index 0000000..6b0fc43 Binary files /dev/null and b/on.png differ diff --git a/pgBehavior.icns b/pgBehavior.icns new file mode 100644 index 0000000..0bc9576 Binary files /dev/null and b/pgBehavior.icns differ diff --git a/pgRoute.icns b/pgRoute.icns new file mode 100644 index 0000000..e4ef086 Binary files /dev/null and b/pgRoute.icns differ diff --git a/pgRouteIcon.icns b/pgRouteIcon.icns new file mode 100644 index 0000000..cf69baf Binary files /dev/null and b/pgRouteIcon.icns differ diff --git a/splash.mp3 b/splash.mp3 new file mode 100644 index 0000000..712a237 Binary files /dev/null and b/splash.mp3 differ diff --git a/tempfile.tmp b/tempfile.tmp new file mode 100644 index 0000000..b8d3060 --- /dev/null +++ b/tempfile.tmp @@ -0,0 +1,16653 @@ + + + + 1050 + 10C540 + 732 + 1038.25 + 458.00 + + com.apple.InterfaceBuilder.CocoaPlugin + 732 + + + YES + + + + YES + com.apple.InterfaceBuilder.CocoaPlugin + + + YES + + YES + + + YES + + + + YES + + NoAccessApplication + + + FirstResponder + + + NSApplication + + + AMainMenu + + YES + + + Pocket Gnome + + 1048576 + 2147483647 + + NSImage + NSMenuCheckmark + + + NSImage + NSMenuMixedState + + submenuAction: + + Pocket Gnome + + YES + + + About Pocket Gnome + + 2147483647 + + + + + + YES + Check for updates... + + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Preferences… + , + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Services + + 1048576 + 2147483647 + + + submenuAction: + + Services + + YES + + _NSServicesMenu + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Hide Pocket Gnome + h + 1048576 + 2147483647 + + + + + + Hide Others + h + 1572864 + 2147483647 + + + + + + Show All + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Quit Pocket Gnome + q + 1048576 + 2147483647 + + + + + _NSAppleMenu + + + + + File + + 1048576 + 2147483647 + + + submenuAction: + + File + + YES + + + Main Window + n + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Close + w + 1048576 + 2147483647 + + + + + + + + + Edit + + 1048576 + 2147483647 + + + submenuAction: + + Edit + + YES + + + Undo + z + 1048576 + 2147483647 + + + + + + Redo + Z + 1179648 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Cut + x + 1048576 + 2147483647 + + + + + + Copy + c + 1048576 + 2147483647 + + + + + + Paste + v + 1048576 + 2147483647 + + + + + + Delete + + 1048576 + 2147483647 + + + + + + Select All + a + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Find + + 1048576 + 2147483647 + + + submenuAction: + + Find + + YES + + + Find… + f + 1048576 + 2147483647 + + + 1 + + + + Find Next + g + 1048576 + 2147483647 + + + 2 + + + + Find Previous + G + 1179648 + 2147483647 + + + 3 + + + + Use Selection for Find + e + 1048576 + 2147483647 + + + 7 + + + + Jump to Selection + j + 1048576 + 2147483647 + + + + + + + + + Spelling and Grammar + + 1048576 + 2147483647 + + + submenuAction: + + Spelling and Grammar + + YES + + + Show Spelling… + : + 1048576 + 2147483647 + + + + + + Check Spelling + ; + 1048576 + 2147483647 + + + + + + Check Spelling While Typing + + 1048576 + 2147483647 + + + + + + Check Grammar With Spelling + + 1048576 + 2147483647 + + + + + + + + + Substitutions + + 1048576 + 2147483647 + + + submenuAction: + + Substitutions + + YES + + + Smart Copy/Paste + f + 1048576 + 2147483647 + + + 1 + + + + Smart Quotes + g + 1048576 + 2147483647 + + + 2 + + + + Smart Links + G + 1179648 + 2147483647 + + + 3 + + + + + + + Speech + + 1048576 + 2147483647 + + + submenuAction: + + Speech + + YES + + + Start Speaking + + 1048576 + 2147483647 + + + + + + Stop Speaking + + 1048576 + 2147483647 + + + + + + + + + + + + Window + + 1048576 + 2147483647 + + + submenuAction: + + Window + + YES + + + Minimize + m + 1048576 + 2147483647 + + + + + + Zoom + + 1048576 + 2147483647 + + + + + + YES + YES + + + 1048576 + 2147483647 + + + + + + Bring All to Front + + 1048576 + 2147483647 + + + + + _NSWindowsMenu + + + + _NSMainMenu + + + 4367 + 2 + {{212, 832}, {749, 200}} + 1677721600 + Main + NSWindow + + + 9859C378-9173-4C79-AE07-6BACF90576AD + + + YES + YES + YES + YES + 1 + 1 + + YES + + YES + 07725E07-8272-45B3-8E61-4F0DE5CB6FA3 + 1AB5F1BB-1F41-4416-ABA3-968123DB2AA9 + 1EC440B1-046C-46D8-8B82-5AFAE091B652 + 9EE3016C-0962-4579-8A78-D9D7C0ADB621 + A203409D-7D49-42C3-9426-D16B9D2DA37A + A3C977D0-AC84-4970-ADF4-9EE1E7EE4C52 + AC3CE7D1-FD9A-4988-8CAE-0407AAD23ADF + B2A74294-0FE0-4D41-B504-51CA3ED45339 + B63A3426-1473-4336-8F1D-5BCB25041F68 + C8D3D151-66DC-4B26-9227-FD886A23058B + F6035D3E-470C-423D-A669-9427AFE6E2BB + FFFAE74F-76CD-461B-8798-3C00CA631D4A + NSToolbarCustomizeToolbarItem + NSToolbarFlexibleSpaceItem + NSToolbarSeparatorItem + NSToolbarSpaceItem + + + YES + + + 07725E07-8272-45B3-8E61-4F0DE5CB6FA3 + + Stats + Stats + + + + NSImage + Ability_DualWieldSpecialization + + + + {0, 0} + {0, 0} + YES + YES + 14 + YES + 0 + + + + 1AB5F1BB-1F41-4416-ABA3-968123DB2AA9 + + Memory + Memory + + + + NSImage + INV_Misc_Orb_05 + + + + {0, 0} + {0, 0} + YES + YES + 10 + YES + 0 + + + + 1EC440B1-046C-46D8-8B82-5AFAE091B652 + + Spells + Spells + + + + NSImage + Spell_FireResistanceTotem_01 + + + + {0, 0} + {0, 0} + YES + YES + 3 + YES + 0 + + + + 9EE3016C-0962-4579-8A78-D9D7C0ADB621 + + Bot + Start/Stop Bot + + + + NSImage + Spell_Holy_MindVision + + + + {0, 0} + {0, 0} + YES + YES + 1 + YES + 0 + + + + A203409D-7D49-42C3-9426-D16B9D2DA37A + + PvP + PvP + + + + NSImage + PVP + + + + {0, 0} + {0, 0} + YES + YES + 16 + YES + 0 + + + + A3C977D0-AC84-4970-ADF4-9EE1E7EE4C52 + + Settings + Settings + + + + NSImage + INV_Misc_Gear_01 + + + + {0, 0} + {0, 0} + YES + YES + 9 + YES + 0 + + + + AC3CE7D1-FD9A-4988-8CAE-0407AAD23ADF + + Chat + Chat Log + + + + NSImage + Trade_Engraving + + + + {0, 0} + {0, 0} + YES + YES + 12 + YES + 0 + + + + B2A74294-0FE0-4D41-B504-51CA3ED45339 + + Player + Player + + + + NSImage + Ability_Warrior_Revenge + + + + {0, 0} + {0, 0} + YES + YES + 2 + YES + 0 + + + + B63A3426-1473-4336-8F1D-5BCB25041F68 + + Objects + Objects + + + + NSImage + INV_Misc_Head_Dragon_Blue + + + + {0, 0} + {0, 0} + YES + YES + 15 + YES + 0 + + + + C8D3D151-66DC-4B26-9227-FD886A23058B + + Routes + Routes + + + + NSImage + Ability_Rogue_Sprint + + + + {0, 0} + {0, 0} + YES + YES + 6 + YES + 0 + + + + F6035D3E-470C-423D-A669-9427AFE6E2BB + + Behavior + Behavior + + + + NSImage + Spell_Nature_PoisonCleansingTotem + + + + {0, 0} + {0, 0} + YES + YES + 7 + YES + 0 + + + + FFFAE74F-76CD-461B-8798-3C00CA631D4A + + Profiles + Profiles + + + + NSImage + Spell_Holy_PrayerofSpirit + + + + {0, 0} + {0, 0} + YES + YES + 17 + YES + 0 + + + NSToolbarCustomizeToolbarItem + Customize + Customize + Customize Toolbar + + + NSImage + NSToolbarCustomizeToolbarItemImage + + + runToolbarCustomizationPalette: + {0, 0} + {0, 0} + YES + YES + -1 + YES + 0 + + + NSToolbarFlexibleSpaceItem + + Flexible Space + + + + + + {1, 5} + {20000, 32} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + NSToolbarSeparatorItem + + Separator + + + + + + {12, 5} + {12, 1000} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + NSToolbarSpaceItem + + Space + + + + + + {32, 5} + {32, 32} + YES + YES + -1 + YES + 0 + + YES + YES + + + 1048576 + 2147483647 + + + + + + + + YES + + + + + + + + + + + + + + + + + + + YES + + + + + + + + + + + + + + + + + + + YES + + + {1.79769e+308, 1.79769e+308} + {700, 200} + + + 256 + + YES + + + 18 + + YES + + + 256 + {{1, 1}, {748, 179}} + + + + {{-1, 20}, {750, 181}} + + {0, 0} + + 67239424 + 0 + Box + + LucidaGrande + 11 + 3100 + + + 6 + System + textBackgroundColor + + 3 + MQA + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 4 + 0 + NO + + 2 + MC4yNTA5ODA0MDcgMC4yNTA5ODA0MDcgMC4yNTA5ODA0MDcAA + + + 2 + MC45MDk4MDM5ODY1IDAuOTA5ODAzOTg2NSAwLjkwOTgwMzk4NjUAA + + + + + 292 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {20, 20} + + YES + + 130560 + 33554432 + + NSImage + off + + 0 + 0 + 0 + NO + + YES + + + + 292 + {{17, 3}, {136, 14}} + + YES + + 67239488 + 272761856 + Memory Access Invalid + + + + 6 + System + controlColor + + 3 + MC42NjY2NjY2NjY3AA + + + + 6 + System + controlTextColor + + 3 + MAA + + + + + + + 290 + {{284, 3}, {399, 14}} + + YES + + 67239488 + 71435264 + + + + + + + + + {749, 200} + + {{0, 0}, {1920, 1178}} + {700, 277} + {1.79769e+308, 1.79769e+308} + MainWindow + + + Controller + + + BotController + + + ChatController + + + PlayerDataController + + + MemoryViewController + + + WaypointController + + + MovementController + + + MobController + + + CombatController + + + SpellController + + + AuraController + + + NodeController + + + InventoryController + + + ProcedureController + + + RuleEditor + + + 9 + 2 + {{196, 68}, {749, 477}} + 1677721600 + Rule Editor + NSPanel + + {1.79769e+308, 1.79769e+308} + {749, 477} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {707, 248} + + YES + + + 256 + {707, 17} + + + + + + -2147483392 + {{-26, 0}, {16, 17}} + + + + YES + + Conditions + 704 + 640 + 10000 + + 75628096 + 2048 + Conditions + + + 3 + MC4zMzMzMzI5ODU2AA + + + 6 + System + headerTextColor + + + + + 337772096 + 2048 + Text Cell + + LucidaGrande + 13 + 1044 + + + YES + + 6 + System + controlBackgroundColor + + + + + 1 + YES + + + + 3 + 2 + + + 6 + System + gridColor + + 3 + MC41AA + + + 38 + 1388314624 + + + 4 + 15 + 0 + NO + 1 + + + {{1, 17}, {707, 248}} + + + + + 4 + + + + -2147483392 + {{624, 17}, {15, 95}} + + + _doScroller: + 0.99193549156188965 + + + + -2147483392 + {{1, 163}, {638, 15}} + + 1 + + _doScroller: + 0.99222397804260254 + + + + 2304 + + YES + + + {{1, 0}, {707, 17}} + + + + + 4 + + + + {{20, 163}, {709, 266}} + + + 562 + + + + + + QSAAAEEgAABCIAAAQiAAAA + + + + 268 + {{17, 440}, {119, 17}} + + YES + + 67239488 + 272630784 + Match Conditions: + + + + + + + + + 268 + {{139, 434}, {88, 24}} + + YES + + -2080244224 + 0 + + LucidaGrande + 13 + 16 + + + + YES + + All + YES + 0 + + + Any + 1 + 0 + + + 1 + + + + + 34 + + YES + + + 256 + + YES + + + 292 + {{67, 9}, {261, 24}} + + YES + + -2080244224 + 0 + + + + YES + + + NSImage + NSStopProgressTemplate + + + No Action + YES + 2 + + + 75 + Cast Spell + Cast a spell or use a class ability. + 1 + 0 + + + 75 + Use Item + Use an item from your inventory. + 2 + 0 + + + 75 + Macro + Use a macro. + 3 + 0 + + + 1 + + + + + 268 + {{15, 14}, {49, 17}} + + YES + + 67239488 + 272630784 + Action: + + + + + + + + + 290 + {{331, 8}, {367, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 1 + + + 400 + 75 + + + Spell 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Spell 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Spell 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + {{1, 1}, {713, 44}} + + + + {{17, 111}, {715, 46}} + + {0, 0} + + 67239424 + 0 + Action + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 34 + + YES + + + 256 + + YES + + + 266 + {{113, 10}, {372, 22}} + + YES + + -1804468671 + 272630784 + + + + YES + 1 + + + 6 + System + textColor + + + + + + + 268 + {{15, 13}, {93, 17}} + + YES + + 67239488 + 272630784 + Name of Rule: + + + + + + + + + 289 + {{601, 3}, {100, 32}} + + YES + + 67239424 + 134217728 + Save Rule + + + -2038284033 + 129 + + DQ + 200 + 25 + + + + + 289 + {{487, 3}, {114, 32}} + + YES + + 67239424 + 134217728 + Cancel Rule + + + -2038284033 + 129 + + Gw + 200 + 25 + + + + {{1, 1}, {713, 43}} + + + + {{17, 16}, {715, 45}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 265 + {{581, 433}, {151, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + YES + Add Condition + + 1048576 + 2147483647 + 1 + + NSImage + NSAddTemplate + + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + YES + General Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Health/Power + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + 1 + Status + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + 1 + Combat Count + + 1048576 + 2147483647 + + + _popUpItemAction: + 12 + + + + + YES + Aura Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Aura Existence & Type + + 1048576 + 2147483647 + + + _popUpItemAction: + 3 + + + + + 1 + Aura Stack Count + + 1048576 + 2147483647 + + + _popUpItemAction: + 7 + + + + + YES + Distance Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Distance to Target + + 1048576 + 2147483647 + + + _popUpItemAction: + 4 + + + + + 1 + Proximity Count + + 1048576 + 2147483647 + + + _popUpItemAction: + 13 + + + + + YES + Target Classification + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Target Type + + 1048576 + 2147483647 + + + _popUpItemAction: + 10 + + + + + 1 + Target Class + + 1048576 + 2147483647 + + + _popUpItemAction: + 11 + + + + + YES + Item Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Inventory Check + + 1048576 + 2147483647 + + + _popUpItemAction: + 5 + + + + + 1 + Temp. Weapon Enchants + + 1048576 + 2147483647 + + + _popUpItemAction: + 9 + + + + + YES + Spell Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Spell Cooldown + + 1048576 + 2147483647 + + + _popUpItemAction: + 14 + + + + + 1 + Last Spell Cast + + 1048576 + 2147483647 + + + _popUpItemAction: + 15 + + + + + YES + YES + + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + YES + Class Specific Conditions + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + Totem Check + + 1048576 + 2147483647 + + + _popUpItemAction: + 8 + + + + + 1 + Combo Points + + 1048576 + 2147483647 + + + _popUpItemAction: + 6 + + + + + 1 + Runes + + 1048576 + 2147483647 + + + _popUpItemAction: + 16 + + + + YES + + YES + 1 + YES + YES + 2 + + + + + 268 + {{230, 433}, {110, 26}} + + YES + + -2076049856 + 2048 + + + 112345343 + 129 + + + 400 + 75 + + + YES + Testing + + 1048576 + 2147483647 + 1 + + NSImage + NSActionTemplate + + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Test Entire Rule + + 1048576 + 2147483647 + + NSImage + BinderGossipIcon + + + + _popUpItemAction: + + + + + Test Selected Condition + + 1048576 + 2147483647 + + NSImage + ActiveQuestIcon + + + + _popUpItemAction: + + + + + YES + 1 + YES + YES + 2 + + + + + 34 + + YES + + + 256 + + YES + + + 292 + {{68, 9}, {438, 24}} + + YES + + -2080244224 + 0 + + + + YES + + None + Spell requires no target + 2 + + + Self + Cast a spell on yourself + 1 + 0 + + + Enemy + Cast a spell on an enemy + 2 + YES + 0 + + + Friend + The friend that is your current target. + 3 + 0 + + + Add + Cast a spell on a nearby aggroed unit + 4 + 0 + + + Pet + Cast a spell on your pet + 5 + 0 + + + Friendlies + All friendlies become a potential target. + 6 + 0 + + + Pat + A mob that you're not in combat with. + 7 + 0 + + + 2 + 1 + + + + + 268 + {{15, 14}, {50, 17}} + + YES + + 67239488 + 272630784 + Target: + + + + + + + + + -2147483380 + {{509, 13}, {98, 17}} + + YES + + 68288064 + 272630784 + Select a target! + + + + + 1 + MSAwIDAAA + + + + + {{1, 1}, {713, 44}} + + + + {{17, 63}, {715, 46}} + + {0, 0} + + 67239424 + 0 + Action + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + {749, 477} + + + {{0, 0}, {1920, 1178}} + {749, 499} + {1.79769e+308, 1.79769e+308} + RulesEditor + + + + 268 + + YES + + + 268 + {{200, 113}, {386, 34}} + + YES + + 67239424 + 272891904 + This version of {name} is confirmed to work with WoW 2.4.1. + + + + + + + + + 268 + {{179, 155}, {397, 22}} + + YES + + 67239488 + 272630784 + {name} is here to help! + + LucidaGrande + 18 + 16 + + + + + + + + + 268 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{182, 132}, {13, 13}} + + YES + + 130560 + 33554432 + + NSImage + good + + 0 + 0 + 0 + NO + + YES + + + + -2147483380 + {{512, 18}, {75, 19}} + + YES + + -2080244224 + 134217728 + Open Site + + LucidaGrande + 12 + 16 + + + -2038152961 + 164 + + + 400 + 75 + + + + + -2147483380 + {{188, 21}, {319, 14}} + + YES + + 67239488 + 272761856 + For the latest updates, visit our site: + + + + + + + + + 12 + + YES + + YES + Apple PDF pasteboard type + Apple PICT pasteboard type + Apple PNG pasteboard type + NSFilenamesPboardType + NeXT Encapsulated PostScript v1.2 pasteboard type + NeXT TIFF v4.0 pasteboard type + + + {{0, -7}, {182, 211}} + + YES + + 130560 + 33554432 + + NSImage + NSApplicationIcon + + 0 + 3 + 0 + NO + + YES + + + {607, 197} + NSView + + + + 268 + + YES + + + 18 + {{13, 10}, {714, 397}} + + + YES + + 1 + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{342, 131}, {15, 22}} + + YES + + 68025888 + 131072 + + + 6 + 6 + 60 + 1 + YES + + + + + 268 + {{15, 134}, {130, 18}} + + YES + + 67239424 + 131072 + Enable Jumping. + + + 1211912703 + 2 + + NSImage + NSSwitch + + + NSSwitch + + + + 200 + 25 + + + + + 268 + {{201, 133}, {46, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + YES + + YES + NSColor + NSFont + NSOriginalFont + NSParagraphStyle + + + YES + + + + + 4 + 2 + + + + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + YES + + + YES + + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{253, 131}, {15, 22}} + + YES + + 68025888 + 131072 + + + 2 + 2 + 30 + 1 + YES + + + + + 268 + {{290, 133}, {46, 19}} + + YES + + 343014977 + 138544128 + + + + YES + + YES + allowsFloats + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + . + + , + + + + 0 + + + + 0 + + + + + 0 + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{271, 136}, {20, 14}} + + YES + + 67239488 + 272761856 + to + + + + + + + + + 268 + {{360, 136}, {60, 14}} + + YES + + 67239488 + 272761856 + seconds. + + + + + + + + + 268 + {{36, 31}, {485, 42}} + + YES + + 67239424 + 272891904 + Use the keyboard arrow keys to turn, rather than manually set the character's direction. Movement will appear more natural and less mechanical, but turns are slower and wider. Click to move utilizes the built in click to move feature, it will be the most accurate. + + LucidaGrande + 9 + 3614 + + + + + + + + + 268 + {{36, 97}, {485, 28}} + + YES + + 67239424 + 272891904 + Jumping requires the next waypoint be farther away (in yards) than your current speed. This ensures that you do not jump past a sharp turn or skip a waypoint while in the air. + + + + + + + + + 268 + {{129, 136}, {74, 14}} + + YES + + 68288064 + 272761856 + Jump every + + + + + + + + + 268 + {{111, 77}, {236, 22}} + + YES + + -2076049856 + 133120 + + + 109199615 + 129 + + + 400 + 75 + + + Normal (Mouse movements) + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Keyboard Turning (does not work w/flying) + + 1048576 + 2147483647 + + + _popUpItemAction: + 1 + + + + + Click to Move + + 1048576 + 2147483647 + + + _popUpItemAction: + 2 + + + + + 1 + YES + YES + 2 + + + + + 268 + {{16, 83}, {93, 14}} + + YES + + 68288064 + 272761856 + Movement Type: + + + + + + + + + 268 + {{18, 151}, {485, 18}} + + YES + + 67239424 + 272891904 + For the best experience, disable jumping (especially when flying) and use click to move. + + + + + + + + {{1, 1}, {680, 173}} + + + + {{6, 84}, {682, 189}} + + {0, 0} + + 67239424 + 0 + Movement + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{16, 32}, {427, 18}} + + YES + + -2080244224 + 0 + Check for updates on application launch (highly recommended). + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 12}, {386, 18}} + + YES + + -2080244224 + 0 + Send Growl notifications (only works if Growl is installed). + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {680, 58}} + + + + {{6, 277}, {682, 74}} + + {0, 0} + + 67239424 + 0 + General + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{189, 21}, {192, 26}} + + YES + + -2076049856 + 2048 + + + 109199615 + 129 + + + 400 + 75 + + + Item 1 + + 1048576 + 2147483647 + 1 + + + _popUpItemAction: + + + YES + + OtherViews + + YES + + + + Item 2 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + Item 3 + + 1048576 + 2147483647 + + + _popUpItemAction: + + + + + 1 + YES + YES + 2 + + + + + 268 + {{15, 28}, {172, 17}} + + YES + + 68288064 + 272630784 + WoW Instance to attach to: + + + + + + + + + 268 + {{383, 23}, {197, 17}} + + YES + + 68288064 + 272892928 + Note: This may take a few seconds to attach + + + + + + + + {{1, 1}, {680, 58}} + + + + {{6, 6}, {682, 74}} + + {0, 0} + + 67239424 + 0 + Miscellaneous + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {694, 351}} + + + General + + + + + 2 + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{106, 14}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 15 + 3 + 7 + 0.0 + 13 + 0 + YES + NO + + + + + 268 + {{15, 15}, {86, 14}} + + YES + + 67239488 + 272761856 + Not in Combat: + + + + + + + + + 268 + {{450, 16}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + {{1, 1}, {680, 41}} + + + + {{6, 294}, {682, 57}} + + {0, 0} + + 67239424 + 0 + Blacklist Triggers + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{253, 9}, {420, 28}} + + YES + + 67239424 + 272760832 + + + Ignore units that are more than this number of yards above or below your character. In PvP, this value is strictly enforced, even if you are attacked first. + + + + + + + + 268 + {{15, 16}, {84, 14}} + + YES + + 67239488 + 272761856 + Vertical Offset: + + + + + + + + + 268 + {{104, 13}, {96, 19}} + + YES + + -1804468671 + -2008939520 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0.00 + + + . + + , + + + + 0.00 + + + + 0.00 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 10 + + YES + 1 + + + + + + + 268 + {{205, 16}, {39, 14}} + + YES + + 67239488 + 272761856 + yards + + + + + + + + {{1, 1}, {680, 44}} + + + + {{6, 160}, {682, 46}} + + {0, 0} + + 67239424 + 0 + Vertical Blacklist + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{131, 39}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 90 + 5 + 45 + 0.0 + 18 + 0 + YES + NO + + + + + 268 + {{40, 40}, {86, 14}} + + YES + + 67239488 + 272761856 + Not In Combat: + + + + + + + + + 268 + {{475, 40}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + + 268 + {{131, 14}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 90 + 5 + 20 + 0.0 + 18 + 0 + YES + NO + + + + + 268 + {{15, 16}, {111, 14}} + + YES + + 67239488 + 272761856 + Not In Line of Sight: + + + + + + + + + 268 + {{475, 16}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + {{1, 1}, {680, 66}} + + + + {{6, 208}, {682, 82}} + + {0, 0} + + 67239424 + 0 + Blacklist Durations + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{107, 63}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 10 + 1 + 3 + 0.0 + 10 + 0 + YES + NO + + + + + 268 + {{15, 66}, {86, 14}} + + YES + + 67239488 + 272761856 + Failed to Reach: + + + + + + + + + 268 + {{451, 66}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + + 268 + {{107, 14}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 10 + 1 + 2 + 0.0 + 10 + 0 + YES + NO + + + + + 268 + {{26, 15}, {77, 14}} + + YES + + 67239488 + 272761856 + Made Me Fall: + + + + + + + + + 268 + {{451, 15}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + + 268 + {{107, 39}, {339, 17}} + + YES + + -1543373312 + 131072 + + + 10 + 1 + 4 + 0.0 + 10 + 0 + YES + NO + + + + + 268 + {{21, 41}, {81, 14}} + + YES + + 67239488 + 272761856 + Failed to Loot: + + + + + + + + + 268 + {{451, 41}, {87, 14}} + + YES + + 67239488 + 272761856 + Label + + + + + + + + {{1, 1}, {680, 91}} + + + + {{6, 49}, {682, 107}} + + {0, 0} + + 67239424 + 0 + Mining and Herbalism + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {694, 351}} + + Blacklist + + + + + Item 2 + + + 256 + + YES + + + 268 + {{15, 332}, {176, 18}} + + YES + + -2080244224 + 0 + Disable GUI Scripting + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{33, 303}, {241, 28}} + + YES + + 67239424 + 272760832 + Makes the application invisible to programs like Script Editor and Automator. + + + + + + + + + 268 + {{33, 197}, {242, 28}} + + YES + + 67239424 + 272760832 + Preference file will only be accessible by the root user (chown 0:0, chmod 600). + + + + + + + + + 268 + {{33, 250}, {242, 28}} + + YES + + 67239424 + 272760832 + Errors and other information will no longer be printed in the system log. + + + + + + + + + 268 + {{278, 332}, {176, 18}} + + YES + + 67239424 + 0 + Use Blank Window Titles + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{296, 303}, {242, 28}} + + YES + + 67239424 + 272760832 + Prevent the main window from displaying any text in the title bar. + + + + + + + + + 268 + {{278, 279}, {148, 18}} + + YES + + 67239424 + 0 + Rename Application + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{5, 66}, {59, 14}} + + YES + + 67239488 + 71435264 + Name: + + + + + + + + + 266 + {{69, 63}, {322, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + 1 + + + + + + + 268 + {{70, 14}, {53, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + 1 + + + + + + + 268 + {{5, 17}, {60, 14}} + + YES + + 67239488 + 71435264 + Signature: + + + + + + + + + 268 + {{5, 42}, {59, 14}} + + YES + + 67239488 + 71435264 + Identifier: + + + + + + + + + 266 + {{69, 39}, {322, 19}} + + YES + + -1804468671 + 138544128 + + + + YES + 1 + + + + + + + 265 + {{277, 9}, {119, 28}} + + YES + + 67239424 + 134348800 + Confirm Rename + + + -2038284033 + 129 + + + 200 + 25 + + + + + 268 + {{16, 86}, {198, 18}} + + YES + + 67239424 + 131072 + Match Existing Application + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + -2147483382 + {{225, 88}, {440, 14}} + + YES + + 67239488 + 272761856 + + + + + + + + + {{1, 1}, {409, 114}} + + + + {{277, 114}, {411, 116}} + + {0, 0} + + 67239424 + 0 + Box + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 0 + NO + + + + 268 + {{296, 236}, {241, 42}} + + YES + + 67239424 + 272760832 + Attempt to hide the application by changing its name, identifier, and signature. These settings will have no effect until confirmed. + + + + + + + + + 268 + {{426, 274}, {25, 25}} + + YES + + 67239424 + 134348800 + + + + -2038415105 + 33 + + + 200 + 25 + + + + + 268 + {{15, 226}, {227, 18}} + + YES + + 67239424 + 0 + Secure Preference File + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{15, 279}, {227, 18}} + + YES + + 67239424 + 0 + Disable Logging + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{10, 33}, {694, 351}} + + Security + + + + + Item 2 + + + 256 + + YES + + + 268 + {{192, 334}, {309, 14}} + + YES + + 67239424 + 272760832 + This section allows you to set automatic log out features + + + + + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{189, 186}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{34, 154}, {241, 28}} + + YES + + 67239424 + 272760832 + Log out when ALL of your items reach the above durability percentage. + + + + + + + + + 268 + {{16, 188}, {167, 18}} + + YES + + 67239424 + 0 + Item durability reaches + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{248, 188}, {20, 17}} + + YES + + 67239424 + 272629760 + % + + + + + + + + + 268 + {{355, 188}, {167, 18}} + + YES + + 67239424 + 0 + Full inventory + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{375, 159}, {211, 28}} + + YES + + 67239424 + 272760832 + Log out when your inventory is full. + + + + + + + + + 268 + {{16, 123}, {137, 18}} + + YES + + 67239424 + 0 + After running for + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{149, 122}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0.0 + + + . + + , + + + + 0.0 + + + + 0.0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{208, 124}, {54, 17}} + + YES + + 67239424 + 272629760 + hours + + + + + + + + + 268 + {{34, 89}, {241, 28}} + + YES + + 67239424 + 272760832 + Stop the bot after running for the above length of time. + + + + + + + + + 268 + {{355, 123}, {134, 18}} + + YES + + 67239424 + 0 + Being stuck after + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{489, 121}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{375, 89}, {283, 28}} + + YES + + 67239424 + 272760832 + Log out after being stuck. Pocket Gnome will attempt to resume your route before quitting. + + + + + + + + + 268 + {{548, 121}, {122, 19}} + + YES + + 67239424 + 272629760 + recovery attempts + + + + + + + + + 268 + {{16, 52}, {167, 18}} + + YES + + 67239424 + 0 + Use hearthstone + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{34, 18}, {241, 28}} + + YES + + 67239424 + 272760832 + Should we use our heathstone before logging out? + + + + + + + + {{1, 1}, {680, 214}} + + + + {{6, 96}, {682, 230}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{192, 319}, {309, 14}} + + YES + + 67239424 + 138543104 + These settings will go into effect immediately. + + + + + + + + {{10, 33}, {694, 351}} + + Log Out + + + + + Alarms + + + 256 + + YES + + + 10 + + YES + + + 256 + + YES + + + 268 + {{355, 188}, {167, 18}} + + YES + + 67239424 + 0 + On death + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{375, 159}, {211, 28}} + + YES + + 67239424 + 272760832 + Play an alarm after you die + + + + + + + + + 268 + {{16, 188}, {162, 18}} + + YES + + 67239424 + 0 + After being whispered + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{132, 64}, {76, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + 32491 + + YES + 1 + + + + + + + 268 + {{34, 154}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm after being whispered by the same player multiple times! + + + + + + + + + 268 + {{238, 189}, {54, 17}} + + YES + + 67239424 + 272629760 + times + + + + + + + + + 268 + {{355, 123}, {134, 18}} + + YES + + 67239424 + 0 + Being stuck after + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{490, 121}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + + 268 + {{549, 123}, {122, 19}} + + YES + + 67239424 + 272629760 + recovery attempts + + + + + + + + + 268 + {{375, 87}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm after being stuck + + + + + + + + + 268 + {{16, 123}, {269, 18}} + + YES + + 67239424 + 0 + After being flagged as AFK/Idle in a BG + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{34, 94}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm if you are flagged as AFK or Idle in a Battleground! + + + + + + + + + 268 + {{16, 66}, {110, 18}} + + YES + + 67239424 + 0 + If nearby mob + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{218, 67}, {74, 17}} + + YES + + 67239424 + 272629760 + is found + + + + + + + + + 268 + {{34, 31}, {283, 28}} + + YES + + 67239424 + 272760832 + Play an alarm if the nearby mob above is found! + + + + + + + + + 268 + {{179, 184}, {54, 22}} + + YES + + -1804468671 + -2009070592 + + + + + YES + + YES + allowsFloats + attributedStringForZero + decimalSeparator + formatterBehavior + groupingSeparator + maximum + minimum + negativeFormat + positiveFormat + usesGroupingSeparator + + + YES + + + 0 + + + . + + , + + + + 0 + + + + 0 + + + + + + + + + NaN + + + + + + . + , + NO + YES + YES + + + YES + 1 + + + + + + {{1, 1}, {680, 214}} + + + + {{6, 96}, {682, 230}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{206, 319}, {282, 14}} + + YES + + 67239424 + 138543104 + These settings will go into effect immediately. + + + + + + + + + 268 + {{206, 334}, {282, 14}} + + YES + + 67239424 + 272760832 + This section allows you to configure alarm settings! + + + + + + + + + 268 + {{314, 73}, {66, 20}} + + YES + + -2080244224 + 134348800 + Test Sound + + + -2033434369 + 162 + + + 400 + 75 + + + + {{10, 33}, {694, 351}} + + Alarms + + + + + Set up macros for all the /script commands! + + + 256 + + YES + + + 268 + {{-6, 334}, {706, 14}} + + YES + + 67239424 + 138543104 + By setting up a macro, PG will no longer send /script commands + + + + + + + + + 10 + + YES + + + 256 + + YES + + + 268 + {{15, 215}, {650, 51}} + + YES + + 67239424 + 138674176 + You no longer need to set up macros! All that is required is that ONE macro exists. PG will automatically replace that macro with whatever it needs to do (then set it back of course). + + + + + + + + {{1, 1}, {680, 305}} + + + + {{6, 5}, {682, 321}} + + {0, 0} + + 67239424 + 0 + + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + {{10, 33}, {694, 351}} + + Macros + + + + + Item 6 + + + 256 + + YES + + + 268 + {{118, 298}, {454, 41}} + + 2 + YES + + 67239424 + 138412032 + Please note that none of these settings will have any effect if you have selected "Disable Logging" under the tab "Security" + + + + + + + + + 268 + {{42, 217}, {541, 28}} + + 2 + YES + + 67239424 + 272760832 + Makes the application more verbose in the system log. Unless you're trying to figure out a problem or a developer asked you to, there is no reason to enable this option. + + + + + + + + + 12 + + YES + + + 256 + + YES + + + 268 + {{16, 32}, {87, 18}} + + YES + + -2080244224 + 0 + Dev + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{16, 12}, {87, 18}} + + YES + + -2080244224 + 0 + Evaluate + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{118, 32}, {85, 18}} + + YES + + -2080244224 + 0 + Bindings + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{118.5, 12}, {84, 18}} + + YES + + -2080244224 + 0 + Macro + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{223, 32}, {94, 18}} + + YES + + -2080244224 + 0 + Movement + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{223, 12}, {94, 18}} + + YES + + -2080244224 + 0 + Waypoint + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{339, 32}, {91, 18}} + + YES + + -2080244224 + 0 + Condition + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{339, 12}, {91, 18}} + + YES + + -2080244224 + 0 + Rule + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{449, 32}, {84, 18}} + + YES + + -2080244224 + 0 + Blacklist + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{449, 12}, {84, 18}} + + YES + + -2080244224 + 0 + Statistics + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{561, 32}, {82, 18}} + + YES + + -2080244224 + 0 + Function + + + 1211912703 + 2 + + + + + 200 + 25 + + + + + 268 + {{561, 12}, {82, 18}} + + YES + + -2080244224 + 0 + Memory + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{1, 1}, {660, 58}} + + 2 + + + {{16, 118}, {662, 74}} + + 2 + {0, 0} + + 67239424 + 0 + Logging levels + + + + 3 + MCAwLjgwMDAwMDAxMTkAA + + + + 1 + 0 + 2 + NO + + + + 268 + {{17, 259}, {144, 18}} + + YES + + -2080244224 + 0 + Extended Logging + + + 1211912703 + 2 + + + + + 200 + 25 + + + + {{10, 33}, {694, 351}} + 2 + + Logging + + + + + + + 0 + YES + YES + + YES + + + + + {740, 413} + NSView + + + YES + + + PlayersController + + + BonjourController + + + ActionMenusController + + + 31 + 2 + {{196, 264}, {416, 246}} + 1677721600 + Aura Tracker + NSPanel + + {1.79769e+308, 1.79769e+308} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {415, 229} + + YES + + + 256 + {415, 17} + + + + + + -2147483392 + {{-26, 0}, {16, 17}} + + + + YES + + Order + 20 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + + + + 6 + System + headerColor + + + + + + 337772096 + 2048 + Text Cell + + + + + + YES + + + Order + YES + compare: + + + + ID + 56 + 40 + 1000 + + 75628096 + 2048 + ID + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + ID + YES + compare: + + + + Level + 31 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Lvl + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Level + YES + compare: + + + + Name + 219 + 40 + 1000 + + 75628096 + 2048 + [Stacks] Aura Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Name + YES + compare: + + + + TimeRemaining + 74 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Expires + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Expiration + YES + compare: + + + + Bytes + 163 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Bytes + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + Bytes + YES + compare: + + YES + + + 3 + 2 + + + 17 + 1455423488 + + + + YES + + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {415, 229}} + + + + + 4 + + + + -2147483392 + {{-100, -100}, {15, 299}} + + + _doScroller: + 37 + 0.1947367936372757 + + + + -2147483392 + {{-100, -100}, {283, 15}} + + 1 + + _doScroller: + 0.99647891521453857 + + + + 2304 + + YES + + + {{1, 0}, {415, 17}} + + + + + 4 + + + + {{-1, 0}, {417, 247}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {416, 246} + + {{0, 0}, {1920, 1178}} + {1.79769e+308, 1.79769e+308} + AuraTrackerWindow + + + ChatLogController + + + QuestController + + + CorpseController + + + FishController + + + LootController + + + 31 + 2 + {{196, 271}, {1214, 239}} + 1677721600 + Cooldown Tracker + NSPanel + + {1.79769e+308, 1.79769e+308} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {1214, 229} + + YES + + + 256 + {1214, 17} + + + + + + -2147483392 + {{531, 0}, {16, 17}} + + + + YES + + Address + 89 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Address + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Address + YES + compare: + + YES + + + ID + 15 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + ID + YES + compare: + + + + SpellName + 166 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Spell Name + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + SpellName + YES + compare: + + + + SpellID + 66 + 40 + 1000 + + 75628096 + 2048 + ID + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + SpellID + YES + compare: + + + + StartTime + 130 + 40 + 1000 + + 75628096 + 2048 + Start Time + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + StartTime + YES + compare: + + YES + + + Cooldown + 89 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Cooldown + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Cooldown + YES + compare: + + + + Bytes + 163 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Bytes + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + Bytes + YES + compare: + + YES + + + TimeRemaining + 126 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Time Remaining + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + GCD + 65 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + GCD (ms) + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + GCD + YES + compare: + + + + Unk + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Unk3 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk3 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Unk4 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk4 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Unk5 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Unk5 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + OriginalStartTime + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + OriginalStartTime + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + StartNotUsed + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + StartNotUsed + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + CD1 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + CD1 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + CD2 + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + CD2 + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + Enabled + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Enabled + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + GCD + 63 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + GCD + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + + 3 + 2 + + + 17 + 1455423488 + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {1214, 229}} + + + + + 4 + + + + -2147483392 + {{531, 17}, {15, 214}} + + + _doScroller: + 0.93449783325195312 + + + + -2147483392 + {{1, 231}, {1227, 15}} + + 1 + + _doScroller: + 0.99918568134307861 + + + + 2304 + + YES + + + {{1, 0}, {1214, 17}} + + + + + 4 + + + + {{-1, -7}, {1216, 247}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {1214, 239} + + {{0, 0}, {1920, 1178}} + {1.79769e+308, 1.79769e+308} + CooldownTrackerWindow + + + OffsetController + + + MacroController + + + StatisticsController + + + EventController + + + BlacklistController + + + Player + + + WaypointActionEditor + + + 31 + 2 + {{196, 265}, {662, 245}} + 1677721600 + Combat Tracker + NSPanel + + {1.79769e+308, 1.79769e+308} + + + 256 + + YES + + + 4370 + + YES + + + 2304 + + YES + + + 4352 + {662, 229} + + YES + + + 256 + {662, 17} + + + + + + -2147483392 + {{401, 0}, {16, 17}} + + + + YES + + Level + 20 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Lvl + + + + + + 337772096 + 2048 + Text Cell + + + + + + YES + + + Level + YES + compare: + + + + Name + 134 + 40 + 1000 + + 75628096 + 2048 + Name + + + 3 + MC4zMzMzMzI5ODU2AA + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Name + YES + compare: + + + + Race + 134 + 40 + 1000 + + 75628096 + 2048 + Race + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Race + YES + compare: + + + + Class + 107 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Class + + + + + + 337772096 + 2048 + Text Cell + + + + + + 2 + YES + YES + + + Class + YES + compare: + + + + Bytes + 163 + 10 + 3.4028230607370965e+38 + + 75628096 + 2048 + Bytes + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + + + Bytes + YES + compare: + + YES + + + Distance + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Distance + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Distance + YES + compare: + + + + Health + 64 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Health + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Health + YES + compare: + + + + Weight + 118 + 10 + 3.4028234663852886e+38 + + 75628096 + 2048 + Weight + + + + + + 337772096 + 2048 + Text Cell + + + + + + 3 + YES + YES + + + Weight + YES + compare: + + + + 3 + 2 + + + 17 + 1455423488 + + + + YES + + + Weight + NO + compare: + + + 4 + 15 + 0 + YES + 1 + + + {{1, 17}, {662, 229}} + + + + + 4 + + + + -2147483392 + {{401, 17}, {15, 214}} + + + _doScroller: + 0.93449783325195312 + + + + -2147483392 + {{1, 231}, {521, 15}} + + 1 + + _doScroller: + 0.99250376224517822 + + + + 2304 + + YES + + + {{1, 0}, {662, 17}} + + + + + 4 + + + + {{-1, -1}, {664, 247}} + + + 562 + + + + + + QSAAAEEgAABBmAAAQZgAAA + + + {662, 245} + + {{0, 0}, {1920, 1178}} + {1.79769e+308, 1.79769e+308} + CombatTrackerWindow + + + BindingsController + + + ObjectsController + + + SUUpdater + + + PvPController + + + FileController + + + ProfileController + + + + + YES + + + performMiniaturize: + + + + 37 + + + + arrangeInFront: + + + + 39 + + + + toggleContinuousSpellChecking: + + + + 222 + + + + undo: + + + + 223 + + + + copy: + + + + 224 + + + + checkSpelling: + + + + 225 + + + + paste: + + + + 226 + + + + stopSpeaking: + + + + 227 + + + + cut: + + + + 228 + + + + showGuessPanel: + + + + 230 + + + + redo: + + + + 231 + + + + selectAll: + + + + 232 + + + + startSpeaking: + + + + 233 + + + + delete: + + + + 235 + + + + performZoom: + + + + 240 + + + + performFindPanelAction: + + + + 241 + + + + centerSelectionInVisibleArea: + + + + 245 + + + + toggleGrammarChecking: + + + + 347 + + + + toggleSmartInsertDelete: + + + + 355 + + + + toggleAutomaticQuoteSubstitution: + + + + 356 + + + + toggleAutomaticLinkDetection: + + + + 357 + + + + hide: + + + + 367 + + + + hideOtherApplications: + + + + 368 + + + + terminate: + + + + 369 + + + + unhideAllApplications: + + + + 370 + + + + controller + + + + 660 + + + + memoryViewController + + + + 672 + + + + controller + + + + 764 + + + + playerData + + + + 766 + + + + movementController + + + + 775 + + + + controller + + + + 776 + + + + controller + + + + 799 + + + + mobController + + + + 805 + + + + memoryViewController + + + + 809 + + + + playerData + + + + 810 + + + + combatController + + + + 824 + + + + playerData + + + + 825 + + + + combatController + + + + 826 + + + + controller + + + + 827 + + + + movementController + + + + 839 + + + + controller + + + + 860 + + + + playerController + + + + 887 + + + + spellController + + + + 888 + + + + mobController + + + + 892 + + + + controller + + + + 894 + + + + nodeController + + + + 895 + + + + controller + + + + 896 + + + + dataSource + + + + 1777 + + + + delegate + + + + 1778 + + + + spellRuleTableView + + + + 1780 + + + + conditionMatchingSegment + + + + 1789 + + + + conditionResultTypeSegment + + + + 1790 + + + + spellController + + + + 1791 + + + + ruleNameText + + + + 1857 + + + + ruleEditor + + + + 1899 + + + + ruleEditorWindow + + + + 1901 + + + + saveRule: + + + + 1904 + + + + cancelRule: + + + + 1909 + + + + resultActionDropdown + + + + 1910 + + + + controller + + + + 2002 + + + + waypointController + + + + 2004 + + + + movementController + + + + 2005 + + + + mobController + + + + 2006 + + + + combatController + + + + 2007 + + + + spellController + + + + 2008 + + + + nodeController + + + + 2010 + + + + procedureController + + + + 2011 + + + + playerController + + + + 2021 + + + + botController + + + + 2022 + + + + auraController + + + + 2027 + + + + botController + + + + 2028 + + + + playerData + + + + 2029 + + + + itemController + + + + 2033 + + + + itemController + + + + 2034 + + + + setResultType: + + + + 2035 + + + + inventoryController + + + + 2036 + + + + mobController + + + + 2102 + + + + toolbarItemSelected: + + + + 2296 + + + + toolbarItemSelected: + + + + 2298 + + + + toolbarItemSelected: + + + + 2299 + + + + toolbarItemSelected: + + + + 2300 + + + + toolbarItemSelected: + + + + 2301 + + + + mainWindow + + + + 2303 + + + + botController + + + + 2304 + + + + spellController + + + + 2305 + + + + behaviorController + + + + 2306 + + + + routeController + + + + 2307 + + + + delegate + + + + 2327 + + + + botToolbarItem + + + + 2328 + + + + playerToolbarItem + + + + 2329 + + + + spellsToolbarItem + + + + 2331 + + + + routesToolbarItem + + + + 2334 + + + + behavsToolbarItem + + + + 2335 + + + + prefsToolbarItem + + + + 2336 + + + + delegate + + + + 2337 + + + + memoryViewController + + + + 2338 + + + + toolbarItemSelected: + + + + 2340 + + + + memoryToolbarItem + + + + 2341 + + + + botController + + + + 2343 + + + + botController + + + + 2344 + + + + botController + + + + 2345 + + + + mainBackgroundBox + + + + 2350 + + + + memoryAccessLight + + + + 2353 + + + + memoryAccessValidText + + + + 2356 + + + + currentStatusText + + + + 2360 + + + + botController + + + + 2361 + + + + botController + + + + 2362 + + + + spellController + + + + 2363 + + + + itemController + + + + 2364 + + + + controller + + + + 2366 + + + + memoryViewController + + + + 2367 + + + + playerController + + + + 2369 + + + + value: stateImage + + + + + + value: stateImage + value + stateImage + 2 + + + 2372 + + + + value: stateString + + + + + + value: stateString + value + stateString + 2 + + + 2374 + + + + movementController + + + + 2384 + + + + auraController + + + + 2385 + + + + movementController + + + + 2387 + + + + showAbout: + + + + 2395 + + + + aboutView + + + + 2396 + + + + settingsView + + + + 2397 + + + + showSettings: + + + + 2398 + + + + showSettings: + + + + 2399 + + + + mainToolbar + + + + 2400 + + + + aboutValidImage + + + + 2404 + + + + memoryViewController + + + + 2405 + + + + spellController + + + + 2406 + + + + value: values.SUCheckAtStartup + + + + + + value: values.SUCheckAtStartup + value + values.SUCheckAtStartup + 2 + + + 2422 + + + + launchWebsite: + + + + 2440 + + + + spellController + + + + 2445 + + + + minValue: values.MovementMinJumpTime + + + + + + minValue: values.MovementMinJumpTime + minValue + values.MovementMinJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 2539 + + + + value: values.MovementMaxJumpTime + + + + + + value: values.MovementMaxJumpTime + value + values.MovementMaxJumpTime + + YES + + YES + NSContinuouslyUpdatesValue + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + + 2 + + + 2540 + + + + maxValue: values.MovementMaxJumpTime + + + + + + maxValue: values.MovementMaxJumpTime + maxValue + values.MovementMaxJumpTime + 2 + + + 2541 + + + + value: values.MovementMinJumpTime + + + + + + value: values.MovementMinJumpTime + value + values.MovementMinJumpTime + + YES + + YES + NSContinuouslyUpdatesValue + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + + 2 + + + 2542 + + + + maxValue: values.MovementMaxJumpTime + + + + + + maxValue: values.MovementMaxJumpTime + maxValue + values.MovementMaxJumpTime + 2 + + + 2543 + + + + value: values.MovementMinJumpTime + + + + + + value: values.MovementMinJumpTime + value + values.MovementMinJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + 2 + + + 2544 + + + + minValue: values.MovementMinJumpTime + + + + + + minValue: values.MovementMinJumpTime + minValue + values.MovementMinJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 2547 + + + + value: values.MovementMaxJumpTime + + + + + + value: values.MovementMaxJumpTime + value + values.MovementMaxJumpTime + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValidatesImmediately + + + YES + + + + + + + + + 2 + + + 2548 + + + + enabled: shouldJump + + + + + + enabled: shouldJump + enabled + shouldJump + 2 + + + 2550 + + + + enabled: shouldJump + + + + + + enabled: shouldJump + enabled + shouldJump + 2 + + + 2552 + + + + controller + + + + 2554 + + + + chatController + + + + 2557 + + + + playerData + + + + 2559 + + + + controller + + + + 2561 + + + + playerData + + + + 2562 + + + + memoryViewController + + + + 2563 + + + + playersController + + + + 2566 + + + + playersController + + + + 2569 + + + + combatController + + + + 2585 + + + + movementController + + + + 2586 + + + + chatController + + + + 2603 + + + + botController + + + + 2639 + + + + controller + + + + 2641 + + + + value: values.GlobalSendGrowlNotifications + + + + + + value: values.GlobalSendGrowlNotifications + value + values.GlobalSendGrowlNotifications + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 2662 + + + + mobController + + + + 2664 + + + + makeKeyAndOrderFront: + + + + 2666 + + + + performClose: + + + + 2684 + + + + displayPatternValue1: appName + + + + + + displayPatternValue1: appName + displayPatternValue1 + appName + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + %{value1}@ is here to help! + + + + + + + + 2 + + + 2714 + + + + title: appName + + + + + + title: appName + title + appName + 2 + + + 2717 + + + + value: values.SecurityDisableGUIScripting + + + + + + value: values.SecurityDisableGUIScripting + value + values.SecurityDisableGUIScripting + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 2762 + + + + value: values.SecurityShowRenameSettings + + + + + + value: values.SecurityShowRenameSettings + value + values.SecurityShowRenameSettings + + YES + + YES + NSAllowsEditingMultipleValuesSelection + NSAlwaysPresentsApplicationModalAlerts + NSConditionallySetsEnabled + NSConditionallySetsHidden + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValidatesImmediately + + + YES + + + + + + + + + + + + + 2 + + + 2769 + + + + hidden: values.SecurityShowRenameSettings + + + + + + hidden: values.SecurityShowRenameSettings + hidden + values.SecurityShowRenameSettings + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSValueTransformerName + + + YES + + + + + NSNegateBoolean + + + 2 + + + 2772 + + + + newSignatureField + + + + 2774 + + + + newIdentifierField + + + + 2775 + + + + confirmAppRename: + + + + 2778 + + + + newNameField + + + + 2779 + + + + nextKeyView + + + + 2792 + + + + nextKeyView + + + + 2793 + + + + nextKeyView + + + + 2794 + + + + enabled: isRegistered + + + + + + enabled: isRegistered + enabled + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + + + + + + + + 2 + + + 2799 + + + + enabled: isRegistered + + + + + + enabled: isRegistered + enabled + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + + + + + + + + 2 + + + 2800 + + + + hidden2: isRegistered + + + + + + hidden2: isRegistered + hidden2 + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + NSValueTransformerName + + + YES + + + + + + NSNegateBoolean + + + + 2 + + + 2802 + + + + toggleGUIScripting: + + + + 2804 + + + + disableGUIScriptCheckbox + + + + 2805 + + + + renameUseExisting: + + + + 2827 + + + + matchExistingCheckbox + + + + 2829 + + + + enabled: matchExistingApp + + + + + + enabled: matchExistingApp + enabled + matchExistingApp + + NSValueTransformerName + NSIsNil + + 2 + + + 2834 + + + + enabled: matchExistingApp + + + + + + enabled: matchExistingApp + enabled + matchExistingApp + + NSValueTransformerName + NSIsNil + + 2 + + + 2835 + + + + enabled: matchExistingApp + + + + + + enabled: matchExistingApp + enabled + matchExistingApp + + NSValueTransformerName + NSIsNil + + 2 + + + 2837 + + + + value: matchExistingApp.lastPathComponent + + + + + + value: matchExistingApp.lastPathComponent + value + matchExistingApp.lastPathComponent + 2 + + + 2838 + + + + enabled: isRegistered + + + + + + enabled: isRegistered + enabled + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + NSRaisesForNotApplicableKeys + + + YES + + + + + + + + 2 + + + 2839 + + + + renameShowHelp: + + + + 2845 + + + + playerController + + + + 2859 + + + + controller + + + + 2860 + + + + enabled: isRegistered + + + + + + enabled: isRegistered + enabled + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 2873 + + + + value: values.SecurityUseBlankWindowTitles + + + + + + value: values.SecurityUseBlankWindowTitles + value + values.SecurityUseBlankWindowTitles + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 2878 + + + + addCondition: + + + + 2918 + + + + spellRuleTypeDropdown + + + + 3087 + + + + enabled: validSelection + + + + + + enabled: validSelection + enabled + validSelection + 2 + + + 3094 + + + + enabled2: playerIsValid + + + + + + enabled2: playerIsValid + enabled2 + playerIsValid + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + + 2 + + + 3095 + + + + enabled: playerIsValid + + + + + + enabled: playerIsValid + enabled + playerIsValid + 2 + + + 3096 + + + + testRule: + + + + 3097 + + + + testCondition: + + + + 3098 + + + + value: values.SecurityPreferencesUnreadable + + + + + + value: values.SecurityPreferencesUnreadable + value + values.SecurityPreferencesUnreadable + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3107 + + + + enabled: isRegistered + + + + + + enabled: isRegistered + enabled + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3112 + + + + toggleSecurePrefs: + + + + 3114 + + + + controller + + + + 3116 + + + + spellController + + + + 3117 + + + + inventoryController + + + + 3118 + + + + enabled: isRegistered + + + + + + enabled: isRegistered + enabled + isRegistered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3131 + + + + value: values.SecurityDisableLogging + + + + + + value: values.SecurityDisableLogging + value + values.SecurityDisableLogging + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3136 + + + + controller + + + + 3137 + + + + aurasPanel + + + + 3151 + + + + aurasPanelTable + + + + 3152 + + + + delegate + + + + 3154 + + + + dataSource + + + + 3155 + + + + controller + + + + 3166 + + + + chatLogToolbarItem + + + + 3169 + + + + chatLogController + + + + 3170 + + + + toolbarItemSelected: + + + + 3171 + + + + questController + + + + 3173 + + + + controller + + + + 3174 + + + + playerDataController + + + + 3175 + + + + controller + + + + 3177 + + + + corpseController + + + + 3178 + + + + corpseController + + + + 3179 + + + + controller + + + + 3185 + + + + nodeController + + + + 3186 + + + + playerController + + + + 3187 + + + + botController + + + + 3189 + + + + itemController + + + + 3190 + + + + controller + + + + 3193 + + + + itemController + + + + 3194 + + + + lootController + + + + 3195 + + + + spellController + + + + 3196 + + + + chatController + + + + 3198 + + + + mobController + + + + 3207 + + + + nodeController + + + + 3208 + + + + playersController + + + + 3209 + + + + cooldownPanel + + + + 3230 + + + + cooldownPanelTable + + + + 3231 + + + + delegate + + + + 3232 + + + + dataSource + + + + 3233 + + + + wowInstancePopUpButton + + + + 3282 + + + + selectedObject: selectedPID + + + + + + selectedObject: selectedPID + selectedObject + selectedPID + 2 + + + 3291 + + + + pidSelected: + + + + 3292 + + + + lootController + + + + 3295 + + + + playerDataController + + + + 3296 + + + + conditionTargetType + + + + 3310 + + + + selectedTag: values.MovementType + + + + + + selectedTag: values.MovementType + selectedTag + values.MovementType + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3345 + + + + offsetController + + + + 3347 + + + + controller + + + + 3348 + + + + logOutOnTimerExpireCheckbox + + + + 3484 + + + + logOutOnFullInventoryCheckbox + + + + 3485 + + + + logOutOnBrokenItemsCheckbox + + + + 3486 + + + + value: values.LogOutOnBrokenItemsPercentage + + + + + + value: values.LogOutOnBrokenItemsPercentage + value + values.LogOutOnBrokenItemsPercentage + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3487 + + + + value: values.LogOutFullInventoryCheck + + + + + + value: values.LogOutFullInventoryCheck + value + values.LogOutFullInventoryCheck + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3488 + + + + value: values.LogOutOnBrokenItems + + + + + + value: values.LogOutOnBrokenItems + value + values.LogOutOnBrokenItems + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3489 + + + + value: values.LogOutTimer + + + + + + value: values.LogOutTimer + value + values.LogOutTimer + 2 + + + 3490 + + + + value: values.LogOutAfterBeingStuck + + + + + + value: values.LogOutAfterBeingStuck + value + values.LogOutAfterBeingStuck + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3514 + + + + value: values.LogOutStuckTries + + + + + + value: values.LogOutStuckTries + value + values.LogOutStuckTries + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3519 + + + + logOutAfterStuckCheckbox + + + + 3520 + + + + value: values.LogOutUseHearth + + + + + + value: values.LogOutUseHearth + value + values.LogOutUseHearth + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3526 + + + + logOutUseHearthstoneCheckbox + + + + 3527 + + + + value: values.LogOutTimerLength + + + + + + value: values.LogOutTimerLength + value + values.LogOutTimerLength + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3533 + + + + value: values.PvPPlayWarningSound + + + + + + value: values.PvPPlayWarningSound + value + values.PvPPlayWarningSound + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3618 + + + + value: values.AlarmWhispered + + + + + + value: values.AlarmWhispered + value + values.AlarmWhispered + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3626 + + + + value: values.AlarmOnDeath + + + + + + value: values.AlarmOnDeath + value + values.AlarmOnDeath + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3628 + + + + value: values.AlarmOnStuck + + + + + + value: values.AlarmOnStuck + value + values.AlarmOnStuck + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3629 + + + + value: values.AlarmOnStuckAttempts + + + + + + value: values.AlarmOnStuckAttempts + value + values.AlarmOnStuckAttempts + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 3630 + + + + nodeController + + + + 3635 + + + + fishController + + + + 3636 + + + + botController + + + + 3794 + + + + playerData + + + + 3849 + + + + auraController + + + + 3850 + + + + chatController + + + + 3851 + + + + macroController + + + + 3852 + + + + controller + + + + 3853 + + + + offsetController + + + + 3863 + + + + offsetController + + + + 3864 + + + + offsetController + + + + 3865 + + + + offsetController + + + + 3866 + + + + offsetController + + + + 3867 + + + + offsetController + + + + 3868 + + + + playerData + + + + 3998 + + + + memoryViewController + + + + 4006 + + + + movementController + + + + 4007 + + + + value: values.AlarmOnNearbyMob + + + + + + value: values.AlarmOnNearbyMob + value + values.AlarmOnNearbyMob + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4016 + + + + value: values.AlarmOnNearbyMobID + + + + + + value: values.AlarmOnNearbyMobID + value + values.AlarmOnNearbyMobID + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4023 + + + + offsetController + + + + 4024 + + + + macroController + + + + 4025 + + + + value: values.AlarmWhisperedTimes + + + + + + value: values.AlarmWhisperedTimes + value + values.AlarmWhisperedTimes + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4030 + + + + controller + + + + 4038 + + + + playerController + + + + 4039 + + + + toolbarItemSelected: + + + + 4041 + + + + statisticsToolbarItem + + + + 4044 + + + + statisticsController + + + + 4045 + + + + offsetController + + + + 4046 + + + + logOutDurabilityTextField + + + + 4047 + + + + logOutAfterRunningTextField + + + + 4048 + + + + movementController + + + + 4052 + + + + mobController + + + + 4053 + + + + auraController + + + + 4056 + + + + macroController + + + + 4057 + + + + controller + + + + 4059 + + + + playerController + + + + 4060 + + + + blacklistController + + + + 4064 + + + + blacklistController + + + + 4065 + + + + blacklistController + + + + 4066 + + + + playersController + + + + 4068 + + + + labelNoTarget + + + + 4071 + + + + dataSource + + + + 4093 + + + + delegate + + + + 4094 + + + + combatPanel + + + + 4095 + + + + combatTable + + + + 4102 + + + + auraController + + + + 4103 + + + + macroController + + + + 4104 + + + + macroController + + + + 4118 + + + + waypointController + + + + 4163 + + + + inventoryController + + + + 4164 + + + + spellController + + + + 4165 + + + + macroController + + + + 4166 + + + + waypointController + + + + 4168 + + + + statisticsController + + + + 4183 + + + + mobController + + + + 4184 + + + + nodeController + + + + 4185 + + + + controller + + + + 4188 + + + + chatController + + + + 4189 + + + + bindingsController + + + + 4190 + + + + toolbarItemSelected: + + + + 4193 + + + + objectsToolbarItem + + + + 4194 + + + + controller + + + + 4196 + + + + itemController + + + + 4197 + + + + memoryViewController + + + + 4198 + + + + mobController + + + + 4199 + + + + nodeController + + + + 4200 + + + + playersController + + + + 4201 + + + + objectsController + + + + 4202 + + + + offsetController + + + + 4205 + + + + playerData + + + + 4206 + + + + objectsController + + + + 4207 + + + + objectsController + + + + 4208 + + + + objectsController + + + + 4209 + + + + objectsController + + + + 4210 + + + + movementController + + + + 4211 + + + + playerController + + + + 4212 + + + + versionInfoText + + + + 4219 + + + + checkForUpdates: + + + + 4250 + + + + delegate + + + + 4251 + + + + mobController + + + + 4252 + + + + playersController + + + + 4253 + + + + botController + + + + 4254 + + + + macroController + + + + 4255 + + + + itemController + + + + 4256 + + + + toolbarItemSelected: + + + + 4258 + + + + pvpController + + + + 4260 + + + + pvpToolbarItem + + + + 4261 + + + + waypointController + + + + 4262 + + + + pvpController + + + + 4263 + + + + movementTypePopUp + + + + 4264 + + + + logOutStuckAttemptsTextField + + + + 4265 + + + + value: values.MovementShouldJump + + + + + + value: values.MovementShouldJump + value + values.MovementShouldJump + 2 + + + 4267 + + + + enabled: values.MovementShouldJump + + + + + + enabled: values.MovementShouldJump + enabled + values.MovementShouldJump + 2 + + + 4272 + + + + enabled: values.MovementShouldJump + + + + + + enabled: values.MovementShouldJump + enabled + values.MovementShouldJump + 2 + + + 4274 + + + + mobController + + + + 4275 + + + + statisticsController + + + + 4277 + + + + offsetController + + + + 4278 + + + + bindingsController + + + + 4279 + + + + bindingsController + + + + 4280 + + + + value: values.ExtendedLoggingEnable + + + + + + value: values.ExtendedLoggingEnable + value + values.ExtendedLoggingEnable + 2 + + + 4544 + + + + enabled: values.SecurityDisableLogging + + + + + + enabled: values.SecurityDisableLogging + enabled + values.SecurityDisableLogging + + NSValueTransformerName + NSNegateBoolean + + 2 + + + 4545 + + + + value: values.ExtendedLoggingDev + + + + + + value: values.ExtendedLoggingDev + value + values.ExtendedLoggingDev + 2 + + + 4548 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4550 + + + + value: values.ExtendedLoggingEvaluate + + + + + + value: values.ExtendedLoggingEvaluate + value + values.ExtendedLoggingEvaluate + 2 + + + 4574 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4576 + + + + value: values.ExtendedLoggingBindings + + + + + + value: values.ExtendedLoggingBindings + value + values.ExtendedLoggingBindings + 2 + + + 4579 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4581 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4583 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4585 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4587 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4589 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4591 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4593 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4595 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4597 + + + + enabled: values.ExtendedLoggingEnable + + + + + + enabled: values.ExtendedLoggingEnable + enabled + values.ExtendedLoggingEnable + 2 + + + 4599 + + + + value: values.ExtendedLoggingMemory + + + + + + value: values.ExtendedLoggingMemory + value + values.ExtendedLoggingMemory + 2 + + + 4601 + + + + value: values.ExtendedLoggingFunction + + + + + + value: values.ExtendedLoggingFunction + value + values.ExtendedLoggingFunction + 2 + + + 4603 + + + + value: values.ExtendedLoggingStatistics + + + + + + value: values.ExtendedLoggingStatistics + value + values.ExtendedLoggingStatistics + 2 + + + 4605 + + + + value: values.ExtendedLoggingBlacklist + + + + + + value: values.ExtendedLoggingBlacklist + value + values.ExtendedLoggingBlacklist + 2 + + + 4607 + + + + value: values.ExtendedLoggingRule + + + + + + value: values.ExtendedLoggingRule + value + values.ExtendedLoggingRule + 2 + + + 4609 + + + + value: values.ExtendedLoggingCondition + + + + + + value: values.ExtendedLoggingCondition + value + values.ExtendedLoggingCondition + 2 + + + 4611 + + + + value: values.ExtendedLoggingMacro + + + + + + value: values.ExtendedLoggingMacro + value + values.ExtendedLoggingMacro + 2 + + + 4615 + + + + value: values.ExtendedLoggingMovement + + + + + + value: values.ExtendedLoggingMovement + value + values.ExtendedLoggingMovement + 2 + + + 4617 + + + + value: values.ExtendedLoggingWaypoint + + + + + + value: values.ExtendedLoggingWaypoint + value + values.ExtendedLoggingWaypoint + 2 + + + 4618 + + + + value: values.BlacklistTriggerNotInCombat + + + + + + value: values.BlacklistTriggerNotInCombat + value + values.BlacklistTriggerNotInCombat + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4620 + + + + value: values.BlacklistVerticalOffset + + + + + + value: values.BlacklistVerticalOffset + value + values.BlacklistVerticalOffset + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4621 + + + + value: values.BlacklistDurationNotInCombat + + + + + + value: values.BlacklistDurationNotInCombat + value + values.BlacklistDurationNotInCombat + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4630 + + + + displayPatternValue1: values.BlacklistTriggerNotInCombat + + + + + + displayPatternValue1: values.BlacklistTriggerNotInCombat + displayPatternValue1 + values.BlacklistTriggerNotInCombat + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ sec + 7 + 7 + 7 + 7 + + + 2 + + + 4631 + + + + displayPatternValue1: values.BlacklistDurationNotInCombat + + + + + + displayPatternValue1: values.BlacklistDurationNotInCombat + displayPatternValue1 + values.BlacklistDurationNotInCombat + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ sec + 7 + 7 + 7 + 7 + + + 2 + + + 4632 + + + + value: values.BlacklistDurationNotInLos + + + + + + value: values.BlacklistDurationNotInLos + value + values.BlacklistDurationNotInLos + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4641 + + + + displayPatternValue1: values.BlacklistDurationNotInLos + + + + + + displayPatternValue1: values.BlacklistDurationNotInLos + displayPatternValue1 + values.BlacklistDurationNotInLos + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ sec + 7 + 7 + 7 + 7 + + + 2 + + + 4642 + + + + value: values.BlacklistTriggerNodeMadeMeFall + + + + + + value: values.BlacklistTriggerNodeMadeMeFall + value + values.BlacklistTriggerNodeMadeMeFall + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4672 + + + + value: values.BlacklistTriggerNodeFailedToReach + + + + + + value: values.BlacklistTriggerNodeFailedToReach + value + values.BlacklistTriggerNodeFailedToReach + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4673 + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToReach + + + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToReach + displayPatternValue1 + values.BlacklistTriggerNodeFailedToReach + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ attempts + 3 + 3 + 3 + 3 + + + 2 + + + 4675 + + + + value: values.BlacklistTriggerNodeFailedToLoot + + + + + + value: values.BlacklistTriggerNodeFailedToLoot + value + values.BlacklistTriggerNodeFailedToLoot + + YES + + YES + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + + + + + + + 2 + + + 4684 + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToLoot + + + + + + displayPatternValue1: values.BlacklistTriggerNodeFailedToLoot + displayPatternValue1 + values.BlacklistTriggerNodeFailedToLoot + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ attempts + 3 + 3 + 3 + 3 + + + 2 + + + 4685 + + + + displayPatternValue1: values.BlacklistTriggerNodeMadeMeFall + + + + + + displayPatternValue1: values.BlacklistTriggerNodeMadeMeFall + displayPatternValue1 + values.BlacklistTriggerNodeMadeMeFall + + YES + + YES + NSDisplayPattern + NSMultipleValuesPlaceholder + NSNoSelectionPlaceholder + NSNotApplicablePlaceholder + NSNullPlaceholder + + + YES + %{value1}@ times + 3 + 3 + 3 + 3 + + + 2 + + + 4686 + + + + fileController + + + + 4688 + + + + fileController + + + + 4690 + + + + toolbarItemSelected: + + + + 4693 + + + + profilesToolbarItem + + + + 4694 + + + + profileController + + + + 4695 + + + + profileController + + + + 4697 + + + + profileController + + + + 4698 + + + + profileController + + + + 4699 + + + + controller + + + + 4700 + + + + playersController + + + + 4701 + + + + mobController + + + + 4702 + + + + fileController + + + + 4703 + + + + fileController + + + + 4704 + + + + offsetController + + + + 4705 + + + + nodeController + + + + 4706 + + + + macroController + + + + 4707 + + + + playerController + + + + 4708 + + + + botController + + + + 4709 + + + + combatController + + + + 4710 + + + + bindingsController + + + + 4711 + + + + itemController + + + + 4712 + + + + + YES + + 0 + + + + + + -2 + + + File's Owner + + + -1 + + + First Responder + + + -3 + + + Application + + + 29 + + + YES + + + + + + + MainMenu + + + 19 + + + YES + + + + + + 56 + + + YES + + + + + + 217 + + + YES + + + + + + 83 + + + YES + + + + + + 81 + + + YES + + + + + + + + 82 + + + 9 + + + 205 + + + YES + + + + + + + + + + + + + + + + + + 202 + + + + + 198 + + + + + 207 + + + + + 214 + + + + + 199 + + + + + 203 + + + + + 197 + + + + + 206 + + + + + 215 + + + + + 218 + + + YES + + + + + + 216 + + + YES + + + + + + 200 + + + YES + + + + + + + + + 219 + + + + + 201 + + + + + 204 + + + + + 220 + + + YES + + + + + + + + + + 213 + + + + + 210 + + + + + 221 + + + + + 208 + + + + + 209 + + + + + 57 + + + YES + + + + + + + + + + + + + + + + + 58 + + + + + 134 + + + + + 150 + + + + + 136 + + + 1111 + + + 144 + + + + + 129 + + + 121 + + + 143 + + + + + 236 + + + + + 131 + + + YES + + + + + + 149 + + + + + 145 + + + + + 130 + + + + + 24 + + + YES + + + + + + + + + 92 + + + + + 5 + + + + + 239 + + + + + 23 + + + + + 211 + + + YES + + + + + + 212 + + + YES + + + + + + + 195 + + + + + 196 + + + + + 346 + + + + + 348 + + + YES + + + + + + 349 + + + YES + + + + + + + + 350 + + + + + 351 + + + + + 354 + + + + + 480 + + + + + 481 + + + PlayerData + + + 655 + + + MemView + + + 731 + + + Waypoints + + + 773 + + + Movement + + + 795 + + + Mobs + + + 823 + + + Combat + + + 843 + + + Spells + + + 885 + + + Auras + + + 893 + + + Nodes + + + 1723 + + + YES + + + + RuleEditor + + + 1724 + + + YES + + + + + + + + + + + + + 1768 + + + YES + + + + + + 1769 + + + + + 1770 + + + YES + + + + + + 1771 + + + + + 1774 + + + + + 1725 + + + YES + + + + + + + + + 1744 + + + + + 1746 + + + + + 1747 + + + + + 1745 + + + YES + + + + + + 1749 + + + YES + + + + + + 1750 + + + + + 1781 + + + YES + + + + + + + + 1726 + + + YES + + + + + + 1743 + + + + + 1782 + + + YES + + + + + + 1783 + + + + + 1848 + + + YES + + + + + + + + + 1849 + + + YES + + + + + + 1850 + + + YES + + + + + + 1851 + + + + + 1852 + + + + + 1853 + + + YES + + + + + + 1854 + + + YES + + + + + + 1855 + + + + + 1856 + + + + + 1858 + + + Behavior + + + 1955 + + + + + 1956 + + + YES + + + + + Main + + + 1957 + + + YES + + + + + + + + + 1958 + + + YES + + + + + + + + + + + + + + + + + + + + + 1961 + + + + + 1963 + + + + + 1964 + + + + + 1965 + + + + + 1966 + + + + + 1967 + + + + + 1969 + + + + + 1971 + + + + + 1972 + + + + + 2030 + + + Inventory + + + 2321 + + + + + 2339 + + + + + 2349 + + + YES + + + + + 2351 + + + YES + + + + + + 2352 + + + + + 2354 + + + YES + + + + + + 2355 + + + + + 2358 + + + YES + + + + + + 2359 + + + + + 2375 + + + YES + + + + + + + + + About + + + 2378 + + + YES + + + + Settings + + + 2407 + + + YES + + + + + + 2408 + + + + + 2410 + + + YES + + + + + + 2411 + + + + + 2402 + + + YES + + + + + + 2403 + + + + + 2421 + + + + + 2436 + + + YES + + + + + + 2437 + + + + + 2553 + + + + + 2560 + + + + + 2682 + + + + + 2683 + + + + + 2686 + + + YES + + + + + + + + + + + + 2687 + + + YES + + + + + + 2688 + + + YES + + + + + + + + 2689 + + + YES + + + + + + 2690 + + + YES + + + + + + + + + 2571 + + + YES + + + + + + + + + + + + + + + + + + 2601 + + + YES + + + + + + 2468 + + + YES + + + + + + 2462 + + + YES + + + + + + 2464 + + + YES + + + + + + 2460 + + + YES + + + + + + 2448 + + + YES + + + + + + 2446 + + + YES + + + + + + 2465 + + + YES + + + + + + 2466 + + + + + 2447 + + + + + 2449 + + + YES + + + + + + 2475 + + + + + 2461 + + + + + 2467 + + + YES + + + + + + 2480 + + + + + 2463 + + + + + 2469 + + + + + 2602 + + + + + 2577 + + + YES + + + + + + + 2660 + + + YES + + + + + + 2419 + + + YES + + + + + + 2420 + + + + + 2661 + + + + + 2691 + + + YES + + + + + + + + 2692 + + + YES + + + + + + 2693 + + + YES + + + + + + 2694 + + + YES + + + + + + 2697 + + + + + 2698 + + + + + 2699 + + + + + 2703 + + + YES + + + + + + + + + 2706 + + + YES + + + + + + 2707 + + + + + 2708 + + + YES + + + + + + 2709 + + + YES + + + + + + 2710 + + + YES + + + + + + 2711 + + + + + 2712 + + + + + 2718 + + + YES + + + + + + 2719 + + + YES + + + + + + + + + + + + + + + + + 2723 + + + YES + + + + + + 2724 + + + + + 2728 + + + YES + + + + + + 2729 + + + + + 2735 + + + YES + + + + + + 2736 + + + + + 2737 + + + YES + + + + + + + + + + + + + + 2758 + + + YES + + + + + + 2747 + + + YES + + + + + + 2746 + + + YES + + + + + + 2743 + + + YES + + + + + + 2742 + + + YES + + + + + + 2740 + + + YES + + + + + + 2738 + + + YES + + + + + + 2739 + + + + + 2741 + + + + + 2745 + + + + + 2744 + + + + + 2749 + + + + + 2748 + + + + + 2759 + + + + + 2760 + + + YES + + + + + + 2761 + + + + + 2822 + + + YES + + + + + + 2823 + + + + + 2824 + + + YES + + + + + + 2825 + + + + + 2843 + + + YES + + + + + + 2844 + + + + + 2858 + + + + + 2861 + + + YES + + + + + + 2862 + + + YES + + + + + + 2863 + + + + + 2864 + + + + + 2865 + + + YES + + + + + + 2866 + + + + + 2867 + + + YES + + + + + + 2868 + + + + + 2911 + + + YES + + + + + + 2912 + + + YES + + + + + + 2913 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + 2948 + + + + + 2949 + + + + + 2950 + + + + + 2951 + + + + + 2952 + + + + + 2953 + + + + + 2954 + + + + + 2955 + + + + + 2956 + + + + + 2957 + + + + + 2958 + + + + + 2959 + + + + + 2960 + + + + + 2961 + + + + + 2962 + + + + + 2963 + + + + + 2964 + + + + + 2965 + + + + + 2966 + + + + + 3040 + + + + + 3041 + + + + + 3088 + + + YES + + + + + + 3089 + + + YES + + + + + + 3090 + + + YES + + + + + + + + 3091 + + + + + 3092 + + + + + 3093 + + + + + 3099 + + + YES + + + + + + 3100 + + + + + 3101 + + + YES + + + + + + 3102 + + + + + 3115 + + + + + 3123 + + + YES + + + + + + 3124 + + + + + 3125 + + + YES + + + + + + 3126 + + + + + 3138 + + + YES + + + + + + 3139 + + + YES + + + + + + 3140 + + + YES + + + + + + + + + 3141 + + + + + 3142 + + + YES + + + + + + + + + + + 3143 + + + + + 3144 + + + + + 3145 + + + YES + + + + + + 3146 + + + YES + + + + + + 3147 + + + YES + + + + + + 3148 + + + + + 3149 + + + + + 3150 + + + + + 3156 + + + YES + + + + + + 3157 + + + + + 3158 + + + YES + + + + + + 3159 + + + + + 3160 + + + YES + + + + + + 3161 + + + + + 3165 + + + + + 3168 + + + + + 3172 + + + + + 3176 + + + + + 3180 + + + + + 3192 + + + + + 3210 + + + YES + + + + + + 3211 + + + YES + + + + + + 3212 + + + YES + + + + + + + + + 3213 + + + + + 3214 + + + + + 3215 + + + YES + + + + + + + + + + + + + + + + + + + + + + + + 3216 + + + + + 3219 + + + YES + + + + + + 3220 + + + YES + + + + + + 3221 + + + YES + + + + + + 3222 + + + YES + + + + + + 3223 + + + + + 3224 + + + + + 3225 + + + + + 3226 + + + + + 3234 + + + YES + + + + + + 3235 + + + + + 3236 + + + YES + + + + + + 3237 + + + + + 3246 + + + YES + + + + + + 3247 + + + + + 3248 + + + YES + + + + + + 3249 + + + + + 3250 + + + YES + + + + + + 3251 + + + + + 3252 + + + YES + + + + + + + + 3276 + + + YES + + + + + + 3277 + + + YES + + + + + + 3278 + + + YES + + + + + + + + 3279 + + + + + 3280 + + + + + 3281 + + + + + 3287 + + + YES + + + + + + 3288 + + + + + 3293 + + + YES + + + + + + 3294 + + + + + 3299 + + + YES + + + + + + + + 3300 + + + YES + + + + + + 3302 + + + YES + + + + + + 3303 + + + + + 3309 + + + + + 3311 + + + YES + + + + + + 3312 + + + YES + + + + + + 3313 + + + YES + + + + + + + + 3314 + + + + + 3315 + + + + + 3316 + + + + + 3318 + + + YES + + + + + + 3319 + + + + + 3346 + + + Offsets + + + 3349 + + + YES + + + + + + 3350 + + + YES + + + + + + + + 3427 + + + YES + + + + + + 3428 + + + + + 3429 + + + YES + + + + + + + + + + + + + + + + + + + + + 3431 + + + YES + + + + + + 3436 + + + YES + + + + + + 3437 + + + + + 3425 + + + YES + + + + + + 3426 + + + + + 3420 + + + YES + + + + + + 3421 + + + + + 3440 + + + YES + + + + + + 3441 + + + + + 3461 + + + YES + + + + + + 3462 + + + + + 3465 + + + YES + + + + + + 3466 + + + + + 3469 + + + YES + + + + + + 3470 + + + + + 3472 + + + YES + + + + + + 3473 + + + YES + + + + + + 3474 + + + + + 3476 + + + YES + + + + + + 3477 + + + + + 3478 + + + YES + + + + + + 3479 + + + + + 1730 + + + YES + + + + + + 1731 + + + YES + + + + + + 1732 + + + YES + + + + + + + + 1735 + + + + + 1734 + + + + + 1733 + + + + + 3501 + + + YES + + + + + + 3502 + + + YES + + + + + + + + + 3503 + + + YES + + + + + + 3504 + + + + + 3506 + + + YES + + + + + + 3507 + + + + + 3508 + + + YES + + + + + + 3509 + + + YES + + + + + + 3510 + + + + + 3512 + + + YES + + + + + + 3513 + + + + + 3521 + + + YES + + + + + + 3522 + + + + + 3524 + + + YES + + + + + + 3525 + + + + + 3543 + + + YES + + + + + + + + + + + + + + + + + + + + + 3546 + + + YES + + + + + + 3547 + + + YES + + + + + + 3548 + + + YES + + + + + + 3549 + + + YES + + + + + + 3550 + + + YES + + + + + + 3551 + + + YES + + + + + + 3570 + + + + + 3571 + + + + + 3572 + + + + + 3573 + + + YES + + + + + + 3574 + + + + + 3575 + + + + + 3576 + + + + + 3587 + + + YES + + + + + + 3588 + + + + + 3596 + + + YES + + + + + + 3597 + + + + + 3599 + + + YES + + + + + + 3600 + + + YES + + + + + + 3601 + + + + + 3603 + + + YES + + + + + + 3604 + + + + + 3605 + + + YES + + + + + + 3606 + + + + + 3612 + + + YES + + + + + + 3613 + + + + + 3615 + + + YES + + + + + + 3616 + + + + + 3619 + + + YES + + + + + + 3620 + + + + + 3637 + + + YES + + + + + + 3638 + + + YES + + + + + + + 3639 + + + YES + + + + + + 3640 + + + + + 3793 + + + Macros + + + 4003 + + + YES + + + + + + 4004 + + + + + 4008 + + + YES + + + + + + 4009 + + + + + 4013 + + + YES + + + + + + 4014 + + + + + 4017 + + + YES + + + + + + 4018 + + + + + 4026 + + + YES + + + + + + 4027 + + + YES + + + + + + 4028 + + + + + 4031 + + + YES + + + + + + 4032 + + + + + 4035 + + + YES + + + + + + 4036 + + + + + 4037 + + + Statistics + + + 4040 + + + Stats + + + 4058 + + + Events + + + 4061 + + + + + 4062 + + + + + 4063 + + + Blacklist + + + 4067 + + + + + 4069 + + + YES + + + + + + 4070 + + + + + 4072 + + + YES + + + + + + 4073 + + + YES + + + + + + 4074 + + + YES + + + + + + + + + 4075 + + + + + 4076 + + + + + 4077 + + + YES + + + + + + + + + + + + + 4078 + + + + + 4080 + + + YES + + + + + + 4081 + + + YES + + + + + + 4082 + + + YES + + + + + + 4083 + + + YES + + + + + + 4084 + + + YES + + + + + + 4085 + + + + + 4086 + + + + + 4087 + + + + + 4088 + + + + + 4089 + + + + + 4096 + + + YES + + + + + + 4097 + + + + + 4098 + + + YES + + + + + + 4099 + + + + + 4100 + + + YES + + + + + + 4101 + + + + + 4105 + + + + + 3641 + + + YES + + + + + + 4108 + + + YES + + + + + + 4109 + + + + + 4117 + + + + + 4156 + + + + + 4187 + + + Bindings + + + 4191 + + + + + 4192 + + + + + 2438 + + + YES + + + + + + 2439 + + + + + 4217 + + + YES + + + + + + 4218 + + + + + 4222 + + + YES + + + + + + 4223 + + + + + 4224 + + + YES + + + + + + 4225 + + + + + 4226 + + + YES + + + + + + 4227 + + + + + 4228 + + + YES + + + + + + 4229 + + + + + 4230 + + + YES + + + + + + 4231 + + + + + 4232 + + + YES + + + + + + 4233 + + + + + 4234 + + + YES + + + + + + 4235 + + + + + 4236 + + + YES + + + + + + 4237 + + + + + 4238 + + + YES + + + + + + 4239 + + + + + 4240 + + + YES + + + + + + 4241 + + + + + 4244 + + + + + 4248 + + + + + 4257 + + + + + 4259 + + + + + 4281 + + + YES + + + + + + 4282 + + + YES + + + + + + + + + 4283 + + + YES + + + + + + 4284 + + + + + 4285 + + + YES + + + + + + 4287 + + + YES + + + + + + + + + + + + + + + + + 4313 + + + + + 4531 + + + YES + + + + + + 4532 + + + + + 4546 + + + YES + + + + + + 4547 + + + + + 4551 + + + YES + + + + + + 4552 + + + + + 4553 + + + YES + + + + + + 4554 + + + + + 4555 + + + YES + + + + + + 4556 + + + + + 4557 + + + YES + + + + + + 4558 + + + + + 4559 + + + YES + + + + + + 4560 + + + + + 4561 + + + YES + + + + + + 4562 + + + + + 4563 + + + YES + + + + + + 4564 + + + + + 4565 + + + YES + + + + + + 4566 + + + + + 4567 + + + YES + + + + + + 4568 + + + + + 4569 + + + YES + + + + + + 4570 + + + + + 4571 + + + YES + + + + + + 4572 + + + + + 4619 + + + YES + + + + + + + + + + + 4622 + + + YES + + + + + + 4623 + + + YES + + + + + + 4624 + + + YES + + + + + + 4625 + + + + + 4626 + + + + + 4627 + + + + + 4633 + + + YES + + + + + + 4634 + + + YES + + + + + + 4635 + + + YES + + + + + + 4636 + + + + + 4637 + + + + + 4638 + + + + + 2704 + + + YES + + + + + + 2705 + + + + + 4663 + + + YES + + + + + + + + + + + + + + 4643 + + + YES + + + + + + 4648 + + + + + 4644 + + + YES + + + + + + 4647 + + + + + 4645 + + + YES + + + + + + 4646 + + + + + 4664 + + + YES + + + + + + 4665 + + + YES + + + + + + 4666 + + + YES + + + + + + 4667 + + + + + 4668 + + + + + 4669 + + + + + 4676 + + + YES + + + + + + 4677 + + + YES + + + + + + 4678 + + + YES + + + + + + 4679 + + + + + 4680 + + + + + 4681 + + + + + 4687 + + + + + 4689 + + + + + 4691 + + + + + + + YES + + YES + -3.IBPluginDependency + 129.IBPluginDependency + 129.ImportedFromIB2 + 130.IBPluginDependency + 130.ImportedFromIB2 + 130.editorWindowContentRectSynchronizationRect + 131.IBPluginDependency + 131.ImportedFromIB2 + 134.IBPluginDependency + 134.ImportedFromIB2 + 136.IBPluginDependency + 136.ImportedFromIB2 + 143.IBPluginDependency + 143.ImportedFromIB2 + 144.IBPluginDependency + 144.ImportedFromIB2 + 145.IBPluginDependency + 145.ImportedFromIB2 + 149.IBPluginDependency + 149.ImportedFromIB2 + 150.IBPluginDependency + 150.ImportedFromIB2 + 1723.IBEditorWindowLastContentRect + 1723.IBPluginDependency + 1723.IBWindowTemplateEditedContentRect + 1723.NSWindowTemplate.visibleAtLaunch + 1723.editorWindowContentRectSynchronizationRect + 1723.windowTemplate.hasMinSize + 1723.windowTemplate.minSize + 1724.IBPluginDependency + 1725.IBPluginDependency + 1726.CustomClassName + 1726.IBPluginDependency + 1730.IBPluginDependency + 1731.IBPluginDependency + 1732.IBEditorWindowLastContentRect + 1732.IBPluginDependency + 1732.editorWindowContentRectSynchronizationRect + 1733.IBPluginDependency + 1734.IBPluginDependency + 1735.IBPluginDependency + 1743.IBPluginDependency + 1743.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 1744.IBPluginDependency + 1745.CustomClassName + 1745.IBPluginDependency + 1746.IBPluginDependency + 1747.IBPluginDependency + 1749.IBPluginDependency + 1750.IBPluginDependency + 1768.IBPluginDependency + 1769.IBPluginDependency + 1770.IBPluginDependency + 1771.IBPluginDependency + 1771.IBSegmentedControlInspectorSelectedSegmentMetadataKey + 1781.IBPluginDependency + 1782.IBPluginDependency + 1783.IBPluginDependency + 1848.IBPluginDependency + 1849.IBPluginDependency + 1850.IBPluginDependency + 1851.IBPluginDependency + 1852.IBPluginDependency + 1853.IBPluginDependency + 1854.IBPluginDependency + 1855.IBPluginDependency + 1856.IBPluginDependency + 19.IBPluginDependency + 19.ImportedFromIB2 + 195.IBPluginDependency + 195.ImportedFromIB2 + 1956.IBEditorWindowLastContentRect + 1956.IBPluginDependency + 1956.IBWindowTemplateEditedContentRect + 1956.NSWindowTemplate.visibleAtLaunch + 1956.editorWindowContentRectSynchronizationRect + 1956.windowTemplate.hasMinSize + 1956.windowTemplate.minSize + 1957.IBPluginDependency + 1958.IBEditorWindowLastContentRect + 1958.IBPluginDependency + 1958.editorWindowContentRectSynchronizationRect + 196.IBPluginDependency + 196.ImportedFromIB2 + 1965.IBPluginDependency + 1966.IBPluginDependency + 1967.IBPluginDependency + 1969.IBPluginDependency + 197.IBPluginDependency + 197.ImportedFromIB2 + 1971.IBPluginDependency + 1972.IBPluginDependency + 198.IBPluginDependency + 198.ImportedFromIB2 + 199.IBPluginDependency + 199.ImportedFromIB2 + 200.IBPluginDependency + 200.ImportedFromIB2 + 200.editorWindowContentRectSynchronizationRect + 201.IBPluginDependency + 201.ImportedFromIB2 + 202.IBPluginDependency + 202.ImportedFromIB2 + 203.IBPluginDependency + 203.ImportedFromIB2 + 204.IBPluginDependency + 204.ImportedFromIB2 + 205.IBEditorWindowLastContentRect + 205.IBPluginDependency + 205.ImportedFromIB2 + 205.editorWindowContentRectSynchronizationRect + 206.IBPluginDependency + 206.ImportedFromIB2 + 207.IBPluginDependency + 207.ImportedFromIB2 + 208.IBPluginDependency + 208.ImportedFromIB2 + 209.IBPluginDependency + 209.ImportedFromIB2 + 210.IBPluginDependency + 210.ImportedFromIB2 + 211.IBPluginDependency + 211.ImportedFromIB2 + 212.IBPluginDependency + 212.ImportedFromIB2 + 212.editorWindowContentRectSynchronizationRect + 213.IBPluginDependency + 213.ImportedFromIB2 + 214.IBPluginDependency + 214.ImportedFromIB2 + 215.IBPluginDependency + 215.ImportedFromIB2 + 216.IBPluginDependency + 216.ImportedFromIB2 + 217.IBPluginDependency + 217.ImportedFromIB2 + 218.IBPluginDependency + 218.ImportedFromIB2 + 219.IBPluginDependency + 219.ImportedFromIB2 + 220.IBPluginDependency + 220.ImportedFromIB2 + 220.editorWindowContentRectSynchronizationRect + 221.IBPluginDependency + 221.ImportedFromIB2 + 23.IBPluginDependency + 23.ImportedFromIB2 + 2321.IBPluginDependency + 2339.IBPluginDependency + 2349.IBPluginDependency + 2351.IBPluginDependency + 2352.IBPluginDependency + 2354.IBPluginDependency + 2355.IBPluginDependency + 2358.IBPluginDependency + 2359.IBPluginDependency + 236.IBPluginDependency + 236.ImportedFromIB2 + 2375.IBEditorWindowLastContentRect + 2375.IBPluginDependency + 2375.editorWindowContentRectSynchronizationRect + 2378.IBEditorWindowLastContentRect + 2378.IBPluginDependency + 2378.editorWindowContentRectSynchronizationRect + 239.IBPluginDependency + 239.ImportedFromIB2 + 24.IBEditorWindowLastContentRect + 24.IBPluginDependency + 24.ImportedFromIB2 + 24.editorWindowContentRectSynchronizationRect + 2402.IBPluginDependency + 2403.IBPluginDependency + 2407.IBPluginDependency + 2408.IBPluginDependency + 2410.IBPluginDependency + 2411.IBPluginDependency + 2419.IBPluginDependency + 2420.IBPluginDependency + 2421.IBPluginDependency + 2436.IBPluginDependency + 2437.IBPluginDependency + 2438.IBPluginDependency + 2439.IBPluginDependency + 2446.IBPluginDependency + 2447.IBPluginDependency + 2448.IBPluginDependency + 2449.IBPluginDependency + 2460.IBPluginDependency + 2461.IBPluginDependency + 2462.IBPluginDepe \ No newline at end of file